ploonetide.TidalSimulation

class ploonetide.TidalSimulation(planet_mass: float = 1, planet_radius: float = 1, planet_core_mass: float = 1, planet_core_radius: float = 1, planet_angular_coeff: float = 0.26401, planet_moment_inertia_coeff: float = 0.26401, planet_orbperiod: float = 1, planet_rotperiod: float = 1, planet_eccentricity: float = 0.1, planet_rigidity: float = 44600000000.0, planet_orbit_a_m: float | None = None, planet_k2q: float = 100000.0, star_mass: float | None = 1, star_radius: float = 1.0, star_eff_temperature: float = 3700.0, star_saturation_rate: float = 4.3421e-05, star_angular_coeff: float = 0.5, star_rotperiod: float = 10, star_alpha: float = 0.25, star_beta: float = 0.25, star_age: float = 5.0, sun_omega: float = 2.67e-06, sun_mass_loss_rate: float = 1.4e-14, moon_mass: float = 0.01, moon_k2q: float | None = None, moon_family: Literal['ice-rock', 'rock-iron'] = 'ice-rock', moon_imf: float | None = None, moon_rmf: float | None = None, moon_fractions: Tuple[float, float, float] | None = None, moon_albedo: float = 0.3, moon_eccentricity: float = 0.0, moon_obliquity: float = 0.0, moon_semimaxis: float = 10, moon_porous_small_mass: float = 0.01, moon_S_c_pa: float = 10000000.0, moon_rigidity_profile: str = 'baseline', eta_fluid: float | None = None, Y_ice_pa: float | None = None, Y_rock_pa: float | None = None, Y_iron_pa: float | None = None, moon_pressure_model: str = 'polytrope', moon_polytrope_n: float = 1.0, moon_enable_porosity: bool = True, moon_porosity_params: MoonPorosityParams | None = None, activation_energy: float = 300000.0, heat_capacity: float = 1260, mantle_thickness: float = 3000000.0, melt_fraction_coeff: float = 40.0, solidus_temperature: float = 1600.0, breakdown_temperature: float = 1800.0, liquidus_temperature: float = 2000.0, surface_temperature_earth: float = 288.0, thermal_conductivity: float = 2.0, Rayleigh_critical: float = 1100.0, flow_geometry: float = 1.0, thermal_expansivity: float = 0.0001, system_type='star-planet', auto_build: bool = True, moon_equilibrium_tide: bool = True, moon_sigma_eq_cgs: float = 2.006e-61, planet_evolution: bool = False, planet_equilibrium_tide: bool = False, planet_sigma_eq_cgs: float = 2.006e-61, planet_envelope_interface: str = 'rigid-fluid', planet_envelope_dissipation: bool = False, planet_core_dissipation: bool = False, planet_mantle_dissipation: bool = False, star_internal_evolution: bool = False, use_exact_orbital_masses: bool = True, tidal_sign_smoothing_fraction: float = 0.0001, iw_gate_smoothing_fraction: float = 1e-05, event_crossing_tol: float = 0.001, debug_ODEs_rhs=False, debug_tidal_dissipation=False, verbose: bool = True)[source]

Bases: Simulation

This class defines a tidal simulation.

args

Description

Type:

TYPE

fate

Description

Type:

TYPE

fate_time

Description

Type:

TYPE

history

Description

Type:

TYPE

history_units

Description

Type:

TYPE

moon_radius

Description

Type:

TYPE

simulation_type

Description

Type:

str

system_type

Description

Type:

TYPE

Construct the TidalSimulation class

