shape_deformation
¶
This module contains a set of factory functions for setting up the shape deformation models of celestial bodies in an environment. Typically, these are primarilly used for detailed position modelling of ground stations/landers.
Functions¶
|
Factory function for creating basic tidal solid-body shape deformation |
|
Factory function for creating degree 2 basic tidal solid-body shape deformation |
Factory function for creating full IERS 2010 shape deformation model |
- basic_solid_body_tidal(tide_raising_bodies: list[str], displacement_love_numbers: dict[int, tuple[float, float]], reference_radius: float = nan) tudatpy.kernel.numerical_simulation.environment_setup.shape_deformation.BasicSolidBodyDeformationSettings ¶
Factory function for creating basic tidal solid-body shape deformation
Factory function for creating basic tidal solid-body shape deformation, computing the tidal shape variation due to any number of bodies causing the deformation, and a tidal response define by the deformation Love and Shida numbers \(h_{m}\) and \(l_{m}\) (with only \(m=2,3\) currently supported). This function implements equations (7.5) and (7.6) of the IERS 2010 Conventions.
- Parameters:
tide_raising_bodies (list[ string ]) – List of bodies that raise a tide that induces the shape variation.
displacement_love_numbers (dict[ int, [float,float] ]) – Dictionary of pairs. The dictionary key the spherical harmonic degree \(l\) of the tidal deformation (2 or 3 are currenty supported). The dictionary value is comprised of a pair of floats representing the \(h_{2}\) and \(l_{2}\) deformation Love numbers
reference_radius (float, default = NaN) – Spherical harmonic reference radius of the deformed body. If this value is left undefined (e.g at NaN), the reference radius of the existing spherical harmonic gravity field of the deformed body is used.
- Returns:
Instance of the
BodyDeformationSettings
derivedBasicSolidBodyDeformationSettings
class- Return type:
Examples
In this example, we create a settings for degree 2 tidal deformation of the Earth due to the Sun and Moon:
# Create Love numbers love_numbers = dict() love_numbers[2] = (0.6, 0.08) # Create tide raising bodies tide_raising_bodies = ["Sun", "Moon"] # Append shape variation settings to existing (default is empty) list body_settings.get( "Earth" ).shape_deformation_settings.append( environment_setup.shape_deformation.basic_solid_body_tidal( tide_raising_bodies, love_numbers ) )
- degree_two_basic_solid_body_tidal(tide_raising_bodies: list[str], love_number: float, shida_number: float, reference_radius: float = nan) tudatpy.kernel.numerical_simulation.environment_setup.shape_deformation.BasicSolidBodyDeformationSettings ¶
Factory function for creating degree 2 basic tidal solid-body shape deformation
Factory function for creating basic tidal solid-body shape deformation, computing the tidal shape variation due to any number of bodies causing the deformation, and a tidal response define by the deformation Love and Shida numbers \(h_{2}\) and \(l_{2}\). This function implements equations (7.5) of the IERS 2010 Conventions, and provides a simplified interface (for degree 2 only) of
basic_solid_body_tidal()
.- Parameters:
tide_raising_bodies (list[ string ]) – List of bodies that raise a tide that induces the shape variation.
love_number (float) – Value of \(h_{2}\) deformation Love number`
shida_number (float) – Value of \(l_{2}\) deformation Shida number`
reference_radius (float, default = NaN) – Spherical harmonic reference radius of the deformed body. If this value is left undefined (e.g at NaN), the reference radius of the existing spherical harmonic gravity field of the deformed body is used.
- Returns:
Instance of the
BodyDeformationSettings
derivedBasicSolidBodyDeformationSettings
class- Return type:
Examples
In this example, we create a settings for degree 2 tidal deformation of the Earth due to the Sun and Moon:
# Create Love numbers h2_love_number = 0.6 l2_shida_number = 0.08 # Create tide raising bodies tide_raising_bodies = ["Sun", "Moon"] # Append shape variation settings to existing (default is empty) list body_settings.get( "Earth" ).shape_deformation_settings.append( environment_setup.shape_deformation.degree_two_basic_solid_body_tidal( tide_raising_bodies, h2_love_number, l2_shida_number ) )
- iers_2010_solid_body_tidal() tudatpy.kernel.numerical_simulation.environment_setup.shape_deformation.BodyDeformationSettings ¶
Factory function for creating full IERS 2010 shape deformation model
Factory function for creating full IERS 2010 shape deformation model, computing the tidal shape variation due to the full model defined in Section 7.1.1 of the 2010 IERS conventions, implementing Eqs. (7.5)-(7.13), including all terms from Tables 7.3a and 7.3b. At present, none of the input parameters of the model can be varied.
- Returns:
Instance of the
BodyDeformationSettings
defining the IERS 2010 settings- Return type:
Classes¶
Base class for providing settings for body shape deformation model. |
|
Class for defining model settings for simple tidal solid-body shape deformation. |
- class BodyDeformationSettings¶
Base class for providing settings for body shape deformation model.
Functional (base) class for settings of body shape deformation models that require no information in addition to their type. Body shape deformation model settings requiring additional information must be defined using an object derived from this class.
- class BasicSolidBodyDeformationSettings¶
Class for defining model settings for simple tidal solid-body shape deformation.
BodyDeformationSettings derived class for simple tidal solid-body shape deformation.