pylops.waveeqprocessing.AcousticWave2D#
- class pylops.waveeqprocessing.AcousticWave2D(shape, origin, spacing, vp, src_x, src_z, rec_x, rec_z, t0, tn, src_type='Ricker', space_order=6, nbl=20, f0=20.0, checkpointing=False, dtype='float32', name='A')[source]#
Devito Acoustic propagator.
- Parameters
- shape
tupleornumpy.ndarray Model shape
(nx, nz)- origin
tupleornumpy.ndarray Model origin
(ox, oz)- spacing
tupleornumpy.ndarray Model spacing
(dx, dz)- vp
numpy.ndarray Velocity model in m/s
- src_x
numpy.ndarray Source x-coordinates in m
- src_z
numpy.ndarrayorfloat Source z-coordinates in m
- rec_x
numpy.ndarray Receiver x-coordinates in m
- rec_z
numpy.ndarrayorfloat Receiver z-coordinates in m
- t0
float Initial time in ms
- tn
int Final time in ms
- src_type
str Source type
- space_order
int, optional Spatial ordering of FD stencil
- nbl
int, optional Number ordering of samples in absorbing boundaries
- f0
float, optional Source peak frequency (Hz)
- checkpointing
bool, optional Use checkpointing (
True) or not (False). Note that using checkpointing is needed when dealing with large models but it will slow down computations- dtype
str, optional Type of elements in input array.
- name
str, optional Name of operator (to be used by
pylops.utils.describe.describe)
- shape
- Attributes
- space_order
int Spatial ordering of FD stencil.
- model
examples.seismic.Model Devito model object.
- geometry
examples.seismic.AcquisitionGeometry Devito acquisition geometry object.
- dims
tuple Shape of the array after the adjoint, but before flattening.
For example,
x_reshaped = (Op.H * y.ravel()).reshape(Op.dims).- dimsd
tuple Shape of the array after the forward, but before flattening.
For example,
y_reshaped = (Op * x.ravel()).reshape(Op.dimsd).- shape
tuple Operator shape.
- space_order
Methods
__init__(shape, origin, spacing, vp, src_x, ...)adjoint()apply_columns(cols)Apply subset of columns of operator
cond([uselobpcg])Condition number of linear operator.
conj()Complex conjugate operator
div(y[, niter, densesolver])Solve the linear problem \(\mathbf{y}=\mathbf{A}\mathbf{x}\).
dot(x)Matrix-matrix or matrix-vector multiplication.
eigs([neigs, symmetric, niter, uselobpcg])Most significant eigenvalues of linear operator.
matmat(X)Matrix-matrix multiplication.
matvec(x)Matrix-vector multiplication.
reset_count()Reset counters
rmatmat(X)Matrix-matrix multiplication.
rmatvec(x)Adjoint matrix-vector multiplication.
srcillumination_allshots([savewav])Source wavefield and illumination for all shots
todense([backend])Return dense matrix.
toimag([forw, adj])Imag operator
toreal([forw, adj])Real operator
tosparse()Return sparse matrix.
trace([neval, method, backend])Trace of linear operator.
transpose()updatesrc(wav)Update source wavelet