Instructor notes: Retrograde Motion: Apparent Longitude from Relative Motion
Overview
Navigation
- Instructor hub: /demos/_instructor/
- Student demo: /play/retrograde-motion/
- This demo: Model · Activities · Assessment · Backlog
This guide is instructor-facing Student demo:
/play/retrograde-motion/Demo source:apps/demos/src/demos/retrograde-motion/Demo logic:apps/demos/src/demos/retrograde-motion/main.ts
Where to go next
- Model + math + assumptions:
apps/site/src/content/instructor/retrograde-motion/model.md- In-class activities:
apps/site/src/content/instructor/retrograde-motion/activities.md- Assessment bank:
apps/site/src/content/instructor/retrograde-motion/assessment.md- Future enhancements:
apps/site/src/content/instructor/retrograde-motion/backlog.md
Controls worth knowing before you teach
- Observer / Target selectors drive everything. The presets are Earth to Mars, Venus, Jupiter, Saturn.
- Transport row (play, pause, step) plus a scrub slider for model day.
- Center on retrograde jumps to the middle of the nearest retrograde interval. Use this instead of hunting.
- Overlays: line of sight, sky-longitude arc, reference axis, zodiac band, other planets.
- The lower panel plots sky longitude against time; retrograde intervals are shaded.
Why this demo exists
Why This Matters Retrograde motion is the observation that broke geocentric astronomy, and it is still the cleanest classroom example of an apparent motion that is entirely a viewing-geometry effect. Students almost universally hear “Mars goes backwards” and picture Mars actually reversing along its orbit, braking and turning around. Nothing in the sky requires that. This demo shows both orbits running steadily forward the whole time while the direction from Earth to Mars swings backward for a few weeks.
The demo’s second job is subtler and more valuable: it lets a student build a rule from one planet and then break it with another. That is a rehearsal of how science actually goes.
Learning goals (ASTR 101 and ASTR 201)
Students should be able to:
- Define retrograde motion as an apparent reversal of a planet’s direction in the sky, caused by relative motion and line-of-sight geometry, and state explicitly that neither orbit reverses.
- Read apparent (sky) longitude as the direction from the observer planet to the target planet, and connect a negative slope on the longitude plot to a retrograde interval.
- Identify stationary points as the moments where the slope of sky longitude is zero, and describe them as the boundaries of retrograde rather than as physical events at the planet.
- Explain why a superior planet goes retrograde near opposition while an inferior planet goes retrograde near inferior conjunction, using a single rule that covers both.
10 to 15 minute live-teach script (projector)
Have the demo open on the Earth to Mars preset with the line of sight overlay on.
-
Commit to a prediction first. Before touching anything: “Mars is out there orbiting the Sun. In a few weeks it will appear to move backwards against the stars. Show me with your hand what Mars does in its orbit.” Most of the room will trace a reversal. Do not correct it yet. Say you will come back to it.
-
Watch the orbits, not the sky. Press play and let both planets go round once. Ask: “Did either planet ever slow down, stop, or reverse?” They did not, and students can see it. Pause and note that whatever retrograde is, it is not that.
-
Now watch the line of sight. Press Center on retrograde. Step forward day by day through the shaded interval and point at the sight line sweeping backward across the reference axis. Ask: “Both planets are still moving forward. What is moving backward?” The answer you want is the direction from Earth to Mars, not Mars.
-
Read the plot. Move to the longitude panel. Ask: “What is different about the shaded stretch?” The slope is negative. Define a stationary point as where the slope is zero: the start and end of retrograde. Stress that nothing happens at Mars at a stationary point.
-
Explain the overtaking. Point out that Earth is closer to the Sun, so Earth moves faster and completes an orbit sooner. During retrograde, Earth is passing Mars on the inside, and the sight line swings backward the way a slower car appears to drift backwards when you overtake it on a motorway. Note that this happens when Mars is opposite the Sun in our sky: opposition.
-
Break the rule. Switch the target to Venus and press Center on retrograde. Ask: “Where is Venus when it goes retrograde? Is Earth overtaking Venus?” It is not. Venus is between Earth and the Sun (inferior conjunction), and Venus is the one doing the overtaking, because Venus is closer to the Sun and therefore faster.
-
Land the general rule. The rule that survives both cases is: the inner planet always moves faster and overtakes the outer one; retrograde happens for whichever planet we are watching while that pass takes place. For a superior target we are the overtaker, and it happens at opposition. For an inferior target we are the overtaken, and it happens at inferior conjunction.
-
Close the loop on step 1. Return to the opening prediction. “Who traced a reversal with their hand? What would you trace now?”
If you only have five minutes: run steps 1, 3, and 6. The prediction, the sight line, and the Venus counterexample are the load-bearing beats.
Common student responses, and what to do with them
| What you will hear | What is going on | Move |
|---|---|---|
| ”Mars slows down and turns around.” | The target misconception. | Replay the orbit view with the sky panel hidden. Nothing reverses. |
| ”It’s an illusion, it isn’t real.” | Over-correction. The apparent motion is a real, measurable observation. | ”The motion in the sky is completely real and we can measure it. What is not real is a reversal in the orbit." |
| "It happens because Mars is closest then.” | Conflates retrograde with distance or brightness. | True that Mars is nearest at opposition, but ask what would happen if Mars were nearer and not being overtaken. |
| ”Earth overtakes it.” | Correct for Mars, wrong for Venus. | This is the good mistake. Go straight to step 6. |
Suggested connections to other demos
- Planetary conjunctions: the same relative-motion clock. Retrograde recurs once per synodic period, which is exactly the quantity that demo measures.
- Parallax distance: both are apparent shifts caused by the observer moving, at different scales and timescales.
- Kepler’s laws: why the inner planet is the faster one, rather than that being an arbitrary fact.
Activities
Navigation
- Instructor hub: /demos/_instructor/
- Back to this demo guide: Guide
- Student demo: /play/retrograde-motion/
- This demo: Model · Activities · Assessment · Backlog
Links Student demo:
/play/retrograde-motion/Main guide:apps/site/src/content/instructor/retrograde-motion/index.mdModel deep dive:apps/site/src/content/instructor/retrograde-motion/model.md
Materials and setup
- One device per pair is enough; one per student is better for the lab.
- Nothing to install and no login. Works offline once the page has loaded.
- For the overtaking demonstration you need about three metres of clear floor.
- Print the station card from
/stations/retrograde-motion/if you are running the rotation.
Warm-up without the computer (3 min, whole class)
Kinesthetic: overtaking on the inside Two volunteers walk in concentric circles around a third student who plays the Sun. The inner walker (Earth) moves faster and keeps a smaller circle; the outer walker (Mars) moves slowly.
Ask the class to watch only the direction from the inner walker to the outer walker, sighting along an outstretched arm. As the inner walker passes on the inside, that arm swings backwards relative to the far wall, even though both walkers are going the same way the whole time.
Say this out loud: “Nobody reversed. The arm reversed.” Then open the demo.
MW Quick Exploration (3 to 5 min, pairs)
TPS: Does Mars reverse? Think (30 s): “During retrograde, what does Mars do in its orbit around the Sun?”
Pair (60 s): Agree on a one-sentence answer and a hand gesture for it.
Share (1 to 2 min): With the Earth to Mars preset, press Center on retrograde, then step through the interval with the orbit view visible.
- Watch each planet’s dot travel round its own orbit.
- Watch the line of sight sweep across the reference axis.
- Read the sign of the slope on the longitude plot.
Debrief script: “Both orbits ran forward the entire time. What reversed was the direction from us to Mars. Retrograde is a statement about our line of sight, not about Mars.”
MW Short Investigation (8 to 12 min, pairs or triads)
Investigation: Where in the geometry does retrograde happen? Task: Fill in this table using Center on retrograde for each target, then reading the orbit panel at the middle of the shaded interval.
Target Where is the target relative to the Sun, as seen from Earth? Which planet is passing which? Mars Jupiter Saturn Venus Prompt: “Three of these rows look the same and one does not. Which one, and what is different about that planet?”
Expected pattern: Mars, Jupiter and Saturn all go retrograde when they sit opposite the Sun in our sky (opposition), and in all three cases Earth is passing them on the inside. Venus goes retrograde when it lies between us and the Sun (inferior conjunction), and Venus is passing us.
The rule to converge on: the inner planet is always the faster one and always does the overtaking. Which planet that is depends on whether the target is inside or outside Earth’s orbit.
Share-out (2 to 3 min) Ask a group that wrote “Earth overtakes it” in every row to read their Venus row aloud, then run the Venus preset on the projector. This is a productive wrong answer and worth the airtime; do not pre-empt it.
Friday Astro Lab (20 to 30+ min, groups of 3 to 4)
Astro Lab: Falsify a rule you just built Deliverable: One page, with a table, a diagram, and a revised rule.
Stage 1 — Build the rule (8 min). Using Mars, Jupiter and Saturn, write a rule in your own words that predicts when a planet will go retrograde. Your rule must be specific enough that someone else could use it to make a prediction.
Stage 2 — Test it (5 min). Apply your rule to Venus and write down what it predicts. Then run the Venus preset and record what actually happens.
Stage 3 — Revise (7 min). Write a corrected rule that works for all four targets. State plainly which part of your first rule failed and why.
Stage 4 — Explain (5 min). In two or three sentences, explain why the corrected rule is really one idea and not two special cases. Use the words faster, inner, and line of sight.
What good work looks like: the revised rule refers to the inner planet overtaking the outer one, and the student can say that opposition and inferior conjunction are the two ways that same pass can look from Earth, depending on which side of us the target orbits.
Common stopping point: groups that get stuck usually still think retrograde is caused by the target rather than by the pair. Ask them: “Retrograde of what, as seen from where?”
Station version (for the Cosmic Playground capstone rotation)
Station card: Retrograde Motion (6 to 8 minutes) Demo setup: Earth to Mars preset, line of sight on, then Center on retrograde.
Your station artifact (fill in):
- Control(s): observer planet, target planet, model day
- Observable(s): sky longitude, sign of its slope, shaded retrograde interval
- Governing idea, in words: retrograde occurs while the slope of sky longitude is negative, which happens when the inner planet passes the outer one.
- Sanity check: switch the target to Venus. Does retrograde still happen at opposition? Write down what you see instead.
- Connection sentence: “This is evidence for a Sun-centred solar system because…”
Word bank + sanity checks Word bank:
- Retrograde motion: a temporary reversal in a planet’s apparent direction against the background stars.
- Prograde motion: the normal direction, the same way the planets orbit.
- Sky (apparent) longitude: the direction from the observer planet to the target, measured as an angle. This is what the lower plot shows.
- Stationary point: a moment when sky longitude stops changing, so the slope is zero. It marks the start or end of retrograde and corresponds to nothing at all happening at the planet itself.
- Opposition: the target is opposite the Sun in our sky, so Earth sits between the Sun and the target. Only possible for planets outside Earth’s orbit.
- Inferior conjunction: the target passes between Earth and the Sun. Only possible for planets inside Earth’s orbit.
Sanity checks:
- Neither orbit ever reverses. If a student says a planet turns around, replay the orbit panel alone.
- Nothing physical happens at a stationary point. It is a property of the changing sight line.
- Retrograde is not rare or ominous. Every planet does it, on a regular schedule set by the synodic period.
- Time in this demo is model days, not calendar dates. Do not look up a real retrograde window and expect it to match.
Assessment
Navigation
- Instructor hub: /demos/_instructor/
- Back to this demo guide: Guide
- Student demo: /play/retrograde-motion/
- This demo: Model · Activities · Assessment · Backlog
How to use this bank Every item carries a demo setup so you can reproduce it live, plus what each distractor tells you about the student’s model. The recovery moves assume you are looking at a histogram, not at individual students.
Clicker questions
Clicker 1: What actually reverses? Prompt: During Mars’s retrograde motion, what reverses direction?
A. Mars, in its orbit around the Sun B. Earth, in its orbit around the Sun C. The direction from Earth to Mars, as seen against the background stars D. Mars’s rotation on its own axis
Correct: C.
Reasoning: Both planets orbit steadily in the same direction throughout. What changes sign is the rate of change of the sight line from Earth to Mars.
Distractors to listen for:
- A: the central misconception, and the one most students arrive with. Expect this to be the plurality on a first ask.
- B: a student who has grasped that it is about relative motion but has put the reversal on the wrong object.
- D: conflates orbital motion with rotation; rare, but tells you the vocabulary has not landed.
Demo setup: Earth to Mars, Center on retrograde, orbit panel visible. Step through the shaded interval and ask the class to watch each dot in turn.
If more than 40% choose A: do not explain. Hide the sky panel, replay one full orbit, and ask only “did either dot ever reverse?” Then re-vote. The correction has to come from the observation, not from you.
Clicker 2: Where does it happen? Prompt: A planet outside Earth’s orbit appears to go retrograde when it is:
A. At its closest approach to the Sun B. Opposite the Sun in our sky, with Earth between the Sun and the planet C. Behind the Sun from our point of view D. At a random point, with no particular pattern
Correct: B (opposition).
Reasoning: Retrograde for a superior planet happens while Earth passes it on the inside, which is exactly when the planet sits opposite the Sun from us.
Distractors to listen for:
- A: confuses the planet’s own perihelion with an Earth-relative geometry.
- C: this is superior conjunction, when the planet is least observable and moving fastest prograde.
- D: has not yet connected retrograde to a repeating relative-motion cycle.
Demo setup: run Center on retrograde for Mars, Jupiter and Saturn in turn and note the geometry is the same each time.
Clicker 3: The Venus exception Prompt: Venus also goes retrograde. When Venus is retrograde, which planet is overtaking which?
A. Earth is overtaking Venus, just as Earth overtakes Mars B. Venus is overtaking Earth C. Neither; Venus genuinely reverses because it is so close to the Sun D. They are moving in opposite directions around the Sun
Correct: B.
Reasoning: Venus orbits inside Earth’s orbit, so Venus moves faster and completes an orbit sooner. Venus does the passing, and it happens at inferior conjunction, when Venus is between us and the Sun. The rule that covers both Venus and Mars is that the inner planet always overtakes the outer one.
Distractors to listen for:
- A: the most valuable wrong answer in this bank. It means the student built a real rule from the Mars case and over-generalised it. Praise the reasoning before correcting the conclusion.
- C: reverts to the orbital-reversal misconception under pressure from an unfamiliar case.
- D: all planets orbit the same way; worth stating explicitly if this gets any traction.
Demo setup: switch target to Venus, Center on retrograde, and read the orbit panel. Venus is between Earth and the Sun.
This is the item worth spending time on. A class can score well on Clickers 1 and 2 with a memorised script and still fail this one.
Short answer
Short answer 1: The two-motion explanation Prompt (3 to 4 sentences): Explain why Mars appears to move backwards for a few weeks even though it never reverses its orbit. Your answer must refer to both planets and to the direction from Earth to Mars.
Answer key (core ideas, roughly one point each):
- Earth orbits closer to the Sun and therefore moves faster, completing an orbit in less time than Mars.
- Around opposition, Earth passes Mars on the inside.
- During that pass, the direction from Earth to Mars swings backwards against the distant stars.
- Both planets continue prograde the whole time; only the sight line reverses.
Partial credit: an answer that gets 3 and 4 but never mentions the speed difference has described the observation without the cause. Prompt with “why does the sight line swing back?”
Short answer 2: Reading the plot Prompt: The lower panel plots sky longitude against time. Describe what the curve does during a retrograde interval, and say what a stationary point is in terms of that curve. Then state what is happening at the planet itself at a stationary point.
Answer key: During retrograde the curve has a negative slope, so sky longitude decreases with time. A stationary point is where the slope is zero, marking the boundary between prograde and retrograde. Nothing is happening at the planet. It continues along its orbit at essentially the same speed; the stationary point is a property of how the sight line is changing, not an event at Mars.
Watch for: students who describe a stationary point as the planet “stopping”. This is the most common surviving fragment of the misconception and it is worth a direct correction.
Short answer 3 (ASTR 201 extension): Why this sank geocentrism Prompt: Ptolemy’s geocentric model explained retrograde motion using epicycles, small circles that planets ride while orbiting Earth. The heliocentric explanation needs no epicycles at all. Using this demo, explain what the heliocentric model gets for free that the geocentric model has to add by hand.
Answer key: In the heliocentric picture, retrograde falls out of two planets moving at different speeds on simple paths; nothing extra is introduced. The geocentric model must add a separate epicycle for each planet, tuned to that planet, purely to reproduce the reversal. The heliocentric model also predicts when retrograde happens (at opposition for superior planets, inferior conjunction for inferior ones) as a consequence of the geometry, rather than as a fitted parameter.
Strong answers notice that the demo never contains anything called “retrograde”; it computes a direction between two moving points, and retrograde emerges.
Exit ticket (1 minute)
Exit ticket: One sentence, one correction Prompt: A classmate writes: “Mars goes retrograde because Earth overtakes it, and the same thing happens with Venus.” One half of that sentence is right and one half is wrong. Say which is which, and fix the wrong half.
Expected: The Mars half is right. The Venus half is wrong: Venus orbits inside Earth’s orbit, so Venus is faster and Venus overtakes Earth, at inferior conjunction rather than opposition.
Fast triage: anyone who says the whole sentence is right has generalised from one case. Anyone who says the whole sentence is wrong has probably not accepted the overtaking picture at all. Those are different follow-ups.
Model notes (deeper)
Navigation
- Instructor hub: /demos/_instructor/
- Back to this demo guide: Guide
- Student demo: /play/retrograde-motion/
- This demo: Model · Activities · Assessment · Backlog
Links Student demo:
/play/retrograde-motion/Physics model:packages/physics/src/retrogradeMotionModel.tsDemo logic:apps/demos/src/demos/retrograde-motion/main.tsPhysics review:docs/reviews/retrograde-motion.md
What the demo is modeling (big picture)
Two planets orbit the Sun on fixed, coplanar Keplerian ellipses. At each instant the demo computes the direction from the observer planet to the target planet and plots how that direction changes with time. Retrograde motion is not put in anywhere; it emerges.
That is the pedagogical point worth stating to a class: nothing in the source code is called “retrograde”. The model computes a direction between two moving points, and the reversal appears on its own.
Orbital elements
Each planet uses JPL approximate elements for the interval 1800 to 2050 (Standish, Table 1), taken from https://ssd.jpl.nasa.gov/planets/approx_pos.html:
| Planet | (AU) | Longitude of perihelion (deg) | Mean longitude at epoch (deg) | |
|---|---|---|---|---|
| Venus | 0.72333566 | 0.00677672 | 131.60 | 181.98 |
| Earth | 1.00000261 | 0.01671123 | 102.94 | 100.46 |
| Mars | 1.52371034 | 0.09339410 | 336.06 | 355.45 |
| Jupiter | 5.20288700 | 0.04838624 | 14.73 | 34.40 |
| Saturn | 9.53667594 | 0.05386179 | 92.60 | 49.95 |
Inclination is omitted. All orbits are placed in one plane. This is the single largest simplification and it is deliberate: a coplanar model gives the correct qualitative retrograde behaviour and keeps the geometry drawable in two dimensions. It is also why the demo must not be used to predict real retrograde dates.
Apparent (sky) longitude
With observer at and target at , the apparent longitude is the direction of the sight line in the inertial frame:
wrapped into degrees. This is the quantity plotted in the lower panel, and it is what an observer on the observer planet would measure against the distant stars.
Because the wrapped value jumps by 360 degrees when it crosses the branch cut, the demo also keeps an unwrapped version, adding or subtracting 360 whenever consecutive samples differ by more than 180 degrees. The unwrapped curve is the one whose slope is meaningful.
Defining retrograde
Retrograde is defined as the interval where the unwrapped longitude is decreasing:
The derivative is evaluated by central difference on an internal step of model days, independent of whatever step the user is scrubbing at. A stationary point is where this derivative crosses zero, located to a tolerance of day.
Two things are worth being explicit about with students:
- The sign convention is a choice about which way we call “forward” in the sky. It is not a physical asymmetry.
- A stationary point is a property of the derivative of a computed angle. Nothing happens at the planet. Students frequently describe stationary points as the planet “stopping”, and that is the misconception in its last hiding place.
Why the inner planet always overtakes
This is the piece students most often get half right, so it is worth having the argument ready.
For a circular orbit of radius around a mass , the orbital speed is
so a smaller orbit means a faster planet. The orbital period follows Kepler’s third law, , so a smaller orbit also means a shorter period. Both statements point the same way: the inner planet completes an orbit sooner and does the passing.
Which planet that is depends on the target:
| Target | Inner planet | Retrograde occurs at | From Earth, the target is |
|---|---|---|---|
| Venus | Venus | inferior conjunction | between us and the Sun |
| Mars, Jupiter, Saturn | Earth | opposition | opposite the Sun in our sky |
The unified statement is that retrograde happens while the inner planet passes the outer one. Everything else is bookkeeping about which side of Earth’s orbit the target lives on.
Notice also that Jupiter and Saturn barely move during the pass, so their retrograde geometry is nearly the limiting case of Earth going round a fixed point. Mars, with a period closest to Earth’s, takes the longest to come back round to the same configuration. That is the same fact the planetary-conjunctions demo measures as the synodic period.
Time in this demo
Time is model days. One model month is defined as exactly 30 model days. The demo makes no calendar-date claims and the coplanar approximation would not support them if it tried. If a student looks up a real retrograde window and finds it does not match, that is the model behaving as documented, and it is a good opening for a conversation about what a model is for.
Assumptions and honest limitations
- Coplanar. Real orbital inclinations are omitted. Retrograde loops in the real sky trace S-shapes or loops because of inclination; this model produces the longitude reversal only.
- Fixed elements. No planetary perturbations, no precession of the elements over the model interval.
- Two bodies at a time. The “show other planets” overlay draws additional orbits, but the longitude calculation always involves exactly the selected observer and target.
- No light travel time, no aberration. Both are far below the resolution of anything this demo displays.
- Not ephemeris-grade. Positions are approximate elements evaluated analytically, not integrated.
Verification status
The coordinate chain was audited end to end for sign errors in the physics review (docs/reviews/retrograde-motion.md), which found none: the pixel transform is a clean with no x-mirror, unlike some sibling demos. The known outstanding items are recorded in backlog.md, and one wording issue is worth repeating here because it is easy to reintroduce: any annotation that says “Earth overtaking the target” is wrong for Venus. Keep annotation copy geometry-neutral, in terms of the speed difference between the two orbits.
Backlog
Scope note: These are future improvements for the
retrograde-motioninstrument. They are intentionally split into (A) “SoTA UX + pedagogy”, (B) “Model extensions that remain honest”, and (C) “Physics correctness hardening”.
A) SoTA UX + pedagogy (fun + teachable)
-
Time travel controls (past/future)
- Add a window-start control (allow negative model days) and a “jump to…” input.
- Add quick buttons: “Go back 10 months”, “Go forward 10 months”, “Center on nearest retrograde”.
- Guardrail copy: keep “model day” messaging front-and-center (no calendar claims).
-
Story mode overlays (toggleable)
- Velocity arrows for observer + target at the current time (recommended by design spec).
- A small “sweep direction” indicator for the sign of at the current time.
- A “line-of-sight history” overlay (fading) for the last model days.
-
Plot UX polish
- Add axis ticks/labels: (day) and (deg).
- Add a “zoom to retrograde interval” button (sets window to [start-, end+]).
- Add “hover/focus tooltip” at cursor: , , (must work on keyboard focus, not hover-only).
-
Make it playful
- “Compare two targets” mode: same observer, two targets on the same plot (clearly labeled; no color-only meaning).
- “Race” mode: animate time at a user-controlled rate (must respect reduced motion).
- “Challenge prompts” (via runtime hooks): find stationary points, estimate retrograde duration, compare inferior vs superior cases.
B) Versatility (without lying)
-
Configurable planet set
- Add Mercury (interior extreme case) and optionally Uranus/Neptune (outer slow case) with explicit “teaching model” notes.
- Allow “custom planet” elements entry (with validation) for sandboxed exploration.
-
Better presets
- Add presets for:
- Earth Jupiter (slow retrograde)
- Earth Saturn (slow retrograde)
- Mars observer Jupiter target (advanced)
- Each preset should include a “what to notice” sentence.
- Add presets for:
-
Export richness (still stable)
- Add an optional “Copy CSV (series)” action with downsampled rows: , , , , state.
- Keep “Copy results” as the stable v1 summary payload.
C) Physics / correctness hardening (SoTA honesty)
-
Canonical element source + citations
- Move planet elements into a dedicated dataset file in
packages/physics(single source of truth) with citations (e.g. J2000 mean elements). - Add a “dataset provenance” note in model notes (still no calendar-date claims).
- Move planet elements into a dedicated dataset file in
-
Numerical stability for far past/far future
- Ensure all angle computations avoid catastrophic precision for large :
- compute using modular arithmetic (track integer turns separately) so trig inputs stay bounded.
- Add a regression test that
computeSeriesworks for windows centered at large |t| (e.g. day) without NaNs.
- Ensure all angle computations avoid catastrophic precision for large :
-
Sharper event detection
- Add tests that stationary refinement meets the spec tolerance (bracket width day) across multiple planet pairs.
- Add “edge-case” tests: windows that start/end inside retrograde, very short windows, and targets with small eccentricity.
-
Model extensions (future scope, but physically meaningful)
- Optional inclination + projection to ecliptic longitude (3D-to-2D) with careful pedagogy; keep the default coplanar mode for clarity.
- Optional light-time correction (advanced; likely overkill for ASTR101, but could be a “math mode” extension later).