Currently, I'm trying to use the Van Der Pol osciallator to compare the integration accuracy between the implicit Euler forward and explicit Euler Forward.
The explicit Euler method is: $x_{k+1} = x_{k} + hf(x_{k})$;
The implicit Euler method is: $x_{k+1} = x_{k} + hf(x_{k+1})$;
where $f(x)$ is the ODE of the Van Der Pol oscillator and $h$ is the integration step. I changed the integration step and compared the integration results with the ode15s from scipy. The formula to calculate the error for the implicit and explicit method is the same. For example, the implicit method error could calculated by the following,
np.linalg.norm(ieu_sol - ref_sol)/np.linalg.norm(ref_sol)
It looks like the implicit method is always more accurate than the explicit method (ignore the sign). My questions are the following:
1) is it always true that the implicit method is more accurate than the explicit method?
2) How would the ODE change the accuracy? (in this example I tried the Van Der Pol oscillator but what about other dynamic systems?)
3) Are there any references you may suggest reading?
Thank you.
Best Answer