Ordinal date
Template:Short description Template:Inline Template:Infobox

An ordinal date is a calendar date typically consisting of a year and an ordinal number, ranging between 1 and 366 (starting on January 1), representing the multiples of a day, called day of the year or ordinal day number (also known as ordinal day or day number). The two parts of the date can be formatted as "YYYY-DDD" to comply with the ISO 8601 ordinal date format. The year may sometimes be omitted, if it is implied by the context; the day may be generalized from integers to include a decimal part representing a fraction of a day.
Nomenclature
Ordinal date is the preferred name for what was formerly called the "Julian date" or Template:Mono, or Template:Mono, which still seen in old programming languages and spreadsheet software. The older names are deprecated because they are easily confused with the earlier dating system called 'Julian day number' or Template:Mono, which was in prior use and which remains ubiquitous in astronomical and some historical calculations.
The U.S. military sometimes uses a system they call the "Julian date format",[1] which indicates the year and the day number (out of the 365 or 366 days of the year). For example, "11 December 1999" can be written as "1999345" or "99345", for the 345th day of 1999.[2]
Calculation
Template:Original research Computation of the ordinal day within a year is part of calculating the ordinal day throughout the years from a reference date, such as the Julian date. It is also part of calculating the day of the week, though for this purpose modulo 7 simplifications can be made.
In the following text, several algorithms for calculating the ordinal day Template:Mvar are presented. The inputs taken are integers Template:Mvar, Template:Mvar and Template:Mvar, for the year, month, and day numbers of the Gregorian or Julian calendar date.
Trivial methods
The most trivial method of calculating the ordinal day involves counting up all days that have elapsed per the definition:
- Let O be 0.
- From Template:Math, add the length of month Template:Mvar to O, taking care of leap year according to the calendar used.
- Add d to O.
Similarly trivial is the use of a lookup table, such as the one referenced.[3]
Zeller-like
The table of month lengths can be replaced following the method of encoding the month-length variation in Zeller's congruence. As in Zeller, the Template:Mvar is changed to Template:Math if Template:Math. It can be shown (see below) that for a month-number Template:Mvar, the total days of the preceding months is equal to Template:Math. As a result, the March 1-based ordinal day number is Template:Math.
The formula reflects the fact that any five consecutive months in the range March–January have a total length of 153 days, due to a fixed pattern 31–30–31–30–31 repeating itself twice. This is similar to encoding of the month offset (which would be the same sequence modulo 7) in Zeller's congruence. As Template:Sfrac is 30.6, the sequence oscillates in the desired pattern with the desired period 5.
To go from the March 1 based ordinal day to a January 1 based ordinal day:
- For Template:Math (March through December), Template:Nowrap where Template:Math is a function returning 0 or 1 depending whether the input is a leap year.
- For January and February, two methods can be used:
- The trivial method is to skip the calculation of Template:Math and go straight for Template:Math for January and Template:Math for February.
- The less redundant method is to use Template:Math, where 306 is the number of dates in March through December. This makes use of the fact that the formula correctly gives a month-length of 31 for January.
"Doomsday" properties:
With and gives
giving consecutive differences of 63 (9 weeks) for Template:Nowrap 3, 4, 5, and 6, i.e., between 4/4, 6/6, 8/8, 10/10, and 12/12.
and gives
and with m and d interchanged
giving a difference of 119 (17 weeks) for Template:Nowrap (difference between 5/9 and 9/5), and also for Template:Nowrap (difference between 7/11 and 11/7).
Table
| To the day of | 13 Jan |
14 Feb |
3 Mar |
4 Apr |
5 May |
6 Jun |
7 Jul |
8 Aug |
9 Sep |
10 Oct |
11 Nov |
12 Dec |
i |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Add | 0 | 31 | 59 | 90 | 120 | 151 | 181 | 212 | 243 | 273 | 304 | 334 | 3 |
| Leap years | 0 | 31 | 60 | 91 | 121 | 152 | 182 | 213 | 244 | 274 | 305 | 335 | 2 |
| Algorithm | |||||||||||||
For example, the ordinal date of April 15 is Template:Nowrap in a common year, and Template:Nowrap in a leap year.
Month–day
Template:Original research The number of the month and date is given by
the term can also be replaced by with the ordinal date.
- Day 100 of a common year:
- April 10.
- Day 200 of a common year:
- July 19.
- Day 300 of a leap year:
- November - 5 = October 26 (31 - 5).
Helper conversion table
| ord. date |
common year |
leap year |
|---|---|---|
| 001 | Template:01 Jan | |
| 010 | 10 Jan | |
| 020 | 20 Jan | |
| 030 | 30 Jan | |
| 032 | Template:01 Feb | |
| 040 | Template:09 Feb | |
| 050 | 19 Feb | |
| 060 | Template:01 Mar | 29 Feb |
| 061 | Template:02 Mar | Template:01 Mar |
| 070 | 11 Mar | 10 Mar |
| 080 | 21 Mar | 20 Mar |
| 090 | 31 Mar | 30 Mar |
| 091 | Template:01 Apr | 31 Mar |
| 092 | Template:02 Apr | Template:01 Apr |
| 100 | 10 Apr | Template:09 Apr |
| ord. date |
comm. year |
leap year |
|---|---|---|
| 110 | 20 Apr | 19 Apr |
| 120 | 30 Apr | 29 Apr |
| 121 | Template:01 May | 30 Apr |
| 122 | Template:02 May | Template:01 May |
| 130 | 10 May | Template:09 May |
| 140 | 20 May | 19 May |
| 150 | 30 May | 29 May |
| 152 | Template:01 Jun | 31 May |
| 153 | Template:02 Jun | Template:01 Jun |
| 160 | Template:09 Jun | Template:08 Jun |
| 170 | 19 Jun | 18 Jun |
| 180 | 29 Jun | 28 Jun |
| 182 | Template:01 Jul | 30 Jun |
| 183 | Template:02 Jul | Template:01 Jul |
| 190 | Template:09 Jul | Template:08 Jul |
| ord. date |
comm. year |
leap year |
|---|---|---|
| 200 | 19 Jul | 18 Jul |
| 210 | 29 Jul | 28 Jul |
| 213 | Template:01 Aug | 31 Jul |
| 214 | Template:02 Aug | Template:01 Aug |
| 220 | Template:08 Aug | Template:07 Aug |
| 230 | 18 Aug | 17 Aug |
| 240 | 28 Aug | 27 Aug |
| 244 | Template:01 Sep | 31 Aug |
| 245 | Template:02 Sep | Template:01 Sep |
| 250 | Template:07 Sep | Template:06 Sep |
| 260 | 17 Sep | 16 Sep |
| 270 | 27 Sep | 26 Sep |
| 274 | Template:01 Oct | 30 Sep |
| 275 | Template:02 Oct | Template:01 Oct |
| 280 | Template:07 Oct | Template:06 Oct |
| ord. date |
comm. year |
leap year |
|---|---|---|
| 290 | 17 Oct | 16 Oct |
| 300 | 27 Oct | 26 Oct |
| 305 | Template:01 Nov | 31 Oct |
| 306 | Template:02 Nov | Template:01 Nov |
| 310 | Template:06 Nov | Template:05 Nov |
| 320 | 16 Nov | 15 Nov |
| 330 | 26 Nov | 25 Nov |
| 335 | Template:01 Dec | 30 Nov |
| 336 | Template:02 Dec | Template:01 Dec |
| 340 | Template:06 Dec | Template:05 Dec |
| 350 | 16 Dec | 15 Dec |
| 360 | 26 Dec | 25 Dec |
| 365 | 31 Dec | 30 Dec |
| 366 | Template:N/A | 31 Dec |