counterfactual_chart
A birth chart, perturbed — a 'what if'. Give a base chart (date+lat+lon) and an edit: shift_time (e.g. '1h', '-30m', 'P1D') moves the instant ("born an hour later"), move_lat+move_lon recompute at another place, and/or set_longitudes moves bodies to new ecliptic degrees ("Mars in the next sign"). Returns the diff vs the original: bodies that changed sign or house, aspects gained or lost, and angles that changed sign. A time/place edit rotates the houses and angles while planets stay put; a longitude splice moves only those bodies and recomputes their aspects.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| lat | Yes | Latitude, north positive | |
| lon | Yes | Longitude, EAST positive (Americas are negative) | |
| date | Yes | UTC date-time, ISO 8601, e.g. 1990-06-10T14:30:00Z. Convert local birth time to UTC first. | |
| zodiac | No | tropical (default) or sidereal:<ayanamsa> | tropical |
| move_lat | No | Recompute at this latitude instead of the birth latitude | |
| move_lon | No | Recompute at this longitude instead of the birth longitude | |
| shift_time | No | Duration to shift the instant: '1h', '-30m', 'P1Y' | |
| house_system | No | House system (default placidus). Case- and spacing-insensitive; valid: placidus, whole_sign, equal, porphyry, koch, regiomontanus, campanus, alcabitius, morinus, meridian, polich_page, vehlow (aliases like "whole sign" also work). | placidus |
| set_longitudes | No | Move bodies to these ecliptic longitudes in degrees, e.g. { "mars": 45 } |