TidalPy.tides.multilayer package

Submodules

TidalPy.tides.multilayer.displacements module

Calculation displacement based on tidal solutions and tidal potential.

References

SVC16 : Sabadini, Vermeerson, & Cambiotti (2016, DOI: 10.1007/978-94-017-7552-6) HH14 : Henning & Hurford (2014, DOI: 10.1088/0004-637X/789/1/30) TB05 : Tobie et al. (2005, DOI: 10.1016/j.icarus.2005.04.006) B13 : Beuthe (2013, DOI: 10.1016/j.icarus.2012.11.020)

TidalPy.tides.multilayer.displacements.calculate_displacements(tidal_potential: FloatArray, tidal_potential_partial_theta: FloatArray, tidal_potential_partial_phi: FloatArray, tidal_solution_y: ndarray, colatitude: FloatArray) Tuple[ndarray, ndarray, ndarray][source]

Calculate tidal displacements using the tidal potential and its partial derivatives as well as the y-solution vector.

Parameters:
  • tidal_potential (FloatArray) – The tidal potential

  • tidal_potential_partial_theta (FloatArray) – The partial derivative of the tidal potential with respect to the colatitude

  • tidal_potential_partial_phi (FloatArray) – The partial derivative of the tidal potential with respect to the longitude

  • tidal_solution_y (np.ndarray) – Vector of tidal solutions often denoted as a lower-case “y”

  • colatitude (FloatArray) – Co-latitude where the calculations are conducted

Returns:

  • radial_displacement (FloatArray) – The tidal displacement in the radial direction (r)

  • polar_displacement (FloatArray) – The tidal displacement in the polar direction (theta)

  • azimuthal_displacement (FloatArray) – The tidal displacement in the azimuthal direction (phi)

TidalPy.tides.multilayer.heating module

Functions related to the calculation of tidal heating using method described in TB05

References

