Ephemerides in Find_Orb

Find_Orb offers a perhaps bewildering set of options for ephemerides.

Entering dates/times

When entering an epoch or the starting or ending time of an ephemeris, you can use any of the following formats. The general rule is that if a human can figure out what date/time you meant, the software will be able to do so, too.

------------------------  ----------------------
1997-May-6 12:30:23.3348   (6 MAY 1997 12:30:23.3348)
19970506 12:30:23.3348     (same as above)
970506 12:30:23.3348       (same as above)
6/18/2004                  (18 Jun 2004 00:00:00)
6.18.2004 or 18jun2004     (same as above)
2004-06-18 or 2004jun18    (same as above)
3:14.159                   (03:14.159 today)
13:                        (13:00 today)
11/8 (or 8/n, 8nov, 8n)    (Nov 08 00:00:00, current year)
16                         (16th of current month)
11.25 2                    (Same as above,  but 6:00:00)
11 8-10m                   (7 Nov 23:50:00,  ten minutes prior to above)
+6d                        (six days from the current time)
-13.4h                     (13.4 hours ago)
-14h +36m                  (subtract 14 hours, then add 36 minutes... so 13 hours 24 min ago)
Ap (or Apr)                (April of current year)
7 Ap (or 7ap, or ap7...)   (April 7 of current year)
Fri                        (Friday closest to current time)
Fri+2w (or fr+14d)         (Two weeks from the nearest Friday)
7.125                      (7th of current month at 3:00)
:43:18 (or :43.3)          (43 minutes 18 seconds at current hour)
JD 2451545.                ( 1 JAN 2000 12:00 )
j2451545                   (same as above)
2451545                    (same as above)
mjd 51000                  (MJD 51000 = JD 2451000.5 = 6 Jul 2008 0:00:00)
2008-03-14T15:26:53.5      (FITS-style time: 2008 Mar 14, 15:26:53.5)
2008/50 (or 50-2008)       (50th day of 2008: 2008 Feb 19)
50 2008 3:14:15.9          (same as above, but sets time to 3:14:15.9)
50.75 2008                 (50th day of 2008,  18:00)
050.75                     (50th day of current year,  18:00)
2008 o (or Octob 2008)     ( 1 OCT 2008 00:00:00)
y1952.34                   (decimal year: about a third of the way through 1952)
1952.34                    (same as above)
nm+3                       (three days after the nearest New Moon)
-4.5w 1q                   (First Quarter nearest the time 4.5 weeks ago)
1997o6 nm +3d              (three days after the New Moon nearest 1997 Oct 6)
1997o6 +3d nm              (New Moon nearest three days after 1997 Oct 6)
o6 (or 6o, 6oc, oct6)      (October 6 of the current year)
3:00 PM (or 3:00 p.m.)     (3:00 PM today)

Essentially, one can enter calendar-style dates; some special date formats; a day-of-year; and one can add/subtract offsets from the time.

Calendar-style input: (This is all most people will need or want to know!) You can enter a day, month, and year (or just a day and month), optionally followed by a time of day. The three competing date formats (YYYY-MM-DD used by astronomers and most rational human beings; the defensible DD-MM-YYYY used in much of the world; and the bonkers MM-DD-YYYY used in the United States) can complicate matters, as can the use of two-digit years. Such dates will usually be puzzled out correctly. To avoid ambiguity, I recommend not using two-digit years until 2032. Note that "au" will always be interpreted as August, whereas "08" could be 8 A.D., 2008, 1908, August, or the eighth day of the month.

Months, days, years can be separated by -, /, .,or space. Hours, min, seconds can be separated by : only.

Month names are interpreted "logically". For example, at least in English, 'f' is unambiguously February (no other month starts with F) and will be recognized as such, but 'ju' could be either June or July. In such cases, the program will choose the first possible month, so 'j'=January, 'JU'=June, 'Jul'=July. 'Febru' or 'f' or 'FEB' or 'february' would all be understood to mean February.

If a time (hours:minutes or hours:minutes:seconds) follows a date, it's used; otherwise, 0:00 is assumed. The day can include a decimal portion (as some of the above examples do).

Some special ways to input a calendar-style date: You can enter just a month name (as shown above) or just a number. The interpretation of that number will be:

One or two digits:   Day (and optionally decimal part) of current month
Three digits:        Day (and optionally decimal part) of current year
Four or five digits: Year ((and optionally decimal part of year)
Six-digit number:    YYMMDD.  If the year is less than 40,  it's assumed to
                     be a 21th-century year (2000 is added).  Otherwise,
                     it's assumed to be a 20th-century year (1900 is added).
Seven digits:        Julian Day
Eight-digit number:  YYYYMMDD 

So one can just enter '3', for example, to reset to the third of the current month; or '2005' to get 1 January 2005; or '2451545' to get JD 2451545 = 1.5 January 2000. If a year entered in this manner has a decimal part, you'll get that fractional part of a year added. But if you want to set the year -23300 or 130000, you'll need to use 'y-23300' or 'y130000'. For a JD before JD 1000000 = 1976 BC Nov 7 or on/after JD 10000000 = 22666 Dec 19, you'd need to use 'j' or 'jd' followed by the JD. (All unlikely situations, I realize.)

Decimal parts of a day can be added, so that '030913.75' is equivalent to '030913 18:' is equivalent to '2003 Sep 13 18:00:00'.

To get the output you want, you may need to add leading zeroes. If you wanted the fiftieth day of the current year, for example, you'd use '050', because '50' would get you the fiftieth day of the current month (i.e., most of the way into the next month... which you can do; it can be handy to say that "today's the 27th, and a week from today will be the 34th", sparing you the need to figure out when that would be in the next month.). '0050' would get you the year 50, '00501007' Oct 7 of that year, and so on.

"Now" and lunar phases: You can enter 'now', optionally followed by a time of day and/or time offsets of the type described below. 'nm', '1q', 'fm', or '3q' will be interpreted as meaning New Moon, First Quarter, Full Moon, or Third Quarter. (Be warned that the phase times are accurate to only about an hour.) As shown above, these can all be combined in fairly logical ways.

Day-of-year input: As shown above, three digits (optionally followed by a decimal portion) will be interpreted as setting that day of the year. Also, if you enter two numbers, both greater than 31, the program assumes they are the year and day of the year (thus the "2008/50" and "50 2008" examples above). The larger number is assumed to be the year.

Adding/subtracting an offset from the time: A '+' or '-' followed by a number will add/subtract that number of days to the current time. One can add a letter specifying time units: 'd' (day), 'h' (hour), 'm' (minute), 's' (seconds), 'w' (weeks), 'l' (lunations), 'y' (years), 'c' (centuries). Some examples are shown above.

This can be useful in dealing with time zones. For example, if your default time zone is UT, but you want to enter an Eastern US (UT-5) time, you can just add '-5h' to it.

You can add more than one offset; for example, Fri+2w -5h would mean "two weeks from the nearest Friday, midnight Eastern US time."

Some other forms will be interpreted, but if there's ambiguity, you may not get what you wanted.