Parameters:
  • activation_energy (float, optional) – Energy of activation, default is 3e5 [J mol^-1]

  • heat_capacity (int, optional) – Heat capacity of moon, default is 1260 [J kg^-1 K^-1]

  • mantle_thickness (float, optional) – Thickness of the moon mantle, default 3000000 [m]

  • melt_fraction_coeff (int, optional) – Melt fraction coefficient, default 25 [No unit]

  • solidus_temperature (int, optional) – Temperature for solid material, default 1600 [K]

  • breakdown_temperature (int, optional) – Breakdown tempe, solid-liquidus, default 1800 [K]

  • liquidus_temperature (int, optional) – Temperature for liquid material, default 2000 [K]

  • surface_temperature_earth (float, optional) – veraged surface temperature of Earth [K]

  • thermal_conductivity (int, optional) – Description, default is 2 [W m^-1 K^-1]

  • Rayleigh_critical (int, optional) – Critical rayleigh number, default is 1100 [No unit]

  • flow_geometry (int, optional) – Constant for flow geometry [No unit]

  • thermal_expansivity (float, optional) – Thermal expansivity of moon, default 1E-4 [K^-1]

  • planet_evolution (bool, optional) – Description

  • planet_envelope_dissipation (bool, optional) – Description

  • planet_core_dissipation (bool, optional) – Description

  • star_internal_evolution (bool, optional) – Description

  • star_mass (int, optional) – Stellar mass [Msun]

  • star_radius (int, optional) – Stellar radius [Rsun]

  • star_eff_temperature (int, optional) – Stellar effective temperature [K]

  • star_saturation_rate (float, optional) – Star’s saturation rotational rate [rad s^-1]

  • star_angular_coeff (float, optional) – Description

  • star_rotperiod (int, optional) – Stellar rotation period [d]

  • star_alpha (float, optional) – Description

  • star_beta (float, optional) – Description

  • star_age (int, optional) – Stellar age [Gyr]

  • sun_omega (float, optional) – Solar rotational rate [s^-1]

  • sun_mass_loss_rate (float, optional) – Solar mass loss rate [Msun yr^-1]

  • planet_mass (int, optional) – Planetary mass [Mjup]

  • planet_radius (None, optional) – Planetary radius [Rjup]

  • planet_angular_coeff (float, optional) – Description

  • planet_orbperiod (None, optional) – Planetary orbital period [d]

  • planet_rotperiod (float, optional) – Description

  • planet_eccentricity (float, optional) – Planetary eccentricity [No unit]

  • planet_rigidity (float, optional) – Rigidity of the planet [Pa]

  • moon_radius (int, optional) – Moon radius [Rearth]

  • moon_density (int, optional) – Moon density [kg m**-3]

  • moon_albedo (float, optional) – Description

  • moon_eccentricity (float, optional) – Eccentricity of moon’s orbit [No unit]

  • moon_semimaxis (int, optional) – Description

  • moon_type (bool, optional) – Description, default is ‘rigid’

  • system_type (str, optional) – Description

  • verbose (bool, optional) – Description

__init__(planet_mass: float = 1, planet_radius: float = 1, planet_core_mass: float = 1, planet_core_radius: float = 1, planet_angular_coeff: float = 0.26401, planet_moment_inertia_coeff: float = 0.26401, planet_orbperiod: float = 1, planet_rotperiod: float = 1, planet_eccentricity: float = 0.1, planet_rigidity: float = 44600000000.0, planet_orbit_a_m: float | None = None, planet_k2q: float = 100000.0, star_mass: float | None = 1, star_radius: float = 1.0, star_eff_temperature: float = 3700.0, star_saturation_rate: float = 4.3421e-05, star_angular_coeff: float = 0.5, star_rotperiod: float = 10, star_alpha: float = 0.25, star_beta: float = 0.25, star_age: float = 5.0, sun_omega: float = 2.67e-06, sun_mass_loss_rate: float = 1.4e-14, moon_mass: float = 0.01, moon_k2q: float | None = None, moon_family: Literal['ice-rock', 'rock-iron'] = 'ice-rock', moon_imf: float | None = None, moon_rmf: float | None = None, moon_fractions: Tuple[float, float, float] | None = None, moon_albedo: float = 0.3, moon_eccentricity: float = 0.0, moon_obliquity: float = 0.0, moon_semimaxis: float = 10, moon_porous_small_mass: float = 0.01, moon_S_c_pa: float = 10000000.0, moon_rigidity_profile: str = 'baseline', eta_fluid: float | None = None, Y_ice_pa: float | None = None, Y_rock_pa: float | None = None, Y_iron_pa: float | None = None, moon_pressure_model: str = 'polytrope', moon_polytrope_n: float = 1.0, moon_enable_porosity: bool = True, moon_porosity_params: MoonPorosityParams | None = None, activation_energy: float = 300000.0, heat_capacity: float = 1260, mantle_thickness: float = 3000000.0, melt_fraction_coeff: float = 40.0, solidus_temperature: float = 1600.0, breakdown_temperature: float = 1800.0, liquidus_temperature: float = 2000.0, surface_temperature_earth: float = 288.0, thermal_conductivity: float = 2.0, Rayleigh_critical: float = 1100.0, flow_geometry: float = 1.0, thermal_expansivity: float = 0.0001, system_type='star-planet', auto_build: bool = True, moon_equilibrium_tide: bool = True, moon_sigma_eq_cgs: float = 2.006e-61, planet_evolution: bool = False, planet_equilibrium_tide: bool = False, planet_sigma_eq_cgs: float = 2.006e-61, planet_envelope_interface: str = 'rigid-fluid', planet_envelope_dissipation: bool = False, planet_core_dissipation: bool = False, planet_mantle_dissipation: bool = False, star_internal_evolution: bool = False, use_exact_orbital_masses: bool = True, tidal_sign_smoothing_fraction: float = 0.0001, iw_gate_smoothing_fraction: float = 1e-05, event_crossing_tol: float = 0.001, debug_ODEs_rhs=False, debug_tidal_dissipation=False, verbose: bool = True)[source]

