CHAPEA Martian Timekeeping Manifesto

Mars is roughly half the size of Earth, spins about its axis at almost the same rotational speed as Earth, orbits the Sun about half-again further out than does Earth, and takes almost twice as long to complete its orbit around the Sun as does Earth.

More accurately:

Martian synodic rotation period i.e., it's solar day 24h:39m:35.244s 1.02749125 Earth days
Martian sidereal orbital period i.e., it's year 668.5991 Mars solar days 1.88085 Earth years, or 1 Earth year, 320 Earth days, and 18.2 hours

During the Viking Lander missions in 1976 the term “sol” (Latin for “Sun”) was used for Martian solar days; this usage has been universally adopted in the ensuing decades. There are not yet universally adopted terms for the Martian week, month, or year, nor a universally adopted Martian time system or calendar system.

Time Systems

The Viking, Mars Pathfinder, Mars Exploration Rover, Phoenix, and Mars Science Laboratory missions used timekeeping synchrnozed to the local solar time at the landing locations, i.e. 12:00 noon is determined by the sun being exactly due south (for a landing in the northern hemisphere, due north otherwise). Earth mission control teams have even gone so far as obtaining special wristwatches modified to run 2.7% slower; thereby the teams adjusted their working hours ~40 minutes later each Earth day such that they were always on console during the Martian daytime.

A growing consensus has adopted a Martian prime meridian located in the center of the crater Airy-0 in Terra Meridiani. From this, Coordinated Mars Time (MTC) has been proposed, analogous to Coordinated Universal Time (UTC) on Earth; however Martian MTC does not (yet) incorporate occasional leap seconds as per UTC, so it is presently more closely analogous to Universal Time (UT1) on Earth. The MTC time standard has also been referred to as Airy Mean Time (AMT), analogous to Greenwich Mean Time (GMT) on Earth. As of 2026 no Martian mission has used AMT, MTC, or a related local time system: all have kept time per their respective varying local solar time systems.

There are no generally accepted Martian time zones.

Calendar Systems

A Mars Sol Date (MSD) analogous to the Earth Julian date has been proposed, with an epoch of 29 December 1873 (the 1877 perihelic opposition, and also coincidentally the birth date of astronomer Carl Otto Lampland).

The landing dates of the Viking probes (the first successful landings on Mars) have been suggested for epochs, however this has not been widely accepted. A more widely accepted epoch is the “Telescopic Epoch”, defined as Earth date 11 March 1609: the Earth calendar date of the Martian vernal equinox in the Earth year 1609, in honor of Johannes Kepler's use of Tycho Brahe's observations of Mars to describe the laws of planetary motion, and Galileo Galilei's first observations of Mars with a telescope.

Many Martian time systems and calendar systems have been proposed in both works of fiction and the technical community. The two most prominent are the Darian Calendar and the Utopian Calendar. Both calendars use the Telescopic Epoch (TE) for the year, and divide the Martian year into 24 months of 27 or 28 days in length. The two calendars differ primarily in nomenclature.

The Darian Calendar divides the Martian year into 24 months, in 4 quarters of six months each. The first 5 months of each quarter have 28 sols, and the final month of the quarter 27 sols. The final sol of the year is the leap sol, therefore the final month of the year may have 27 or 28 sols. The calendar continues the use of a seven-sol week, however one peculiarity of the Darian Calendar is the week resets on the 1st of each month. This produces monthly calendar pages of exactly 4 full weeks of 7 days in most months; the 6th, 12th, 18th and possibly 24th months are missing the final day in the lower right corner of the 4×7 calendar grid. In the latter cases, this has the side effect of producing a one-sol weekend at the end of each quarter, excepting the final weekend of a leap year. Most Martian years are leap years: approximately 6 out of 10.

The Darien Calendar names the months with Latin names of the constellations of the zodiac, alternating with their Sanskrit equivalents. The days of the week are named per the Romance language Earth weekday names per the Sun, Moon and planets: Sol Solis, Sol Lunae, Sol Martis, Sol Mercurii, Sol Jovis, Sol Veneris, and Sol Saturni. The Utopian Calendar names the months per 24 classical constellations involving real or mythological animals, in approximate order of their right ascension, i.e. the east-west location of the constellations in the sky.

