Пример #1
0
def test_MultiNewMoonAssigner():
    # Online - https://www.drikpanchang.com/panchang/month-panchang.html?date=13/07/2018
    # karka-sankrAnti was on 16th.
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2018, 7, 13),
        computation_system=ComputationSystem.
        MULTI_NEW_MOON_SIDEREAL_MONTH_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 3
    panchaanga = daily.DailyPanchaanga(
        # dvitIyA following amAvAsyA - can trip up previous day panchAnga utilization logic.
        city=chennai,
        date=Date(2018, 7, 14),
        computation_system=ComputationSystem.
        MULTI_NEW_MOON_SIDEREAL_MONTH_ADHIKA__CHITRA_180,
        previous_day_panchaanga=panchaanga)
    assert panchaanga.lunar_month_sunrise.index == 4

    # Online : https://www.drikpanchang.com/panchang/month-panchang.html?date=21/07/2018
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2018, 7, 21),
        computation_system=ComputationSystem.
        MULTI_NEW_MOON_SIDEREAL_MONTH_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 4
Пример #2
0
def test_SolsticePostDark10AdhikaAssigner():
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2019, 12, 1),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 10.5

    # Though this month contained a solstice on amAvAsyA, it is not intercalary since the preceeding solstice was intercalary.
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2020, 6, 1),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 4

    # Though this month contained a solstice on amAvAsyA, it is not intercalary since the preceeding solstice was intercalary.
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2020, 6, 21),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 4

    # Though this month is after a post-dark10 solstice, it does not succeed an adhikamAsa in the ayanANta.
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2020, 10, 3),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 8
Пример #3
0
def test_MultiFullMoonAssigner():
    # Online - https://www.drikpanchang.com/panchang/month-panchang.html?date=13/07/2018 https://www.prokerala.com/astrology/panchang/2018-july-13.html
    # karka-sankrAnti was on 16th.
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2018, 7, 13),
        computation_system=ComputationSystem.
        MULTI_FULL_MOON_SIDEREAL_MONTH_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 4
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2018, 7, 14),
        computation_system=ComputationSystem.
        MULTI_FULL_MOON_SIDEREAL_MONTH_ADHIKA__CHITRA_180,
        previous_day_panchaanga=panchaanga)
    assert panchaanga.lunar_month_sunrise.index == 4
Пример #4
0
    def compute_angas(self, compute_lagnas=True):
        """Compute the entire panchaanga
    """

        # INITIALISE VARIABLES
        self.date_str_to_panchaanga: Dict[str, daily.DailyPanchaanga] = {}

        #############################################################
        # Compute all parameters -- sun/moon latitude/longitude etc #
        #############################################################

        for d in range(-self.duration_prior_padding,
                       self.duration_posterior_padding - 1):
            # The below block is temporary code to make the transition seamless.
            date_d = time.jd_to_utc_gregorian(self.jd_start + d)
            date_d.set_time_to_day_start()
            previous_daily_panchaanga = self.date_str_to_panchaanga.get(
                date_d.offset_date(days=-1).get_date_str(), None)
            daily_panchaanga = daily.DailyPanchaanga(
                city=self.city,
                date=date_d,
                computation_system=self.computation_system,
                previous_day_panchaanga=previous_daily_panchaanga)
            if compute_lagnas:
                daily_panchaanga.get_lagna_data()
            self.date_str_to_panchaanga[
                date_d.get_date_str()] = daily_panchaanga
Пример #5
0
 def get(self, latitude, longitude, year, month, day):
     args = self.get_parser.parse_args()
     city = City("", latitude, longitude, args['timezone'])
     panchaanga = daily.DailyPanchaanga(city=city,
                                        date=Date(year=int(year),
                                                  month=int(month),
                                                  day=int(day)))
     return panchaanga.day_length_based_periods.to_json_map()
Пример #6
0
def panchaanga_json_comparer(city, date):
    expected_content_path = os.path.join(
        TEST_DATA_PATH, '%s-%s.json' % (city.name, date.get_date_str()))
    panchaanga = daily.DailyPanchaanga(city=city, date=date)
    timebudget.report(reset=True)
    testing.json_compare(actual_object=panchaanga,
                         expected_content_path=expected_content_path)
    return panchaanga
