Exponential-sine periodic kernel (S+LEAF)#
The Exponential-sine periodic (ESP) kernel is an approximation of the quasi-periodic (QP) kernel implemented in the S+LEAF software.
In the S+LEAF documentation, the QP kernel is referred to as the squared-exponential periodic (SEP) kernel. Despite the different name, the QP periodic kernel definition is the same as the one implemented in PyORBIT in either the trained or the multidimensional approach.
The quasi-periodic kernel is the preferred choice for the multidimensional GP. We follow the expression given by Rajpaul et al. 2015:
Note
If you use the multidimensional GP through S+LEAF, please don’t forget to cite Delisle et al. 2020 and Delisle et al. 2022
Implementation of the S+LEAF package#
As PyORBIT naturally supports an unlimited number of datasets with heterogeneous cadences, the inclusion of the S+LEAF package has been quite straightforward.
The GP hyperparameters preserve the same name as in the other kernels: the rotation period of the star \(P_\mathrm{rot}\), the coherence scale \(O_\mathrm{amp}\), and the decay time scale of the active regions \(P_\mathrm{dec}\), corresponds to \(P\), \(\eta\), \(\rho\) in S+LEAF documentation.
The coefficients \(\alpha\) and \(\beta\) introduced in the S+LEAF multiGP example are consequently renamed in con_amp and rot_amp, with the reference dataset easily identifiable from the terminal output.
Model definition and requirements#
model name: spleaf_multidimensional_esp
required common objects:
activity
model aliases
spleaf_multidimensional_exponentialsineperiodicspleaf_multidimensional_esp_slowspleaf_multidimensional_exponentialsineperiodic_slowspleaf_multidimensional_esp_devel
Keywords#
Model-wide keywords, with the default value in bold face.
n_harmonics
accepted values: integer | 4
Number of harmonics to include in the ESP approximation of the QP kernel
hyperparameters_condition
accepted values:
True|Falseactivate the conditions \( P_\mathrm{dec} ^ 2 > \frac{3}{2 \pi} P_\mathrm{rot} ^2 O_\mathrm{amp} ^ 2 \) from Rajpaiul 2017 and Rajpaul et al. 2021, to ensure that the QP function has at least one non-trivial turning point.
rotation_decay_condition
accepted values:
True|Falseif activated, it ensures that the decay time scale of the activity regions \(\lambda\) is at least twice the rotational period of the star \(\theta\)
derivative
accepted values: list of datasets using the model
if not provided, default is
Truefor all datasets exceptH-alphaS_indexCa_HK, andFWHM. If provided, default isFalsefor all the datasets not explicitly mentioned.If
True, the first derivative of the underlying Gaussian process is included, otherwise,rot_ampF is fixed to zero.
Examples#
In the following example, one RV dataset comes together with two activity indicators, the BIS and the FWHM of the CCF, the latter as a replacement of \(\log{R^{\prime}_\mathrm{HK}}\).
This example is nearly identical to the one presented for the multidimensional QP kernel. The three main differences are:
The model
spleaf_multidimensional_espis replacingtinygp_multidimensional_quasiperiodicthe additional keyword
n_harmonicsis included in the examplethe
safe_reloadkeyword in theparameterssection is not longer required
1inputs:
2 RVdata:
3 file: RVS_PyORBIT.dat
4 kind: RV
5 models:
6 - radial_velocities
7 - gp_multidimensional
8 BISdata:
9 file: BIS_PyORBIT.dat
10 kind: BIS
11 models:
12 - gp_multidimensional
13 FWHMdata:
14 file: FWHM_PyORBIT.dat
15 kind: FWHM
16 models:
17 - gp_multidimensional
18common:
19 planets:
20 b:
21 orbit: circular
22 use_time_inferior_conjunction: True
23 boundaries:
24 P: [2.21000, 2.240000]
25 K: [0.001, 20.0]
26 Tc: [59144.60, 59144.63]
27 priors:
28 P: ['Gaussian', 2.2241951, 0.00000030]
29 Tc: ['Gaussian', 59144.616171, 0.000284]
30 c:
31 orbit: keplerian
32 boundaries:
33 P: [2.0, 100.0]
34 K: [0.001, 30.0]
35 e: [0.00, 0.70]
36 priors:
37 e: ['Gaussian', 0.00, 0.098]
38 d:
39 orbit: keplerian
40 boundaries:
41 P: [2.0, 100.0]
42 K: [0.001, 30.0]
43 e: [0.00, 0.70]
44 priors:
45 e: ['Gaussian', 0.00, 0.098]
46 activity:
47 boundaries:
48 Prot: [20.0, 30.0]
49 Pdec: [30.0, 1000.0]
50 Oamp: [0.01, 1.0]
51 priors:
52 Prot: ['Gaussian', 14.00, 0.50]
53 Oamp: ['Gaussian', 0.35, 0.035]
54 star:
55 star_parameters:
56 priors:
57 mass: ['Gaussian', 0.65, 0.05]
58 radius: ['Gaussian', 0.624, 0.005]
59 density: ['Gaussian', 2.65, 0.08]
60models:
61 radial_velocities:
62 planets:
63 - b
64 - c
65 - d
66 gp_multidimensional:
67 model: spleaf_multidimensional_esp
68 common: activity
69 n_harmonics: 4
70 hyperparameters_condition: True
71 rotation_decay_condition: True
72 RVdata:
73 boundaries:
74 rot_amp: [0.0, 20.0] #at least one must be positive definite
75 con_amp: [-20.0, 20.0]
76 derivative: True
77 BISdata:
78 boundaries:
79 rot_amp: [-20.0, 20.0]
80 con_amp: [-20.0, 20.0]
81 derivative: True
82 FWHMdata:
83 boundaries:
84 con_amp: [-50., 50.]
85 derivative: False
86parameters:
87 Tref: 59200.00
88 low_ram_plot: True
89 plot_split_threshold: 1000
90 cpu_threads: 16
91solver:
92 pyde:
93 ngen: 50000
94 npop_mult: 4
95 emcee:
96 npop_mult: 4
97 nsteps: 100000
98 nburn: 25000
99 nsave: 25000
100 thin: 100
101 #use_threading_pool: False
102 nested_sampling:
103 nlive: 1000
104 sampling_efficiency: 0.30
105 recenter_bounds: True
Tip
Since the coefficients are always coupled, there is a degeneracy between a given set and the opposite one (i.e., all the coefficient with opposite sign). This degeneracy can be solved by force one coefficient to be positive, e.g., rot_amp for the RV_data in the example.
A simpler way to prepare the configuration file if you are not specifying the boundaries is to list the datasets with derivatives under the same keyword:
1...
2 gp_multidimensional:
3 model: gp_multidimensional_quasiperiodic
4 common: activity
5 hyperparameters_condition: True
6 rotation_decay_condition: True
7 derivative:
8 RVdata: True
9 BISdata: True
10 FWHMdata: False
11parameters:
12...
Model parameters#
The following parameters will be inherited from the common model (column Common?: common) or a different value will be assigned for each dataset (column Common?: dataset)
Name |
Parameter |
Common? |
Definition |
Notes |
|---|---|---|---|---|
Prot |
rotational period of the star \(\theta\) |
common |
|
|
Pdec |
Decay time scale of active regions \(\lambda\) |
common |
|
|
Oamp |
Coherence scale \(w\) |
common |
|
|
con_amp |
coefficient of \(G(t)\) component |
dataset |
|
|
rot_amp |
coefficient of \(G^\prime (t)\) component |
dataset |
|