Thermal_evolution
Classes
Module Contents
- class Thermal_evolution.thermal_evolution(pow_law_formass=0.32)
- pow_law_formass = 0.32
- sigma = 5.67051e-08
- R_jup = 11.2
- R_earth = 6371000.0
- s_conv = 3.1536e+16
- m_h = 1.66e-27
- kb = 1.380649e-23
- M_earth = 5.972e+24
- main(M_P, x_core, Teq, Tint_array, CO=0.55, log_FeH=0.0, Zenv=0.03, FeH_flag=True, Tguess=2000.0, Rguess=11.2, tolerance=0.001, guillot=False, P_surf=1000.0, kappa_IR=0.01, gamma=0.4, name_grid=None, j_max=30)
- Function that runs a series of interior structure models at different internal temperatures and gets
the entropies. Necessary to run before solving the luminosity differential equation (thermal evolution).
- Args:
- M_P:
Planet mass in Earth masses
- x_core:
Core mass fraction
- Teq:
Equilibrium temperature in K (at zero Bond albedo)
- Tint_array:
Array containing the internal temperatures at which the entropy are to be computed. At least two elements are needed. The more models you include in the sequence, the more accurate the thermal evolution will be. We recommend at least 5 points per thermal sequence, between the highest possible Tint and 50 K.
- CO (optional):
C-to-O ratio. Default value is 0.55 (solar)
- FeH_flag (optional):
equals True if the amount of metals is specified as log10(metallicity) in x solar units. If specified as metal mass fraction, set FeH_flag = False. In the former case, the metal mass fraction profile is extracted from easychem data (calculated with calc_interior_mass_fraction). In the latter, it is set constant to Zenv, and converted to log10(metallicity) with Fortney+13 relation (appendix A1) to interpolate the PT profiles from atmospheric grid
- Zenv (optional):
atmospheric metal mass fraction (for FeH_flag = False). Default value is 0.03.
- log_FeH:
log10(metallicity) in x solar units (for FeH_flag = True). Default value is zero (solar composition)
- Tguess (optional):
Initial guess for the surface temperature in K. Default is 2000 K.
- tolerance (optional):
relative difference in radius between interior-atm. steps. Default is 0.001. If a scalar is provided, it will be that same value across the thermal sequence. If an array, it must be the same size as Tint_array, and its elements will be used in the coupled model one by one.
- guillot (optional):
False if you do not want to use Guillot 2010 atm. profile
- P_surf (optional):
Boundary pressure between interior and atmosphere. Default is 1000 bars. For models with high Tint you may need to decrease it to 9.5 bars (if using the default atm. grid)
- kappa_IR (float, optional):
The infrared opacity in units of \(\\rm cm^2/s\). Default is 0.01.
- gamma (float, optional):
The ratio between the visual and infrared opacity. Default is 0.4.
- name_grid (optional):
name of custom grid (if you do not want to use the default)
- j_max (optional):
Maximum number of iterations - must be < 100.
- Return:
- s_top_TE:
array containing the entropy at 1000 bar of the interior models calculated as part of the thermal evolution sequence. Units: J/kg/K.
- s_mean_TE:
array containing the mean envelope entropy of the interior models calculated as part of the thermal evolution sequence. Units: J/kg/K.
- Mtot_TE:
array containing the total mass of the interior models calculated as part of the thermal evolution sequence. Units: Earth masses.
- Rtot_TE:
array containing the total radius of the interior models calculated as part of the thermal evolution sequence. Units: Jupiter radii.
- Rbulk_TE:
array containing the bulk radius of the interior models calculated as part of the thermal evolution sequence. Units: Jupiter radii.
- Tsurf_TE:
array containing the temperature at 1000 bar of the interior models calculated as part of the thermal evolution sequence. Units: K.
- L_TE:
array containing the luminosity of the interior models calculated as part of the thermal evolution sequence. Units: J/s.
- f_S:
array containing the entropy derivative dS/dt of the interior models calculated as part of the thermal evolution sequence. In SI units (J/kg/K per s).
- solve_thermal_evol_eq(t_Gyr=np.linspace(2.1e-06, 15.0, 100), S0=12.0)
- This function solves the luminosity differential equation to calculate the age corresponding to the
thermal evolution sequence calculated previously with the “main” function
- Args:
- t_Gyr (optional):
time array in Gyr used to solve the entropy differential equation. Default has 100 points between 2100 yrs and 10 Gyr.
- S0 (optional):
Initial condition for the entropy, S(t=0) in k_b*m_h units. Default is 12.
- Returns:
- Tint_solution:
array containing the internal temperature in K corresponding to the ages in t_Gyr
- S_solution:
array containing the entropy in J/kg/K corresponding to the ages in t_Gyr
- Rtot_solution:
array containing the total radius in Jupiter radii corresponding to the ages in t_Gyr
- age_points:
array containing the age in Gyr corresponding to the entropies in s_top_TE