gravity_field_variation
¶
This module contains a set of factory functions for setting up the gravity field variations of a (spherical harmonic) gravity field.
Functions¶
|
Factory function for creating solid body tides. |
|
Factory function for creating solid body tides. |
Factory function for creating solid body tides. |
|
Factory function for creating solid body tides. |
|
Factory function for creating solid body tides. |
|
Overloaded function. |
- solid_body_tide(tide_raising_body: str, love_number: float, degree: int) tudatpy.kernel.numerical_simulation.environment_setup.gravity_field_variation.GravityFieldVariationSettings ¶
Factory function for creating solid body tides.
Factory function for creating solid body tides, using a single real Love number at a single degree (e.g. \(k_{2}\), \(k_{3}\), etc.). This function evaluates Eq. (6.6) from the IERS Conventions 2010, with real \(k_{l}=k_{lm}\), a single value of \(l\) and a single tide-raising body \(j\).
- Parameters:
tide_raising_body (str) – Name of body raising the tide.
love_number (float) – Constant real Love number to use for body undergoing deformation, at the spherical harmonic degree defined by ‘degree’ input.
degree (int) – Degree of the spherical harmonic gravity field, and associated Love number, that is to be considered.
- Returns:
Instance of the
BasicSolidBodyGravityFieldVariationSettings
derivedGravityFieldVariationSettings
class- Return type:
Examples
In this example, we create gravity field variations of Earth for a tide raised by the Moon, with a single Love number \(k_{2}\) of 0.301, and add it to the list of gravity field variations
tide_raising_body = "Moon" degree = 2 love_number = 0.301 gravity_field_variation_list = list() gravity_field_variation_list.append( environment_setup.gravity_field_variation.solid_body_tide( tide_raising_body, love_number, degree ) body_settings.get( "Earth" ).gravity_field_variation_settings = gravity_field_variation_list
- solid_body_tide_complex_k(tide_raising_body: str, love_number: complex, degree: int) tudatpy.kernel.numerical_simulation.environment_setup.gravity_field_variation.GravityFieldVariationSettings ¶
Factory function for creating solid body tides.
As
solid_body_tide()
, but with complex value for the Love number.- Parameters:
tide_raising_body (str) – Name of body raising the tide.
love_number (complex) – Constant real Love number to use for body undergoing deformation, at the spherical harmonic degree defined by ‘degree’ input.
degree (int) – Degree of the spherical harmonic gravity field, and associated Love number, that is to be considered.
- Returns:
Instance of the
BasicSolidBodyGravityFieldVariationSettings
derivedGravityFieldVariationSettings
class- Return type:
- solid_body_tide_degree_variable_k(tide_raising_body: str, love_number_per_degree: dict[int, float]) tudatpy.kernel.numerical_simulation.environment_setup.gravity_field_variation.GravityFieldVariationSettings ¶
Factory function for creating solid body tides.
Factory function for creating solid body tides, using a set of real, separate, Love numbers at any number of degrees (e.g. \(k_{2}\), \(k_{3}\), etc.). This output of this function is effectively identical to a list of outputs to
solid_body_tide()
, with differing degrees and associated Love numbers. This function evaluates Eq. (6.6) from the IERS Conventions 2010, with a set of real values \(k_{l}=k_{lm}\), at a set of values of \(l\) and a single tide-raising body \(j\).- Parameters:
- Returns:
Instance of the
BasicSolidBodyGravityFieldVariationSettings
derivedGravityFieldVariationSettings
class- Return type:
Examples
In this example, we create gravity field variations of Earth for a tide raised by the Moon, with a Love numbers \(k_{2}=0.301\), and \(k_{3}=0.09\), and add it to the list of gravity field variations
tide_raising_body = "Moon" love_numbers = dict( ) love_numbers[ 2 ] = 0.301 love_numbers[ 3 ] = 0.09 gravity_field_variation_list = list() gravity_field_variation_list.append( environment_setup.gravity_field_variation.solid_body_tide_degree_variable_k( tide_raising_body, love_numbers ) body_settings.get( "Earth" ).gravity_field_variation_settings = gravity_field_variation_list
- solid_body_tide_degree_variable_complex_k(tide_raising_body: str, love_number_per_degree: dict[int, complex]) tudatpy.kernel.numerical_simulation.environment_setup.gravity_field_variation.GravityFieldVariationSettings ¶
Factory function for creating solid body tides.
As
solid_body_tide_degree_variable_k()
, but with complex values for the Love numbers.- Parameters:
- Returns:
Instance of the
BasicSolidBodyGravityFieldVariationSettings
derivedGravityFieldVariationSettings
class- Return type:
- solid_body_tide_degree_order_variable_k(tide_raising_body: str, love_number_per_degree_and_order: dict[int, list[float]]) tudatpy.kernel.numerical_simulation.environment_setup.gravity_field_variation.GravityFieldVariationSettings ¶
Factory function for creating solid body tides.
Factory function for creating solid body tides, using a set of real, separate, Love numbers at any number of degrees and orders (e.g. \(k_{20}\), \(k_{21}\), \(k_{22}\), \(k_{30}\), etc.). This function evaluates Eq. (6.6) from the IERS Conventions 2010, with a set of real values \(k_{lm}\), at a set of values of \(l\) and a single tide-raising body \(j\).
- Parameters:
tide_raising_body (str) – Name of body raising the tide.
love_number_per_degree_and_order (dict( int, list( float ) )) – Dictionary of Love numbers for each degree that is to be taken into account, with the key representing the degree \(l\) of the Love number, and value containing the list of Love numbers \(k_{lm}\) at this degree. Note that, for Love numbers at degree \(l\), the associated list should contain \(l+1\) entries, representing the Love numbers (in order) \(k_{l0}\), \(k_{l1}\)… \(k_{ll}\).
- Returns:
Instance of the
BasicSolidBodyGravityFieldVariationSettings
derivedGravityFieldVariationSettings
class- Return type:
Examples
In this example, we create gravity field variations of the Moon, for a tide raised by Earth, with a Love numbers \(k_{20}=0.024615\), \(k_{21}=0.023915\) and \(k_{21}=0.024852\), and add it to the list of gravity field variations
tide_raising_body = "Earth" love_numbers = dict( ) love_numbers[ 2 ] = list( ) love_numbers[ 2 ].append( 0.024615 ) love_numbers[ 2 ].append( 0 .023915 ) love_numbers[ 2 ].append( 0.024852 ) gravity_field_variation_list = list() gravity_field_variation_list.append( environment_setup.gravity_field_variation.solid_body_tide_degree_order_variable_k( tide_raising_body, love_numbers ) body_settings.get( "Earth" ).gravity_field_variation_settings = gravity_field_variation_list
- solid_body_tide_degree_order_variable_complex_k(*args, **kwargs)¶
Overloaded function.
solid_body_tide_degree_order_variable_complex_k(tide_raising_body: str, love_number_per_degree_and_order: dict[int, list[complex]]) -> tudatpy.kernel.numerical_simulation.environment_setup.gravity_field_variation.GravityFieldVariationSettings
Factory function for creating solid body tides.
As
solid_body_tide_degree_order_variable_k()
, but with complex values for the Love number.- Parameters:
tide_raising_body (str) – Name of body raising the tide.
love_number_per_degree (dict( int, list( complex ) )) – Dictionary of Love numbers for each degree that is to be taken into account, with the key representing the degree \(l\) of the Love number, and value containing the list of Love numbers \(k_{lm}\) at this degree. Note that, for Love numbers at degree \(l\), the associated list should contain \(l+1\) entries, representing the Love numbers (in order) \(k_{l0}\), \(k_{l1}\)…:math:k_{ll}.
- Returns:
Instance of the
BasicSolidBodyGravityFieldVariationSettings
derivedGravityFieldVariationSettings
class- Return type:
solid_body_tide_degree_order_variable_complex_k(tide_raising_body: str, love_number_per_degree_and_order: dict[int, list[complex]]) -> tudatpy.kernel.numerical_simulation.environment_setup.gravity_field_variation.GravityFieldVariationSettings
Factory function for creating solid body tides.
As
solid_body_tide_degree_order_variable_k()
, but with complex values for the Love number.- Parameters:
tide_raising_body (str) – Name of body raising the tide.
love_number_per_degree (dict( int, list( complex ) )) – Dictionary of Love numbers for each degree that is to be taken into account, with the key representing the degree \(l\) of the Love number, and value containing the list of Love numbers \(k_{lm}\) at this degree. Note that, for Love numbers at degree \(l\), the associated list should contain \(l+1\) entries, representing the Love numbers (in order) \(k_{l0}\), \(k_{l1}\)…:math:k_{ll}.
- Returns:
Instance of the
BasicSolidBodyGravityFieldVariationSettings
derivedGravityFieldVariationSettings
class- Return type:
Classes¶
Base class for providing settings for gravity field variations. |
|
Class for providing settings for solid body tidal gravity field variations, derived from GravityFieldVariationSettings. |
- class GravityFieldVariationSettings¶
Base class for providing settings for gravity field variations.
- class BasicSolidBodyGravityFieldVariationSettings¶
Class for providing settings for solid body tidal gravity field variations, derived from GravityFieldVariationSettings.