Version:

salvus.project.configuration.bathymetry.spherical

salvus.project.configuration.bathymetry.spherical salvus project configuration bathymetry spherical
Spherical bathymetry.

Classes

OceanLayer

Approximate the effect of Earth's oceans using a water layer.
While the "ocean loading" approximation produces good results when considering lower-frequency waves, it cannot model ocean-rebverbarated phases. When an ocean layer is added to the simulation, true acoustic elements are placed in ocean regions, and these elements are coupled to the crust via a standard fluid-solid coupling algorithm. When the ocean gets to thin (near the shore), the ocean loading approximation is then used.
SIGNATURE
class OceanLayer(
    salvus.project.configuration.bathymetry.spherical._SphericalBase
):
    def __init__(
        self,
        name: str,
        data: pathlib.Path | str,
        ocean_layer_vp: float = 1450.0,
        ocean_layer_density: float = 1020.0,
        ocean_layer_cutoff: float | None = None,
        shore_smoothing_factor: float | None = None,
        use_symlink: bool = False,
    ): ...
ARGUMENTS
Required
name
Type:str
Description:
Name of the bathymetry model.
Required
data
Type:pathlib.Path | str
Description:
Path to the bathymetry data file.
Optional
ocean_layer_vp
Type:float
Default value:1450.0
Description:
The (constant) velocity of water in the ocean layer. Defaults to 1450.0 m/s.
Optional
ocean_layer_density
Type:float
Default value:1020.0
Description:
The (constant) density of water in the ocean layer. Defaults to 1020 kg/m**3.
Optional
ocean_layer_cutoff
Type:float | None
Default value:None
Description:
Use the ocean loading approximation once the ocean becomes shallower than this value in meters. Defaults to None, in which case an appropriate value will be computed using the period of the mesh.
Optional
shore_smoothing_factor
Type:float | None
Default value:None
Description:
"Smooth" the shoreline to a second-order discontinuity. Defaults to None, in which case a value of 0.3 will be used.
Optional
use_symlink
Type:bool
Default value:False
Description:
Don't copy the data to the project but only symlink it. The downside of symlinking is that the project is no longer fully self-contained. The upside is that very large external files that could be used for multiple projects don't get copied.

Properties

  • ds(xr.Dataset)-The actual dataset representing the model.
  • name(str)-Model name.
  • ocean_layer_cutoff(float | None)-Ocean layer cutoff.
  • ocean_layer_density(float)-Density of the ocean layer.
  • ocean_layer_style(str)-Style of ocean layer.
  • ocean_layer_vp(float)-P-wave velocity of the ocean layer.
  • shore_smoothing_factor(float | None)-Shore smoothing factor.

Class Methods

OceanLayer.from_json()
Recreate the object from a dictionary serialization of its initialization parameters.
SIGNATURE
def from_json(parent_folder: pathlib.Path, d: dict) -> _ModelBase: ...
ARGUMENTS
Required
parent_folder
Type:pathlib.Path
Description:
Path to which the serialized model is relative to.
Required
d
Type:dict
Description:
Dictionary containing its init parameters and a few other things.

Methods

OceanLayer.to_json()
Serialize the model to JSON (and an associated NetCDF file).
SIGNATURE
def to_json(self, parent_folder: pathlib.Path | str) -> dict: ...
ARGUMENTS
Required
parent_folder
Type:pathlib.Path | str
Description:
Parent folder where the JSON + NetCDF files should be stored.

OceanLoad

Approximate the effect of Earth's oceans using a boundary condition.
The "ocean loading" approximation uses a boundary condition to approximate the effect of the oceans on seismic waveforms. This boundary condition essentially accounts for the effect of the weight of the oceans, but any oceanic "phases" will not be modelled.
SIGNATURE
class OceanLoad(
    salvus.project.configuration.bathymetry.spherical._SphericalBase
):
    def __init__(
        self,
        name: str,
        data: pathlib.Path | str,
        ocean_layer_density: float = 1020.0,
        use_symlink: bool = False,
    ): ...
ARGUMENTS
Required
name
Type:str
Description:
Name of the bathymetry model.
Required
data
Type:pathlib.Path | str
Description:
Path to the bathymetry data file.
Optional
ocean_layer_density
Type:float
Default value:1020.0
Description:
The (constant) density of water in the ocean layer. Defaults to 1020 kg/m**3.
Optional
use_symlink
Type:bool
Default value:False
Description:
Don't copy the data to the project but only symlink it. The downside of symlinking is that the project is no longer fully self-contained. The upside is that very large external files that could be used for multiple projects don't get copied.

Properties

  • ds(xr.Dataset)-The actual dataset representing the model.
  • name(str)-Model name.
  • ocean_layer_cutoff(float | None)-Ocean layer cutoff.
  • ocean_layer_density(float)-Density of the ocean layer.
  • ocean_layer_style(str)-Style of ocean layer.
  • ocean_layer_vp(float)-P-wave velocity of the ocean layer.
  • shore_smoothing_factor(float | None)-Shore smoothing factor.

Class Methods

OceanLoad.from_json()
Recreate the object from a dictionary serialization of its initialization parameters.
SIGNATURE
def from_json(parent_folder: pathlib.Path, d: dict) -> _ModelBase: ...
ARGUMENTS
Required
parent_folder
Type:pathlib.Path
Description:
Path to which the serialized model is relative to.
Required
d
Type:dict
Description:
Dictionary containing its init parameters and a few other things.

Methods

OceanLoad.to_json()
Serialize the model to JSON (and an associated NetCDF file).
SIGNATURE
def to_json(self, parent_folder: pathlib.Path | str) -> dict: ...
ARGUMENTS
Required
parent_folder
Type:pathlib.Path | str
Description:
Parent folder where the JSON + NetCDF files should be stored.

Used in tutorials

Functionality from this module is used in the following tutorials.
PAGE CONTENTS