v6.1.3: D9/D60 engine upgrade + 5 bottleneck rules tuned
Engine (yoga_engine.py): - Added D60/Shashtiamsa context injection (d60_house_of, d60_sign_of, etc.) - Added D9 dignity queries (is_exalted_in_d9, is_own_sign_in_d9, etc.) - Added functional_malefics() / functional_benefics() - Added is_shashtiamsa_evil/good() and vaiseshikamsa_score() - Exposed all new methods to rule expression sandbox Data (_compute_one_chart.py): - Generate D60 positions alongside D1/D9 - Inject D60 into context for all computed charts Rules (yoga_rules.json): - thrikaala_gnana: D1 strong = exalted/own/moola only (kendra/trikona removed) + D9 strong check (at least 1 of 3 in D9 exalted/own/moola) FP: 12→0, FN: stable - dharidhra: restored method1 (L2/L11 in dusthana + unfriendly navamsa + malefic aspect) FN reduced - bandhubhisthyaktha: added is_shashtiamsa_evil(lord_4) - nishkapata: added vaiseshikamsa_score(lord(1)) >= 15 - kapata: reverted functional_malefics (caused 22 FN), back to MALEFICS Validation: - FP: 45→39 (-6) - FN: 72→67 (-5) - F1: 94.35%→94.88% (+0.53%) - Precision: 95.60%→96.18% (+0.58%) New scripts: - scripts/add_d60_to_test_charts.py: batch D60 augmentation - scripts/ashtottari_dasha.py, yogini_dasha.py, kalachakra_dasha.py - scripts/report_orchestrator.py D60 data added to all 60 standard test charts.
This commit is contained in:
@@ -104,9 +104,11 @@ def compute_yogas(chart):
|
||||
|
||||
d1_positions = drik.dhasavarga(jd, place, 1)[:9]
|
||||
d9_positions = drik.dhasavarga(jd, place, 9)[:9]
|
||||
d60_positions = drik.dhasavarga(jd, place, 60)[:9]
|
||||
asc_info = drik.ascendant(jd, place)
|
||||
d1_asc_sign, d1_asc_degree = asc_info[0], asc_info[1]
|
||||
d9_asc_sign, d9_asc_degree = drik.dasavarga_from_long(d1_asc_sign * 30 + d1_asc_degree, 9)
|
||||
d60_asc_sign, d60_asc_degree = drik.dasavarga_from_long(d1_asc_sign * 30 + d1_asc_degree, 60)
|
||||
tithi_info = drik.tithi(jd, place)
|
||||
tithi_no = int(tithi_info[0]) if tithi_info else None
|
||||
lunar_phase = None
|
||||
@@ -128,6 +130,11 @@ def compute_yogas(chart):
|
||||
"ascendant_degree": d9_asc_degree,
|
||||
"planets": _planet_dict_from_pyjhora_positions(d9_positions, d9_asc_sign),
|
||||
},
|
||||
"d60": {
|
||||
"ascendant": SIGNS[d60_asc_sign],
|
||||
"ascendant_degree": d60_asc_degree,
|
||||
"planets": _planet_dict_from_pyjhora_positions(d60_positions, d60_asc_sign),
|
||||
},
|
||||
"panchanga": {
|
||||
"tithi": tithi_no,
|
||||
"paksha": lunar_phase,
|
||||
|
||||
Reference in New Issue
Block a user