JokerParams

class thejoker.sampler.JokerParams(P_min, P_max, trend_cls=None, jitter=None, jitter_unit=None, anomaly_tol=1e-10)[source]

Bases: object

Parameters:

P_min : astropy.units.Quantity [time]

Lower bound on prior over period, the smallest period considered.

P_max : astropy.units.Quantity [time]

Upper bound on prior over period, the largest period considered.

trend_cls : class

The long-term velocity trend class to use. This must not be an instantiated object, just the class!

jitter : Quantity [speed], tuple (optional)

Represents additional Gaussian noise in the RV signal. Default is to fix the value of the jitter to 0. To fix the jitter to a different value, pass in a single Quantity object. The Joker also supports inferring the jitter as an additional non-linear parameter. Currently, the only prior pdf supported for doing this is a Gaussian in natural-log of the jitter squared–that is, \(p(a) = \mathcal{N}(a|\mu,\sigma)\) where \(a = \log s^2\). The (dimensionless) mean and standard deviation of this prior can also be passed in to this argument by passing a length-2 tuple of numbers. If you do this, you must also pass in a unit for the jitter using the jitter_unit arg.

jitter_unit : UnitBase

If sampling over the jitter as an extra non-linear parameter, you must also specify the units of the jitter prior. See note above about the jitter argument.

anomaly_tol : float (optional)

Convergence tolerance passed to twobody.celestial.eccentric_anomaly_from_mean_anomaly(). Arbitrarily set to 1E-10 by default.

Examples

>>> import astropy.units as u
>>> pars = JokerParams(P_min=8*u.day, P_max=8192*u.day,
...                    jitter=5.*u.m/u.s) # fix jitter to 5 m/s
>>> pars = JokerParams(P_min=8*u.day, P_max=8192*u.day,
...                    jitter=(1., 2.), jitter_unit=u.m/u.s) # specify jitter prior

Attributes Summary

num_params

Attributes Documentation

num_params