TidalPy.rheology package

Subpackages

Submodules

TidalPy.rheology.base module

Common base class for all TidalPy rheology models.

class TidalPy.rheology.base.RheologyModelBase

Bases: TidalPyBaseExtensionClass

change_args(new_args)

Change constant arguments for rheology model.

Parameters:

new_args (tuple[float, ...]) – A tuple of floats that are required by certain rheology models. If none are provided then defaults will be used.

vectorize_frequency(frequency_view, modulus, viscosity, output_view)
vectorize_modulus_viscosity(frequency, modulus_view, viscosity_view, output_view)

TidalPy.rheology.models module

class TidalPy.rheology.models.Andrade

Bases: RheologyModelBase

change_args(new_args)

Change constant arguments for rheology model.

Parameters:

new_args (tuple[float, ...]) – A tuple of floats that are required by certain rheology models. If none are provided then defaults will be used.

class TidalPy.rheology.models.Burgers

Bases: RheologyModelBase

change_args(new_args)

Change constant arguments for rheology model.

Parameters:

new_args (tuple[float, ...]) – A tuple of floats that are required by certain rheology models. If none are provided then defaults will be used.

class TidalPy.rheology.models.Elastic

Bases: RheologyModelBase

class TidalPy.rheology.models.Maxwell

Bases: RheologyModelBase

class TidalPy.rheology.models.Newton

Bases: RheologyModelBase

class TidalPy.rheology.models.SundbergCooper

Bases: RheologyModelBase

change_args(new_args)

Change constant arguments for rheology model.

Parameters:

new_args (tuple[float, ...]) – A tuple of floats that are required by certain rheology models. If none are provided then defaults will be used.

class TidalPy.rheology.models.Voigt

Bases: RheologyModelBase

change_args(new_args)

Change constant arguments for rheology model.

Parameters:

new_args (tuple[float, ...]) – A tuple of floats that are required by certain rheology models. If none are provided then defaults will be used.

TidalPy.rheology.models.find_rheology(rheology_name)

TidalPy.rheology.rheology module

class TidalPy.rheology.rheology.Rheology[source]

Bases: LayerConfigHolder

A class for methods and attributes used to calculate a layer’s strength-related physics.

Rheology class stores model parameters and methods for viscosity(P, T, melt_frac), shear_modulus(P, T, melt_frac)

and complex_compliance(viscosity, shear_modulus, forcing frequency).

See also

TidalPy.utilities.methods.LayerConfigHolder, TidalPy.rheology.complex_compliance.ComplexCompliance, TidalPy.rheology.partial_melt.PartialMelt, TidalPy.rheology.viscosity.ViscosityParentClass

property beta

Outer-scope wrapper for layer.beta

clear_state()[source]

Clear the state of all rheological parameters (all sub models’ clear_state method will be called)

property complex_compliance_model: ComplexCompliance

Complex compliance model instance used to calculate the layers complex compliance

property complex_compliances

Inner-scope wrapper for complex_compliance_model.complex_compliances

complex_compliances_changed(collapse_tidal_modes: bool = True)[source]

The complex compliances have changed. Make any necessary updates.

Parameters:

collapse_tidal_modes (bool = True) – If True, then the world will tell its tides model to collapse tidal modes.

property compliance

Alias for self.postmelt_compliance

default_config = {}
layer_config_key = 'rheology'
property liquid_viscosity

Inner-scope wrapper for liquid_viscosity_model.viscosity

property liquid_viscosity_model: LiquidViscosity

Viscosity model instance used to calculate layer’s liquid viscosity (no partial melt)

property melt_fraction

Inner-scope wrapper for partial_melting_model.melt_fraction

property partial_melting_model: PartialMelt

Partial melting model instance used to modify the solid & liquid viscosities based on the melt fraction

property postmelt_compliance

Inner-scope wrapper for partial_melting_model.postmelt_compliance

property postmelt_shear_modulus

Inner-scope wrapper for partial_melting_model.postmelt_shear_modulus

property postmelt_viscosity

Inner-scope wrapper for partial_melting_model.postmelt_viscosity

property premelt_shear

Outer-scope wrapper for layer.static_shear_modulus

property premelt_viscosity

Inner-scope wrapper for sold_viscosity_model.viscosity

property quality_factor

Outer-scope wrapper for layer.quality_factor

set_state(viscosity: FloatArray = None, shear_modulus: FloatArray = None)[source]

Set the rheology state and recalculate any parameters that may be affected.

Setting the state manually overrides the functionality of the viscosity, shear, and partial melting functions.

Parameters:
  • viscosity (FloatArray) – Layer/Material viscosity [Pa s]

  • shear_modulus (FloatArray) – Layer/Material shear modulus [Pa]

See also

TidalPy.structures.layers.PhysicsLayer.set_strength

property shear

Alias for self.postmelt_shear_modulus

property shear_modulus

Alias for self.postmelt_shear_modulus

strength_changed()[source]

The layer’s viscosity and/or shear modulus has changed. Make any necessary updates.

temperature_pressure_changed()[source]

The layer’s temperature and/or pressure has changed. Make any necessary updates.

tidal_frequencies_changed(collapse_tidal_modes: bool = True)[source]

The tidal frequencies have changed. Make any necessary updates.

Parameters:

collapse_tidal_modes (bool = True) – If True, then the world will tell its tides model to collapse tidal modes.

property unique_tidal_frequencies

Outer-scope wrapper for world.unique_tidal_frequencies

property viscosity

Alias for self.postmelt_viscosity

property viscosity_model: SolidViscosity

Viscosity model instance used to calculate layer’s solid viscosity (no partial melt)