Construct the TidalSimulation class

Parameters:
  • activation_energy (float, optional) – Energy of activation, default is 3e5 [J mol^-1]

  • heat_capacity (int, optional) – Heat capacity of moon, default is 1260 [J kg^-1 K^-1]

  • mantle_thickness (float, optional) – Thickness of the moon mantle, default 3000000 [m]

  • melt_fraction_coeff (int, optional) – Melt fraction coefficient, default 25 [No unit]

  • solidus_temperature (int, optional) – Temperature for solid material, default 1600 [K]

  • breakdown_temperature (int, optional) – Breakdown tempe, solid-liquidus, default 1800 [K]

  • liquidus_temperature (int, optional) – Temperature for liquid material, default 2000 [K]

  • surface_temperature_earth (float, optional) – veraged surface temperature of Earth [K]

  • thermal_conductivity (int, optional) – Description, default is 2 [W m^-1 K^-1]

  • Rayleigh_critical (int, optional) – Critical rayleigh number, default is 1100 [No unit]

  • flow_geometry (int, optional) – Constant for flow geometry [No unit]

  • thermal_expansivity (float, optional) – Thermal expansivity of moon, default 1E-4 [K^-1]

  • planet_evolution (bool, optional) – Description

  • planet_envelope_dissipation (bool, optional) – Description

  • planet_core_dissipation (bool, optional) – Description

  • star_internal_evolution (bool, optional) – Description

  • star_mass (int, optional) – Stellar mass [Msun]

  • star_radius (int, optional) – Stellar radius [Rsun]

  • star_eff_temperature (int, optional) – Stellar effective temperature [K]

  • star_saturation_rate (float, optional) – Star’s saturation rotational rate [rad s^-1]

  • star_angular_coeff (float, optional) – Description

  • star_rotperiod (int, optional) – Stellar rotation period [d]

  • star_alpha (float, optional) – Description

  • star_beta (float, optional) – Description

  • star_age (int, optional) – Stellar age [Gyr]

  • sun_omega (float, optional) – Solar rotational rate [s^-1]

  • sun_mass_loss_rate (float, optional) – Solar mass loss rate [Msun yr^-1]

  • planet_mass (int, optional) – Planetary mass [Mjup]

  • planet_radius (None, optional) – Planetary radius [Rjup]

  • planet_angular_coeff (float, optional) – Description

  • planet_orbperiod (None, optional) – Planetary orbital period [d]

  • planet_rotperiod (float, optional) – Description

  • planet_eccentricity (float, optional) – Planetary eccentricity [No unit]

  • planet_rigidity (float, optional) – Rigidity of the planet [Pa]

  • moon_radius (int, optional) – Moon radius [Rearth]

  • moon_density (int, optional) – Moon density [kg m**-3]

  • moon_albedo (float, optional) – Description

  • moon_eccentricity (float, optional) – Eccentricity of moon’s orbit [No unit]

  • moon_semimaxis (int, optional) – Description

  • moon_type (bool, optional) – Description, default is ‘rigid’

  • system_type (str, optional) – Description

  • verbose (bool, optional) – Description

