<p>Implicit and explicit methods have the same differences no matter what context. The building blocks from which these methods are constructed are the same, they all use Taylor series expansion of a function. Of course, there are many different numerical methods, explicit and implicit, with different degrees of <a href="http://web.stanford.edu/class/cme306/Discussion/Discussion1.pdf" rel="noreferrer">numerical accuracy, consistency and stability</a>. </p>

<p>The choice of using implicit or explicit methods is really dependent on the scales involved, the type of accuracy desired, etc. But practically speaking, the most important factor is computational cost. Although implicit methods are unconditionally stable, they are very costly compared to explicit methods. To try to address some of those issues, a lot of atmospheric and oceanic solvers employ hybrid methods. These are called semi-implicit methods where some terms are implicit and others are explicit in order to reduce the computer time required to solve the equations.</p>

<p>Essentially, if time accuracy is important, explicit methods are more accurate and less computationally expensive. On the other hand, if the goal is forecasting to a reasonable degree of accuracy then an implicit method is best because, even though it is computationally expensive, one can use very large time steps and get to the answer quickly.</p>

CC BY-SA 3.0
2014-12-24T06:42:35.667Z
2014-12-24T08:27:07.157Z
2014-12-24T08:27:07.157Z
Isopycnal Oscillation
<p>Here are some excerpts from my answer <a href="https://scicomp.stackexchange.com/questions/7628/what-is-the-difference-between-implicit-fem-and-explicit-fem">here</a> at scicomp ...</p>

<p>"You have to solve a linear system of the type Ax=b in the implicit scheme where as in the explicit scheme you do not,</p>

<p>Your time step in the explicit scheme is limited by the CFL criteria for stability. Implicit schemes are unconditionally stable (though in practice you still need a reasonable time step for accurary)</p>

<p>Typically problems where inertial effects are important are solved by explicit schemes where as quasi-static problems usually use an implicit scheme. However there are exceptions."</p>

CC BY-SA 3.0
2014-12-24T17:37:08.013Z
2014-12-24T17:37:08.013Z
2017-04-13T12:53:55.997Z
stali
<p>The answer by @IsopycnalOscillation explains some implications of using explicit and implicit schemes and in what applications one is preferred over the other. Here, I describe how these two methods actually work, and how does the implicit scheme uses knowledge of the later state.</p>

<p>Take the ordinary differential equation:</p>

<p>$$
\dfrac{\partial u}{\partial t} = f(u,t)
$$</p>

<p>and for simplicity, let $f(u,t) = -cu$, where $c$ is a positive constant and $u = u(t)$. The equation is then:</p>

<p>$$
\dfrac{\partial u}{\partial t} = -cu
$$</p>

<p>often called the linear drag equation.</p>

<p>Again, for simplicity, we consider the simplest two schemes, a first order forward Euler differencing (explicit), and a first order Euler backward differencing (implicit). As you know, forward Euler differencing yieds:</p>

<p>$$
u_{n+1}=u_n-c\Delta tu_{n}=u_n(1-c\Delta t)
$$</p>

<p>This method is called explicit because the future state is evaluated as function of the present state. From the von Neumann stability method where the growth factor is defined as:</p>

<p>$$
\lambda = \dfrac{u_{n+1}}{u_n} = 1-c\Delta t,
$$</p>

<p>the scheme is stable when $|\lambda|&lt;1$, neutral when $|\lambda|=1$, and unstable when $|\lambda|&gt;1$. We see that the forward Euler method applied to the linear drag equation may be unstable.</p>

<p>With the implicit Euler backward differencing, we have:</p>

<p>$$
u_{n+1}=u_n-c\Delta t u_{n+1}
$$</p>

<p>Rearranging the terms leads us to:</p>

<p>$$
u_{n+1} = \dfrac{u_n}{1+c\Delta t}
$$</p>

<p>Notice that the $u_{n+1}$ is not found on the right-hand side anymore. Here, the growth factor is:</p>

<p>$$
\lambda = \dfrac{1}{1+c\Delta t}
$$</p>

<p>We see that, in this case, $|\lambda|&lt;1$ holds for any value of $c$ and $\Delta t$.</p>

<p>Thus, if one is concerned about stability, an implicit method is advantageous for solving this equation. However, notice that the implicit method is more computationally heavy, even in this simple case, because a division is significantly more expensive operation than multiplication. This is especially true in larger and more complex systems of equations where $f(u,t)$ may be a large matrix that need to be inverted.</p>

<p>A good introductory text on these methods and there applications in atmosphere and ocean modeling can be found here: <a href="http://twister.caps.ou.edu/CFD2013/Mesinger_ArakawaGARP.pdf" rel="nofollow noreferrer">Mesinger and Arakawa: Numerical Methods Used in Atmospheric Models (1976)</a>. For more references, see the answer to <a href="https://earthscience.stackexchange.com/questions/2806/resources-for-learning-the-technical-parts-of-atmospheric-modeling/2807">this question</a>.</p>

CC BY-SA 3.0
2014-12-24T17:38:53.257Z
2014-12-24T17:49:47.783Z
2017-04-13T12:50:30.540Z
milancurcic
<p>I am struggling to understand the difference between <em>implicit</em> methods and <em>explicit</em> methods in numerical modelling of Earth processes, particularly when applied to modelling Earth systems in 2 or more dimensions, such as in NWP (Numerical Weather Prediction), for example.</p>

<p>I understand the basic principle for the <strong>explicit</strong> method: that an explicit model would calculate the new value of each grid square independently for each time step, for example. The application of the <strong>implicit</strong> method puzzles me though &ndash; it seems to require knowledge of both the current state of a system and the <em>latter</em>  state, before the latter state is even calculated? Is it somehow extrapolating the outcome?</p>

CC BY-SA 3.0
2014-07-11T14:16:28.050Z
I'm not a meteorologist, so I know nothing about NWP, but I guess explicit and implicit refer to the normal distinction between explicit and implicit methods for (partial) differential equations. In that case the wikipedia article might help: http://en.wikipedia.org/wiki/Implicit_method
taupunkt
CC BY-SA 3.0
2014-07-12T23:28:46.637Z
I think I am beginning to understand the basic principles a little more now... http://math.stackexchange.com/q/61638 http://www.flow3d.com/cfd-101/cfd-101-implicit-explicit-schemes.html
decvalts
<models><nwp><modelling><numerical-modelling>
What are the differences between implicit and explicit methods when applied to modelling Earth systems?
decvalts
# What are the differences between implicit and explicit methods when applied to modelling Earth systems?

(Asked by: username_0 on 2014-07-11)

I am struggling to understand the difference between *implicit* methods and *explicit* methods in numerical modelling of Earth processes, particularly when applied to modelling Earth systems in 2 or more dimensions, such as in NWP (Numerical Weather Prediction), for example.

I understand the basic principle for the **explicit** method: that an explicit model would calculate the new value of each grid square independently for each time step, for example. The application of the **implicit** method puzzles me though – it seems to require knowledge of both the current state of a system and the *latter* state, before the latter state is even calculated? Is it somehow extrapolating the outcome?

**Tags:** models, nwp, modelling, numerical-modelling

> **Comments:**
> **username_1**: I'm not a meteorologist, so I know nothing about NWP, but I guess explicit and implicit refer to the normal distinction between explicit and implicit methods for (partial) differential equations. In that case the wikipedia article might help: http://en.wikipedia.org/wiki/Implicit_method  
> **username_0**: I think I am beginning to understand the basic principles a little more now... http://math.stackexchange.com/q/61638 http://www.flow3d.com/cfd-101/cfd-101-implicit-explicit-schemes.html  

---

## 3 answers

### Answer by username_4 on 2014-12-24. Score: 8 | Accepted answer

The answer by @username_2 explains some implications of using explicit and implicit schemes and in what applications one is preferred over the other. Here, I describe how these two methods actually work, and how does the implicit scheme uses knowledge of the later state.

Take the ordinary differential equation:

