Chiron — le 14e corps
Ketu v1.3 ajoute Chiron comme 14e corps céleste. Chiron est un petit corps du système solaire (un centaure) en orbite entre Saturne et Uranus, portant une signification astrologique en tant que « Guérisseur blessé ». Il est accessible via toutes les fonctions de calcul standard de Ketu en utilisant body_id=13.
Détails d’implémentation
Propriété |
Valeur |
|---|---|
|
13 |
Plage de dates valide |
1900-01-01 à 2100-12-31 (Jours Juliens 2415020.5 à 2488069.5) — étendu en v1.4 |
Précision de position |
erreur max 0,001214° (sous-arcminute, ~4 arcsecondes) — améliorée en v1.4 |
Méthode d’évaluation |
Évaluation de polynôme de Chebyshev Pure NumPy |
Dépendance au runtime |
Aucune — coefficients embarqués dans |
Les coefficients de Chebyshev ont été générés hors ligne à l’aide de Swiss Ephemeris (build uniquement, isolation AGPL). Au runtime, Ketu utilise Pure NumPy — aucune dépendance pyswisseph requise.
Accéder à Chiron via les fonctions de calcul
Chiron utilise la même API que tout autre corps — il suffit de passer body_id=13.
from ketu.calculations import long, lat
jd = 2451545.0 # J2000: 2000-01-01 12:00 UTC
chiron_lon = long(jd, 13) # ~251.6125 degrees
chiron_lat = lat(jd, 13)
print(f"Chiron longitude: {chiron_lon:.4f} deg")
print(f"Chiron latitude: {chiron_lat:.4f} deg")
Vous pouvez aussi calculer les propriétés de Chiron aux côtés d’autres corps :
from ketu.calculations import long, lat
jd = 2451545.0
body_ids = [0, 1, 13] # Sun, Moon, Chiron
lons = [long(jd, b) for b in body_ids]
Chiron dans un thème natal
compute_chart retourne un tableau structuré avec un champ body_lons de shape [14]. L’index 13 est Chiron.
from ketu.charts import compute_chart
jd = 2451545.0
chart = compute_chart(jd, 48.8566, 2.3522) # Paris, J2000
chiron_longitude = chart["body_lons"][13]
chiron_latitude = chart["body_lats"][13]
chiron_speed = chart["body_speeds"][13] # degrees/day
print(f"Chiron at {chiron_longitude:.4f} deg")
Toutes les fonctions de thèmes relationnels (synastrie, composite, retours) héritent de Chiron automatiquement — il apparaît à l’index 13 dans chaque champ body_lons, body_lats, body_speeds, aspect_matrix et aspect_orbs.
Plage de dates et comportement en cas d’erreur
Les coefficients embarqués de Chiron couvrent 1900-01-01 à 2100-12-31 (étendu en v1.4). Toute entrée hors de cette plage est silencieusement clampée à la limite de segment la plus proche — aucune ValueError n’est levée :
from ketu.calculations import long
# Out-of-range JD: result is clamped to the nearest boundary (no exception)
chiron_lon = long(2300000.0, 13) # clamped to the 1900/2100 edge
Pour les dates dans la plage, l’erreur de position est garantie d’être au plus 0,001214° (environ 4 arcsecondes), bien en dessous de la cible 0,01° définie lors du spike Chebyshev (Phase 23).
Changement incompatible dans v1.3 (D-08)
Avant v1.3, CHART_DTYPE avait un champ body_lons[13] (indices 0–12). L’ajout de Chiron l’a étendu à body_lons[14] (indices 0–13). Tout code qui codait en dur le nombre de corps (13) ou accédait aux tableaux de corps par index numérique fixe au-delà de 12 doit être mis à jour.
Voir le Guide de migration pour le chemin de mise à jour complet de v1.2 vers v1.3.
Prochaines étapes
Référence API — liste complète des signatures
ketu.calculationsGuide de migration — mise à jour depuis v1.2, changements d’axe de corps D-08