Methods

__init__([planet_mass, planet_radius, ...])

Construct the TidalSimulation class

build_moon()

Build a moon from externally sampled mass + composition fractions only.

compute_moon_surface_temperature()

Compute the surface temperature of a moon for a given moon orbital position

create_moon_temperature_map([periods, ...])

Create a map of moon surface temperatures for different orbital periods and moon radii

get_class_name()

Get the name TidalSimulation as a string.

package()

Get the name of the package.

plot_tidal_evolution([close_plot, ...])

Method to plot the tidal evolution of a moon around the planet

rebuild_moon()

Recompute moon properties after changing moon_* inputs.

run(integration_time, timestep[, t0, ...])

Run the simulation for an integration time and time-step.

set_diff_eq(calc_diff_eqs, params, ...)

Set the differential equation function.

set_integration_method([method])

Set the integration method.

Attributes

activation_energy

Activation energy of a body

breakdown_temperature

heat_capacity

initial_conds

Dictionary with all the initial conditions of the simulation

liquidus_temperature

mantle_thickness

moon_apocentre

Moon apocentre

moon_density

Moon bulk density [g/cc] (computed; includes porosity if any).

moon_eccentricity

moon_flags

Diagnostic flags — current entries: - 'fortney_valid' : bool - 'phi' : resolved porosity in small-body branch

moon_fractions_used

(f_ice, f_rock, f_iron) actually used by the build (sums ≈ 1).

moon_gravity

Moon surface gravity

moon_imf_used

IMF used for Fortney (0..1).

moon_initial_temperature

Equilibrium temperature of a moon

moon_k2q

moon_mass

moon_meanmo

Moon mean motion calculated using Kepler's third law

moon_obliquity

moon_orbperiod

Orbital period of a moon calculated using its mean motion

moon_pericentre

Moon pericentre

moon_radius

Moon radius [R⊕] (computed).

moon_rigidity

Rigidity state used to select the classical Roche coefficient.

moon_rigidity_bulk

Moon rigidity

moon_rmf_used

RMF used for Fortney (0..1).

moon_roche_meanmotion

Roche radius of a solid moon

moon_roche_radius

Roche radius of a solid moon

moon_semimaxis

Moon semimajor axis

parameters

Dictionary with all the physical and orbital parameters of the class

planet_core_mass

planet_core_radius

planet_corotation_radius

planet_critical_hill_meanMotion

planet_critical_hill_radius

planet_eccentricity

planet_envelope_interface

planet_epsilon

planet_hill_radius

planet_k2q

planet_mass

planet_meanmo

planet_moment_inertia_coeff

planet_omega

planet_orbperiod

planet_radius

planet_rigidity

planet_roche_radius

planet_rotperiod

planet_semimaxis

simulation_type

solidus_temperature

star_age

star_eff_temperature

star_epsilon

star_k2q

star_lifespan

star_luminosity

star_mass

star_omega

star_radius

star_rotperiod

star_saturation_period

star_saturation_rate

sun_mass_loss_rate

Mass loss rate of the Sun

sun_omega

Rotational rate (Omega) of the Sun

supported_integration_methods

surface_temperature_earth

thermal_conductivity

thermal_expansivity

valid_system_types

property activation_energy

Activation energy of a body

Returns:

Activation energy [J mol^-1]

Return type:

float

property breakdown_temperature
build_moon() None[source]

Build a moon from externally sampled mass + composition fractions only.

Notes

Production version:

  1. Require moon_fractions = (f_ice, f_rock, f_iron).

  2. Compute a zero-porosity mixture density.

  3. Compute two candidate radii: - a Fortney-based radius using a smooth compositional blend, - a fallback radius from density + optional compaction.

  4. Smoothly blend those two radii across a pragmatic mass window.

  5. Derive the final bulk density and central pressure from the final radius.

  6. Apply hard density plausibility cuts.

  7. Classify rigid vs fluid from Pc relative to the composition-weighted yield.