Пример #7
0
def test_tb_muhuurta_blr():
    city = City.get_city_from_db('Bangalore')
    panchaanga = daily.DailyPanchaanga(city=city,
                                       date=Date(year=2019, month=9, day=10))
    assert len(panchaanga.day_length_based_periods.fifteen_fold_division.
               tb_muhuurtas) == 15
    assert panchaanga.day_length_based_periods.fifteen_fold_division.tb_muhuurtas[
        0].jd_start == panchaanga.jd_sunrise
    for muhurta in panchaanga.day_length_based_periods.fifteen_fold_division.tb_muhuurtas:
        logging.info(muhurta.to_localized_string(city=city))
Пример #8
0
def test_get_samvatsara():
    city = City.get_city_from_db('Bangalore')
    panchaanga = daily.DailyPanchaanga(city=city,
                                       date=Date(year=2019, month=9, day=10))
    assert panchaanga.get_samvatsara(
        month_type=RulesRepo.LUNAR_MONTH_DIR).get_name(
            script=sanscript.DEVANAGARI) == "विकारी"
    panchaanga = daily.DailyPanchaanga(city=city,
                                       date=Date(year=2020, month=2, day=10))
    assert panchaanga.get_samvatsara(
        month_type=RulesRepo.LUNAR_MONTH_DIR).get_name(
            script=sanscript.DEVANAGARI) == "विकारी"
    panchaanga = daily.DailyPanchaanga(city=city,
                                       date=Date(year=2020, month=4, day=10))
    assert panchaanga.get_samvatsara(
        month_type=RulesRepo.LUNAR_MONTH_DIR).get_name(
            script=sanscript.DEVANAGARI) == "शार्वरी"
    panchaanga = daily.DailyPanchaanga(city=city,
                                       date=Date(year=2020, month=4, day=10))
    assert panchaanga.get_samvatsara(
        month_type=RulesRepo.TROPICAL_MONTH_DIR).get_name(
            script=sanscript.DEVANAGARI) == "शार्वरी"
    panchaanga = daily.DailyPanchaanga(city=city,
                                       date=Date(year=2020, month=4, day=10))
    assert panchaanga.get_samvatsara(
        month_type=RulesRepo.SIDEREAL_SOLAR_MONTH_DIR).get_name(
            script=sanscript.DEVANAGARI) == "विकारी"
    panchaanga = daily.DailyPanchaanga(city=city,
                                       date=Date(year=2020, month=4, day=20))
    assert panchaanga.get_samvatsara(
        month_type=RulesRepo.SIDEREAL_SOLAR_MONTH_DIR).get_name(
            script=sanscript.DEVANAGARI) == "शार्वरी"
Пример #9
0
def test_sunrise_mtv():
    city = City.get_city_from_db('Cupertino')
    panchaanga = daily.DailyPanchaanga(city=city,
                                       date=Date(year=2018, month=11, day=11))
    panchaanga.compute_sun_moon_transitions()
    numpy.testing.assert_approx_equal(panchaanga.jd_sunrise, 2458434.11)
Пример #10
0
def test_SolsticePostDark10AdhikaAssigner():
    """See https://vishvasa.github.io/jyotiSham/history/kauNDinyAyana/
 for a convenient list of verified solsticial lunar months."""
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2019, 12, 1),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 10.5

    # Though this month contained a solstice on amAvAsyA, it is not intercalary since the preceding solstice was intercalary.
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2020, 6, 1),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 4

    # Though this month contained a solstice on amAvAsyA, it is not intercalary since the preceding solstice was intercalary.
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2020, 6, 21),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 4

    # Though this month is after a post-dark10 solstice, it does not succeed an adhikamAsa in the ayanANta.
    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2020, 10, 3),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 8

    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2020, 12, 15),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 11

    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2020, 12, 16),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 11

    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2021, 7, 11),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 6

    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2022, 1, 1),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 11

    panchaanga = daily.DailyPanchaanga(
        city=chennai,
        date=Date(2022, 12, 21),
        computation_system=ComputationSystem.
        SOLSTICE_POST_DARK_10_ADHIKA__CHITRA_180)
    assert panchaanga.lunar_month_sunrise.index == 10.5