Problem. Consider the one-dimensional adjoint Euler equations for $(x,t) \in \Omega \times [0,T]$ with $\Omega \subset \mathbb{R}$ and $T > 0$ $$ \varphi_t + \Big(\frac{\mathrm{d}F}{\mathrm{d} U}(x)\Big)^{\top}\ \varphi_x = 0 \quad \text{in} \quad \Omega \times [0,T] \tag{$*$} \label{eq:adj}$$ where $F$ is the flux vector of the 1D Euler equations, $U$ the conservative variable vector and $\varphi_x$ the derivative of the adjoint vector with respect to $x$.

In particular, \eqref{eq:adj} is the adjoint equation derived from the conservative form of Euler equations.

Question I. Now, what scheme, having a cell-centered finite volume (FV) discretization and artificial dissipation (similar to the JST scheme), would be appropriate to numerically solve this equation (considering that it is cast in a nonconservative form)?

Remark. If I am not mistaken, the above homogeneous and nonconservative form can be recasted to a nonhomogeneous and conservative form using the product rule of the derivative $$ \varphi_t + \Big[\Big(\frac{\mathrm{d}F}{\mathrm{d} U}\Big)^{\top}(x)\ \varphi \Big]_x = \Big[\Big(\frac{\mathrm{d}F}{\mathrm{d} U}(x)\Big)^{\top}\Big]_x\ \varphi$$

Question II. Is the above method correct? Also, considering that artificial dissipation is used, is there any faster and simpler way to discretize the system \eqref{eq:adj} avoiding numerical pitfalls?

Remark. The coefficients $\frac{\mathrm{d}F}{\mathrm{d} U}(x)$ are frozen in time $t$ and they depend only on $x$.

  • $\begingroup$ You are actually solving a hyperbolic problem but in pseudotime, when you solve the discrete problem. I can aswell write the equation with the time derivative (I 'll edit it to be formal as you mention). The problem remains the same and the flux Jacobians are frozen w.r.t. time. $\endgroup$
    – ares
    Mar 6, 2019 at 6:44
  • $\begingroup$ @DavidKetcheson I have updated the question. Is there any clear answer to this problem now? $\endgroup$
    – ares
    Mar 6, 2019 at 20:26
  • $\begingroup$ Ah, the most important thing you have now revealed is that the problem is linear. @SpencerBryngelson has given an answer that is helpful for the (much more complicated!) nonlinear nonconservative case. I'll post an answer dealing with the linear case, which is much simpler. $\endgroup$ Mar 7, 2019 at 6:38
  • $\begingroup$ @ares Just a minor point, in the adjoint, it should be transpose of the jacobian matrix dF/dU. $\endgroup$
    – cfdlab
    Mar 7, 2019 at 6:53
  • $\begingroup$ @cpraven Yes, I 'll correct that, I initially thought of it as general coefficients and since the problem at hand doesn't change I omitted the transpose. But since I refer to adjoint I should have corrected it. $\endgroup$
    – ares
    Mar 7, 2019 at 15:27

2 Answers 2


Because the problem is linear, you don't need to deal with the complicated theory referenced in the answer from @spencerbryngelson.

There is a very nice discussion of problems of this kind in LeVeque's Finite Volume Methods for Hyperbolic Problems, Chapter 9. Specifically, your system is very similar to the variable-coefficient acoustics equations (when written in non-conservative form) as discussed in section 9.6-9.13. An accurate and efficient method for this problem is implemented in Clawpack. Specifically, the Riemann solver for the system is here. To implement something similar for your problem, you'll need to determine the eigenvalues and eigenvectors of the Jacobian $\left(\frac{\mathrm{d}F}{\mathrm{d} U}(x)\right)^T$.

  • $\begingroup$ What does the prime notation mean in the Jacobian $F^\prime(U)$? $\endgroup$
    – ares
    Mar 7, 2019 at 16:44
  • 1
    $\begingroup$ The derivative; I was too lazy to write things out. Should be clear now. $\endgroup$ Mar 7, 2019 at 21:10

There is some literature on this. Such methods are generally associated with a property called "path-conservative". The main player in this area, as far as I know, is Carlos Pares. He has several nice papers, though the math is somewhat involved. Check this one out, for example.

An additional point is that the product rule trick doesn't entirely get you out of trouble, as you now have a nonhomogeneous equation with derivatives on the source terms. I assume you are using a finite-volume approach to deal with shocks? If so, as far as I know, there isn't a quick way to get yourself out of trouble. Another reference on the adjoint part, in particular, is Giles & Stefan Ulbrich. They have a few papers together on this topic.

  • $\begingroup$ I found the paper of C. Pares and I started reading it, but I realized that, since the convective flux Jacobian is not depending on $\varphi$, the problem is just a convection of $\varphi$ with variable coefficients (still not 100% sure though). If you see Pares paper, he attacks problems of the form $\partial_t \varphi + A(\varphi) \partial_x \varphi = 0$. Thanks for the papers of Giles & Ulbrich, I haven't read that one. $\endgroup$
    – ares
    Mar 5, 2019 at 22:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.