-
Notifications
You must be signed in to change notification settings - Fork 13
Parametrizations
It is possible to use a set of convenient parametrizations to improve the exploration of the parameter space and avoid biases due to priors. In this webpage, we provide a brief description of the parameterizations used by pyaneti and how to implement them.
The posterior distribution of the eccentricity is not well sampled for orbits with small eccentricities (see e.g., Lucy & Sweeney, 1971). A practical solution is to define e and ω using a polar form. pyaneti adopts the parametrization proposed by Anderson et al., (2011)
This parameterization has two advantages: a) it is not truncated when the eccentricity is close to zero; b) uniform priors on eω1 and eω2 imply uniform priors on the eccentricity.
To activate this parametrization with pyaneti, you need to include it in your input file
is_ew = True
if this option is active, you have to include extra variables to control the priors
fit_ew1 = ['u'] #This sets ew1 with uniform priors
fit_ew2 = ['u'] #This sets ew2 with uniform priors
and to specify the prior limits, you need the variables
min_ew1 = [-1.0]
max_ew1 = [ 1.0]
min_ew2 = [-1.0]
max_ew2 = [ 1.0]
Note that pyaneti ensures always that e < 1.
In the star_params.dat
file, the parameters ew 1 and ew 2 will appear as fitted parameters, while e and w will be derived parameters.
The transit of a planet can be described using the scaled projected distance between the planet and star centres. It is then convenient to parametrize the stellar inclination using a parameter that takes into account the projected distance. A practical approach is via the impact parameter defined as (see Winn 2010)
The advantage of using the impact factor is that b can be compared directly with the projected distance. In this way, it is easy to set priors to exclude orbits for which there is no transit, i.e., when b > 1 + rp.
pyaneti samples for b instead of i (inclination) by default. The uniform prior limits for b are by default set in the range [0,1]. If you want to modify such priors you have to use the variables
min_b = [0.0]
max_b = [1.0]
in your input file. If for some reason, you want to sample i instead of b you need to include in your input file the line
is_b_factor = False
and the priors on the inclination are set with the Python objects:
fit_i = ['u']
to choose the kind of prior, and
min_i = [0.0 ]
max_i = [np.pi/2.0]
to choose the prior limits.
For the limb darkening coefficients pyaneti uses the parameterization proposed by Kipping (2013), who showed that an optimal way to sample the parameter space for the quadratic coefficients (see e.g., Mandel & Agol 2002) is via the parametrization
The advantage of this approach is that it fully accounts for our ignorance about the intensity profile and explores physical solutions by sampling uniformly q1 and q2 between 0 and 1. This yields robust and realistic uncertainty estimates. It is possible to recover the original u1 and u2 coefficients via
pyaneti uses this parametrization by default. The priors are manipulated with the variables:
fit_q1 = 'u'
fit_q2 = 'u'
to choose the kind of prior, and
min_q1 = 0.0
max_q1 = 1.0
min_q2 = 0.0
max_q2 = 1.0
to select the limits.
From Kepler's third law, we obtain that
Where ρ is the star's mean density,ρp the planet's mean density, rp the planet-to-star radius ratio, P the orbital period, R the star's radius, and a the semi-major axis of the relative orbit. Since rp3 is relatively small, the second term of the left side of the previous equation can be neglected (see Winn 2010). There is thus a relation between the stellar density and the orbital parameters P and a/R* that can be used to compare stellar density derived from the modelling of the transit light curves with an independent determination (e.g., from spectroscopy).
It is convenient to parametrise a/R with ρ in some situations.
- If precise stellar parameters have been calculated (e.g., asteroseismology), it is possible to set tight priors on the stellar density and hence on a/R*.
- For a multi-planet system, it is convenient to parameterise the scaled semi-major axis aj/R* of all planets j using the same stellar density. In this way the stellar density is constrained with all planets and Kepler's third law is ensured in the orbital solutions of the system.
pyaneti uses the parametrization ρ*.
In order to use this parametrization, you need to include in your input file the variable
sample_stellar_density = True
This will change the sampling of a/R* to a sampling of ρ★. The priors on ρ★ are controlled with the same controls of a:
fit_a = ['u']
to choose the kind of prior, and the prior ranges have to be specified in cgs units.
min_a = [0.05] #g cm^(-3)
max_a = [10.0] #g cm^(-3)
Note that you can also set Gaussian priors (with 'g'
) on the stellar density in case you trust your stellar parameters!
Warning: When you use this parametrisation, be sure that you change the prior ranges. If not, the posterior distribution could be truncated.
- Start to use pyaneti
- Parallel run
- The input_fit.py file
- Output files
- Parametrizations
- Examples
- Theory
- Others: