Implicit vs Explicit Approach in FEM

Explicit and implicit methods are used in numerical analysis for obtaining numerical approximations to solve solutions of time-dependent ordinary and partial differential equations which require computer simulations of physical processes.

Explicit methods calculate the state of a system at a later time from the state of the system at the current time, while implicit methods find a solution by solving an equation involving both the current state of the system and the later one.

For all nonlinear and dynamic analyses, incremental loads are needed. Commonly, ‘implicit’ and ‘explicit’ methods are used to solve these problems.

In static analysis, there is no effect of mass (inertia) or of damping. In dynamic analysis, nodal forces associated with mass/inertia and damping are included. Dynamic analysis can be done via the explicit solver or the implicit solver.

In nonlinear implicit analysis, solution of each step requires solution iterations to establish equilibrium within a certain tolerance. In explicit analysis, no iteration is required as the nodal accelerations are solved directly.

Difference Between Implicit and Explicit?

Implicit and Explicit analysis dissociate in the approach to time incrementation. In Implicit analysis, each time increment has to converge, but you can set quite long time increments. Conversely, explicit analysis doesn’t have to converge each increment, but time increments must be super small for the accuracy of solution.

Implicit transient analysis has no time step limit. Implicit time steps are most often larger than explicit time steps.

Implicit and Explicit Problems

All of these problems are stated through mathematical partial differential equations. These matrix equations can be linear or nonlinear. In most structural problems, the nonlinear equations are considered in three categories:

  • Material Nonlinearity:
  • Geometric Nonlinearity:
  • Boundary Nonlinearity:

For more detail: Nonlinearites


In linear problems, the partial differential equations reduce matrix equation as:

[K]{x} = {f}

k = stiffness matrix
x = displacement/deflection
F = force

For non-linear static problems as:

[K(x)]{x} = {f}[k0 + k1x + k2x2 +…]{x} = {f}

For dynamic problems, the matrix equations become to:

[M]{x´´} + [C]{x´} + [K]{x} = {f}

x´ = velocity
x´´ = acceleration
C = daming matrix
M = mass matrix

When is Implicit used?

Implicit methods should be used when the boundary conditions affect the structure slowly, and the effects of strain rates are minimal. Once the increment of stress as a function of strain can be established, geometry can be analyzed using implicit methods.

The global equilibrium in the model is established in each time increment. This means each increment has to converge.

After global equilibrium is converged, solver calculates all the local finite element variables (stresses, strain, etc.) for each increment.

  • Pros: Since global equilibrium is verified at each time increments, those increments can be large.
  • Cons: Each time increment is computed slowly, and iterations are needed to get to the global equilibrium.

When is Explicit used?

Explicit methods should be used when the strain rates/velocity is equal to 10 units/second or more. These events can be illustrated by some examples such as an automotive crash, ballistic explosion, drop and so on. Besides the variation of stress with strain in these cases, also the the strain rate needs to be considered.

There is no convergence criteria to check or iteration. The solver focus the calculation of local finite element variables.

Solver calculates all of the local finite element variables for given incrementation, and move to the next one.

  • Pros: Each increment is calculated extremely fast.
  • Cons: The time step has to be super small. Otherwise, it’s impossible to pursue this equilibrium.

Which is Better: Implicit or Explicit?

Both of implicit and explicit solvers solve the same type of problems.Technically, both should produce the same outcome for all cases. You can analyse the same problem with both approaches. The only difference is the approach to time incrementation. But it is a vital thing.

  • The implicit analysis allows you to select how big the time increment you want. This increment will take some time to compute since it has to iterate for global equilibrium.
  • Explicit time increments are calculated really fast. Simply because iterate for global equilibrium is not needed also, the time increment will be adjusted by automatically. Solver simply assumes that the acceptable time increment is “X”, and goes with it. This assumed time step is super small.

In Conclusion

The implicit solver is really good if conditions in your analysis happen relatively slowly. Let’s say analysis is longer than 1 second. The advantage is that you can pick time increment as big as you want.

  1. Unknown x find by inversion of stiffness matrix (K).
  2. Newton-Raphson / Enforced equilibrium solutions.
  3. Newton-B method is used.
  4. More accurate
  5. Extremely time-consuming for large models
  6. Requires more computer storage
  7. Strain rate/velocity is less than 10 units/second.
  8. Good decision for structure dynamic type of problems which load rate is slow;
    – Low frequency response
    – Vibration
    – Oscillation

The explicit solver is great for fast events (<0.1 second). You don’t get to choose the time increment, solver will automatically set it. Explicit solver calculates how big the time increment should be. The speed of sound in material properties depends on density of material. This is called “mass scaling”. The time step in explicit only depends on the mesh (element size and element quality), Young Modulus, and density.

  1. Unknown x find by inversion of mass matrix (M).
  2. Direct solutions.
  3. Central difference methods are used.
  4. Less accurate
  5. Computationally efficient for large models with short dynamic response time
  6. Requires less computer storage.
  7. Strain rate/velocity is more than 10 units/second.
  8. Good decision for structure dynamic type of problems which are wave propagation;
    – Car crash
    – Blast
    – Drop
    – Impact