SVC16 : Sabadini, Vermeerson, & Cambiotti (2016, DOI: 10.1007/978-94-017-7552-6) HH14 : Henning & Hurford (2014, DOI: 10.1088/0004-637X/789/1/30) TB05 : Tobie et al. (2005, DOI: 10.1016/j.icarus.2005.04.006) ID : IcyDwarf Code by Marc Neveu (https://github.com/MarcNeveu/IcyDwarf/blob/master/IcyDwarf/Thermal.h)

TidalPy.tides.multilayer.heating.calc_radial_volumetric_tidal_heating(eccentricity, orbital_frequency, semi_major_axis, host_mass, radius_arr, radial_sensitivity_to_shear_arr, complex_shear_modulus_arr, radial_sensitivity_to_bulk_arr, complex_bulk_modulus_arr, degree_l=2, G_to_use=6.6743e-11, perform_checks=True)
TidalPy.tides.multilayer.heating.calc_radial_volumetric_tidal_heating_from_rs_solution(eccentricity, orbital_frequency, semi_major_axis, host_mass, rs_solution, perform_checks=True)

TidalPy.tides.multilayer.sensitivity module

Functionality to calculate the sensitivity parameters described in Tobie et al (2005).

References

TB05 : Tobie et al. (2005; DOI: 10.1016/j.icarus.2005.04.006) KV21 : Kervazo et al. (2021; DOI: 10.1051/0004-6361/202039433)

TidalPy.tides.multilayer.sensitivity.calc_sensitivity_to_bulk(radial_solutions, radius_array, shear_modulus_array, bulk_modulus_array, degree_l=2, perform_checks=True)
TidalPy.tides.multilayer.sensitivity.calc_sensitivity_to_shear(radial_solutions, radius_array, shear_modulus_array, bulk_modulus_array, degree_l=2, perform_checks=True)

TidalPy.tides.multilayer.stress_strain module

Calculation of stress and strain based on tidal solutions and tidal potential.

References

SVC16 : Sabadini, Vermeerson, & Cambiotti (2016, DOI: 10.1007/978-94-017-7552-6) HH14 : Henning & Hurford (2014, DOI: 10.1088/0004-637X/789/1/30) TB05 : Tobie et al. (2005, DOI: 10.1016/j.icarus.2005.04.006) B13 : Beuthe (2013, DOI: 10.1016/j.icarus.2012.11.020)

TidalPy.tides.multilayer.stress_strain.calculate_strain_stress(tidal_potential: ndarray, tidal_potential_partial_theta: ndarray, tidal_potential_partial_phi: ndarray, tidal_potential_partial2_theta2: ndarray, tidal_potential_partial2_phi2: ndarray, tidal_potential_partial2_theta_phi: ndarray, tidal_solution_y: ndarray, longitude_array: ndarray, colatitude_array: ndarray, time_array: ndarray, radius_array: ndarray, shear_moduli: ndarray, bulk_moduli: ndarray, frequency: FloatArray, degree_l: int = 2) Tuple[ndarray, ndarray][source]

Calculate tidal strain tensor using the tidal potential and its partial derivatives as well as the y-solution vector.

OPT: This function has actually been fairly optimized for performance since it is doing calculations on arrays that

are n x m x k x p and can easily reach into the millions of elements. It also must be performed for each tidal mode which could be dozens per time step. It is pretty efficient right now but could always use a second pair of eyes due to its importance.

Parameters:
  • tidal_potential (np.ndarray) – The tidal potential

  • tidal_potential_partial_theta (np.ndarray) – The partial derivative of the tidal potential with respect to the colatitude

  • tidal_potential_partial_phi (np.ndarray) – The partial derivative of the tidal potential with respect to the longitude

  • tidal_potential_partial2_theta2 (np.ndarray) – The 2nd partial derivative of the tidal potential with respect to the colatitude

  • tidal_potential_partial2_phi2 (np.ndarray) – The 2nd partial derivative of the tidal potential with respect to the longitude

  • tidal_potential_partial2_theta_phi (np.ndarray) – The 2nd partial derivative of the tidal potential with respect to the colatitude and the longitude

  • tidal_solution_y (np.ndarray) – Matrix [6 x N] of tidal solutions often denoted as a lower-case “y”

  • longitude_array (np.ndarray) – Array of longitudes where tides were calculated [radians]

  • colatitude_array (np.ndarray) – Array of colatitudes where tides were calculated [radians]

  • time_array (np.ndarray) – Array of points in time when tides were calculated [s]

  • radius_array (np.ndarray) – Radius array [m]

  • shear_moduli (np.ndarray) – Shear modulus as a function of radius [Pa]

  • bulk_moduli (np.ndarray) – Bulk modulus as a function of radius [Pa]

  • frequency (FloatArray) – Forcing frequency used to calculate tidal heating [rad s-1]

  • degree_l (int = 2) – Tidal harmonic order

Returns:

  • strains (StrainType) –

    e_rrnp.ndarray

    Strain tensor component - radius radius

    e_ththnp.ndarray

    Strain tensor component - colatitude colatitude

    e_phphnp.ndarray

    Strain tensor component - longitude longitude

    e_rthnp.ndarray

    Strain tensor component - radius colatitude (appears twice in the symmetric tensor)

    e_rphnp.ndarray

    Strain tensor component - radius longitude (appears twice in the symmetric tensor)

    e_thphnp.ndarray

    Strain tensor component - colatitude longitude (appears twice in the symmetric tensor)

  • stress (StressType) –

    s_rrnp.ndarray

    Stress tensor component - radius radius

    s_ththnp.ndarray

    Stress tensor component - colatitude colatitude

    s_phphnp.ndarray

    Stress tensor component - longitude longitude

    s_rthnp.ndarray

    Stress tensor component - radius colatitude (appears twice in the symmetric tensor)

    s_rphnp.ndarray

    Stress tensor component - radius longitude (appears twice in the symmetric tensor)

    s_thphnp.ndarray

    Stress tensor component - colatitude longitude (appears twice in the symmetric tensor)