The American Secular Holidays Calendar

First published on 1996 July 15; last updated 2001 January 4 by Marcos J. Montes.
Holidays Covered | Algorithms Used | References

Please enter a year >1776 (see text below).
US Secular Calendar for which year: A.D.

Output

You will a receive a listing of the holidays covered below. For holidays that occur on fixed dates, the day of the week is provided. For holidays that occur with a fixed formula ("Last Monday in May") the date is provided.

Federal Holidays & Government Documents

THIS SECTION IS SUBJECT TO CHANGE AS GOVERNMENT RULES CHANGE. PLEASE CONSULT THE Office of Personnel Management SITE FOR THE LATEST INFORMATION.

Official rules covering Federal Holidays in the USA may be found at the Office of Personnel Management. In particular, the dates for the current year may found at the Federal Holidays Page.

The following information in this section (in red on most browsers, and between horizontal rules) is courtesy the OPM. My comments are in [square brackets].

In-Lieu of Holidays: When a holiday falls on a nonworkday outside a full-time employee's basic workweek, the day to be treated as his or her holiday is the first workday preceding the nonworkday except, if the nonworkday is Sunday, the next workday is the holiday. Another exception is that agency heads have recently been given authority to determine a different in-lieu of holiday for employees on compressed work schedules. [This rule currently applies to New Year's Day (Jan. 1), Independence Day (July 4), Veterans' Day (Nov. 11), and Christmas (Dec. 25).]

