seisflows.plugins.preprocess.adjoint

Adjoints used by the ‘default’ preprocess class use to generate adjoint sources

All functions defined have four required positional arguments

type syn

np.array

param syn

synthetic data array

type obs

np.array

param obs

observed data array

type nt

int

param nt

number of time steps in the data array

type dt

float

param dt

time step in sec

Module Contents

Functions

waveform(syn, obs, *args, **kwargs)

Waveform difference from Tromp et al 2005 Eq 9

envelope(syn, obs, nt, dt[, eps])

Waveform envelope difference from Yuan et al. 2015 Eq. 16

instantaneous_phase(syn, obs, nt, dt[, eps])

Instantaneous phase difference from Bozdag et al. 2011 Eq. 27

traveltime(syn, obs, nt, dt, *args, **kwargs)

Cross-correlation traveltime from Tromp et al. 2005 Eq. 45

traveltime_inexact(syn, obs, nt, dt, *args, **kwargs)

A faster cc traveltime function but possibly innacurate

amplitude(syn, obs, nt, dt, *args, **kwargs)

Cross-correlation amplitude difference

envelope2(syn, obs, nt, dt[, eps])

Envelope amplitude ratio from Yuan et al. 2015 Eq. B-2

envelope3(syn, obs, nt, dt[, eps])

Envelope lag from Yuan et al. 2015 Eq. B-2, B-5

instantaneous_phase2(syn, obs, nt, dt[, eps])

Alterative instantaneous phase function

displacement(syn, obs, nt, dt, *args, **kwargs)

Displacement waveform for migration

velocity(syn, obs, nt, dt, *args, **kwargs)

Velocity waveform for migration, taking derivative of obs

acceleration(syn, obs, nt, dt, *args, **kwargs)

Acceleration waveform for migration, second derivative of obs

seisflows.plugins.preprocess.adjoint.waveform(syn, obs, *args, **kwargs)

Waveform difference from Tromp et al 2005 Eq 9

Parameters
  • syn (np.array) – synthetic data array

  • obs (np.array) – observed data array

seisflows.plugins.preprocess.adjoint.envelope(syn, obs, nt, dt, eps=0.05, *args, **kwargs)

Waveform envelope difference from Yuan et al. 2015 Eq. 16

Parameters
  • syn (np.array) – synthetic data array

  • obs (np.array) – observed data array

  • nt (int) – number of time steps in the data array

  • dt (float) – time step in sec

seisflows.plugins.preprocess.adjoint.instantaneous_phase(syn, obs, nt, dt, eps=0.05, *args, **kwargs)

Instantaneous phase difference from Bozdag et al. 2011 Eq. 27

Parameters
  • syn (np.array) – synthetic data array

  • obs (np.array) – observed data array

  • nt (int) – number of time steps in the data array

  • dt (float) – time step in sec

seisflows.plugins.preprocess.adjoint.traveltime(syn, obs, nt, dt, *args, **kwargs)

Cross-correlation traveltime from Tromp et al. 2005 Eq. 45

Parameters
  • syn (np.array) – synthetic data array

  • obs (np.array) – observed data array

  • nt (int) – number of time steps in the data array

  • dt (float) – time step in sec

seisflows.plugins.preprocess.adjoint.traveltime_inexact(syn, obs, nt, dt, *args, **kwargs)

A faster cc traveltime function but possibly innacurate

Parameters
  • syn (np.array) – synthetic data array

  • obs (np.array) – observed data array

  • nt (int) – number of time steps in the data array

  • dt (float) – time step in sec

seisflows.plugins.preprocess.adjoint.amplitude(syn, obs, nt, dt, *args, **kwargs)

Cross-correlation amplitude difference

Parameters
  • syn (np.array) – synthetic data array

  • obs (np.array) – observed data array

  • nt (int) – number of time steps in the data array

  • dt (float) – time step in sec

seisflows.plugins.preprocess.adjoint.envelope2(syn, obs, nt, dt, eps=0.0, *args, **kwargs)

Envelope amplitude ratio from Yuan et al. 2015 Eq. B-2

Parameters
  • syn (np.array) – synthetic data array

  • obs (np.array) – observed data array

  • nt (int) – number of time steps in the data array

  • dt (float) – time step in sec

seisflows.plugins.preprocess.adjoint.envelope3(syn, obs, nt, dt, eps=0.0, *args, **kwargs)

Envelope lag from Yuan et al. 2015 Eq. B-2, B-5

Parameters
  • syn (np.array) – synthetic data array

  • obs (np.array) – observed data array

  • nt (int) – number of time steps in the data array

  • dt (float) – time step in sec

seisflows.plugins.preprocess.adjoint.instantaneous_phase2(syn, obs, nt, dt, eps=0.0, *args, **kwargs)

Alterative instantaneous phase function

Parameters
  • syn (np.array) – synthetic data array

  • obs (np.array) – observed data array

  • nt (int) – number of time steps in the data array

  • dt (float) – time step in sec

seisflows.plugins.preprocess.adjoint.displacement(syn, obs, nt, dt, *args, **kwargs)

Displacement waveform for migration

seisflows.plugins.preprocess.adjoint.velocity(syn, obs, nt, dt, *args, **kwargs)

Velocity waveform for migration, taking derivative of obs

seisflows.plugins.preprocess.adjoint.acceleration(syn, obs, nt, dt, *args, **kwargs)

Acceleration waveform for migration, second derivative of obs Use finite difference to differentiate observatio nwaveform