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
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
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
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
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()
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
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))
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) == "शार्वरी"
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)
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