Inauguration Day: January 20 of each fourth year after 1965, Inauguration Day, is a legal holiday for Federal employees and individuals employed by the government of the District of Columbia employed in the District of Columbia, Montgomery and Prince Georges Counties in Maryland, Arlington and Fairfax Counties in Virginia and the cities of Alexandria and Falls Church in Virginia. When January 20 of any fourth year after 1965 falls on Sunday, the next succeeding day selected for the public observance of the inauguration of the President is a legal public holiday. [Please note: If Inauguration day falls on Martin Luther King's Birthday, I believe the Federal employees mentioned above only get one day off (the Monday) and not two days off. The OPM has clarified to me that "In-Lieu of Holidays" rules do NOT apply to Inauguration Day since the purpose of the day off is to ease traffic congestion and make logistics easier for dignitaries, and to encourage Federal Employees to welcome the new President at the parade, etc.]

Government Publications: The statutory listing of legal public holidays--along with statutory requirements-- is found in section 6103 of title 5 of the United States Code. Many rules apply to the administration of holidays including, specifically Executive Order 11582, dated February 11, 1971, as well as regulations found in Subpart B and D of Part 610 in Title 5 of the Code of Federal Regulations. Both the title 5 of the United States Code, and the Code of Federal Regulations are for sale by the U.S. Government Printing Office, Superintendent of Documents, Mail Stop SSOP, Washington, DC 20402-9328.


Dates NOT Covered by this Calendar

Religious holidays are not covered by this calendar, since this is for secular holidays. Religious holidays such as the following may be found elsewhwere.

Dates Covered by this Calendar

USA Federal Holidays and Celebrations

Work schedules may or may not be affected by these holidays.

Current Trading Holidays

A list of Current Trading Holidays is maintained at the New York Stock Exchange. The list of Historical Early Closings and Trading Stoppages of the NYSE is also available. The biggest piece of extra information available is that Good Friday is a banking holiday. Good Friday dates can be found on my Ecclesiastical Calendar pages. When I have more time I'll see about adding this to the algorithm's that compute the calendars for these pages.

Notable Dates for planning the Year

States in the USA are not required to use Daylight Saving Time. However, if a state decides to use Daylight Saving Time, it must begin and end Daylight Saving Time on the dates and time specifed by Congress.

Other Widely Celebrated Observances

These usually don't affect work schedules.

Algorithms

The primary algorithm that I use in order to determine when the various dates will fall in any particular month is one that connects a particular date to a day of the week. I found this algorithm in the Calendar FAQ by Claus Tondering. An excerpt:
2.5. What day of the week was 2 August 1953?
--------------------------------------------
 
To calculate the day on which a particular date falls, the following
algorithm may be used (the divisions are integer divisions, in which
remainders are discarded; % means all we want is the remainder):
 
a = (14 - month) / 12
y = year - a
m = month + 12*a - 2
For Julian calendar: d = (5 + day + y + y/4 + (31*m)/12) % 7
For Gregorian calendar: d = (day + y + y/4 - y/100 + y/400 + (31*m)/12) % 7
 
The value of d is 0 for a Sunday, 1 for a Monday, 2 for a Tuesday, etc.

Then I sat down and came up with this formula in order to calculate dates such as "The third Monday in January". I suspect these have been derived and written down somewhere by someone else; in any case, these formula are easy to derive, and useful for computing various holidays in electronic calendars.

First, let the above formula be called DoW(year,month,dayinmonth), which specifies that its arguements are the year (in numerical form), the month (1-12) and the day in the month (day number in month, 1-31).

In all the below formula, the following common-sense relation is used: -1%7 = 6; -2%7=5; .. -6%7=1, -7%7=0. Also, an N-day is a Sunday (N=0), through Saturday (N=6). The most generic formula is then:

Date In Month that is an N-day ON OR AFTER date Year-Month-Day =
Day + (N - DoW(Year,Month,Day))%7 .

Date In Month that is an N-day ON OR BEFORE date Year-Month-Day =
Day - (DoW(Year,Month,Day) - N)%7 .


These lead to quick formulae for determining the date of the first, second, third, fourth and fifth occurence of a Sunday, Monday, etc., in any particular month:

First N-day: N1 = 1 + (N - DoW(Year,Month,1))%7 ;
2nd N-day : N2 = 8 + (N - DoW(Year,Month,8))%7 ;
3rd N-day : N3 = 15 + (N - DoW(Year,Month,15))%7 ;
4th N-day : N4 = 22 + (N - DoW(Year,Month,22))%7 ;
5th N-day : N5 = 29 + (N - DoW(Year,Month,29))%7 .
(Note: Use common sense when trying to calculate the fifth N-day: check to see if the value you obtain is greater than the number of days in the month; if it is, the there is no fifth N-day in that month.)

Two visitors to this page, Timothy Barmann and Bobby Cossum, have independently suggested that the above five equations can be simplified into just one equation. Let Q be the occurence (first, second, third, fourth, fifth), and N will still represent the day of the week, as above. Then,
the Q-th N-day: NQ = 1 + (Q-1)*7 + (N - DoW(Year,Month,1))%7;
or equivalently
the Q-th N-day: NQ = 7*Q - 6 + (N - DoW(Year,Month,1))%7. So, to find the first Friday using the above equations, use Q=1, N=5; the third Monday is found using Q=3, N=1, etc.

In order to find, for example, the LAST Monday in a month, we need to know the length of the month; for all months except February, this is, of course, fixed. In any case, we have:

ND=Number of last day in month;
Last N-Day : NL = ND - (DoW(Year,Month,ND) - N)%7 .
Example: What date is the last Monday in May, 1996?

  1. The last day in May is May 31, so ND=31.
  2. Monday is what we want, so N=1
  3. The day of the week of May 31, 1996 is found by following the first algorithm above: a=(14-5)/12=0
    y=1996-a=1996-0=1996
    m=5+0-2=3
    d=(31+1996+499-19+4+(31*3)/12)%7= 5
    So, May 31st is a Friday; then
  4. NL=31-(5-1)%7=31-4=27
  5. So, the last Monday in 1996 May is May 27.

Other Algorithms

I have some pages with other algorithms that may be of interest to anyone wishing to prepare an electronic calendar. Algorithms to calculate the date of Easter in the Western tradition include Butcher's Algorithm, Oudin's Algorithm, and Carter's Algorithm. Calculations of the date of Easter in the Orthodox tradition use Gauss' Algorithm.

References

Related Links


Links to this page according to Alta Vista.
Last updated 2001 January 4.
Copyright © 1996-2001 by Marcos J. Montes.
Marcos Montes
Please visit my Ecclesiastical Calendar page.
Marcos J. Montes