Version:

API for Cartesian2D type meshes

Salvus version: 2024.1.2

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

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

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_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

  • 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

  • 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']

Advanced Parameters group [advanced]

Advanced mesh parameters.

Required: True

Detailed description of all parameters:

  • courant_number

    • Pretty name: Courant Number

    • Description: Courant Number.

    • Parameter type: number

    • Required: True

    • Default: 0.6

  • model_parameters

    • Pretty name: Model Parameters

    • Description: Model parameters.

    • Parameter type: array of strings

    • Required: False

    • Default: []

    • Possible values: "g", "dg", "VP", "VS", "VSV", "VSH", "VPV", "VPH", "RHO", "QMU", "QKAPPA", "C11", "C12", "C13", "C14", "C15", "C16", "C21", "C22", "C23", "C24", "C25", "C26", "C31", "C32", "C33", "C34", "C35", "C36", "C41", "C42", "C43", "C44", "C45", "C46", "C51", "C52", "C53", "C54", "C55", "C56", "C61", "C62", "C63", "C64", "C65", "C66", "A", "C", "L", "N", "F", "XI", "PHI", "LAMBDA", "MU", "KAPPA", "ETA"

  • tensor_order

    • Pretty name: Tensor Order

    • Description: Tensor order for the shape and material parameters.

    • Parameter type: integer

    • Required: True

    • Default: 1

Attenuation Arguments group [attenuation]

Parameters related to attenuation.

Required: True

Detailed description of all parameters:

  • auto_band

    • Pretty name: Automatic frequency band determination.

    • Description: Automatically determine the frequency band.

    • Parameter type: boolean

    • Required: True

    • Default: true

  • frequencies

    • Pretty name: Frequeny Band

    • Description: Frequency band for the linear solids.

    • Parameter type: array of numbers

    • Required: False

    • Default: [0.001, 1.0]

  • number_of_linear_solids

    • Pretty name: Number of Linear Solids

    • Description: The number of linear solids used.

    • Parameter type: integer

    • Required: True

    • Default: 5

  • power_law_alpha

    • Pretty name: Alphas for Power Law Alpha

    • Description: Exponent alpha for the power law.

    • Parameter type: number

    • Required: True

    • Default: 0.0

  • power_law_reference_frequency

    • Pretty name: Reference Frequency for Power Law

    • Description: Refeference frequency for the power law.

    • Parameter type: number

    • Required: True

    • Default: 1.0

Basic Parameters group [basic]

Basic parameters that must always be given.

Required: True

Detailed description of all parameters:

  • elements_per_wavelength

    • Pretty name: Elements per Wavelength

    • Description: Number of elements per wavelength

    • Parameter type: number

    • Required: True

  • min_period_in_seconds

    • Pretty name: Minimum Period in Seconds

    • Description: The minimum period of the mesh in seconds.

    • Parameter type: number

    • Required: True

  • model

    • Pretty name: Model

    • Description: The background model name or file.

    • Parameter type: string

    • Required: True

Cartesian Arguments group [cartesian]

2D cartesian arguments.

Required: True

Detailed description of all parameters:

  • x

    • Pretty name: X dimension in km

    • Description: Horizontal dimension in km.

    • Parameter type: array of null or number

    • Required: True

    • Default: [0.0, None]

  • y

    • Pretty name: Y dimension in km

    • Description: Vertical/horizontal dimension in km.

    • Parameter type: array of null or number

    • Required: True

    • Default: [0.0, None]

Refinement Arguments group [refinement]

Parameters for refinement of the meshes based on the 1D model.

Required: True

Detailed description of all parameters:

  • hmax_refinement

    • Pretty name: h-max Refinement

    • Description: Move refinement layers based on this criterion.

    • Parameter type: number

    • Required: True

    • Default: 1.5

  • horizontal_max_slowness_layer_index

    • Pretty name: Horizontal maximum slowness layer index (EXPERIMENTAL)

    • Description: For low velocity layers at the surface, horizontal refinements can be avoided if the source is below the LVL and hence cannot excite waves above a certain slowness. This is a 1D argument and might not me valid in 3D, hence check carefully. Ignored for 'local' refinement styles, if available.

    • Parameter type: integer

    • Required: True

    • Default: 0

  • refinement_bottom_up

    • Pretty name: Refinement Bottom Up

    • Description: Refine from the bottom.

    • Parameter type: boolean

    • Required: True

    • Default: false

  • refinement_style

    • Pretty name: Refinement Style

    • Description: The mesh refinement style.

    • Parameter type: string

    • Required: True

    • Default: "doubling"

    • Possible values: "local", "local_stable", "doubling", "tripling"

PAGE CONTENTS