{"id":"v001","input":{"utc":"2026-09-18T00:00:00Z"},"expect":{"result.jd":2461301.5,"result.mjd":61301.0,"result.day_of_year":261.0,"result.rinex_name":"ssss2610.26o","ok":true},"source":"add-practitioner-essentials scenarios","sourceVersion":"2026","tolerance":{"result.jd":{"rel":1e-15,"abs":1e-06},"result.mjd":{"rel":1e-15,"abs":1e-06},"result.day_of_year":{"rel":1e-15,"abs":1e-06}}}
{"id":"v002","input":{"utc":"2000-01-01T12:00:00Z"},"expect":{"result.jd":2451545.0,"result.mjd":51544.5,"result.day_of_year":1.0,"result.rinex_name":"ssss0010.00o","ok":true},"source":"USNO Julian date definition evaluated with Python datetime (tools/vectors/gen_time.py)","sourceVersion":"2024","tolerance":{"result.jd":{"rel":1e-15,"abs":1e-06},"result.mjd":{"rel":1e-15,"abs":1e-06},"result.day_of_year":{"rel":1e-15,"abs":1e-06}}}
{"id":"v003","input":{"utc":"2024-12-31T18:00:00Z"},"expect":{"result.jd":2460676.25,"result.mjd":60675.75,"result.day_of_year":366.0,"result.rinex_name":"ssss3660.24o","ok":true},"source":"USNO Julian date definition evaluated with Python datetime (tools/vectors/gen_time.py)","sourceVersion":"2024","tolerance":{"result.jd":{"rel":1e-15,"abs":1e-06},"result.mjd":{"rel":1e-15,"abs":1e-06},"result.day_of_year":{"rel":1e-15,"abs":1e-06}}}
{"id":"v004","input":{"utc":"1858-11-17T00:00:00Z"},"expect":{"result.jd":2400000.5,"result.mjd":0.0,"result.day_of_year":321.0,"result.rinex_name":"ssss3210.58o","ok":true},"source":"USNO Julian date definition evaluated with Python datetime (tools/vectors/gen_time.py)","sourceVersion":"2024","tolerance":{"result.jd":{"rel":1e-15,"abs":1e-06},"result.mjd":{"rel":1e-15,"abs":1e-06},"result.day_of_year":{"rel":1e-15,"abs":1e-06}}}
{"id":"v005","input":{"utc":"2026-03-01T06:00:00Z"},"expect":{"result.jd":2461100.75,"result.mjd":61100.25,"result.day_of_year":60.0,"result.rinex_name":"ssss0600.26o","ok":true},"source":"USNO Julian date definition evaluated with Python datetime (tools/vectors/gen_time.py)","sourceVersion":"2024","tolerance":{"result.jd":{"rel":1e-15,"abs":1e-06},"result.mjd":{"rel":1e-15,"abs":1e-06},"result.day_of_year":{"rel":1e-15,"abs":1e-06}}}
{"id":"v006","input":{"jd":2451545.0},"expect":{"result.utc":"2000-01-01T12:00:00Z","ok":true},"source":"USNO Julian date definition","sourceVersion":"2024","tolerance":{}}
{"id":"v007","input":{"mjd":61301},"expect":{"result.utc":"2026-09-18T00:00:00Z","result.day_of_year":261.0,"ok":true},"source":"add-practitioner-essentials scenarios","sourceVersion":"2026","tolerance":{"result.day_of_year":{"rel":1e-15,"abs":1e-06}}}
{"id": "v008", "input": {"utc": "1970-01-01T00:00:00Z"}, "expect": {"ok": true, "result.jd": 2440587.5, "result.mjd": 40587.0, "result.day_of_year": 1.0, "result.year": 1970.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v009", "input": {"utc": "1980-01-06T00:00:00Z"}, "expect": {"ok": true, "result.jd": 2444244.5, "result.mjd": 44244.0, "result.day_of_year": 6.0, "result.year": 1980.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v010", "input": {"utc": "1999-12-31T23:59:00Z"}, "expect": {"ok": true, "result.jd": 2451544.4993055556, "result.mjd": 51543.9993055556, "result.day_of_year": 365.0, "result.year": 1999.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v011", "input": {"utc": "2000-02-29T00:00:00Z"}, "expect": {"ok": true, "result.jd": 2451603.5, "result.mjd": 51603.0, "result.day_of_year": 60.0, "result.year": 2000.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v012", "input": {"utc": "2000-03-01T00:00:00Z"}, "expect": {"ok": true, "result.jd": 2451604.5, "result.mjd": 51604.0, "result.day_of_year": 61.0, "result.year": 2000.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v013", "input": {"utc": "2000-12-31T12:00:00Z"}, "expect": {"ok": true, "result.jd": 2451910.0, "result.mjd": 51909.5, "result.day_of_year": 366.0, "result.year": 2000.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v014", "input": {"utc": "1900-03-01T00:00:00Z"}, "expect": {"ok": true, "result.jd": 2415079.5, "result.mjd": 15079.0, "result.day_of_year": 60.0, "result.year": 1900.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v015", "input": {"utc": "2100-02-28T00:00:00Z"}, "expect": {"ok": true, "result.jd": 2488127.5, "result.mjd": 88127.0, "result.day_of_year": 59.0, "result.year": 2100.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v016", "input": {"utc": "2024-02-29T06:00:00Z"}, "expect": {"ok": true, "result.jd": 2460369.75, "result.mjd": 60369.25, "result.day_of_year": 60.0, "result.year": 2024.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v017", "input": {"utc": "2023-12-31T23:00:00Z"}, "expect": {"ok": true, "result.jd": 2460310.4583333335, "result.mjd": 60309.95833333349, "result.day_of_year": 365.0, "result.year": 2023.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v018", "input": {"utc": "2026-01-01T00:00:00Z"}, "expect": {"ok": true, "result.jd": 2461041.5, "result.mjd": 61041.0, "result.day_of_year": 1.0, "result.year": 2026.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v019", "input": {"utc": "2026-06-15T18:30:00Z"}, "expect": {"ok": true, "result.jd": 2461207.2708333335, "result.mjd": 61206.77083333349, "result.day_of_year": 166.0, "result.year": 2026.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v020", "input": {"utc": "2026-07-01T06:45:00Z"}, "expect": {"ok": true, "result.jd": 2461222.78125, "result.mjd": 61222.28125, "result.day_of_year": 182.0, "result.year": 2026.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v021", "input": {"utc": "2033-08-22T00:00:00Z"}, "expect": {"ok": true, "result.jd": 2463831.5, "result.mjd": 63831.0, "result.day_of_year": 234.0, "result.year": 2033.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v022", "input": {"utc": "2012-06-30T23:59:59Z"}, "expect": {"ok": true, "result.jd": 2456109.499988426, "result.mjd": 56108.99998842599, "result.day_of_year": 182.0, "result.year": 2012.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v023", "input": {"utc": "1969-07-20T20:17:00Z"}, "expect": {"ok": true, "result.jd": 2440423.345138889, "result.mjd": 40422.845138888806, "result.day_of_year": 201.0, "result.year": 1969.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
{"id": "v024", "input": {"utc": "2038-01-19T03:14:07Z"}, "expect": {"ok": true, "result.jd": 2465442.6348032407, "result.mjd": 65442.13480324065, "result.day_of_year": 19.0, "result.year": 2038.0}, "source": "JD = 2440587.5 + (POSIX seconds)/86400, with the calendar and day of year from Python's datetime (proleptic Gregorian); MJD = JD - 2400000.5", "sourceVersion": "CPython 3.13 datetime", "tolerance": {"result.jd": {"abs": 1e-09}, "result.mjd": {"abs": 1e-09}, "result.day_of_year": {"abs": 0}, "result.year": {"abs": 0}}}
