Version:

This documentation is not for the latest stable Salvus version.

API for Cartesian3DHomogeneous type meshes

Salvus version: 0.12.16

This document describes all the various parameters and settings for meshes of the Cartesian3DHomogeneous type available when using the simple_mesh interface of SalvusMesh:

Copy
from salvus.mesh import simple_mesh
m = simple_mesh.Cartesian3DHomogeneous(...)
# Accessing the elements_per_wavelength parameter in the basic group
m.basic.elements_per_wavelength = 2.0

Basic Parameters group [basic]

The most important parameters for seismic wave simulations.

Required: True

Detailed description of all parameters:

  • max_frequency_in_hertz

    • Pretty name: Resolved Frequency

    • Description: The desired resolved frequency of the mesh.

    • Parameter type: number

    • Required: True

  • elements_per_wavelength

    • Pretty name: Elements per Wavelength

    • Description: Number of elements per wavelength. Used to calculate element sizes to satisfy the desired dominant period.

    • Parameter type: number

    • Required: True

Option 1: Homogeneous Model Parameters group [model]

The physics and corresponding model parameters for a homogeneous model. Currently allows for acoustic and elastic isotropic models.

Required: True

Detailed description of all parameters:

  • physics

    • Pretty name: Physics

    • Description: Physics to be used, used to determine the required model parametrization.

    • Parameter type: string

    • Required: True

    • Possible values: "acoustic_isotropic"

  • RHO

    • Pretty name: RHO

    • Description: density

    • Parameter type: number

    • Required: True

  • VP

    • Pretty name: VP

    • Description: P-wave velocity

    • Parameter type: number

    • Required: True

Option 2: Homogeneous Model Parameters group [model]

The physics and corresponding model parameters for a homogeneous model. Currently allows for acoustic and elastic isotropic models.

Required: True

Detailed description of all parameters:

  • physics

    • Pretty name: Physics

    • Description: Physics to be used, used to determine the required model parametrization.

    • Parameter type: string

    • Required: True

    • Possible values: "elastic_isotropic"

  • RHO

    • Pretty name: RHO

    • Description: density

    • Parameter type: number

    • Required: True

  • VP

    • Pretty name: VP

    • Description: P-wave velocity

    • Parameter type: number

    • Required: True

  • VS

    • Pretty name: VS

    • Description: S-wave velocity

    • Parameter type: number

    • Required: True

Advanced Parameters group [advanced]

Advanced parameters for more control on seismic wave sisimulation meshes.

Required: True

Detailed description of all parameters:

  • courant_number

    • Pretty name: Courant Number

    • Description: Courant Number used to estimate dt.

    • Parameter type: number

    • Required: True

    • Default: 0.6

  • tensor_order

    • Pretty name: Tensor Order

    • Description: Spatial order used for shape mapping and model representation.

    • Parameter type: integer

    • Required: True

    • Default: 1

  • velocity_model_representation

    • Pretty name: Velocity Model Representation

    • Description: How to represent the velocity model on the mesh. element_nodes: values are stored on each node of each element, allows discontinuities and variations inside each element, but produces large files. elements: one value per element, allows discontinuities but the model will be piecewise constant. nodes: one value per node, enforces a continuous model, using mean at values on discontinuities. The Salvus solver currently only supports 'element_nodes'.

    • Parameter type: string

    • Required: True

    • Default: "element_nodes"

    • Possible values: "element_nodes", "elements", "nodes"

  • compression

    • Pretty name: Compress Mesh

    • Description: If true, the final mesh will be compressed with gzip compression level 2. Compression is most effective for constant values and the compression level does matter much in that case. Slows down the mesh IO.

    • Parameter type: boolean

    • Required: True

    • Default: true

Attenuation Arguments group [attenuation]

Parameters for the memory variable approximation of attenuation. A detailed description can be found in van Driel et al. 2014b.

Required: True