Many revisions to these systems as well as additional systems have been proposed, all without clear consensus. Naturally therefore I will make the problem worse by creating my own system, adopting various existing elements and modifying as I see fit.


Theses:

The time and calendar systems will follow from these theses:

  1. They are for the use of humans
  2. Therefore, they must be sensible for humans: culturally, linguistically, and practically
  3. Humans will behave as they always have, evolving and eroding things that violate (2) into things that don't

It therefore follows:

(a) Time will be demarcated in hours, minutes, and seconds, with these durations being the same as on Earth.

We are not redefining the fundamental units of time (…and thus the fundamental empirical physical constants of the universe?…Newtonian and Keplerian mechanics?…and therefore the math in your ship's guidance system?…the tuning of music?…). This leads to madness.

Therefore:

No “Martian hour” 2.7% longer than Earth, redefining seconds and minutes. Throw the deliberately broken watches into the wastebin. They will be replaced with clocks that count past 23:59:59 through 24:00:00 right on to 24:39:35.243 before rolling over to 00:00:00. (I will leave the dilemma of analog watches to the watchmakers, however note the historical Jet Propulsion Laboratory “slow watches” are not correct.)

(b) Specific basic words are needed for the concepts of “year”, “month”, “day”, “week”, and the weekdays.

The concept of time is the basis of reality. The words to describe this would be among the very first words developed by a culture: they would be small, unique, monosyllabic, evocative, relevant, and easy to speak. (And they are needed for writing software: std::chrono::year_month_day becomes marstime::?_?_?)

small, monosyllabic, easy to speak year, month, day, week
unique Do you mean:
Our days, or the lander's days?
Our years, or their years?
evocative, relevant Sunday: the biggest object in the sky.
Monday: the secondmost.
Month: its motion.

Sol was needed, therefore sol was created, sol satisfied (b), therefore sol has stuck, and we will keep it. Now we need the rest of the set:

Not “Martian vernal equinox year” verx …by linguistic erosion to its smallest unique grain
Not (our? / their?) “month” monx …by similitude to verx, and also month, and also mons: the most iconic features of Mars
Not (our? / their?) “week” wox …again by similitude

We construct the plurals by appending “-en”. This is Germanic, the root of English, and still lives on in e.g. ox → oxen. Thus these words spring into existence already comfortably weathered by a millenium of culture, like buying a brand new pair of stonewashed jeans.

(c) The Darian Calendar is a good start but certain aspects of it should be altered.

Restarting woxsols monxly pleases only the calendar's creator and print shop; 1-sol woxends infuriate everyone. Therefore woxsols will run concurrently, adding chaos to the calendar pages, as per Earth. (Honestly I think people prefer the gamble of a 3-sol holiday woxend, or an occasional Jovisol the 13th.)

Naming monxen alternating zodiac names, and their Sanskrit equivalents, is odd: of what relevance to Mars is a 12-cycle awkwardly grafted into its calendar? These are terrestrial cultural artifacts that ultimately trace to Earth's Moon, not Mars' moons.

Therefore, we use the Utopian monx names. Camelopardalis is absurdly polysylablic but useful for hazing schoolchilds (sic, to finish that argument). Also, the Utopian names are way cooler. Finally, using the Utopian monx names results in 36 distinct constellations for the complete set of Earth months and Mars monxen.

Sol Solis, Sol Lunae, Sol Martis, Sol Mercurii, Sol Jovis, Sol Veneris, Sol Saturni: Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn? You're honoring the Moon—only barely visible to the naked eye in ideal conditions? But ignoring Earth? You're honoring Mars—does a fish honor water? But ignoring it's extremely bright moons, right in your face? Again, this is Earth culture awkwardly and pointlessly copy / pasted into Mars. Also: too many words, not linguistically eroded to their grains.

Therefore: Solisol, Phobosol, Deimosol, Terrasol, Venusol, Jovisol, Satursol—appropriate to the sky as seen on Mars and pared down to their lingual atoms. This is the result not of pointlessly grafting Earth weekdays onto Mars, but rather applying the same cultural and liguistic processes that produced Earth's weekdays, to the reality of Mars.

In summary:

Earth Number of Days Mars Number of Sols Notes
year / years 365 or 366 days verx / verxen 668 or 669 sols from “Vernal Equinox Year”
month / months 28-31 days monx / monxen 27 or 28 sols from Latin “mensis”, “mons” altered with similitude to verx
week / weeks 7 days wox / woxen 7 sols “week” altered with similitude to “verx” and “monx”
weekday 5 days woxsol 5 sols
workday 5 days worksol 5 sols
weekend 2 days woxend 2 sols
day sol
today tosol
tomorrow morrowsol
yesterday yestersol
holiday holisol

Sols of the wox:

Index Weekday Woxsol Notes
0 Sunday Solisol brightest object in sky
1 Monday Phobosol second brightest object in sky
2 Tuesday Deimosol third brightest object in sky
3 Wednesday Terrasol most culturally significant object in sky—ancestral home, Mother and Child
4 Thursday Venusol fourth brightest object in sky
5 Friday Jovisol fifth brightest object in sky
6 Saturday Satursol sixth brightest object in sky (excluding Earth and Sirius)

Monxen:

Index Month Days Monx Sols
1 January 31 Phoenix 28
2 February 28 or 29 Cetus 28
3 March 31 Dorado 28
4 April 30 Lepus 28
5 May 31 Columba 28
6 June 30 Monoceros 27
7 July 31 Volans 28
8 August 31 Lynx 28
9 September 30 Camelopardalis 28
10 October 31 Chamaeleon 28
11 November 30 Hydra 28
12 December 31 Corvus 27
13 Centaurus 28
14 Draco 28
15 Lupus 28
16 Apus 28
17 Pavo 28
18 Aquila 27
19 Vulpecula 28
20 Cygnus 28
21 Delphinus 28
22 Grus 28
23 Pegasus 28
24 Tucana 27 or 28

[Indices (← another irregular ‘x’ plural! OK I'll stop now.) refer to std::chrono::weekday, std::chrono::month and marstime::woxsol, marstime::monx.]

(d) We'll use the Telescopic Epoch of 1609-03-11 18:40:34 UTC.

This is the northern vernal equinox on March 11, 1609, the Gregorian year delineating when Mars transitioned from the classical era to modern era relevance.

Verxen after the Telescopic Epoch will be denoted “TE”, i.e. the current verx 221 TE. Prior verxen will be BTE.

(e) We'll use Coordinated Mars Time (MTC) / Airy Mean Time (AMT).

Which brings us to…

(f) We'll create Martian time zones.

The appropriate methodology of creating Martian time zones is: ask Grok. This honors Heinlein and his writings of Mars and AI. In particular in The Moon is a Harsh Mistress, Heinlein creates a character “Mike”, a helpful AI with a love of jokes, who assists the off-world colonists. Accordingly, when prompted to create Martian time zones named for “most interesting geological feature within, or most prominent in, its longitudinal range”, Grok created a nice set of zones, 3 of which abbreviate as ARS, TIT, and SIN. Well played, Grok. (Fortunately CHAPEA is in BEL, Belva Time.)

Zone Abbreviation Longitude MTC Offset Eponym Grok's Notes
Airy Mean Time AMT 0°E 0h Airy-0 Crater (~5°S, 0°E) The prime meridian marker, a small but defining crater.
Elysium Time ELY 15°E +1h Elysium Mons (~25°N, 14°E) Major shield volcano in the Elysium region.
Hecates Time HEC 30°E +2h Hecates Tholus (~32°N, 33°E) Smaller volcano near Elysium.
Noachis Time NOA 45°E +3h Noachis Terra (~45°S, 45°E) Vast, ancient cratered highlands.
Argyre Time ARG 60°E +4h Argyre Planitia (~50°S, 60°E) Massive southern impact basin.
Belva Time BEL 75°E +5h Belva Crater (~18°N, 77.4°E) Site of first human habitation of Mars.
Isidis Time ISI 90°E +6h Isidis Planitia (~13°N, 87°E) Large, flat basin with water evidence.
Syrtis Time SYR 105°E +7h Syrtis Major Planum (~10°N, 105°E) Dark volcanic plateau, visible from Earth.
Nili Time NIL 120°E +8h Nili Patera (~9°N, 122°E) Volcanic caldera in Syrtis Major.
Olympus Time OLY 135°E +9h Olympus Mons (~18°N, 134°E) Largest volcano in the solar system.
Ascraeus Time ASC 150°E +10h Ascraeus Mons (~11°N, 152°E) One of the Tharsis Montes trio.
Pavonis Time PAV 165°E +11h Pavonis Mons (~0°N, 165°E) Central Tharsis volcano, near equator.
Arsia Time ARS 180°E +12h Arsia Mons (~9°S, 180°E) Southernmost Tharsis volcano.
Noctis Time NOC 195°E +13h Noctis Labyrinthus (~7°S, 195°E) Maze-like troughs west of Valles Marineris.
Candor Time CAN 210°E +14h Candor Chasma (~7°S, 210°E) Deep canyon in Valles Marineris.
Coprates Time COP 225°E +15h Coprates Chasma (~13°S, 225°E) Major segment of Valles Marineris.
Tithonium Time TIT 240°E +16h Tithonium Chasma (~4°S, 245°E) Northern Valles Marineris canyon.
Ius Time IUS 255°E +17h Ius Chasma (~7°S, 255°E) Western Valles Marineris feature.
Alba Time ALB 270°E +18h Alba Mons (~40°N, 270°E) Largest volcano by area, northern plains.
Tempe Time TEM 285°E +19h Tempe Terra (~40°N, 290°E) Highland region with tectonic features.
Kasei Time KAS 300°E +20h Kasei Valles (~25°N, 305°E) Massive outflow channel.
Lunae Time LUN 315°E +21h Lunae Planum (~10°N, 315°E) Plateau near Kasei Valles.
Sinus Time SIN 330°E +22h Sinus Sabaeus (~5°S, 330°E) Dark, cratered region.
Schiaparelli Time SCH 345°E +23h Schiaparelli Crater (~3°S, 343°E) Large, historic crater near 0°E meridian.

Note that dividing Mars into 24 time zones, spaced at 15° longitudes per Earth practice, means that each time zone is effectively 24h:39m:35.244s / 24 ≈ 1h:01m:39s “wide”. In practice this means as we travel around Mars, by the time we get to the SCH time zone, solar noon (sun directly due south / north) may occur 40 minutes offset from clock noon, with respect to the comparable situation in the AMT time zone. Given that Mars' orbit is ∼5× more eccentric than Earth's, the Martian Equation of Time (i.e. the analemma) illustrates the solar position versus clock time varies by up to ±40-50 minutes (pace ±14-16 minutes for Earth); adding ±20 minutes of “time zone inaccuracy” to that seems acceptable. If solar noon is within an hour of clock noon, that's good enough for government work. The alternative solution of having 24 “narrow” time zones and a 25th ∼40-minute “sliver” timezone is quite a bit uglier.

(g) There is no Daylight Savings Time on Mars.

We're not screwing up a second planet.


Implementation:

Class marstime::mission_time is a representation of a timekeeping system relevant to a simulated Mars mission. The class data and constructors define the mission parameters: ingress / egress dates, mission duration, Earth and Mars time zones, and how the Mars timekeeping system works—is it “faked” (just an alias to Earth local time), or is it (for part or all of the mission) representing actual Mars time with Martian sol durations.

The relevant members and structures are intended for use in various “clock” applications—breaking down time (in the Earth or Mars time system) into hh:mm:ss values to display in a digital clock, with possibly milliseconds as well to be displayed on a “high precision” clocks. In addition broken down time includes year / month / day / weekday Earth date values to display on clocks, verx / monx / sol / woxsol Mars date valuse to display on clocks, and mission day or sol values (“mission day 12”, “mission sol 23”, “14 sols till egress”, etc.).

This timekeeping system is not based on any official Mars timekeeping system (there isn't any), but rather one created for the needs of the CHAPEA Mars simulation. This includes the ability to use Mars time based on Mars sols (Martian days, 24h:39m:35s:244ms, or rounded to 24h:40m:00s if you're basic 🙄) for none, part, or all of the mission. In the parts of the mission when Mars sols aren't used, the “Mars time” provided by this system is simply copying local Earth time.

The point in time when the Earth and Mars mission clocks are synchronized is sync_point. At this time point both the local Earth and local Mars clocks are 00:00:00; the mission_sol is defined as equal to that day's mission_day; and Mars time and mission sols are calculated forwards and backwards from this point in time. Finally, the Martian monx (month) number, sol of monx (day of month, if possible) number, and woxsol number (weekday number) are defined as equal to the Earth calendar values at the sync point. The Martian year is taken from the Telescopic Epoch starting in the Earth year 1609. Note that this will produce continuity at the sync point of Earth / Mars month / monx, day of month / sol monx, weekday / woxsol, and time of day / sol; however the year / verx will jump (and possibly the month / monx and day / sol, if Earth calendar day > 27 or 28). Regardless of whether Mars time is “real” or “faked” Martian month and weekday names are used.

There are 4 sync_type modes: before, after, always, and never, indicating when Mars time is based actual Martian sols, rather than simply copying Earth time.

Note that this calendar is constructed with an effective behavior of always, for simplicity's and clarity's sake, however the dropd daemon will neccesarily run with the correct after behavior to properly drop large files during the crew's nights, throughout the entire mission.

Mission days are calculated as follows, for the example of a mission ingress of October 19, 2025, 17:00 CDT, and duration of 377 days:

Time Point Mission Day Written Spoken Notes
morning of October 18, 2025 -1 I-1d “ingress minus one day” even though this is more than 24 hours before ingress
evening of October 18, 2025 -1 I-1d “ingress minus one day” even though this is less than 24 hours to ingress
morning of October 19, 2025 0 d0 “mission day 0” even prior to ingress
evening of October 19, 2025 0 d0 “mission day 0” not the first full day in mission, therefore nonworking MD 0
morning of October 20, 2025 1 d1 “mission day 1” First full day; even prior to 24 hours in mission
evening of October 20, 2025 1 d1 “mission day 1” even after more than 24 hours in mission
…
morning of October 31, 2026 377 d377 “mission day 377” even though this day will not be completed in mission
evening of October 31, 2026 377 d377 “mission day 377” even though mission is over
morning of November 1, 2026 378 E+1d “egress plus one day” even though less than a full 24 hours have passed
evening of November 1, 2026 378 E+1d “egress plus one day” even though more than a full 24 hours have passed

Noting that:

Algorithm:

Given:

Determine:

We modify the Darien calendar to enable weekday / woxsol continuity: at the Mars epoch (mars_epoch, in UTC) the woxsol at marstime::verx_monx_sol{0_verx/1/1} is defined as mars_epoch_woxsol. Thereafter, the woxsol increments daily without discontinuity, producing the same varying-starting-woxsol in Martian monxen as per Earth varying weekdays starting its Gregorian months.

The mars_epoch is constructed / adjusted to produce a Martian date at sync_point, with a verx calculated from the Telescopic Epoch and the monx and sol chosen to match the Earth local time month and day numbers at sync_date, if possible. Earth months may have 28, 29, 30, or 31 days; Mars monxen only have 27 or 28 days. If sync_date occurs on the 29th, 30th, 31st, and possibly 28th of the Earth month, we abandon pretense of month / monx day / sol continuity and simply count forward the required number of days, e.g. if sync_date is January 31st, the Martian calendar date will be Cetus 3rd.

The mars_epoch is back-calculated from this Martian marstime::verx_monx_sol{verx/monx/sol} + 0h. The mars_epoch_woxsol is chosen to produce a wosxol at sync_date matching the Earth local time weekday, likewise back-calculating to the required woxsol at the epoch (i.e. a Sunday sync_date becomes Solisol at sync_date). In other words, there are 2 degrees of freedom: mars_epoch and mars_epoch_woxsol. These are back-calculated from matching (month, day) to (monx, sol) and (weekday) to (woxsol) respectively; verx is selected per the Telescopic Epoch to give it the correct-ish value.

This produces continuity in month / monx, day / sol, and weekday / woxsol through the calendar transition (although the year / verx will jump from AD to TE), and continuity in time through the first sol, until sol time 24:00:00 at which point the Earth and Mars local clock times begin to diverge. Importantly, the crew will not loose a weekend, or gain a 4-day weekend at the transition; both their sleeping and working / time off schedule will continue smoothly.

Depending on whether the conditional compilation constant #define USE_APPROXIMATE_SOLS is defined, the marstime library either calculates Martian time with 24h:40m sols and 1-second precision; or 24h:39m:35.244s sols with millisecond precision.

Congratulations, you are now a member of my cult. We meet on the second Deimosol of each monx, bring an hors d'œuvre or some alcohol. Remember, Earth laws only apply 24/7.