This page here has been created for the latest stable release of Salvus. You have chosen to view the documentation for another Salvus version. Please be aware there might be some small differences you have to account for.
What difference does it make if the misfit functional uses velocity traces instead of displacements ?
The answer might be a bit more complicated than you think.
Usually, we solve the wave equation with displacement as primary state variable. To keep things simple let's consider the scalar wave equation in a homogeneous medium
with initial conditions
For displacement measurements and the -misfit,
it is well known that the adjoint source is then simply given by the residuals .
Instead of displacements , we now want to consider the -misfit for velocity measurements.
Under some reasonable regularity assumptions on the source time function, we can just take the time derivative of the wave equation and obtain:
with initial conditions
This results in the same wave equation as the one originally defined but with velocity as state variable and the time-differentiated source time function on the right-hand-side:
with initial conditions
For velocity measurements the -misfit then reads
and the adjoint source is given by the velocity residuals .
In summary, we transform the forward equation from displacement to velocity as primary state variable, in which case we can directly deduce the adjoint source in terms of velocity and then also solve the adjoint equation in the velocity formulation to obtain gradients.
Alternatively, we can keep the wave equation in the displacement formulation and invoke the chain rule to compute the correct adjoint source. In this case, the velocity misfit is given by
What is the correct adjoint source in this case?
The answer is that both are incorrect!
Let's recall that the adjoint source is defined as the negative derivative of the misfit functional with respect to the state variable. In our case, we have
and the adjoint source is defined as
In variational form, we obtain the directional derivative of as
To shift the time derivative onto the first term, we apply integration-by-parts which yields:
where we have used the homogeneous initial (resp. final time) conditions of forward and adjoint equation. From the last equation, we deduce that the correct adjoint source in the displacement formulation is thus given by
i.e., it has the opposite sign of what we might have guessed.
In summary, this strategy solves the adjoint equation in its usual displacement formulation, but correctly accounts for velocities by invoking the chain rule when computing the adjoint source.
The gradients will be exactly the same in both cases.
In the second case, the adjoint source needs to account for the time derivative and to apply the chain rule properly. The good news is that Salvus does this automatically when the misfit is defined in velocities, so you don't have to worry about this as a user.
The numerical time integration scheme is more accurate in the primary state variable than in its time derivative. Hence, solving the wave equation for velocity using the time derivative of the source time function would be the preferred way.
The only downside here is that the field labels become ambiguous, because Salvus would still call the primary field displacement
.
The whole argument also applies to acceleration.