compute_moon_surface_temperature()[source]

Compute the surface temperature of a moon for a given moon orbital position

create_moon_temperature_map(periods: ndarray = array([0.1, 0.14, 0.18, 0.22, 0.26, 0.3, 0.34, 0.38, 0.42, 0.46, 0.5, 0.54, 0.58, 0.62, 0.66, 0.7, 0.74, 0.78, 0.82, 0.86, 0.9, 0.94, 0.98, 1.02, 1.06, 1.1, 1.14, 1.18, 1.22, 1.26, 1.3, 1.34, 1.38, 1.42, 1.46, 1.5, 1.54, 1.58, 1.62, 1.66, 1.7, 1.74, 1.78, 1.82, 1.86, 1.9, 1.94, 1.98, 2.02, 2.06, 2.1, 2.14, 2.18, 2.22, 2.26, 2.3, 2.34, 2.38, 2.42, 2.46, 2.5, 2.54, 2.58, 2.62, 2.66, 2.7, 2.74, 2.78, 2.82, 2.86, 2.9, 2.94, 2.98, 3.02, 3.06, 3.1, 3.14, 3.18, 3.22, 3.26, 3.3, 3.34, 3.38, 3.42, 3.46, 3.5, 3.54, 3.58, 3.62, 3.66, 3.7, 3.74, 3.78, 3.82, 3.86, 3.9, 3.94, 3.98, 4.02, 4.06, 4.1, 4.14, 4.18, 4.22, 4.26, 4.3, 4.34, 4.38, 4.42, 4.46, 4.5, 4.54, 4.58, 4.62, 4.66, 4.7, 4.74, 4.78, 4.82, 4.86, 4.9, 4.94, 4.98, 5.02, 5.06, 5.1, 5.14, 5.18, 5.22, 5.26, 5.3, 5.34, 5.38, 5.42, 5.46, 5.5, 5.54, 5.58, 5.62, 5.66, 5.7, 5.74, 5.78, 5.82, 5.86, 5.9, 5.94, 5.98, 6.02, 6.06, 6.1, 6.14, 6.18, 6.22, 6.26, 6.3, 6.34, 6.38, 6.42, 6.46, 6.5, 6.54, 6.58, 6.62, 6.66, 6.7, 6.74, 6.78, 6.82, 6.86, 6.9, 6.94, 6.98, 7.02, 7.06, 7.1, 7.14, 7.18, 7.22, 7.26, 7.3, 7.34, 7.38, 7.42, 7.46, 7.5, 7.54, 7.58, 7.62, 7.66, 7.7, 7.74, 7.78, 7.82, 7.86, 7.9, 7.94, 7.98, 8.02, 8.06, 8.1, 8.14, 8.18, 8.22, 8.26, 8.3, 8.34, 8.38, 8.42, 8.46, 8.5, 8.54, 8.58, 8.62, 8.66, 8.7, 8.74, 8.78, 8.82, 8.86, 8.9, 8.94, 8.98, 9.02, 9.06, 9.1, 9.14, 9.18, 9.22, 9.26, 9.3, 9.34, 9.38, 9.42, 9.46, 9.5, 9.54, 9.58, 9.62, 9.66, 9.7, 9.74, 9.78, 9.82, 9.86, 9.9, 9.94, 9.98, 10.02, 10.06, 10.1, 10.14, 10.18, 10.22, 10.26, 10.3, 10.34, 10.38, 10.42, 10.46, 10.5, 10.54, 10.58, 10.62, 10.66, 10.7, 10.74, 10.78, 10.82, 10.86, 10.9, 10.94, 10.98, 11.02, 11.06, 11.1, 11.14, 11.18, 11.22, 11.26, 11.3, 11.34, 11.38, 11.42, 11.46, 11.5, 11.54, 11.58, 11.62, 11.66, 11.7, 11.74, 11.78, 11.82, 11.86, 11.9, 11.94, 11.98, 12.02, 12.06, 12.1, 12.14, 12.18, 12.22, 12.26, 12.3, 12.34, 12.38, 12.42, 12.46, 12.5, 12.54, 12.58, 12.62, 12.66, 12.7, 12.74, 12.78, 12.82, 12.86, 12.9, 12.94, 12.98, 13.02, 13.06, 13.1, 13.14, 13.18, 13.22, 13.26, 13.3, 13.34, 13.38, 13.42, 13.46, 13.5, 13.54, 13.58, 13.62, 13.66, 13.7, 13.74, 13.78, 13.82, 13.86, 13.9, 13.94, 13.98, 14.02, 14.06, 14.1, 14.14, 14.18, 14.22, 14.26, 14.3, 14.34, 14.38, 14.42, 14.46, 14.5, 14.54, 14.58, 14.62, 14.66, 14.7, 14.74, 14.78, 14.82, 14.86, 14.9, 14.94, 14.98, 15.02, 15.06, 15.1, 15.14, 15.18, 15.22, 15.26, 15.3, 15.34, 15.38, 15.42, 15.46, 15.5, 15.54, 15.58, 15.62, 15.66, 15.7, 15.74, 15.78, 15.82, 15.86, 15.9, 15.94, 15.98, 16.02, 16.06, 16.1, 16.14, 16.18, 16.22, 16.26, 16.3, 16.34, 16.38, 16.42, 16.46, 16.5, 16.54, 16.58, 16.62, 16.66, 16.7, 16.74, 16.78, 16.82, 16.86, 16.9, 16.94, 16.98, 17.02, 17.06, 17.1, 17.14, 17.18, 17.22, 17.26, 17.3, 17.34, 17.38, 17.42, 17.46, 17.5, 17.54, 17.58, 17.62, 17.66, 17.7, 17.74, 17.78, 17.82, 17.86, 17.9, 17.94, 17.98, 18.02, 18.06, 18.1, 18.14, 18.18, 18.22, 18.26, 18.3, 18.34, 18.38, 18.42, 18.46, 18.5, 18.54, 18.58, 18.62, 18.66, 18.7, 18.74, 18.78, 18.82, 18.86, 18.9, 18.94, 18.98, 19.02, 19.06, 19.1, 19.14, 19.18, 19.22, 19.26, 19.3, 19.34, 19.38, 19.42, 19.46, 19.5, 19.54, 19.58, 19.62, 19.66, 19.7, 19.74, 19.78, 19.82, 19.86, 19.9, 19.94, 19.98, 20.02, 20.06, 20.1]), radii: ndarray = array([250, 1250, 2250, 3250, 4250, 5250, 6250]), min_temp: float = 0.0, max_temp: float = 730.0, output_directory: str = PosixPath('/home/docs'))[source]

