When running a finite element analysis, one of the first decisions we must make is whether we think it should be considered a static or dynamic problem. But what exactly constitutes a static and a dynamic problem? And which analysis type is most suitable for each?
In this post, we aim to break down these terms and provide some guidance on which analysis type to choose, depending on the physical problem that you are trying to replicate or predict.
Breaking FEA Analyses Into ‘Increments’
For any finite element analysis that is not perfectly linear in nature, we must (or rather the computer must) break the problem down into smaller steps that the solver can deal with. We are breaking down the physics/time relationship into bite-sized chunks. Prior to doing this, however, we must first ascertain whether we have a time-dependent or time-independent problem.
An easy way to do this is to conceptualize this fundamental question: does kinetic energy matter in my analysis? That might sound like a difficult question to answer, but it’s really not. When things are moving quickly, colliding with each other – accelerating and decelerating – kinetic energy is an important feature of the model. Therefore, time comes into our equations; the problem is time-dependent. On the other hand, if we are loading something very slowly, the effects of inertia in the model are, for all intents and purposes, irrelevant. When this is the case, there is no effect of time, our model is always in static equilibrium, and, hence, we have ourselves a time-independent problem.
When dealing with time-independent problems, the implicit method is typically the most appropriate, since it can solve bigger chunks of the problem in one go and is ‘implicitly’ stable. When time becomes important, however, explicit is the way to go for the reasons outlined in the following sections:
How Implicit Solvers Work
In layman’s terms, implicit analysis works by trying solutions or iterations in attempts to establish static equilibrium (within a certain tolerance) with respect to the loading or displacement applied. We are solving for unknown displacements through matrix inversion. When the problem is nonlinear in any way – think geometry, material, contact – the solution is obtained over a number of small increments and the solution for the current increment is based upon the result from the previous one (and so on). When we have large models or significant nonlinearity, inverting the matrix is highly computationally expensive and sometimes impossible. When solutions can be found, they are unconditionally stable and allow reasonably large chunks of ‘time’ (although it’s more like chunks of displacement) to be solved for at once.
When loading is slow, boundaries are well defined and nonlinearity is manageable, this method can be very efficient. However, once loading becomes complex or nonlinearity is very significant, implicit methods become extremely expensive and sometimes impossible to converge on a stable answer.
How Explicit Solvers Work
Explicit solvers, on the other hand, solve for acceleration. No iterations are required because nodal accelerations are calculated directly. We are taking the kinematic conditions from one small increment of time and using them to calculate those conditions at the next. Hence, the state at the end of the increment in question is based only upon the displacements, velocities and accelerations at the beginning of that same increment. What has gone previously is irrelevant and convergence is a non-issue.
Since explicit procedures always use diagonal (or lumped) mass matrices, solving for the accelerations is significantly less expensive than the simultaneous equations that govern implicit analysis. The acceleration of each node is determined fully by its mass and the force acting upon it.
There is one cost drawback of this method, however – and that is the need to break the analysis down into very small ‘chunks’ or increments. The ‘central difference rule’ calculates the change in velocity, assuming that acceleration is constant. Since this change in velocity is added to the known velocity from the middle of the previous increment (n - 1/2) and then integrated through time to provide displacement (at n + 1), we must consider small increments throughout which acceleration is almost constant.
The, so-called, maximum stable time increment is defined by the Courant time step (CFL number). That is the time taken by a sound wave to travel across an element and is defined by the element’s size, material stiffness and material density. In a typical FEA model using steel material properties, this can be of the order 10^-6 seconds. Hence, even an analysis that is capturing fractions of a second will be broken into hundreds of thousands of increments.
Implicit Or Explicit – Which One To Choose?
As we briefly mentioned previously, the general rule of thumb is to use implicit solvers for ‘time-independent’ problems and explicit solvers for ‘time-dependent’ problems. But how do we define these terms in reality?
Use Implicit when:
Sum of forces = 0 (all the way through the analysis)
Strain rates are very low (<10^-3 per second)
Velocity is irrelevant
Increase in stress can be defined easily as a function of strain only
Examples: static forces, slowly applied displacements, self-weight, constant pressure loading
Use Explicit when:
Sum of forces = mass x acceleration
Strain rates are above 10^-3 per second
Velocity is above 10m per second
Increase in stress is a function of both strain and strain rate
Examples: automotive crash, ballistic events, metal stamping
Explicit for ‘Quasi-Static Problems’
Just to ‘throw a cat amongst the pigeons’ as we’d say in England, there are some cases where we might want to take advantage of the direct nature of explicit analysis in a simulation that appears to fit distinctly in the time-independent category. These crop up when we are dealing with extremely complex nonlinear problems and the iterative nature of implicit analysis is struggling for convergence upon static equilibrium. Think of a situation where we expect to have sudden changes in stiffness, like a snap through, or where deformation and contact are particularly severe, like during a forging process. Using the benefits of explicit analysis to our advantage is one way we can negate that need for ‘convergence’.
One caveat to this point – it is essential to ensure that the portion of total energy taken up by kinetic energy within the model is as close to zero as possible, hence ‘quasi-static’. The maximum that number should really ever be is ~5%.
When starting a project using finite element analysis, it can be difficult to know which type of solver you should be using. And to a new user, the difference between implicit and explicit methods might not be obvious. Hopefully, this blog post has provided some clarity with respect to the way each method goes about solving the engineering problems that we define and can help guide new and experienced FEA users alike when it comes to choosing the most suitable option for the task at hand.
Whether you’re an experienced Abaqus user or a complete beginner, Fidelis can help you get the most out of the software with bespoke support and fully integrated simulation solutions. Call or email us today to learn more about our offerings.