6
$\begingroup$

What method of numerical solving ODEs is better? BDF2 or TR-BDF2?

Namely, what advantages has TR-BDF2 over BDF2?

The BDF2 method requires the values of $y_{n-1}$ and $y_n$ for computing $y_{n+1}$ but we can use, for example, the trapezoidal method for $n = 0$ and BDF2 on next steps.

The TR-BDF2 method computes an auxiliary value $y_{n+1/2}$ with the trapezoidal method and applies the BDF2 for computing $y_{n+1}$ by using $y_n$ and $y_{n+1/2}$.

TR-BDF2 for solving $y' = f(y)$ represents the following scheme: $$ y_{n+1/2} = y_n + \frac{\tau}{4}(f(y_n) + f(y_{n+1/2})), $$ $$ y_{n+1} = \frac{1}{3}(4y_{n+1/2} - y_n + \tau f(y_{n+1})). $$ Here $\tau$ is a step size. The both stages are implicit. The first stage is the trapezoidal method with the step size $\tau/2$ and the second stage is the BDF2 with the step size $\tau/2$.

UPD Edwards et al. in the paper Nonlinear variants of the TR/BDF2 method for thermal radiative diffusion point out that BDF2 has undesirable conservation properties. Could you explain please how can this influence the computation accuracy?

$\endgroup$
1
  • $\begingroup$ Can you put BDF2 explicitly in your question as well? It requires one rather than two function evaluations/solutions per step, and sometimes you specifically want a one-step method (not two-step like BDF2). As to your question title: "better" is a rather ambiguous concept; it's important to be clear about what you will use it for. As far as I can tell, it just does extra work (because the second step of TR-BDF2 is the step of BDF2), but I'm not sure if that's fair. $\endgroup$
    – Kirill
    Commented Jan 15, 2015 at 5:00

2 Answers 2

3
$\begingroup$

The main advantage appears to be that you can combine the trapezoidal rule and BDF2 steps to create a one-step method. Using BDF2 alone requires bootstrapping to get the first step. Edwards, et al's argument is that the two-step nature of BDF2 means that the conservation relationship within a time step has a memory effect: it depends on previous time steps in a nontrivial way. The conservation relationship within a time step for TRBDF2 is a simple three-point average. Apparently, according to Edwards, these conservation relationships are important for calculating derived quantities ("source and sink terms"), and doing that with TRBDF2 is simpler than BDF2.

$\endgroup$
5
  • $\begingroup$ Are you sure that BDF2 is not L-stable? Could you provide a reference? I've read in Ascher's book that BDF methods are L-stable. $\endgroup$
    – jokersobak
    Commented Jan 15, 2015 at 7:58
  • $\begingroup$ If the issue is the starting problem for BDF2, then we can use BDF1 (backward Euler) in first time step and then switch to BDF2. This scheme will be second order accurate. $\endgroup$
    – cfdlab
    Commented Jan 15, 2015 at 8:09
  • $\begingroup$ BDF2 has (in hopefully common notation) defining polynomials $\rho(z) = \frac12-2z+\frac32z^2$ and $\sigma(z)=z^2$. Since the roots of $\sigma(z)$ are inside the unit disk, and it is A-stable, BDF2 is L-stable (same for other BDF methods with $\sigma(z)=z^s$). Are you sure what you said about L-stability is right? $\endgroup$
    – Kirill
    Commented Jan 15, 2015 at 8:16
  • 1
    $\begingroup$ A method is L-stable if it is A-stable and its stability polynomial $R$ satisfies $\lim_{z \rightarrow \infty}|R(z)| = 0$. So BDF3 through BDF6 can't be L-stable; they're not A-stable. BDF1 is backward Euler, which is A-stable and has $R(z) = (1-z)^{-1}$, so it is L-stable. I get $R(z) = (3 + z)/(2z^{2} - 5z + 3)$ for BDF2, so yes, BDF2 is L-stable also. That said, TRBDF2 does have a larger stability region, per Strang (math.mit.edu/~gs/cse/papers/optimalstability_rev6.pdf), if you take steps of slightly unequal sizes. $\endgroup$ Commented Jan 15, 2015 at 9:18
  • $\begingroup$ @GeoffOxberry the stability region for BDF2 is not your R(z) above. It is slightly more complex, see groundai.com/project/the-einstein-boltzmann-equations-revisited/… $\endgroup$
    – jherek
    Commented Jan 24, 2020 at 18:05
-3
$\begingroup$

On the other hand, BDF2 is stiffly accurate (and more effective for stiff equations) whereas TR-BDF2 along with all other DIRK schemes reduce to just first order in the stiff limit, and BDF2 tends to be more efficient in terms of solves required for a given level of accuracy.

$\endgroup$
1
  • $\begingroup$ That's false, TR-BDF2 is stiffly accurate and L-stable (actually A-L-B-S-stable). ESDIRK methods (DIRK with an explicit first stage) may reach a stage-order of 2, which (if I am not mistaken) is the order achieved in the very stiff limit. Hence TR-BDF2, whose stage order is 2 and is equal to the "normal" order of the method, does not suffer from order reduction in the very stiff limit. Your last statement about the efficiency is quite subjective, and is known to be dependent on the problem and its size. $\endgroup$
    – Laurent90
    Commented Nov 24, 2020 at 13:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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