Class ComplexZmanimCalendar

  • All Implemented Interfaces:
    Cloneable

    public class ComplexZmanimCalendar
    extends ZmanimCalendar

    This class extends ZmanimCalendar and provides many more zmanim than available in the ZmanimCalendar. The basis for most zmanim in this class are from the sefer Yisroel Vehazmanim by Rabbi Yisrael Dovid Harfenes. As an example of the number of different zmanim made available by this class, there are methods to return 14 different calculations for alos (dawn) and 25 for tzais available in this API. The real power of this API is the ease in calculating zmanim that are not part of the library. The methods for zmanim calculations not present in this class or it's superclass ZmanimCalendar are contained in the AstronomicalCalendar, the base class of the calendars in our API since they are generic methods for calculating time based on degrees or time before or after sunrise and sunset and are of interest for calculation beyond zmanim calculations. Here are some examples.

    First create the Calendar for the location you would like to calculate:

     String locationName = "Lakewood, NJ";
     double latitude = 40.0828; // Lakewood, NJ
     double longitude = -74.2094; // Lakewood, NJ
     double elevation = 20; // optional elevation correction in Meters
     // the String parameter in getTimeZone() has to be a valid timezone listed in
     // TimeZone.getAvailableIDs()
     TimeZone timeZone = TimeZone.getTimeZone("America/New_York");
     GeoLocation location = new GeoLocation(locationName, latitude, longitude, elevation, timeZone);
     ComplexZmanimCalendar czc = new ComplexZmanimCalendar(location);
     // Optionally set the date or it will default to today's date
     czc.getCalendar().set(Calendar.MONTH, Calendar.FEBRUARY);
     czc.getCalendar().set(Calendar.DAY_OF_MONTH, 8);

    Note: For locations such as Israel where the beginning and end of daylight savings time can fluctuate from year to year, if your version of Java does not have an up to date timezone database, create a SimpleTimeZone with the known start and end of DST. To get alos calculated as 14° below the horizon (as calculated in the calendars published in Montreal), add AstronomicalCalendar.GEOMETRIC_ZENITH (90) to the 14° offset to get the desired time:

      Date alos14 = czc.getSunriseOffsetByDegrees(AstronomicalCalendar.GEOMETRIC_ZENITH + 14);

    To get mincha gedola calculated based on the Magen Avraham (MGA) using a shaah zmanis based on the day starting 16.1° below the horizon (and ending 16.1° after sunset) the following calculation can be used:

     Date minchaGedola = czc.getTimeOffset(czc.getAlos16point1Degrees(), czc.getShaahZmanis16Point1Degrees() * 6.5);

    or even simpler using the included convenience methods

     Date minchaGedola = czc.getMinchaGedola(czc.getAlos16point1Degrees(), czc.getShaahZmanis16Point1Degrees());

    A little more complex example would be calculating zmanim that rely on a shaah zmanis that is not present in this library. While a drop more complex, it is still rather easy. An example would be to calculate the Trumas Hadeshen's alos to tzais based plag hamincha as calculated in the Machzikei Hadass calendar in Manchester, England. A number of this calendar's zmanim are calculated based on a day starting at alos of 12° before sunrise and ending at tzais of 7.083° after sunset. Be aware that since the alos and tzais do not use identical degree based offsets, this leads to chatzos being at a time other than the solar transit (solar midday). To calculate this zman, use the following steps. Note that plag hamincha is 10.75 hours after the start of the day, and the following steps are all that it takes.

     Date plag = czc.getPlagHamincha(czc.getSunriseOffsetByDegrees(AstronomicalCalendar.GEOMETRIC_ZENITH + 12),
                                    czc.getSunsetOffsetByDegrees(AstronomicalCalendar.GEOMETRIC_ZENITH + ZENITH_7_POINT_083));

    Something a drop more challenging, but still simple, would be calculating a zman using the same "complex" offset day used in the above mentioned Manchester calendar, but for a shaos zmaniyos based zman not not supported by this library, such as calculating the point that one should be makpid not to eat on erev Shabbos or erev Yom Tov. This is 9 shaos zmaniyos into the day.

    1. Calculate the shaah zmanis in milliseconds for this day
    2. Add 9 of these shaos zmaniyos to alos starting at 12°

     long shaahZmanis = czc.getTemporalHour(czc.getSunriseOffsetByDegrees(AstronomicalCalendar.GEOMETRIC_ZENITH + 12),
                                                    czc.getSunsetOffsetByDegrees(AstronomicalCalendar.GEOMETRIC_ZENITH + ZENITH_7_POINT_083));
     Date sofZamnAchila = getTimeOffset(czc.getSunriseOffsetByDegrees(AstronomicalCalendar.GEOMETRIC_ZENITH + 12), 
                                            shaahZmanis * 9);

    Calculating this sof zman achila according to the GRA is simplicity itself.

     Date sofZamnAchila = czc.getTimeOffset(czc.getSunrise(), czc.getShaahZmanisGra() * 9);

    Documentation from the ZmanimCalendar parent class

    The ZmanimCalendar is a specialized calendar that can calculate sunrise and sunset and Jewish zmanim (religious times) for prayers and other Jewish religious duties. This class contains the main functionality of the Zmanim library. For a much more extensive list of zmanim use the ComplexZmanimCalendar that extends this class. See documentation for the ComplexZmanimCalendar and AstronomicalCalendar for simple examples on using the API. According to Rabbi Dovid Yehudah Bursztyn in his Zmanim Kehilchasam (second edition published in 2007) chapter 2 (pages 186-187) no zmanim besides sunrise and sunset should use elevation. However Rabbi Yechiel Avrahom Zilber in the Birur Halacha Vol. 6 Ch. 58 Pages 34 and 42 is of the opinion that elevation should be accounted for in zmanim calculations. Related to this, Rabbi Yaakov Karp in Shimush Zekeinim, Ch. 1, page 17 states that obstructing horizons should be factored into zmanim calculations. The setting defaults to false (elevation will not be used for zmanim calculations), unless the setting is changed to true in ZmanimCalendar.setUseElevation(boolean). This will impact sunrise and sunset based zmanim such as AstronomicalCalendar.getSunrise(), AstronomicalCalendar.getSunset(), ZmanimCalendar.getSofZmanShmaGRA(), alos based zmanim such as ZmanimCalendar.getSofZmanShmaMGA() that are based on a fixed offset of sunrise or sunset and zmanim based on a percentage of the day such as getSofZmanShmaMGA90MinutesZmanis() that are based on sunrise and sunset. It will not impact zmanim that are a degree based offset of sunrise and sunset, such as getSofZmanShmaMGA16Point1Degrees() or getSofZmanShmaBaalHatanya().

    Note: It is important to read the technical notes on top of the AstronomicalCalculator documentation before using this code.

    I would like to thank Rabbi Yaakov Shakow, the author of Luach Ikvei Hayom who spent a considerable amount of time reviewing, correcting and making suggestions on the documentation in this library.

    Disclaimer:

    I did my best to get accurate results, but please double-check before relying on these zmanim for halacha lemaaseh.
    Author:
    © Eliyahu Hershfeld 2004 - 2018
    • Method Detail

      • getShaahZmanis19Point8Degrees

        public long getShaahZmanis19Point8Degrees()
        Method to return a shaah zmanis (temporal hour) calculated using a 19.8° dip. This calculation divides the day based on the opinion of the Magen Avraham (MGA) that the day runs from dawn to dusk. Dawn for this calculation is when the sun is 19.8° below the eastern geometric horizon before sunrise. Dusk for this is when the sun is 19.8° below the western geometric horizon after sunset. This day is split into 12 equal parts with each part being a shaah zmanis.
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getShaahZmanis18Degrees

        public long getShaahZmanis18Degrees()
        Method to return a shaah zmanis (temporal hour) calculated using a 18° dip. This calculation divides the day based on the opinion of the Magen Avraham (MGA) that the day runs from dawn to dusk. Dawn for this calculation is when the sun is 18° below the eastern geometric horizon before sunrise. Dusk for this is when the sun is 18° below the western geometric horizon after sunset. This day is split into 12 equal parts with each part being a shaah zmanis.
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getShaahZmanis26Degrees

        public long getShaahZmanis26Degrees()
        Method to return a shaah zmanis (temporal hour) calculated using a dip of 26°. This calculation divides the day based on the opinion of the Magen Avraham (MGA) that the day runs from dawn to dusk. Dawn for this calculation is when the sun is 26° below the eastern geometric horizon before sunrise. Dusk for this is when the sun is 26° below the western geometric horizon after sunset. This day is split into 12 equal parts with each part being a shaah zmanis.
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getShaahZmanis60Minutes

        public long getShaahZmanis60Minutes()
        Method to return a shaah zmanis (solar hour) according to the opinion of the Magen Avraham (MGA). This calculation divides the day based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation is 60 minutes before sunrise and dusk is 60 minutes after sunset. This day is split into 12 equal parts with each part being a shaah zmanis. Alternate methods of calculating a shaah zmanis are available in the subclass ComplexZmanimCalendar
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getShaahZmanis72Minutes

        public long getShaahZmanis72Minutes()
        Method to return a shaah zmanis (solar hour) according to the opinion of the Magen Avraham (MGA). This calculation divides the day based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation is 72 minutes before sunrise and dusk is 72 minutes after sunset. This day is split into 12 equal parts with each part being a shaah zmanis. Alternate methods of calculating a shaah zmanis are available in the subclass ComplexZmanimCalendar
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getShaahZmanis72MinutesZmanis

        public long getShaahZmanis72MinutesZmanis()
        Method to return a shaah zmanis (temporal hour) according to the opinion of the Magen Avraham (MGA) based on alos being 72 minutes zmaniyos before sunrise. This calculation divides the day based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation is 72 minutes zmaniyos before sunrise and dusk is 72 minutes zmaniyos after sunset. This day is split into 12 equal parts with each part being a shaah zmanis. This is identical to 1/10th of the day from sunrise to sunset.
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos72Zmanis(), getTzais72Zmanis()
      • getShaahZmanis90Minutes

        public long getShaahZmanis90Minutes()
        Method to return a shaah zmanis (temporal hour) calculated using a dip of 90 minutes. This calculation divides the day based on the opinion of the Magen Avraham (MGA) that the day runs from dawn to dusk. Dawn for this calculation is 90 minutes before sunrise and dusk is 90 minutes after sunset. This day is split into 12 equal parts with each part being a shaah zmanis.
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getShaahZmanis90MinutesZmanis

        public long getShaahZmanis90MinutesZmanis()
        Method to return a shaah zmanis (temporal hour) according to the opinion of the Magen Avraham (MGA) based on alos being 90 minutes zmaniyos before sunrise. This calculation divides the day based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation is 90 minutes zmaniyos before sunrise and dusk is 90 minutes zmaniyos after sunset. This day is split into 12 equal parts with each part being a shaah zmanis. This is identical to 1/8th of the day from sunrise to sunset.
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos90Zmanis(), getTzais90Zmanis()
      • getShaahZmanis96MinutesZmanis

        public long getShaahZmanis96MinutesZmanis()
        Method to return a shaah zmanis (temporal hour) according to the opinion of the Magen Avraham (MGA) based on alos being 96 minutes zmaniyos before sunrise. This calculation divides the day based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation is 96 minutes zmaniyos before sunrise and dusk is 96 minutes zmaniyos after sunset. This day is split into 12 equal parts with each part being a shaah zmanis. This is identical to 1/7.5th of the day from sunrise to sunset.
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos96Zmanis(), getTzais96Zmanis()
      • getShaahZmanis96Minutes

        public long getShaahZmanis96Minutes()
        Method to return a shaah zmanis (temporal hour) calculated using a dip of 96 minutes. This calculation divides the day based on the opinion of the Magen Avraham (MGA) that the day runs from dawn to dusk. Dawn for this calculation is 96 minutes before sunrise and dusk is 96 minutes after sunset. This day is split into 12 equal parts with each part being a shaah zmanis.
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getShaahZmanis120Minutes

        public long getShaahZmanis120Minutes()
        Method to return a shaah zmanis (temporal hour) calculated using a dip of 120 minutes. This calculation divides the day based on the opinion of the Magen Avraham (MGA) that the day runs from dawn to dusk. Dawn for this calculation is 120 minutes before sunrise and dusk is 120 minutes after sunset. This day is split into 12 equal parts with each part being a shaah zmanis.
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getShaahZmanis120MinutesZmanis

        public long getShaahZmanis120MinutesZmanis()
        Method to return a shaah zmanis (temporal hour) according to the opinion of the Magen Avraham (MGA) based on alos being 120 minutes zmaniyos before sunrise. This calculation divides the day based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation is 120 minutes zmaniyos before sunrise and dusk is 120 minutes zmaniyos after sunset. This day is split into 12 equal parts with each part being a shaah zmanis. This is identical to 1/6th of the day from sunrise to sunset.
        Returns:
        the long millisecond length of a shaah zmanis. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a Long.MIN_VALUE will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos120Zmanis(), getTzais120Zmanis()
      • getPlagHamincha120MinutesZmanis

        public Date getPlagHamincha120MinutesZmanis()
        This method returns the time of plag hamincha based on sunrise being 120 minutes zmaniyos or 1/6th of the day before sunrise. This is calculated as 10.75 hours after dawn. The formula used is 10.75 * getShaahZmanis120MinutesZmanis() after dawn.
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis120MinutesZmanis()
      • getPlagHamincha120Minutes

        public Date getPlagHamincha120Minutes()
        This method returns the time of plag hamincha according to the Magen Avraham with the day starting 120 minutes before sunrise and ending 120 minutes after sunset. This is calculated as 10.75 hours after dawn 120 minutes. The formula used is 10.75 getShaahZmanis120Minutes() after getAlos120().
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis120Minutes()
      • getAlos60

        public Date getAlos60()
        Method to return alos (dawn) calculated as 60 minutes before sunrise. This is the time to walk the distance of 4 Mil at 15 minutes a Mil. This seems to be the opinion of the Chavas Yair in the Mekor Chaim, Orach Chaim Ch. 90, though the Mekor chaim in Ch. 58 and in the Chut Hashani Cha 97 states that a a person walks 3 and a 1/3 mil in an hour, or an 18 minute mil. Also see the Divrei Malkiel Vol. 4, Ch. 20, page 34) who mentions the 15 minute mil lechumra by baking matzos. Also see the Maharik Ch. 173 where the questioner quoting the Ra'avan is of the opinion that the time to walk a mil is 15 minutes (5 mil in a little over an hour). There are many who believe that there is a ta'us sofer (scribe's error) in the Ra'avan, and it should 4 mil in a little over an hour, or an 18 minute mil. Time based offset calculations are based on the opinion of the Rishonim who stated that the time of the neshef (time between dawn and sunrise) does not vary by the time of year or location but purely depends on the time it takes to walk the distance of 4* mil. getTzaisGeonim9Point75Degrees() is a related zman that is a degree based calculation based on 60 minutes.
        Returns:
        the Date representing the time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getTzaisGeonim9Point75Degrees()
        To Do:
        Apply documentation to Tzais once reviewed.
      • getAlos96

        public Date getAlos96()
        Method to return alos (dawn) calculated using 96 minutes before before sunrise or sea level sunrise (depending on the ZmanimCalendar.isUseElevation() setting) that is based on the time to walk the distance of 4 Mil at 24 minutes a Mil. Time based offset calculations for alos are based on the opinion of the Rishonim who stated that the time of the Neshef (time between dawn and sunrise) does not vary by the time of year or location but purely depends on the time it takes to walk the distance of 4 Mil.
        Returns:
        the Date representing the time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getAlos90

        public Date getAlos90()
        Method to return alos (dawn) calculated using 90 minutes before sea level sunrise based on the time to walk the distance of 4 Mil at 22.5 minutes a Mil. Time based offset calculations for alos are based on the opinion of the Rishonim who stated that the time of the Neshef (time between dawn and sunrise) does not vary by the time of year or location but purely depends on the time it takes to walk the distance of 4 Mil.
        Returns:
        the Date representing the time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getAlos120

        public Date getAlos120()
        Method to return alos (dawn) calculated using 120 minutes before sea level sunrise (no adjustment for elevation is made) based on the time to walk the distance of 5 Mil( Ula) at 24 minutes a Mil. Time based offset calculations for alos are based on the opinion of the Rishonim who stated that the time of the Neshef (time between dawn and sunrise) does not vary by the time of year or location but purely depends on the time it takes to walk the distance of 5 Mil(Ula).
        Returns:
        the Date representing the time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getAlos26Degrees

        public Date getAlos26Degrees()
        A method to return alos (dawn) calculated when the sun is 26° below the eastern geometric horizon before sunrise. This calculation is based on the same calculation of 120 minutes but uses a degree based calculation instead of 120 exact minutes. This calculation is based on the position of the sun 120 minutes before sunrise in Jerusalem during the equinox which calculates to 26° below geometric zenith.
        Returns:
        the Date representing alos. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_26_DEGREES, getAlos120(), getTzais120()
      • getAlos18Degrees

        public Date getAlos18Degrees()
        A method to return alos (dawn) calculated when the sun is 18° below the eastern geometric horizon before sunrise.
        Returns:
        the Date representing alos. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        AstronomicalCalendar.ASTRONOMICAL_ZENITH
      • getAlos19Point8Degrees

        public Date getAlos19Point8Degrees()
        Method to return alos (dawn) calculated when the sun is 19.8° below the eastern geometric horizon before sunrise. This calculation is based on the same calculation of 90 minutes but uses a degree based calculation instead of 90 exact minutes. This calculation is based on the position of the sun 90 minutes before sunrise in Jerusalem during the equinox which calculates to 19.8° below geometric zenith
        Returns:
        the Date representing alos. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_19_POINT_8, getAlos90()
      • getAlos16Point1Degrees

        public Date getAlos16Point1Degrees()
        Method to return alos (dawn) calculated when the sun is 16.1° below the eastern geometric horizon before sunrise. This calculation is based on the same calculation of 72 minutes but uses a degree based calculation instead of 72 exact minutes. This calculation is based on the position of the sun 72 minutes before sunrise in Jerusalem during the equinox which calculates to 16.1° below geometric zenith.
        Returns:
        the Date representing alos. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZmanimCalendar.ZENITH_16_POINT_1, ZmanimCalendar.getAlos72()
      • getMisheyakir11Point5Degrees

        public Date getMisheyakir11Point5Degrees()
        This method returns misheyakir based on the position of the sun when it is 11.5° below geometric zenith (90°). This calculation is used for calculating misheyakir according to some opinions. This calculation is based on the position of the sun 52 minutes before sunrise in Jerusalem during the equinox which calculates to 11.5° below geometric zenith
        Returns:
        the Date of misheyakir. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_11_POINT_5
      • getMisheyakir11Degrees

        public Date getMisheyakir11Degrees()
        This method returns misheyakir based on the position of the sun when it is 11° below geometric zenith (90°). This calculation is used for calculating misheyakir according to some opinions. This calculation is based on the position of the sun 48 minutes before sunrise in Jerusalem during the equinox which calculates to 11° below geometric zenith
        Returns:
        If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_11_DEGREES
      • getMisheyakir10Point2Degrees

        public Date getMisheyakir10Point2Degrees()
        This method returns misheyakir based on the position of the sun when it is 10.2° below geometric zenith (90°). This calculation is used for calculating misheyakir according to some opinions. This calculation is based on the position of the sun 45 minutes before sunrise in Jerusalem during the equinox which calculates to 10.2° below geometric zenith
        Returns:
        the Date of misheyakir. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_10_POINT_2
      • getMisheyakir7Point65Degrees

        public Date getMisheyakir7Point65Degrees()
        This method returns misheyakir based on the position of the sun when it is 7.65° below geometric zenith (90°). The degrees are based on a 35/36 minute zman during the equinox when the neshef (twilight) is the shortest. This time is based on Rabbi Moshe Feinstein who writes in Ohr Hachaim Vol. 4, Ch. 6) that misheyakir in New York is 35-40 minutes before sunset, something that is a drop less than 8°. Rabbi Yisroel Taplin in Zmanei Yisrael (page 117) notes that Rabbi Yaakov Kamenetsky stated that it is not less than 36 minutes before sunrise (maybe it is 40 minutes). Sefer Yisrael Vehazmanim (p. 7) quotes the Tamar Yifrach in the name of the Satmar Rov that one should be stringent not consider misheyakir before 36 minutes. This is also the accepted minhag in Lakewood that is used in the Yeshiva. This follows the opinion of Rabbi Shmuel Kamenetsky who provided the time of 35/36 minutes, but did not provide a degree based time. Since this zman depends on the level of light, Rabbi Yaakov Shakow presented this degree based calculations to Rabbi Kamenetsky who agreed to them.
        Returns:
        the Date of misheyakir. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_7_POINT_65, getMisheyakir9Point5Degrees()
      • getMisheyakir9Point5Degrees

        public Date getMisheyakir9Point5Degrees()
        This method returns misheyakir based on the position of the sun when it is 9.5° below geometric zenith (90°). This calculation is based on Rabbi Dovid Kronglass's Calculation of 45 minutes in Baltimore as mentioned in Divrei Chachamim No. 24 brought down by the Birur Halacha, Tinyana, Ch. 18. This calculates to 9.5°. Also see Rabbi Yaakov Yitzchok Neiman in Kovetz Eitz Chaim Vol. 9, p. 202 that the the Vyaan Yosef did not want to rely on times earlier than 45 minutes in New York. This zman is also used in the calendars published by Rabbi Hershel Edelstein. As mentioned in the Yisroel Vehazmanim, Rabbi Edelstein who was given the 45 minute zman by Rabbi Bick. The calendars published by the Edot Hamizrach communities also use this zman. This also follows the opinion of Rabbi Shmuel Kamenetsky who provided the time of 36 and 45 minutes, but did not provide a degree based time. Since this zman depends on the level of light, Rabbi Yaakov Shakow presented these degree based times to Rabbi Shmuel Kamenetsky who agreed to them.
        Returns:
        the Date of misheyakir. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_9_POINT_5, getMisheyakir7Point65Degrees()
      • getSofZmanShmaMGA18Degrees

        public Date getSofZmanShmaMGA18Degrees()
        This method returns the latest zman krias shema (time to recite Shema in the morning) according to the opinion of the Magen Avraham (MGA) based on alos being 18° before sunrise. This time is 3 shaos zmaniyos (solar hours) after dawn based on the opinion of the MGA that the day is calculated from dawn to nightfall with both being 18° below sunrise or sunset. This returns the time of 3 * getShaahZmanis18Degrees() after dawn.
        Returns:
        the Date of the latest zman krias shema. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis18Degrees(), getAlos18Degrees()
      • getSofZmanShmaMGA90Minutes

        public Date getSofZmanShmaMGA90Minutes()
        This method returns the latest zman krias shema (time to recite Shema in the morning) according to the opinion of the Magen Avraham (MGA) based on alos being 90 minutes before sunrise. This time is 3 shaos zmaniyos (solar hours) after dawn based on the opinion of the MGA that the day is calculated from a dawn of 90 minutes before sunrise to nightfall of 90 minutes after sunset. This returns the time of 3 * getShaahZmanis90Minutes() after dawn.
        Returns:
        the Date of the latest zman krias shema. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis90Minutes(), getAlos90()
      • getSofZmanShmaMGA96Minutes

        public Date getSofZmanShmaMGA96Minutes()
        This method returns the latest zman krias shema (time to recite Shema in the morning) according to the opinion of the Magen Avraham (MGA) based on alos being 96 minutes before sunrise. This time is 3 shaos zmaniyos (solar hours) after dawn based on the opinion of the MGA that the day is calculated from a dawn of 96 minutes before sunrise to nightfall of 96 minutes after sunset. This returns the time of 3 * getShaahZmanis96Minutes() after dawn.
        Returns:
        the Date of the latest zman krias shema. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis96Minutes(), getAlos96()
      • getSofZmanShmaMGA120Minutes

        public Date getSofZmanShmaMGA120Minutes()
        This method returns the latest zman krias shema (time to recite Shema in the morning) according to the opinion of the Magen Avraham (MGA) based on alos being 120 minutes or 1/6th of the day before sunrise. This time is 3 shaos zmaniyos (solar hours) after dawn based on the opinion of the MGA that the day is calculated from a dawn of 120 minutes before sunrise to nightfall of 120 minutes after sunset. This returns the time of 3 * getShaahZmanis120Minutes() after dawn.
        Returns:
        the Date of the latest zman krias shema. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis120Minutes(), getAlos120()
      • getSofZmanShmaAlos16Point1ToSunset

        public Date getSofZmanShmaAlos16Point1ToSunset()
        This method returns the latest zman krias shema (time to recite Shema in the morning) based on the opinion that the day starts at alos 16.1° and ends at sea level sunset. 3 shaos zmaniyos are calculated based on this day and added to alosto reach this time. This time is 3 shaos zmaniyos (solar hours) after dawn based on the opinion that the day is calculated from a alos 16.1° to sea level sunset. Note: Based on this calculation chatzos will not be at midday.
        Returns:
        the Date of the latest zman krias shema based on this day. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos16Point1Degrees(), AstronomicalCalendar.getSeaLevelSunset()
      • getSofZmanShmaAlos16Point1ToTzaisGeonim7Point083Degrees

        public Date getSofZmanShmaAlos16Point1ToTzaisGeonim7Point083Degrees()
        This method returns the latest zman krias shema (time to recite Shema in the morning) based on the opinion that the day starts at alos 16.1° and ends at tzais 7.083°. 3 shaos zmaniyos are calculated based on this day and added to alos to reach this time. This time is 3 shaos zmaniyos (temporal hours) after alos 16.1° based on the opinion that the day is calculated from a alos 16.1° to tzais 7.083°. Note: Based on this calculation chatzos will not be at midday.
        Returns:
        the Date of the latest zman krias shema based on this calculation. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos16Point1Degrees(), getTzaisGeonim7Point083Degrees()
      • getSofZmanShmaKolEliyahu

        @Deprecated
        public Date getSofZmanShmaKolEliyahu()
        Deprecated.
        As per a conversation Rabbi Yisroel Twerski had with Rabbi Harfenes, this zman published in the Yisrael Vehazmanim was based on a misunderstanding and should not be used. This deprecated will be removed pending confirmation from Rabbi Harfenes.
        From the GRA in Kol Eliyahu on Berachos #173 that states that zman krias shema is calculated as half the time from sea level sunrise to fixed local chatzos. The GRA himself seems to contradict this when he stated that zman krias shema is 1/4 of the day from sunrise to sunset. See Sarah Lamoed #25 in Yisroel Vehazmanim Vol. III page 1016.
        Returns:
        the Date of the latest zman krias shema based on this calculation. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getFixedLocalChatzos()
      • getSofZmanTfilaMGA18Degrees

        public Date getSofZmanTfilaMGA18Degrees()
        This method returns the latest zman tfila (time to recite the morning prayers) according to the opinion of the Magen Avraham (MGA) based on alos being 18° before sunrise. This time is 4 shaos zmaniyos (solar hours) after dawn based on the opinion of the MGA that the day is calculated from dawn to nightfall with both being 18° below sunrise or sunset. This returns the time of 4 * getShaahZmanis18Degrees() after dawn.
        Returns:
        the Date of the latest zman krias shema. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis18Degrees(), getAlos18Degrees()
      • getPlagHamincha60Minutes

        public Date getPlagHamincha60Minutes()
        This method returns the time of plag hamincha according to the Magen Avraham with the day starting 60 minutes before sunrise and ending 60 minutes after sunset. This is calculated as 10.75 hours after dawn. The formula used is 10.75 getShaahZmanis60Minutes() after getAlos60().
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis60Minutes()
      • getPlagHamincha72Minutes

        public Date getPlagHamincha72Minutes()
        This method returns the time of plag hamincha according to the Magen Avraham with the day starting 72 minutes before sunrise and ending 72 minutes after sunset. This is calculated as 10.75 hours after dawn. The formula used is 10.75 getShaahZmanis72Minutes() after ZmanimCalendar.getAlos72().
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis72Minutes()
      • getPlagHamincha90Minutes

        public Date getPlagHamincha90Minutes()
        This method returns the time of plag hamincha according to the Magen Avraham with the day starting 90 minutes before sunrise and ending 90 minutes after sunset. This is calculated as 10.75 hours after dawn. The formula used is 10.75 getShaahZmanis90Minutes() after getAlos90().
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis90Minutes()
      • getPlagHamincha96Minutes

        public Date getPlagHamincha96Minutes()
        This method returns the time of plag hamincha according to the Magen Avraham with the day starting 96 minutes before sunrise and ending 96 minutes after sunset. This is calculated as 10.75 hours after dawn. The formula used is 10.75 getShaahZmanis96Minutes() after getAlos96().
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis96Minutes()
      • getPlagHamincha96MinutesZmanis

        public Date getPlagHamincha96MinutesZmanis()
        This method returns the time of plag hamincha. This is calculated as 10.75 hours after dawn. The formula used is 10.75 * getShaahZmanis96MinutesZmanis() after dawn.
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getPlagHamincha90MinutesZmanis

        public Date getPlagHamincha90MinutesZmanis()
        This method returns the time of plag hamincha. This is calculated as 10.75 hours after dawn. The formula used is 10.75 * getShaahZmanis90MinutesZmanis() after dawn.
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getPlagHamincha72MinutesZmanis

        public Date getPlagHamincha72MinutesZmanis()
        This method returns the time of plag hamincha. This is calculated as 10.75 hours after dawn. The formula used is 10.75 * getShaahZmanis72MinutesZmanis() after dawn.
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getPlagHamincha26Degrees

        public Date getPlagHamincha26Degrees()
        This method returns the time of plag hamincha based on the opinion that the day starts at alos 26° and ends at tzais 26° . This is calculated as 10.75 hours zmaniyos after dawn. The formula used is 10.75 * getShaahZmanis26Degrees() after getAlos26Degrees().
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis26Degrees()
      • getPlagHamincha18Degrees

        public Date getPlagHamincha18Degrees()
        This method returns the time of plag hamincha based on the opinion that the day starts at alos 18° and ends at tzais 18° . This is calculated as 10.75 hours zmaniyos after dawn. The formula used is 10.75 * getShaahZmanis18Degrees() after getAlos18Degrees().
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanis18Degrees()
      • getPlagAlosToSunset

        public Date getPlagAlosToSunset()
        This method returns the time of plag hamincha based on the opinion that the day starts at alos 16.1° and ends at sunset. 10.75 shaos zmaniyos are calculated based on this day and added to alos to reach this time. This time is 10.75 shaos zmaniyos (temporal hours) after dawn based on the opinion that the day is calculated from a dawn of 16.1 degrees before sunrise to sea level sunset. This returns the time of 10.75 * the calculated shaah zmanis after dawn.
        Returns:
        the Date of the plag. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos16Point1Degrees(), AstronomicalCalendar.getSeaLevelSunset()
      • getPlagAlos16Point1ToTzaisGeonim7Point083Degrees

        public Date getPlagAlos16Point1ToTzaisGeonim7Point083Degrees()
        This method returns the time of plag hamincha based on the opinion that the day starts at alos 16.1° and ends at tzais. 10.75 shaos zmaniyos are calculated based on this day and added to alos to reach this time. This time is 10.75 shaos zmaniyos (temporal hours) after dawn based on the opinion that the day is calculated from a dawn of 16.1 degrees before sunrise to tzais . This returns the time of 10.75 * the calculated shaah zmanis after dawn.
        Returns:
        the Date of the plag. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos16Point1Degrees(), getTzaisGeonim7Point083Degrees()
      • getBainHasmashosRT13Point24Degrees

        public Date getBainHasmashosRT13Point24Degrees()
        Method to return Bain Hashmashos of Rabbeinu Tam calculated when the sun is 13.24° below the western geometric horizon (90°) after sunset. This calculation is based on the same calculation of Bain Hashmashos Rabbeinu Tam 58.5 minutes but uses a degree based calculation instead of 58.5 exact minutes. This calculation is based on the position of the sun 58.5 minutes after sunset in Jerusalem during the equinox which calculates to 13.24° below geometric zenith. NOTE: As per Yisrael Vehazmanim Vol. III page 1028 No 50, a dip of slightly less than 13° should be used. Calculations show that the proper dip to be 13.2456° (truncated to 13.24 that provides about 1.5 second earlier (lechumra) time) below the horizon at that time. This makes a difference of 1 minute and 10 seconds in Jerusalem during the Equinox, and 1 minute 29 seconds during the solstice as compared to the proper 13.24° versus 13°. For NY during the solstice, the difference is 1 minute 56 seconds.
        Returns:
        the Date of the sun being 13.24° below geometric zenith (90°). If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_13_POINT_24, getBainHasmashosRT58Point5Minutes()
      • getBainHasmashosRT58Point5Minutes

        public Date getBainHasmashosRT58Point5Minutes()
        This method returns Bain Hashmashos of Rabbeinu Tam calculated as a 58.5 minute offset after sunset. Bain hashmashos is 3/4 of a Mil before tzais or 3 1/4 Mil after sunset. With a Mil calculated as 18 minutes, 3.25 * 18 = 58.5 minutes.
        Returns:
        the Date of 58.5 minutes after sunset. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getBainHasmashosRT13Point5MinutesBefore7Point083Degrees

        public Date getBainHasmashosRT13Point5MinutesBefore7Point083Degrees()
        This method returns the time of bain hashmashos based on the calculation of 13.5 minutes (3/4 of an 18 minute Mil before shkiah calculated as 7.083°.
        Returns:
        the Date of the bain hashmashos of Rabbeinu Tam in this calculation. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getTzaisGeonim7Point083Degrees()
      • getBainHasmashosRT2Stars

        public Date getBainHasmashosRT2Stars()
        This method returns bain hashmashos of Rabbeinu Tam calculated according to the opinion of the Divrei Yosef (see Yisrael Vehazmanim) calculated 5/18th (27.77%) of the time between alos (calculated as 19.8° before sunrise) and sunrise. This is added to sunset to arrive at the time for bain hashmashos of Rabbeinu Tam).
        Returns:
        the Date of bain hashmashos of Rabbeinu Tam for this calculation. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getTzaisGeonim3Point7Degrees

        public Date getTzaisGeonim3Point7Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated at the sun's position at 3.7° below the western horizon.
        Returns:
        the Date representing the time when the sun is 3.7° below sea level.
        See Also:
        ZENITH_3_POINT_7
      • getTzaisGeonim3Point8Degrees

        public Date getTzaisGeonim3Point8Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated at the sun's position at 3.8° below the western horizon.
        Returns:
        the Date representing the time when the sun is 3.8° below sea level.
        See Also:
        ZENITH_3_POINT_8
      • getTzaisGeonim5Point95Degrees

        public Date getTzaisGeonim5Point95Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated at the sun's position at 5.95° below the western horizon.
        Returns:
        the Date representing the time when the sun is 5.95° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_5_POINT_95
      • getTzaisGeonim3Point65Degrees

        public Date getTzaisGeonim3Point65Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4 of a Mil based on an 18 minute Mil, or 13.5 minutes. It is the sun's position at 3.65° below the western horizon. This is a very early zman and should not be relied on without Rabbinical guidance.
        Returns:
        the Date representing the time when the sun is 3.65° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_3_POINT_65
      • getTzaisGeonim3Point676Degrees

        public Date getTzaisGeonim3Point676Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4 of a Mil based on an 18 minute Mil, or 13.5 minutes. It is the sun's position at 3.676° below the western horizon based on the calculations of Stanley Fishkind. This is a very early zman and should not be relied on without Rabbinical guidance.
        Returns:
        the Date representing the time when the sun is 3.676° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_3_POINT_676
      • getTzaisGeonim4Point61Degrees

        public Date getTzaisGeonim4Point61Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4 of a Mil based on a 24 minute Mil, or 18 minutes. It is the sun's position at 4.61° below the western horizon. This is a very early zman and should not be relied on without Rabbinical guidance.
        Returns:
        the Date representing the time when the sun is 4.61° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_4_POINT_61
      • getTzaisGeonim4Point37Degrees

        public Date getTzaisGeonim4Point37Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4 of a Mil, based on a 22.5 minute Mil, or 16 7/8 minutes. It is the sun's position at 4.37° below the western horizon. This is a very early zman and should not be relied on without Rabbinical guidance.
        Returns:
        the Date representing the time when the sun is 4.37° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_4_POINT_37
      • getTzaisGeonim5Point88Degrees

        public Date getTzaisGeonim5Point88Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4 of a 24 minute Mil, based on a Mil being 24 minutes, and is calculated as 18 + 2 + 4 for a total of 24 minutes. It is the sun's position at 5.88° below the western horizon. This is a very early zman and should not be relied on without Rabbinical guidance.
        Returns:
        the Date representing the time when the sun is 5.88° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_5_POINT_88
        To Do:
        Additional detailed documentation needed.
      • getTzaisGeonim4Point8Degrees

        public Date getTzaisGeonim4Point8Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4 of a Mil based on the sun's position at 4.8° below the western horizon. This is based on Rabbi Leo Levi's calculations. This is the This is a very early zman and should not be relied on without Rabbinical guidance.
        Returns:
        the Date representing the time when the sun is 4.8° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_4_POINT_8
        To Do:
        Additional documentation needed.
      • getTzaisGeonim6Point45Degrees

        public Date getTzaisGeonim6Point45Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim as calculated by Rabbi Yechiel Michel Tucazinsky. It is based on of the position of the sun no later than 31 minutes after sunset in Jerusalem, and at the height of the summer solstice, this zman is 28 minutes after shkiah. This computes to 6.45° below the western horizon.
        Returns:
        the Date representing the time when the sun is 6.45° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_6_POINT_45
        To Do:
        Additional documentation details needed.
      • getTzaisGeonim7Point083Degrees

        public Date getTzaisGeonim7Point083Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 30 minutes after sunset during the equinox in Yerushalayim. The sun's position at this time computes to 7.083° (or 7° 5′ below the western horizon. Note that this is a common and rounded number. Computation shows the accurate number is 7.2°
        Returns:
        the Date representing the time when the sun is 7.083° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_7_POINT_083
      • getTzaisGeonim8Point5Degrees

        public Date getTzaisGeonim8Point5Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated at the sun's position at 8.5° below the western horizon.
        Returns:
        the Date representing the time when the sun is 8.5° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZmanimCalendar.ZENITH_8_POINT_5
      • getTzaisGeonim9Point3Degrees

        public Date getTzaisGeonim9Point3Degrees()
        This method returns the tzais (nightfall) based on the calculations used in the Luach Itim Lebinah as the stringent time for tzais. It is calculated at the sun's position at 9.3° below the western horizon.
        Returns:
        the Date representing the time when the sun is 9.3° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getTzaisGeonim9Point75Degrees

        public Date getTzaisGeonim9Point75Degrees()
        This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 60 minutes after sunset during the equinox in New York. The sun's position at this time computes to 9.75° below the western horizon. This is the opinion of Rabbi Eliyahu Henkin. This also follows the opinion of Rabbi Shmuel Kamenetsky. Rabbi Yaakov Shakow presented these degree based times to Rabbi Shmuel Kamenetsky who agreed to them.
        Returns:
        the Date representing the time when the sun is 9.75° below sea level. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getTzais60()
      • getTzais60

        public Date getTzais60()
        This method returns the tzais (nightfall) based on the opinion of the Chavas Yair and Divrei Malkiel that the time to walk the distance of a Mil is 15 minutes for a total of 60 minutes for 4 Mil after sea level sunset.
        Returns:
        the Date representing 60 minutes after sea level sunset. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos60()
      • getTzaisAteretTorah

        public Date getTzaisAteretTorah()
        This method returns tzais usually calculated as 40 minutes (configurable to any offset via setAteretTorahSunsetOffset(double)) after sunset. Please note that Chacham Yosef Harari-Raful of Yeshivat Ateret Torah who uses this time, does so only for calculating various other zmanai hayom such as Sof Zman Krias Shema and Plag Hamincha. His calendars do not publish a zman for Tzais. It should also be noted that Chacham Harari-Raful provided a 25 minute zman for Israel. This API uses 40 minutes year round in any place on the globe by default. This offset can be changed by calling setAteretTorahSunsetOffset(double).
        Returns:
        the Date representing 40 minutes (configurable via setAteretTorahSunsetOffset(double)) after sea level sunset. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAteretTorahSunsetOffset(), setAteretTorahSunsetOffset(double)
      • getAteretTorahSunsetOffset

        public double getAteretTorahSunsetOffset()
        Returns the offset in minutes after sunset used to calculate sunset for the Ateret Torah zmanim. The default value is 40 minutes. This affects most zmanim, since almost all zmanim use subset as part of their calculation.
        Returns:
        the number of minutes after sunset for Tzait.
        See Also:
        setAteretTorahSunsetOffset(double)
      • setAteretTorahSunsetOffset

        public void setAteretTorahSunsetOffset​(double ateretTorahSunsetOffset)
        Allows setting the offset in minutes after sunset for the Ateret Torah zmanim. The default if unset is 40 minutes. Chacham Yosef Harari-Raful of Yeshivat Ateret Torah uses 40 minutes globally with the exception of Israel where a 25 minute offset is used. This 40 minute (or any other) offset can be overridden by this method. This offset impacts all Ateret Torah zmanim.
        Parameters:
        ateretTorahSunsetOffset - the number of minutes after sunset to use as an offset for the Ateret Torah tzais
        See Also:
        getAteretTorahSunsetOffset()
      • getTzais72Zmanis

        public Date getTzais72Zmanis()
        Method to return tzais (dusk) calculated as 72 minutes zmaniyos, or 1/10th of the day after sea level sunset.
        Returns:
        the Date representing the time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos72Zmanis()
      • getTzais90Zmanis

        public Date getTzais90Zmanis()
        Method to return tzais (dusk) calculated using 90 minutes zmaniyos after sea level sunset.
        Returns:
        the Date representing the time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos90Zmanis()
      • getTzais96Zmanis

        public Date getTzais96Zmanis()
        Method to return tzais (dusk) calculated using 96 minutes zmaniyos after sea level sunset.
        Returns:
        the Date representing the time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos96Zmanis()
      • getTzais90

        public Date getTzais90()
        Method to return tzais (dusk) calculated as 90 minutes after sea level sunset. This method returns tzais (nightfall) based on the opinion of the Magen Avraham that the time to walk the distance of a Mil according to the Rambam's opinion is 18 minutes for a total of 90 minutes based on the opinion of Ula who calculated tzais as 5 Mil after sea level shkiah (sunset). A similar calculation getTzais19Point8Degrees()uses solar position calculations based on this time.
        Returns:
        the Date representing the time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getTzais19Point8Degrees(), getAlos90()
      • getTzais120

        public Date getTzais120()
        This method returns tzais (nightfall) based on the opinion of the Magen Avraham that the time to walk the distance of a Mil according to the Rambam's opinion is 2/5 of an hour (24 minutes) for a total of 120 minutes based on the opinion of Ula who calculated tzais as 5 Mil after sea level shkiah (sunset). A similar calculation getTzais26Degrees() uses temporal calculations based on this time.
        Returns:
        the Date representing the time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getTzais26Degrees(), getAlos120()
      • getTzais120Zmanis

        public Date getTzais120Zmanis()
        Method to return tzais (dusk) calculated using 120 minutes zmaniyos after sea level sunset.
        Returns:
        the Date representing the time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos120Zmanis()
      • getTzais26Degrees

        public Date getTzais26Degrees()
        For information on how this is calculated see the comments on getAlos26Degrees()
        Returns:
        the Date representing the time. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getTzais120(), getAlos26Degrees()
      • getTzais18Degrees

        public Date getTzais18Degrees()
        For information on how this is calculated see the comments on getAlos18Degrees()
        Returns:
        the Date representing the time. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos18Degrees()
      • getTzais19Point8Degrees

        public Date getTzais19Point8Degrees()
        For information on how this is calculated see the comments on getAlos19Point8Degrees()
        Returns:
        the Date representing the time. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getTzais90(), getAlos19Point8Degrees()
      • getTzais96

        public Date getTzais96()
        A method to return tzais (dusk) calculated as 96 minutes after sea level sunset. For information on how this is calculated see the comments on getAlos96().
        Returns:
        the Date representing the time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getAlos96()
      • getFixedLocalChatzos

        public Date getFixedLocalChatzos()
        A method that returns the local time for fixed chatzos. This time is noon and midnight adjusted from standard time to account for the local latitude. The 360° of the globe divided by 24 calculates to 15° per hour with 4 minutes per degree, so at a longitude of 0 , 15, 30 etc... Chatzos in 12:00 noon. Lakewood, N.J., whose longitude is -74.2094, is 0.7906 away from the closest multiple of 15 at -75°. This is multiplied by 4 to yield 3 minutes and 10 seconds for a chatzos of 11:56:50. This method is not tied to the theoretical 15° timezones, but will adjust to the actual timezone and Daylight saving time.
        Returns:
        the Date representing the local chatzos
        See Also:
        GeoLocation.getLocalMeanTimeOffset()
      • getSofZmanKidushLevanaBetweenMoldos

        public Date getSofZmanKidushLevanaBetweenMoldos​(Date alos,
                                                        Date tzais)
        Returns the latest time of Kidush Levana according to the Maharil's opinion that it is calculated as halfway between molad and molad. This adds half the 29 days, 12 hours and 793 chalakim time between molad and molad (14 days, 18 hours, 22 minutes and 666 milliseconds) to the month's molad. If the time of sof zman Kiddush Levana occurs during the day (between the alos and tzais passed in as parameters), it returns the alos passed in. If a null alos or tzais are passed to this method, the non-daytime adjusted time will be returned. This method is available in the current release of the API but may change or be removed in the future since it depends on the still changing JewishCalendar and related classes.
        Parameters:
        alos - the beginning of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending at tzais), the time returned will be alos. If either the alos or tzais parameters are null, no daytime adjustment will be made.
        tzais - the end of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending at tzais), the time returned will be alos. If either the alos or tzais parameters are null, no daytime adjustment will be made.
        Returns:
        the Date representing the moment halfway between molad and molad. If the time occurs between alos and tzais, alos will be returned
        See Also:
        getSofZmanKidushLevanaBetweenMoldos(), getSofZmanKidushLevana15Days(Date, Date), JewishCalendar.getSofZmanKidushLevanaBetweenMoldos()
      • getMoladBasedTime

        private Date getMoladBasedTime​(Date moladBasedTime,
                                       Date alos,
                                       Date tzais,
                                       boolean techila)
        Returns the Date of the molad based time if it occurs on the current date.Since Kiddush Levana can only be said during the day, there are parameters to limit it to between alos and tzais. If the time occurs between alos and tzais, tzais will be returned
        Parameters:
        moladBasedTime - the molad based time such as molad, tchilas and sof zman Kiddush Levana
        alos - optional start of day to limit molad times to the end of the night before or beginning of the next night. Ignored if either this or tzais are null.
        tzais - optional end of day to limit molad times to the end of the night before or beginning of the next night. Ignored if either this or alos are null
        techila - is it the start of Kiddush Levana time or the end? If it is start roll it to the next tzais, and and if it is the end, return the end of the previous night (alos passed in). Ignored if either alos or tzais are null.
        Returns:
        the molad based time. If the zman does not occur during the current date, null will be returned.
      • getSofZmanKidushLevana15Days

        public Date getSofZmanKidushLevana15Days​(Date alos,
                                                 Date tzais)
        Returns the latest time of Kiddush Levana calculated as 15 days after the molad. This is the opinion brought down in the Shulchan Aruch (Orach Chaim 426). It should be noted that some opinions hold that the Rema who brings down the opinion of the Maharil's of calculating half way between molad and mold is of the opinion that Mechaber agrees to his opinion. Also see the Aruch Hashulchan. For additional details on the subject, See Rabbi Dovid Heber's very detailed write-up in Siman Daled (chapter 4) of Shaarei Zmanim. If the time of sof zman Kiddush Levana occurs during the day (between the alos and tzais passed in as parameters), it returns the alos passed in. If a null alos or tzais are passed to this method, the non-daytime adjusted time will be returned. This method is available in the current release of the API but may change or be removed in the future since it depends on the still changing JewishCalendar and related classes.
        Parameters:
        alos - the beginning of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending at tzais), the time returned will be alos. If either the alos or tzais parameters are null, no daytime adjustment will be made.
        tzais - the end of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending at tzais), the time returned will be alos. If either the alos or tzais parameters are null, no daytime adjustment will be made.
        Returns:
        the Date representing the moment 15 days after the molad. If the time occurs between alos and tzais, alos will be returned
        See Also:
        getSofZmanKidushLevanaBetweenMoldos(Date, Date), JewishCalendar.getSofZmanKidushLevana15Days()
        To Do:
        Add hyperlinks to documentation.
      • getTchilasZmanKidushLevana3Days

        public Date getTchilasZmanKidushLevana3Days​(Date alos,
                                                    Date tzais)
        Returns the earliest time of Kiddush Levana according to Rabbeinu Yonah's opinion that it can be said 3 days after the molad. If the time of tchilas zman Kiddush Levana occurs during the day (between alos and tzais passed to this method) it will return the following tzais. If null is passed for either alos or tzais, the actual tchilas zman Kiddush Levana will be returned, regardless of if it is during the day or not. This method is available in the current release of the API but may change or be removed in the future since it depends on the still changing JewishCalendar and related classes.
        Parameters:
        alos - the beginning of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending at tzais), the time returned will be tzais. If either the alos or tzais parameters are null, no daytime adjustment will be made.
        tzais - the end of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending at tzais), the time returned will be tzais. If either the alos or tzais parameters are null, no daytime adjustment will be made.
        Returns:
        the Date representing the moment 3 days after the molad. If the time occurs between alos and tzais, tzais will be returned
        See Also:
        getTchilasZmanKidushLevana3Days(), getTchilasZmanKidushLevana7Days(Date, Date), JewishCalendar.getTchilasZmanKidushLevana3Days()
      • getTchilasZmanKidushLevana7Days

        public Date getTchilasZmanKidushLevana7Days​(Date alos,
                                                    Date tzais)
        Returns the earliest time of Kiddush Levana according to the opinions that it should not be said until 7 days after the molad. If the time of tchilas zman Kiddush Levana occurs during the day (between Alos and tzais) it return the next tzais. This method is available in the current release of the API but may change or be removed in the future since it depends on the still changing JewishCalendar and related classes.
        Parameters:
        alos - the beginning of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending at tzais), the time returned will be tzais. If either the alos or tzais parameters are null, no daytime adjustment will be made.
        tzais - the end of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending at tzais), the time returned will be tzais. If either the alos or tzais parameters are null, no daytime adjustment will be made.
        Returns:
        the Date representing the moment 7 days after the molad. If the time occurs between alos and tzais, tzais will be returned
        See Also:
        getTchilasZmanKidushLevana3Days(Date, Date), getTchilasZmanKidushLevana7Days(), JewishCalendar.getTchilasZmanKidushLevana7Days()
      • getSofZmanBiurChametzGRA

        public Date getSofZmanBiurChametzGRA()
        This method returns the latest time for burning chametz on Erev Pesach according to the opinion of the GRA This time is 5 hours into the day based on the opinion of the GRA that the day is calculated from sunrise to sunset. This returns the time 5 * ZmanimCalendar.getShaahZmanisGra() after sea level sunrise.
        Returns:
        the Date of the latest time for burning chametz on Erev Pesach. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZmanimCalendar.getShaahZmanisGra()
      • getSolarMidnight

        public Date getSolarMidnight()
        A method that returns "solar" midnight, or the time when the sun is at its nadir. Note: this method is experimental and might be removed.
        Returns:
        the Date of Solar Midnight (chatzos layla). If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
      • getSunriseBaalHatanya

        private Date getSunriseBaalHatanya()
        A method that returns the Baal Hatanya's netz amiti (sunrise) without elevation adjustment. This forms the base for the Baal Hatanya's dawn based calculations that are calculated as a dip below the horizon before sunrise. According to the Baal Hatanya, netz amiti, or true (halachic) sunrise, is when the top of the sun's disk is visible at an elevation similar to the mountains of Eretz Yisrael. The time is calculated as the point at which the center of the sun's disk is 1.583° below the horizon. This degree based calculation can be found in Rabbi Shalom DovBer Levine's commentary on The Baal Hatanya's Seder Hachnasas Shabbos. From an elevation of 546 meters, the top of Har Hacarmel, the sun disappears when it is 1° 35' or 1.583° below the sea level horizon. This in turn is based on the Gemara Shabbos 35a. There are other opinions brought down by Rabbi Levine, including Rabbi Yosef Yitzchok Feigelstock who calculates it as the degrees below the horizon 4 minutes after sunset in Yerushalaym (on the equinox). That is brought down as 1.583°. This is identical to the 1° 35' zman and is probably a typo and should be 1.683°. These calculations are used by most Chabad calendars that use the Baal Hatanya's Zmanim. See About Our Zmanim Calculations @ Chabad.org. Note: netz amiti is used only for calculating certain zmanim, and is intentionally unpublished. For practical purposes, daytime mitzvos like shofar and lulav should not be done until after the published time for netz-sunrise.
        Returns:
        the Date representing the exact sea-level netz amiti (sunrise) time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the page.
        See Also:
        AstronomicalCalendar.getSunrise(), AstronomicalCalendar.getSeaLevelSunrise(), getSunsetBaalHatanya(), ZENITH_1_POINT_583
      • getSunsetBaalHatanya

        private Date getSunsetBaalHatanya()
        A method that returns the Baal Hatanya's shkiah amiti (sunset) without elevation adjustment. This forms the base for the Baal Hatanya's dusk based calculations that are calculated as a dip below the horizon after sunset. According to the Baal Hatanya, shkiah amiti, true (halachic) sunset, is when the top of the sun's disk disappears from view at an elevation similar to the mountains of Eretz Yisrael. This time is calculated as the point at which the center of the sun's disk is 1.583 degrees below the horizon. Note: shkiah amiti is used only for calculating certain zmanim, and is intentionally unpublished. For practical purposes, all daytime mitzvos should be completed before the published time for shkiah-sunset. For further explanation of the calculations used for the Baal Hatanya's Zmanim in this library, see About Our Zmanim Calculations @ Chabad.org.
        Returns:
        the Date representing the exact sea-level shkiah amiti (sunset) time. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the the AstronomicalCalendar documentation.
        See Also:
        AstronomicalCalendar.getSunset(), AstronomicalCalendar.getSeaLevelSunset(), getSunriseBaalHatanya(), ZENITH_1_POINT_583
      • getAlosBaalHatanya

        public Date getAlosBaalHatanya()
        Returns the Baal Hatanya's alos (dawn) calculated as the time when the sun is 16.9° below the eastern geometric horizon before sunrise. For more information the source of 16.9° see ZENITH_16_POINT_9.
        Returns:
        The Date of dawn. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_16_POINT_9
      • getSofZmanBiurChametzBaalHatanya

        public Date getSofZmanBiurChametzBaalHatanya()
        This method returns the latest time for burning chametz on Erev Pesach according to the opinion of the Baal Hatanya. This time is 5 hours into the day based on the opinion of the Baal Hatanya that the day is calculated from sunrise to sunset. This returns the time 5 * getShaahZmanisBaalHatanya() after netz amiti(sunrise).
        Returns:
        the Date of the latest time for burning chametz on Erev Pesach. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        getShaahZmanisBaalHatanya()
      • getPlagHaminchaBaalHatanya

        public Date getPlagHaminchaBaalHatanya()
        This method returns the time of plag hamincha. This is calculated as 10.75 hours after sunrise. This calculation is based on the opinion of the Baal Hatanya that the day is calculated from sunrise to sunset. This returns the time 10.75 * getShaahZmanisBaalHatanya() after netz amiti(sunrise).
        Returns:
        the Date of the time of plag hamincha. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZmanimCalendar.getPlagHamincha(Date, Date)
      • getTzaisBaalHatanya

        public Date getTzaisBaalHatanya()
        A method that returns tzais (nightfall) when the sun is 6° below the western geometric horizon (90°) after sunset. For information on the source of this calculation see ZENITH_6_DEGREES.
        Returns:
        The Date of nightfall. If the calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null will be returned. See detailed explanation on top of the AstronomicalCalendar documentation.
        See Also:
        ZENITH_6_DEGREES