Tutorial 10: TTVs
Your team found a two-planet system around an M-dwarf, and guess what, it is near a mean motion resonance. That screams "transit timing variations" (TTVs)! Once again, the fate of the world relies on you to model it.
All codes available on GitHub.
Watch the video (exciting and millenial)
Read the documentation (boring and words)
Before doing a TTV fit, we need to find out the basic properties of the system first. We approach this exactly the same way as all other allesfitter tutorials, and perform a "linear ephemerides" fit first, meaning we fit as usual for an epoch and a linear period. Once we have the results, we can check the
*_fit_per_transit_*.pdf plots, and check if we can already spot some transits to deviate from the linear period model.
Next up, we do the actual TTV fit. All you need to adopt is the following:
- copy over your
settings.csvfiles into a new data directory and let's call it
allesfit_with_ttvsfor this example
settings.csv, change the row
params.csv,freeze the epoch and period params for all companions to the best-fit value that the linear ephemerides model gave you. Freezing is done by setting the
0for these rows.
python, run the line
allesfitter.prepare_ttv_fit(allesfit_with_ttvs). This will print you a new set of rows for
params.csvright into your Python console. Copy&paste these into your
params.csvfile. It will also create you plots called
preparation_for_TTV_fit_*.jpg, which you can inspect to check that all transits have been identified and numbered correctly.
- all set! Now you can run allesfitter as usual, using
Generally, we recommend Nested Sampling here, as the number of free parameters and the degeneracies for TTV fits are often very high.
Happy TTV fitting!