Package SatStress :: Module SatStress :: Class SatLayer
[frames] | no frames]

Class SatLayer

source code

object --+
         |
        SatLayer

An object describing a uniform material layer within a satellite.

Note that a layer by itself has no knowledge of where within the satellite it resides. That information is contained in the ordering of the list of layers within the satellite object.

Instance Methods
SatLayer
__init__(self, sat, layer_n=0)
Construct an object representing a layer within a Satellite.
source code
 
__str__(self)
Output a human and machine readable text description of the layer.
source code
 
ordered_str(self, layer_n=None)
Return a string representation of the SatLayer, including information about where in the Satellite the layer lies.
source code
 
maxwell_time(self)
Calculate the Maxwell relaxation time of the layer [s] (viscosity/lame_mu).
source code
 
bulk_modulus(self)
Calculate the bulk modulus (κ) of the layer [Pa].
source code
 
youngs_modulus(self)
Calculate the Young's modulus (E) of the layer [Pa].
source code
 
poissons_ratio(self)
Calculate poisson's ratio (ν) of the layer [Pa].
source code
 
p_wave_velocity(self)
Calculate the velocity of a compression wave in the layer [m s^-1]
source code

Inherited from object: __delattr__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__

Instance Variables
float density
the density of the layer, at zero pressure [kg m^-3],
float lame_lambda
the layer's Lame parameter, λ [Pa].
float lame_mu
the layer's Lame parameter, μ (the shear modulus) [Pa].
str layer_id
a string identifying the layer, e.g.
float tensile_str
the tensile failure strength of the layer [Pa].
float thickness
the radial thickness of the layer [m].
float viscosity
the viscosity of the layer [Pa s].
Properties

Inherited from object: __class__

Method Details

__init__(self, sat, layer_n=0)
(Constructor)

source code 

Construct an object representing a layer within a Satellite.

Gets values from the Satellite.satParams dictionary for the layer that corresponds to the value of layer_n.

Each layer is defined by seven parameter values, and each layer has a unique numeric identifier, appended to the end of all the names of its parameters. Layer zero is the core, with the number increasing as the satellite is built up toward the surface. In the below list the "N" at the end of the parameter names should be replaced with the number of the layer (layer_n). Currently, because of the constraints of the Love number code that we are using, you must specify 4 layers (CORE, OCEAN, ICE_LOWER, ICE_UPPER).

  • LAYER_ID_N: A string identifying the layer, e.g. OCEAN or ICE_LOWER
  • DENSITY_N: The density of the layer at zero pressure [m kg^-3]
  • LAME_MU_N: The real-valued Lame parameter μ (shear modulus) [Pa]
  • LAME_LAMBDA_N: The real-valued Lame parameter λ [Pa]
  • THICKNESS_N: The thickness of the layer [m]
  • VISCOSITY_N: The viscosity of the layer [Pa s]
  • TENSILE_STRENGTH_N: The tensile strength of the layer [Pa]

Not all layers necessarily require all parameters in order for the calculation to succeed, but it is required that they be provided. Parameters that will currently be ignored:

  • TENSILE_STRENGTH of all layers except for the surface (which is only used when creating fractures).
  • VISCOSITY of the ocean and the core.
  • LAME_MU of the ocean, assumed to be zero.
Parameters:
  • sat (Satellite) - the Satellite object to which the layer belongs.
  • layer_n (int) - layer_n indicates which layer in the satellite is being defined, with n=0 indicating the center of the satellite, and increasing outward. This is needed in order to select the appropriate values from the Satellite.satParams dictionary.
Returns: SatLayer
a SatLayer object having the properties specified in the
Raises:
Overrides: object.__init__

__str__(self)
(Informal representation operator)

source code 

Output a human and machine readable text description of the layer.

Note that because the layer object does not know explicitly where it is within the stratified Satellite (that information is contained in the ordering of Satellite.layers list).

Derived quantities are also output for clarity, but are preceeded by the comment character '#' to avoid accidental use in re-constituting a satellite.

Overrides: object.__str__

ordered_str(self, layer_n=None)

source code 

Return a string representation of the SatLayer, including information about where in the Satellite the layer lies.

When being output as part of a Satellite object, the SatLayer needs to communicate which layer it is.

Parameters:
  • layer_n (int) - Layer location within satellite. Zero is the core. Defaults to None, in which case no ordering information is conveyed in output.

Instance Variable Details

layer_id

a string identifying the layer, e.g. CORE, or ICE_LOWER
Type:
str