examples.seismic.elastic package


examples.seismic.elastic.elastic_example module

examples.seismic.elastic.elastic_example.elastic_setup(shape=(50, 50), spacing=(15.0, 15.0), tn=500.0, space_order=4, nbpml=10, constant=False, **kwargs)[source]
examples.seismic.elastic.elastic_example.run(shape=(50, 50), spacing=(20.0, 20.0), tn=1000.0, space_order=4, nbpml=40, autotune=False, constant=False, **kwargs)[source]

examples.seismic.elastic.operators module

examples.seismic.elastic.operators.ForwardOperator(model, source, receiver, space_order=4, save=False, **kwargs)[source]

Constructor method for the forward modelling operator in an elastic media

  • modelModel object containing the physical parameters
  • sourcePointData object containing the source geometry
  • receiverPointData object containing the acquisition geometry
  • space_order – Space discretization order
  • save – Saving flag, True saves all time steps, False only the three buffered indices (last three time steps)
examples.seismic.elastic.operators.elastic_2d(model, space_order, save, source, receiver)[source]

2D elastic wave equation FD kernel

examples.seismic.elastic.operators.elastic_3d(model, space_order, save, source, receiver)[source]

3D elastic wave equation FD kernel

examples.seismic.elastic.operators.particle_velocity_fields(model, save, space_order)[source]

Create the particle velocity fields

examples.seismic.elastic.operators.src_rec(vx, vy, vz, txx, tyy, tzz, model, source, receiver)[source]

Source injection and receiver interpolation

examples.seismic.elastic.operators.stress_fields(model, save, space_order)[source]

Create the TimeFunction objects for the stress fields in the elastic formulation

examples.seismic.elastic.wavesolver module

class examples.seismic.elastic.wavesolver.ElasticWaveSolver(model, source, receiver, space_order=4, **kwargs)[source]

Bases: object

Solver object that provides operators for seismic inversion problems and encapsulates the time and space discretization for a given problem setup.

  • model – Physical model with domain parameters
  • source – Sparse point symbol providing the injected wave
  • receiver – Sparse point symbol describing an array of receivers
  • space_order – Order of the spatial stencil discretisation (default: 4)

Note: This is an experimental staggered grid elastic modeling kernel. Only 2D supported

forward(src=None, rec1=None, rec2=None, vp=None, vs=None, rho=None, vx=None, vz=None, txx=None, tzz=None, txz=None, save=None, **kwargs)[source]

Forward modelling function that creates the necessary data objects for running a forward modelling operator.

  • src – (Optional) Symbol with time series data for the injected source term
  • rec1 – (Optional) Symbol to store interpolated (txx) receiver data
  • rec2 – (Optional) Symbol to store interpolated (tzz) receiver data
  • vx – (Optional) Symbol to store the computed horizontal particle velocity
  • vz – (Optional) Symbol to store the computed vertical particle velocity
  • txx – (Optional) Symbol to store the computed horizontal stress
  • tzz – (Optional) Symbol to store the computed vertical stress
  • txz – (Optional) Symbol to store the computed diagonal stresss
  • vp – (Optional) Symbol for the time-constant P-wave velocity (km/s)
  • vs – (Optional) Symbol for the time-constant S-wave velocity (km/s)
  • vs – (Optional) Symbol for the time-constant density (rho=1 for water)
  • save – Option to store the entire (unrolled) wavefield

Rec1 (txx), Rec2 (tzz), particle velocities vx and vz, stress txx, tzz and txz and performance summary


Cached operator for forward runs with buffered wavefield

Module contents