Detailed description of all parameters:

  • number_of_linear_solids

    • Pretty name: Number of Linear Solids

    • Description: The number of standard linear solids used. 5 is conservative, in many applications 3 may be sufficient.

    • Parameter type: integer

    • Required: True

    • Default: 5

  • frequencies

    • Pretty name: Frequencies

    • Description: Minimum and maximum frequencies in the attenuation band. If either is not set, it will be determined automatically. Will be overwritten by 'auto_band'.

    • Parameter type: array of numbers

    • Required: False

    • Default: [0.001, 1.0]

  • power_law_reference_frequency

    • Pretty name: Power Law Reference Frequency

    • Description: Reference frequency for power law Q = Q_0 (f / f_0)^alpha, where Q_0 is taken from background model [Hz]. Also see Fichtner & van Driel 2014.*

    • Parameter type: number

    • Required: True

    • Default: 1.0

  • power_law_alpha

    • Pretty name: Power Law Alpha

    • Description: Exponent alpha for power law Q = Q_0 (f / f_0)^alpha. Also see Fichtner & van Driel 2014.*

    • Parameter type: number

    • Required: True

    • Default: 0.0

  • auto_band

    • Pretty name: Auto frequency bands

    • Description: Automatically determine attenuation band [f_min, f_max] using an empirical relation for the bandwidth and the resolved frequency of the mesh (provided in basic). Will overwrite any given frequencies.

    • Parameter type: boolean

    • Required: True

    • Default: true

Cartesian 3D Arguments group [cartesian]

Parameters defining the domain for 3D cartesian meshes.

Required: True

Detailed description of all parameters:

  • x

    • Pretty name: X Range

    • Description: X dimension of the domain in km. The second item defaults to the scale of the 1D model.

    • Parameter type: array of null or number

    • Required: True

    • Default: [0.0, None]

  • y

    • Pretty name: Y Range

    • Description: Y dimension of the domain in km. The second item defaults to the second item of the x dimension if not specified.

    • Parameter type: array of null or number

    • Required: True

    • Default: [0.0, None]

  • z

    • Pretty name: Z Range

    • Description: Z dimension of the domain in km. The second item defaults to the second item of the x dimension if not specified.

    • Parameter type: array of null or number

    • Required: True

    • Default: [0.0, None]

Absorbing Boundary group [absorbing_boundaries]

Parameters for the addition of absorbing boundary elements.

Required: True

Detailed description of all parameters:

  • number_of_wavelengths

    • Pretty name: Number of Wavelengths.

    • Description: Width of the absorbing boundary in number of wavelengths at the reference velocity and frequency. For best performance, we recommend that this parameter is set to 3.5 or more. If set to zero, only first order absorbing boundaries are used.

    • Parameter type: number

    • Required: True

    • Default: 0.0

  • reference_velocity

    • Pretty name: Reference Velocity

    • Description: Reference velocity which is used in the 'number_of_wavelengths' calculation. If the velocity is varying along the boundary, an average value may suffice. If undesirable reflections are still encountered it is best to trend towards the lowest velocity in the mesh, leading to a thicker absorbing layer.

    • Parameter type: number

    • Required: True

    • Default: 0.0

  • reference_frequency

    • Pretty name: Reference Frequency

    • Description: Reference frequency used in the 'number_of_wavelengths' calculation. This may require some tuning for optimal performance, but a good starting point is setting it to the center frequency of your source. Use lower values to be more conervative.

    • Parameter type: ['number', 'string']

    • Required: True

    • Default: inf

  • side_sets

    • Pretty name: Side Sets

    • Description: List of absorbing side sets to extended for sponge layers. At the moment only supports ['all'] and ['all_except_free_surface'] for cartesian and only ['all_except_free_surface'] for spherical meshes, or ['none'].

    • Parameter type: array of strings

    • Required: True

    • Default: ['none']

PAGE CONTENTS