$$
\dfrac{\partial u}{\partial t} = f(u,t)
$$

and for simplicity, let $f(u,t) = -cu$, where $c$ is a positive constant and $u = u(t)$. The equation is then:

$$
\dfrac{\partial u}{\partial t} = -cu
$$

often called the linear drag equation.

Again, for simplicity, we consider the simplest two schemes, a first order forward Euler differencing (explicit), and a first order Euler backward differencing (implicit). As you know, forward Euler differencing yieds:

$$
u\_{n+1}=u\_n-c\Delta tu\_{n}=u\_n(1-c\Delta t)
$$

This method is called explicit because the future state is evaluated as function of the present state. From the von Neumann stability method where the growth factor is defined as:

$$
\lambda = \dfrac{u\_{n+1}}{u\_n} = 1-c\Delta t,
$$

the scheme is stable when $|\lambda|<1$, neutral when $|\lambda|=1$, and unstable when $|\lambda|>1$. We see that the forward Euler method applied to the linear drag equation may be unstable.

With the implicit Euler backward differencing, we have:

$$
u\_{n+1}=u\_n-c\Delta t u\_{n+1}
$$

Rearranging the terms leads us to:

$$
u\_{n+1} = \dfrac{u\_n}{1+c\Delta t}
$$

Notice that the $u\_{n+1}$ is not found on the right-hand side anymore. Here, the growth factor is:

$$
\lambda = \dfrac{1}{1+c\Delta t}
$$

We see that, in this case, $|\lambda|<1$ holds for any value of $c$ and $\Delta t$.

Thus, if one is concerned about stability, an implicit method is advantageous for solving this equation. However, notice that the implicit method is more computationally heavy, even in this simple case, because a division is significantly more expensive operation than multiplication. This is especially true in larger and more complex systems of equations where $f(u,t)$ may be a large matrix that need to be inverted.

A good introductory text on these methods and there applications in atmosphere and ocean modeling can be found here: [Mesinger and Arakawa: Numerical Methods Used in Atmospheric Models (1976)](http://twister.caps.ou.edu/CFD2013/Mesinger_ArakawaGARP.pdf). For more references, see the answer to [this question](https://earthscience.stackexchange.com/questions/2806/resources-for-learning-the-technical-parts-of-atmospheric-modeling/2807).


---

### Answer by username_2 on 2014-12-24. Score: 7

Implicit and explicit methods have the same differences no matter what context. The building blocks from which these methods are constructed are the same, they all use Taylor series expansion of a function. Of course, there are many different numerical methods, explicit and implicit, with different degrees of [numerical accuracy, consistency and stability](http://web.stanford.edu/class/cme306/Discussion/Discussion1.pdf).

The choice of using implicit or explicit methods is really dependent on the scales involved, the type of accuracy desired, etc. But practically speaking, the most important factor is computational cost. Although implicit methods are unconditionally stable, they are very costly compared to explicit methods. To try to address some of those issues, a lot of atmospheric and oceanic solvers employ hybrid methods. These are called semi-implicit methods where some terms are implicit and others are explicit in order to reduce the computer time required to solve the equations.

Essentially, if time accuracy is important, explicit methods are more accurate and less computationally expensive. On the other hand, if the goal is forecasting to a reasonable degree of accuracy then an implicit method is best because, even though it is computationally expensive, one can use very large time steps and get to the answer quickly.


---

### Answer by username_3 on 2014-12-24. Score: 2

Here are some excerpts from my answer [here](https://scicomp.stackexchange.com/questions/7628/what-is-the-difference-between-implicit-fem-and-explicit-fem) at scicomp ...

"You have to solve a linear system of the type Ax=b in the implicit scheme where as in the explicit scheme you do not,

Your time step in the explicit scheme is limited by the CFL criteria for stability. Implicit schemes are unconditionally stable (though in practice you still need a reasonable time step for accurary)

Typically problems where inertial effects are important are solved by explicit schemes where as quasi-static problems usually use an implicit scheme. However there are exceptions."


---

