As mentioned in the ZIP Codes and Zmanim – Use With Care article, using ZIP codes to geolocate your position for zmanim can be problematic when the zip code is large. With large zip codes, zmanim on the west side of the zip code can be quite a bit later than zmanim on the east side of the zip. Recently, Lazer Guttman created an SMS based zmanim service at (914) 409-9394 that provides a warning when zmanim are requested for large zip codes. This approach is probably the best that can be done. I would recommend that any zmanim service that is zip code based (and does not have a map to allow zeroing in to a precise location), use this data to to provide a warning whenever the zip codes is wider than 0.5° of longitude. A degree of longitude spans 4 minutes (regardless of the latitude), so half of a zip code with half of a degree would span 2 minutes (one minute east or west of the center). It should be noted that Canadian postal codes are much smaller than zip codes (usually covering one side of a city block), and most likely do not face the same issue. A spreadsheet listing all zip codes with the maximum longitude and latitude distances (in degrees), was generated by Avraham David Gelbfish from OpenDataDE that is based on US Census data. His Python source code is below.
jsonfile = open("tl_2019_us_zcta510/out2.geojson")
zipcodes = json.load(jsonfile)
def getop(geolist, operation, longitude = None, latitude = None):
if isinstance(geolist, list):
answers = [getop(geo, operation) for geo in geolist]
for answer in answers:
lat, lng = answer
if latitude is None:
latitude = lat
if longitude is None:
longitude = lng
latitude = operation(latitude, lat)
longitude = operation(longitude, lng)
return latitude, longitude
with open("out2.csv", "w") as csvfile:
zwriter = csv.writer(csvfile)
zwriter.writerow(["Zip", "Latitude max distance", "Longitude max distance"])
for zipcode in zipcodes["features"]:
zip = zipcode["properties"]["ZCTA5CE10"]
geometry = zipcode["geometry"]["coordinates"]
maxlat, maxlng = getop(geometry, lambda x, y: x if x > y else y)
minlat, minlng = getop(geometry, lambda x, y: x if x < y else y)
dlat = abs(maxlat - minlat)
dlng = abs(maxlng - minlng)
zwriter.writerow([zip, dlat, dlng])
This article was written לז״נ my close friend ר׳ מנחם מענדל בן יחיאל מיכל Menachem Halpert ז״ל. He was never without a smile, was always ready to listen and help, and was a true עניו. Menachem ז״ל was a regular reader of my posts, and in his self-deprecating way always claimed that the contents were over his head, but discussing the subject with him clearly showed a deep understanding. יהא זכרו ברוך.
Possible Definitions of Chatzos
The zmanim of chatzos / חצות are the solar midday and midnight points. The Radak in the ספר השרשים, שרש חצה defines the word chatzos / חצות as splitting the morning from the afternoon (or first half of the night from the second half). I am aware of three possible definitions of chatzos.
When the sun is directly south (or north) of an observer. This is known astronomically as the solar meridian transit. This method is the only one that was measurable (not perfectly) in the time of chazal (and until relatively modern times) using a sundial or the shadow of a perfectly vertical pole with knowledge of the exact point of the cardinal directions. This is the generally accepted definition of solar noon in the astronomical world.
When the sun reaches its highest altitude of the day. This is known astronomically as the sun’s upper culmination.
Halfway between sunrise and sunset (or variations on this, such as halfway between alos and tzais).
Although these events happen in close proximity to each other, they do not happen at the same time as we will explain in this article. While they generally occur within the span of half of a minute and the difference is therefore halachically almost insignificant, the point of this article is to understand the exact definition of chatzos.
Is Calculating Chatzos As Half of the Day Close Enough?
Currently the KosherJava Zmanim library calculates chatzos as halfway between sunrise and sunset. This was done for simplicity and technical reasons. Rabbi Yehuda Burstein in his זמנים כהלכתם / Zmanim Kehilchasam 8th edition vol. 2 פ״ו ס״ד defines chatzos:
חצות היום הוא הרגע בו השמש נמצאת באמצע הרקיע ממש – בראש גובה קשת מהלכה היומי ממזרח למערב. … חישוב זמן זה הוא פשוט – דהוא במחצית הזמן שבין רגע הנץ המישורי לבין רגע השקיעה המישורית באותו מקום באותו יום.
Chatzos is the moment that the sun is positioned exactly in the center of the sky – at the highest point of its daily east/west path … Calculating this time is simple since it is halfway between the moment of sea-level sunrise and sea-level sunset.
He continues to explain that this half-of-the-day chatzos is not exactly accurate since the time from sunrise to astronomical midday is not equal to the time from astronomical midday to sunset. The difference is minor, and for this reason, most zmanim calendars do not bother calculating the astronomical chatzos. In an effort to show the actual difference between meridian transit and half of the day chatzos, I graphed the difference between the two chatzos calculations at various latitudes.
This discrepancy is caused by changes in the length of the day. There are two factors that cause the length of the day to change, the EoT (we covered the equation of time in detail in the earlier FAQ: Chatzos Hayom Versus Chatzos Halayla article) and the change in the amount of daylight time from day-to-day. At the equator, the only change in the length of the day is the EoT, while as you move north of the equator (all examples in this article focus on the spring in the northern hemisphere, though you can mirror it to the other times of the year and southern hemisphere), the length of the day is impacted by the sun’s apparent lengthening path through the day as well (the sun sets farther north), and is above the horizon for more of its day arc. As we move away from the equinox and the day lengthens, the second half of the day is longer than the first half of the day, pushing the halfway point between sunrise and sunset past solar midday. However, even in Gateshead, England (55° N), the difference between the two calculations ranges from -47 to + 36 seconds, not a significant difference. As you get farther north into the Arctic Circle, things start to change more significantly, and that leads to a practical reason to use astronomical chatzos. In the Arctic Circle when the sun does not rise / set, chatzos can’t be calculated as half of the day. However calculating chatzos as the meridian transit can be done without issue because the meridian transit remains the same anywhere along a line of longitude (the algorithm does not factor in the latitude at all). While the impact of the accurate time of chatzos is not something that usually impacts people, in the Arctic Circle with periods of time where there is no day or night on a daily basis, chatzos may be used to define the boundaries of day and night. See the ביאור הגר״א או״ח ס׳ רס״א ב׳ where in the northern regions (including Vilna) chatzos is alos hashachar. In a future post I will discuss changes to the KosherJava Zmanim API to allow calculation of astronomical (local meridian transit) chatzos, and possibly more on the halachic impact of chatzos in the Arctic Circle.
Sun–Meridian Transit Time Versus The Sun’s highest Point (Transit Versus Culmination)
It is interesting to note that the sun is not exactly at its highest point (culmination) at its local meridian transit (when it is at an azimuth of 180° – directly south or 0° – directly north, depending on your location) on most days of the year. This was mentioned over 120 years ago in a paper by D.A. Pio published in the Monthly Notices of the Royal Astronomical Society, Vol. 59, May 1899; p. 513:
The Sun, the Moon, and all the planets culminate out of the meridian.
It is at its maximum difference near the equinoxes when the day arc is changing significantly from day to day. For example at Yerushalayim’s latitude of 31.778°, the sun reaches its highest point on February 20th 11.14 seconds after crossing the meridian. At 60° the difference on March 4th increases to 27.13 seconds.While this seems like a large gap, the actual difference in the sun’s altitude between the transit and the culmination at latitude 31.778° is minimal, about 0.00002° (0.0826 arcseconds), something that can’t be measured without an observatory sized telescope. At 60° latitude, the altitude difference increases to 0.00006° (0.2148 arcseconds), again something almost imperceptible. In Longyearbyen, Norway, latitude 78.22°, the difference between transit and culmination peaks at 73 seconds on March 13. The difference increases significantly farther north. These calculations were done with the help of J. Giesen whose Transit and Culmination article discusses the phenomena in detail. The effect can also be seen using Stellarium.
The cause of the time difference between the two “flavors” of astronomical midday is due to the sun’s increasing declination that causes the sun’s altitude to increase faster than its movement along the day arc moves it down. The farther north you go, the flatter the day arc appears, meaning that it travels much farther horizontally for a small change in altitude. Around midday when the arc is flattest, the change in declination is increasing the altitude immediately after the meridian transit more than the drop caused by the day arc. At this point you may wonder why chatzos is called chatzos if we define it as one of the astronomical midday definitions that is not exactly half of the day (a case can be made that neither is “half of the day” chatzos, since at the point of splitting it, you have not reached the lengthening full day…). The Radak’s definition of chatzos / chatzi quoted above concludes with:
… כלם ענין חלוקה, בין שיהיו החלקים בשוה או בלא שוה.
… they are all under the category of splitting, whether they are of equal parts or not.
… ולשון חצי ומחצה ומחצית אינו אלא חלוק החלק מהכלל פעמים הוא חלק כחלק בשוה וזהו ברוב ופעמים אינו בשוה.
… the language of half (in its various forms) are only splits of the whole, sometimes it is an equal division, and that is the case most of the time, but sometimes it is not equal.
Note that this concept of chatzi not being half of the day would also seem to counter objections that some have about calculating chatzos from alos to tzais Geonim as an uneven split (regardless, it is very hard to fit such an uneven chatzos into any of the rishonim or achronim we mentioned earlier), though Rabbi Mordechai Kuber pointed out that it is half of the halachic day timewise, so it still fits the definition of chatzos.
From six hours and on, when the shadow leans [to the east], it is called the afternoon.
Rashi has the same definition in Brachos ט. ד״ה שם תזבח את הפסח and כו: ד״ה מנחה גדולה and Shabbos ט: ד״ה מנחה גדולה. Since Rashi defines after chatzos as when the shadows begin leaning, it would indicate that at chatzos shadows do not lean east or west, but point directly north. This seems to be a clear indication that chatzos is defined as when the sun is transiting its local meridian and is directly south at an azimuth of 180° (or directly north or an azimuth of 0° for locations south of the sun, or directly overhead on certain days for locations between the Tropic of Cancer and the Tropic of Capricorn), when there are no east or west shadows. The Tosafos Yom Tov in פסחים פ״ה מ״א expands and clarifies this:
כתב הר״ב דזמן שחיטת תמיד מכי ינטו צללי ערב וכו׳ ואין צל נוטה אלא צל כל אדם תחתיו. רוצה לומר ואין לו נטייה לא למזרח ולא למערב אבל שיהיה תחתיו ממש זהו דבר שהחוש מכחישו בכל אלו הארצות ואף בארץ ישראל. לפי שאין צל כל אדם תחתיו אף באמצע היום. אלא להשוכנים בין עגול סרטן לעגול גדי. ואחת בשנה *) תבא השמש נוכח הראש לקצתם קצתם איש איש ביומו לפי מספר עגולי השמש שתעשה מראשית השנה עד אחרית השנה אבל לשוכנים חוצה לעגולים האמורים לעולם השמש דרומית או צפונית להם ועושה צל בהכרח הנוטה לצפון או לדרום אפי׳ בצהרים והנה ארץ ישראל ידענו כי היא כמו שמנה מעלות לצפון עגול סרטן:
כתב המגיה *) הלשון אחת בשנה אינה מדויקת, כי רק לאלה השוכנים במקום קצות עגולי ההפך סרטן וגדי הרחוקות כל אחת מן קו המשוה כ״ג מעלות וחצי אם לצפון או לדרום רק לאלה תבא השמש נוכח הראש אחת בשנה; לשכנים בקצה גבול עגול ההפך סרטן יהיה זה ביום תקופת תמוז ולשוכנים בקצה גבול עגול ההפך גדי, ביום תקופת טבת. אך לאלה השוכנים בין שתי קצות העגולים האלה תבא השמש נכחם שתים בשנה:
The Raav wrote “The time of the Korban Tamid is from when the afternoon shadows lean etc. and there is no shadow, rather everyone’s shadow is directly underneath him.” Meaning, that the shadow does not project to the east or west, rather that it is directly under him. However, this is something that is not the case in any of our lands, including Eretz Yisrael. This is because a person’s shadow is not under him even in the middle of the day besides for those residing between the Tropic of Cancer and the Tropic of Capricorn … for those residing outside of the Tropics, the sun is always north or south of them [at solar noon] and casts a shadow to the north or south even in the afternoon. We know that Eretz Yisrael is about 8° north of the Tropic of Cancer.
והרגע השני הוא עת היות בחצי השמים מפני שהיא מגעת במקום ההוא אל סוף גבהה ועליותה על המקום אשר זרחה עליו, ומכאן ואילך היא נוטה לערוב
The second moment is the time that the sun is in the center of the sky since at that point it reaches its highest point and its climb from its rising point, and from here forward it begins to dip to the evening.
This definition refers to the sun’s highest point / culmination. Though it does mention the “center of the sky” which can be understood to mean meridian transit, from the ראב״ח’s general context it appears clear that he is referring to the culmination.
I would like to express my thanks to my son Shai for his insights, ideas and calculations, Pinny Markowitz for his debugging work in contrasting the old NOAA implementation of solar noon calculations versus the new implementation, and to members of the Frum software developers #zmanim Slack channel for reviewing and making suggestions that improved this article.
Determining zmanim times while on an airline flight is rather complex compared to calculating it for a fixed location. Some of the complexity involves:
Where you are currently located
Direction of travel / flightpath
The above 3 variables impact the calculation of what the zmanim are in your current location and where you will likely be when various zmanim are met.
Surprisingly, the hardest part is figuring out your current location. The shortest point between 2 points on the globe is the great circle route. Though it is the shortest path, airliners rarely fly this way. To take advantage of prevailing winds such as the Gulf Stream, or to avoid bad weather, airlines often fly much longerroutes and as a passenger you often do not know exactly where you are. Yes, the airline shows you a nice location map, but getting your exact coordinates from the map is not something that they usually supply. From a practical perspective, many people on domestic and short international flights will manage to figure out davening times by themselves. As a general rule of thumb, it is time for Shacharis when the sun rises and time for Maariv when it gets dark. Please keep in mind that most poskim are of the opinion that we use zmanim at sea level elevation, or ground level, and not the 37,000 foot elevation of the flight. This elevation results in a difference of approximately 20 minutes in sunrise and sunset times. Not sure when Mincha time is? Wait until shortly before sunset. Just keep in mind that when flying due east (such as a flight from NY to Israel), you are flying in the opposite direction as the sun and the time for davening is compressed. While you may expect sof zman krias shema to be 1/4 of the way into the day, in this case the davening window is compressed into a much shorter time. The real complexity is in flights that cross the halachic dateline, polar flights and to a lesser degree, cross-Atlantic and Pacific flights. This article will not delve into the halacha of in-flight zmanim, but solely on the technical aspects of figuring out the zmanim times.
Using your phone’s GPS to identify your in-flight location, or even a standalone GPS device will usually not work once you are away from cell towers (where your GPS no longer has the assistance of A-GPS). GPS signals are very weak and your GPS receiver typically does not have an antenna strong enough to pick up the signals in an aluminum or even newer carbon fiber composite airplane like the Airbus A350 and Boeing 787. To receive a signal, an external GPS receiver is usually required and assuming that you can get a signal (it helps if the external receiver is placed by a window), we can proceed. Note that while you would expect that the CFRP body of a Boeing 787 would allow for a much stronger signal than aluminum airliners, the graphite (and probably other materials) in the 787 CFRP in conjunction with the electrochromic windows on the 787, completely block GPS signals. It is this shielding as opposed to GPS jamming that blocks signals on El-Al 787s. In my testing with an external GPS device designed for aviation such as the Dual XGPS 160, the composite A350 and 787 both do not allow enough GPS signal through for a GPS receiver to provide a location fix. It may be surprising that it is easier to receive the weak GPS signal in an aluminum fuselage than a composite one, but keep in mind that carbon fiber is an excellent electrical conductor. Carbon fiber was used as the filament in Thomas Edison’s early light bulbs and does not let RF signals through and effectively acts as a Faraday cage. If you are able to receive a GPS signal, you can accurately calculate zmanim for your current location using tools such as the KosherJava zmanim map. Just change the latitude and longitude to what you see in your GPS in the URL https://kosherjava.com/maps/zmanim3.html?lat=75.74&lng=-63.22&zoom=3. While not an ideal solution, it does work. The same works for the rare airlines whose maps do show accurate GPS coordinates. Please note that Wi-Fi based geolocation will not work on your flight (in my testing it gave the location of the service provider headquarters).
Precalculated Flight Paths
Another way to figure out where you are located when in the air is via a precalculated flight path. This allows programs such as the Chai Tables Chai Air Times program for Windows and Android to work. However, they just calculate a great circle route between the origination and destination locations, something that is not very accurate. Currently MyZmanim’s Inflight charts are the most practical. These charts calculate the average path of the 5 previous flights in an attempt to better estimate your flight path and provide precalculated charts based on the time you take off. While this solution is currently the best that I am aware of, there are a number of issues with it. For one, much of the flight path over the oceans and Arctic that are provided by services such as FlightAware and others (that are used by MyZmanim) are just educated guesses for cross oceanic or Polar flights, since there are no ADS-B receivers in much of this area. As a matter of fact, this terrestrial ADS-B receiver free area comprises 75% of the globe. Even if the previous flight paths were accurate, your current flight may be very different. Flights such as the Cathay Pacific flights from the NY area to Hong Kong fly either east or west depending on wind conditions. MyZmanim deals with this scenario by providing both east and west maps (based on the in-flight map you would use one or the other) and indicating the portion of a flight-path that is unknown, but this is a warning that does nothing to help you accurately calculate zmanim.
Every airliner broadcasts its position, heading, altitude and speed using ADS-B. A technical user can bring an ADS-B-receiver with him on the flight and use it to retrieve the current information on his flight. This would work even when there are no ground based ADS-B receivers. This is something costly and beyond the technical ability of the vast majority of flyers.
Due to issues in tracking flights that came to light with the disappearance of Malaysia Airlines Flight 370, satellite based ADS-B tracking is rolling out and will be mandated. This will make it much easier for services such as MyZmanim to provide more accurate pre-flight estimates, since services such as Flight-Aware will be able to provide more exact historical flight paths. For users who do have in-flight Wi-Fi, services such as FlightAware will be able to provide almost real time location (note that many services have a 5 minute delay and are not really real-time), allowing future Wi-Fi connected zmanim apps to tap into this and provide accurate zmanim.
Is there a difference in time between the zmanim of chatzos hayom and chatzos halayla (astronomical midnight and astronomical high noon / midday) besides the obvious 12 hour difference?
I was recently asked by a developer why the KosherJava zmanim library does not have distinct calculations for chatzos halayla. The answer is that the zmanim API does indeed have the getSolarMidnight() calculation, but for the most part there is no real need for it. The time of chatzos halayla / midnight or chatzos hayom (solar transit / solar noon or midday) stays pretty constant from day to day. In the worst case scenario (on around December 22nd), the length of the solar day would increase by about 30.16 seconds from one day to the next. This does not change by location, but is the same anywhere in the world. This would mean that chatzos halayla could be a maximum of 15.08 seconds different than just using midday + 12 hours. This is something that should not really impact people. In addition, the developer in question does not even show seconds, making this a moot point. In short, chatzos on any given day should be considered accurate enough for both chatzos hayom and chatzos halayla of that day. It should be noted that the Mishnah Berurah quoting a number of achronim and the Shulchan Aruch Harav are of the are of the opinion that chatzos halayla is exactly 12 hours after chatzos hayom. The Mishnah Berurah states in הלכות הנהגת אדם בבקר א׳ ט׳
וזמן חצות הוא תמיד באמצעות הלילה ממש בכל מקום ואפילו בלילות הארוכות או הקצרות והיא י״ב שעות אחר חצי היום …
וזמן חצות לילה הוא שוה בקיץ ובחורף לעולם י״ב שעות אחר חצי היום שהוא אמצע הלילה ממש …
Chatzos Halayla on the Seder Night
The time of year that the zman of chatzos has the greatest impact is during the Pesach seder when people want to finish the afikoman before chatzos. During this time of the year the solar days are shrinking slightly from day to day, resulting in chatzos halayla being slightly earlier than chatzos hayom + 12 hours. The difference in the length of the solar day from solar noon on erev Pesach to solar noon on the first day of Pesach ranges from 11 to 18 seconds depending on the year. On the very late erev Pesach on April 24 that last occurred in 1929 and 1967 and will next occur in 2043 and 2062 there is an 11 second difference. On the extremely early erev Pesach of March 25 that occurred in 1899 and 2013 and will occur next in 2089 (see Rabbi Dovid Heber’s Why is This Pesach the Earliest Since 1899?) there is an 18 second difference. This 5.5 to 9 second difference in the time of chatzos hayom VS chatzos halayla on erev Pesach is something that has almost no real world impact. It is interesting to note that based on the fact that the average Jewish year is slightly longer than the average solar year, the early March 25 erev Pesach will never happen again after 2089.
Equation of Time (EoT)
You may have expected that the longest day of the year – the summer solstice (June 20 or 21 depending on the year) would be the day with the earliest sunrise / netz and latest sunset / shkiah (and therefore the day with the latest start of Shabbos). However the earliest sunrise actually occurs on or about June 14 (at latitude 40° – it varies slightly based on latitude), a week before the longest day, and the latest sunset occurs on or about June 28, a week after the summer solstice. As mentioned above, the length of the day that we know to be exactly 24 hours on a clock is actually only an average over the year. The length of the day varies slightly from day to day. This length of day range is from a minimum of 23 hours, 59 minutes and 38.64 seconds around September 17 to a maximum of 24 hours and 30.16 seconds around December 22 vs the previous day. This accumulated length of the day difference is known as the equation of time. While the day starts shortening after the solstice, chatzos (and by extension the entire day) is moving slightly forward as the solar day (midday to midday) grows at this time of the year, resulting in the day ending later despite it being shorter.
Note: The rest of the article is somewhat technical and can be skipped if you have no interest in detailed explanations as to why days differ in length.
The cause of the change is due to the following two main factors. The very minor impact of nutations (such as the Chandler wobble), axial precession and other factors are too small to make a practical difference in the EoT calculations.
The tilt of the Earth’s Rotational Axis
The tilt of the Earth’s rotational axis (also known as the axial tilt or the obliquity of the ecliptic) as compared to the plane of its orbit around the sun is one factor that impacts the length of the solar day. To understand this, note that the earth rotates on it’s axis in 23 hours 56 minutes and 4.1 seconds in relation to the stars. This is called a sidereal day. The remaining 3 minutes and 55.9 seconds or about 0.98° of rotation must be made up every earth day. Due to the 23.44° axial tilt, this 3 minutes and 55.9 seconds is only an average.During the equinoxes the earth’s 23.44° tilt results in the sun having to travel a drop farther (1.09° for every 1° of eastward travel) to cover a line of longitude, since its path is angled and traveling a drop northwards or southwards on its path west. This results in the day being slightly shorter, since the sun only travels about 0.9° along the equator as opposed to the average of 0.98° per day. In the winter and summer the sun’s path is parallel to the equator and has a direct east/west path. In addition, since the longitude lines are closer together at 23.44° degrees from the equator the sun travels further moving 1.09° parallel to the equator for every 1° of eastward travel. This results in a slightly longer day. A technical and detailed explanation can be found in Mike G’s explanation of the subject at the astronomy section of StackExchange (where the above Stellarium generated images are from) and in Art Carlson’s equation of time explanation.
The elliptical orbit of the earth
The elliptical orbit of the earth (or the eccentricity of the Earth’s orbit) is the second factor that impacts the length of the day. The earth’s orbit around the sun is an ellipse and not a perfect circle. Following Kepler’s second law, the earth moves slightly faster in orbit when it is closer to the sun, and slower when it is farther away. During the perihelion (it ranges between January 2 and 6 depending on the year) when the earth is closest to the sun at 91,402,500 mi / 147,098,070 km distance, it travels at 30.287 km/s, while at the aphelion (between July 3 and 7) when it is 94,509,100 mi / 152,097,700 km away, it travels at 29.291 km/s. In addition, the angular velocity of the sun is faster (in relation to the stars) when it is closer to earth. Despite it being somewhat counter-intuitive, the sun is closer to earth in middle of the northern hemisphere’s winter than during the summer. This non-uniform orbital speed impacts the length of the solar day.
The Accumulated Difference
This difference between our standard clock time and the time that would be based on the exact position of the sun in the sky accumulates and is referred to as the equation of time (EoT). Equation in this case refers to equality and not a mathematical equation (though the calculations certainly involve mathematical equations), and adding or subtracting this time allows us to sync solar time and clock time (mean solar time / universal time). Please see the references section below for links that cover the topic in detail.
Before delving into the answer, I would like to note that zmanim accuracy down to the second that are supported by the API are really nonsense, because variations in refraction make this accuracy pointless. The second (or millisecond) zmanim accuracy subject will hopefully have its own article in the future. Since 1972, 27 leap seconds have been added to UTC time VS International Atomic Time (TAI). This is in addition to the initial 10 seconds added in 1972 to reflect pre-1972 corrections. The reason for adding leap seconds is to correct our clocks for incorrect original estimates of the speed of earth’s rotation. Assuming that you keep your clock time correct (and add the leap seconds), no change in any zmanim calculations by either the KosherJava zmanim library, or any other zmanim programs or APIs are needed. However, if you have a very accurate clock, and did not change it since 1972, your zmanim calculations will be off by 37 seconds. This is not something any zmanim APIs, apps or programs should have to deal with. Had we added any corrections for leap seconds, your zmanim calculations would be inaccurate. As far as the Tōhoku earthquake in Japan, this is really the same question as the first question. Yes, that earthquake slowed down earth’s rotation by 1.8 microseconds or 1.8 millionth of a second (meaningless for zmanim). This as well as the impact of other earthquakes that impact earth’s rotation are factored into the leap second calculations that “correct” the time of our clocks and ensure that your zmanim are correct.
The leap second corrections address incorrect clock time that result from a slower earth rotation than expected. To get a drop more technical (thank you Pinny Markowitz), when the rate or the angle of rotation changes (due to earthquakes or other natural or man-made changes such as building of the Three Gorges Dam), the changes are minuscule. These small changes as well as the original incorrect calculation of the length of the day add up over time. On occasion (about every 2 years) the accumulated difference is significant enough to warrant introducing (or theoretically removing, something that has yet to happen) a leap second to reconcile our clocks with the natural one. On any given day, UTC time always considers 86,400 (60 * 60 * 24) seconds as a day. On the day with a leap second, UTC time still considers the day as having only 86,400 seconds, but a second is added to account for each of the seconds over a year or more being a drop too short. There are variousways of making system clocks conform with the UTC standard, but the net effect is always the same, an extra second is added. UTC doesn’t view a second the same way that the atomic clocks (International Atomic Time) do. UTC views a second as 1/86,400 of a relative day (that is actually 86,400.002 seconds long on average), while, atomic clocks count a day as 86,400 fixed length seconds. Fortunately, the approach of adding leap seconds is exactly what we need when calculating zmanim. By ignoring leap second events in zmanim code, and instead focusing on the measurements of a relative day, we can yield calculations that will be correct in the context of a relative day (assuming that you properly adjust your clock).