Create a map of moon surface temperatures for different orbital periods and moon radii

Parameters:
  • periods (np.array, optional) – Vector of moon orbital periods [d]

  • radii (np.array, optional) – Vector of moon radii [km]

  • min_temp (float, optional) – Minimum moon surface temperature [K]

  • max_temp (float, optional) – Maximum moon surface temperature [K]

  • output_directory (str, optional) – Output path to save the moon surface temperature map

classmethod get_class_name()[source]

Get the name TidalSimulation as a string.

Returns:

Name of the class

Return type:

str

property heat_capacity
property initial_conds

Dictionary with all the initial conditions of the simulation

Returns:

Dictionary containing only the initial values of all the integrating variables

Return type:

dict

property liquidus_temperature
property mantle_thickness
property moon_apocentre

Moon apocentre

Returns:

Moon apocentre [Roche radii]

Return type:

float

property moon_density: float

Moon bulk density [g/cc] (computed; includes porosity if any).

property moon_eccentricity
property moon_flags: Dict[str, object]

Diagnostic flags — current entries: - ‘fortney_valid’ : bool - ‘phi’ : resolved porosity in small-body branch

property moon_fractions_used: Tuple[float, float, float]

(f_ice, f_rock, f_iron) actually used by the build (sums ≈ 1).

property moon_gravity

Moon surface gravity

Returns:

Moon surface gravity [m s^-2]

Return type:

float

property moon_imf_used: float

IMF used for Fortney (0..1). For ‘rock-iron’ family this is 0 (unused).

property moon_initial_temperature

Equilibrium temperature of a moon

Returns:

Equilibrium temperature of the moon [K]

Return type:

float

property moon_k2q
property moon_mass
property moon_meanmo

Moon mean motion calculated using Kepler’s third law

Returns:

Moon mean motion [s^-1]

Return type:

float

property moon_obliquity
property moon_orbperiod

Orbital period of a moon calculated using its mean motion

Returns:

Orbital period of a moon [d]

Return type:

float

property moon_pericentre

Moon pericentre

Returns:

Moon pericentre [Roche radii]

Return type:

float

property moon_radius: float

Moon radius [R⊕] (computed).

Returns:

Moon radius [Rearth]

Return type:

float

property moon_rigidity: Literal['fluid', 'rigid']

Rigidity state used to select the classical Roche coefficient.

property moon_rigidity_bulk

Moon rigidity

Returns:

Moon rigidity [Pa]

Return type:

float

property moon_rmf_used: float

RMF used for Fortney (0..1). For ‘ice-rock’ family this is 1 (unused).

property moon_roche_meanmotion

Roche radius of a solid moon

Returns:

Roche radius of a moon [m]

Return type:

float

property moon_roche_radius

Roche radius of a solid moon

Returns:

Roche radius of a moon [m]

Return type:

float

property moon_semimaxis

Moon semimajor axis

Returns:

Moon semimajor axis [Roche radii]

Return type:

float

classmethod package()[source]

Get the name of the package.

Returns:

Name of the package

Return type:

str

property parameters

Dictionary with all the physical and orbital parameters of the class

Returns:

Dictionary containing only the values of all the parameters of the TidalSimulation

Return type:

dict

property planet_core_mass
property planet_core_radius
property planet_corotation_radius
property planet_critical_hill_meanMotion
property planet_critical_hill_radius
property planet_eccentricity
property planet_envelope_interface
property planet_epsilon
property planet_hill_radius
property planet_k2q
property planet_mass
property planet_meanmo
property planet_moment_inertia_coeff
property planet_omega
property planet_orbperiod
property planet_radius
property planet_rigidity
property planet_roche_radius
property planet_rotperiod
property planet_semimaxis
plot_tidal_evolution(close_plot=True, polar_projection=False)[source]

Method to plot the tidal evolution of a moon around the planet

Parameters:
  • close_plot (bool, optional) – Close the generated plot

  • polar_projection (bool, optional) – Use a polar projection for the plot

rebuild_moon() None[source]

Recompute moon properties after changing moon_* inputs.

run(integration_time, timestep, t0=0, show_progress=False)[source]

Run the simulation for an integration time and time-step.

Parameters:
  • integration_time (float) – Total integration time to run the simulation [s]

  • timestep (float) – Fixed time-steop of the simulation [s]

  • t0 (int, optional) – Initial time of the simulation. Default is 0 [s]

  • show_progress (bool, optional) – Show integration progress.

set_diff_eq(calc_diff_eqs, params, ini_conds, events)

Set the differential equation function.

Parameters:
  • calc_diff_eqs – Callable returning dy/dt

  • **kwargs – Additional arguments passed to the function

set_integration_method(method='RK45')

Set the integration method.

Parameters:

method (str) – Integration method name.

simulation_type = 'Tidal'
property solidus_temperature
property star_age
property star_eff_temperature
property star_epsilon
property star_k2q
property star_lifespan
property star_luminosity
property star_mass
property star_omega
property star_radius
property star_rotperiod
property star_saturation_period
property star_saturation_rate
property sun_mass_loss_rate

Mass loss rate of the Sun

Returns:

Mass loss rate of the Sun [Msun yr^-1]

Return type:

float

property sun_omega

Rotational rate (Omega) of the Sun

Returns:

Rotational rate (Omega) of the Sun [s^-1]

Return type:

float

supported_integration_methods = ('RK45', 'RK23', 'DOP853', 'Radau', 'BDF', 'LSODA')
property surface_temperature_earth
property thermal_conductivity
property thermal_expansivity
valid_system_types = ('star-planet', 'planet-moon')