In finite element method the non-linear quasi-static problems can solve by implicit method. I am wondering what the difference is between implicit and explicit FEM.
First one clarification, I believe what you mean by a quasi static analysis is a dynamic analysis which is solved using static loads. In that case, as for any static loading algorithm, an implicit analysis will be used.
Now for the difference between implicit and explicit analysis.
A static analysis, like a stress analysis in FEA, is done using the simple linear equation [A]{x}={B}. In such analysis time does not play any role. On the other hand a dynamic analysis (or transient or modal analysis also) follows a more complex governing equation which is like:
[M]{x''}+[C]{x'}+[K]{x}={F}
I hope i dont have to clarify the symbols, but the primes indicate a time differential.
Such analysis are dependent on time.
Implicit solution is one in which the calculation of current quantities in one time step are based on the quantities calculated in the previous time step. This is called Euler Time Intergration Scheme. In this scheme even if large time steps are taken, the solution remains stable. This is also called an unconditionally stable scheme. But there is a disadvantage, and it is that this algorithm requires the calculation of inverse of stiffness matrix, since in this method we are directly solving for {x} vector. And calculation of an inverse is a computationally intensive step. This is especially so when non linearities are present, as the Stiffness matrix it self will become a function of x.
In an explicit analysis, instead of solving for {x}, we go for solving {x"}. Thus we bypass the inversion of the complex stiffness matrix, and we just have to invert the mass matrix [M]. In case lower order elements are used, which an explicit analysis always prefers, the mass matrix is also a lumped matrix, or a diagonal matrix, whose inversion is a single step process of just making the diagonal elements reciprocal. Hence this is very easily done. But disadvantage is that the Euler Time integration scheme is not used in this, and hence it is not unconditionally stable. So we need to use very small time steps.
Hence in a static loading situation (or quasi static), we would prefer to have big time steps, so that solution can be obtained in very less number of steps ( usually less than 10, and more often than not a single step), even though such steps may be computationally intensive. Hence for all such situations, and implicit analysis is used.
On the other hand in a dynamic scenario, specially in impact loadings, crash tests, and such simulations, an explicit analysis would be preferred.
It is a matter of trade off between easier and computationally lighter analysis or a faster analysis.
Sorry for the exceptionally long post, but i think i covered as much as i could in as short as i could. After all its a matter of trade offs!!!
Implicit or explicit refers to the time step where the forces are evaluated (next or current time step respectively). In solids FEM normally equilibrium in quasi static problems is enforced in a manner similar that of an implicit method, although it should not be references as implicit or explicit , it is just a newton like method.
First one clarification, I believe what you mean by a quasi static analysis is a dynamic analysis which is solved using static loads. In that case, as for any static loading algorithm, an implicit analysis will be used.
Now for the difference between implicit and explicit analysis.
A static analysis, like a stress analysis in FEA, is done using the simple linear equation [A]{x}={B}. In such analysis time does not play any role. On the other hand a dynamic analysis (or transient or modal analysis also) follows a more complex governing equation which is like:
[M]{x''}+[C]{x'}+[K]{x}={F}
I hope i dont have to clarify the symbols, but the primes indicate a time differential.
Such analysis are dependent on time.
Implicit solution is one in which the calculation of current quantities in one time step are based on the quantities calculated in the previous time step. This is called Euler Time Intergration Scheme. In this scheme even if large time steps are taken, the solution remains stable. This is also called an unconditionally stable scheme. But there is a disadvantage, and it is that this algorithm requires the calculation of inverse of stiffness matrix, since in this method we are directly solving for {x} vector. And calculation of an inverse is a computationally intensive step. This is especially so when non linearities are present, as the Stiffness matrix it self will become a function of x.
In an explicit analysis, instead of solving for {x}, we go for solving {x"}. Thus we bypass the inversion of the complex stiffness matrix, and we just have to invert the mass matrix [M]. In case lower order elements are used, which an explicit analysis always prefers, the mass matrix is also a lumped matrix, or a diagonal matrix, whose inversion is a single step process of just making the diagonal elements reciprocal. Hence this is very easily done. But disadvantage is that the Euler Time integration scheme is not used in this, and hence it is not unconditionally stable. So we need to use very small time steps.
Hence in a static loading situation (or quasi static), we would prefer to have big time steps, so that solution can be obtained in very less number of steps ( usually less than 10, and more often than not a single step), even though such steps may be computationally intensive. Hence for all such situations, and implicit analysis is used.
On the other hand in a dynamic scenario, specially in impact loadings, crash tests, and such simulations, an explicit analysis would be preferred.
It is a matter of trade off between easier and computationally lighter analysis or a faster analysis.
Sorry for the exceptionally long post, but i think i covered as much as i could in as short as i could. After all its a matter of trade offs!!!
In Dynamics when the 2nd Term of the Equation of Motion is not given with a Direct Calculation using the Time Steps, it is Convenient to use another Computation as a Numerical Analysis Interpolation or Extrapolation of the Unknown Considered Time Step Function: this Corresponds to an Implicit Formulation.
The following is how I understand it. I have done some of both in graduate school. The following is a brief answer, since this would take a lot to answer thoroughly.
1. Preliminary comments regarding the incremental nature of Explicit and Implicit Analysis
A geometric and/or material nonlinear analysis requires incremental load (or displacement) steps. At the end of each increment the structure geometry changes and possibly the material is nonlinear or the material has yielded. Each of these things, geometry change or material change, may then need to be considered as you update your stiffness matrix for the next increment in the analysis.
2. Explicit
An Explicit FEM analysis does the incremental procedure and at the end of each increment updates the stiffness matrix based on geometry changes (if applicable) and material changes (if applicable). Then a new stiffness matrix is constructed and the next increment of load (or displacement) is applied to the system. In this type of analysis the hope is that if the increments are small enough the results will be accurate. One problem with this method is that you do need many small increments for good accuracy and it is time consuming. If the number of increments are not sufficient the solution tends to drift from the correct solution. Futhermore this type of analysis cannot solve some problems. Unless it is quite sophisticated it will not successfully do cyclic loading and will not handle problems of snap through or snap back. Perhaps most importantly, this method does not enforce equilibrium of the internal structure forces with the externally applied loads.
3. Implicit
An Implicit FEM analysis is the same as Explicit with the addition that after each increment the analysis does Newton-Raphson iterations to enforce equilibrium of the internal structure forces with the externally applied loads. The equilibirium is usually enforced to some user specified tolerance. So this is the primary difference between the two types of anlysis, Implicit uses Newton-Raphson iterations to enforce equilibrium. This type of analysis tends to be more accurate and can take somewhat bigger increment steps. Also, this type of analysis can handle problems better such as cyclic loading, snap through, and snap back so long as sophisticated control methods such as arc length control or generalized displacement control are used. One draw back of the method is that during the Newton-Raphson iterations one must update and reconstruct the stiffness matrix for each iteration. This can be computationally costly. (As a result there are other techniques that try to avoid this cost by using Modified Newton-Raphson methods.) If done correctly the Newton-Raphson iterations will have a quadratic rate of convergence which is very desireable.
A suggestion. If you'd like to learn further about these two techniques it would be instructive for you to use both techniques and compare on the same problem. Explicit can be done by simply turning off Newton-Raphson iterations in an Implicit routine, or by setting the equilibrium tolerance to a large number in an implicit routine.
As to the question of which method to use, the answer is that it depends. The type of analysis that is sufficient for your needs will depend on the type of problem that you are trying to solve. Often times since dynamic analyses are computationally intensive they are done with the explicit method. However, for static problems now days it is becoming more common to do the full Implicit type of analysis.
Nonlinear analysis takes lots of experience and a careful understanding of what you want to accomplish and also a careful understanding of the anlaysis capabilities of the software you are trying to use. As I mentioned I have worked with the above methods of analysis in graduate school and know a little about it, however, I would be happy for others here at Researchgate who have more experience than me to give their thoughts on this as well.
@ Renganathan Sekar and @ Aayush Kant, If we can solve one problem with implicit and explicit way, what could be purpose of providing explicit material models in ANSYS engineering data? How this is different from other material properties in implicit? Thanks in advance.
Static and Dynamic differentiation is based on physics. But, Implicit vs. Explicit scheme differentiation is not based on Physics, these are just two different ways employed by the solver to arrive at results. To be frank, both Implicit and Explicit can do Static as well as Dynamic Simulations.
Now, some basic differences are
Implicit is Unconditionally stable. In a sense of unconditional love, now what does unconditional love mean? It means it is strong and cannot be broken. But explicit Simulations are only conditionally stable.
Implicit schema is Incremental as well as Iterative. But Explicit Schema is only Incremental. Now what does this mean? This means to say that Implicit schema is a fighter, it won’t give up unless the conditions of equilibrium are satisfied. Unless and until it is satisfied, it keeps on iterating. Now, what is an Iteration and an Incrementation. Suppose you apply in total 100kN load, it is broken down into smaller divisions called increments, say for example 10 increments and 10kN is applied in each increment. Suppose, in one increment, if the conditions of static equilibrium is not satisfied, then the FEA decreases the applied load by some % and will re initiate the increment. This is what is meant by an Iteration. But Explicit is a Dictator who is not cared of his citizens. He keeps on Incrementing if or not the conditions of equilibrium are satisfied. This is why, the time used in Explicit should be very smaller. Because the dictator will keep on pushing forward without caring about satisfying equilibrium conditions. So, if in initial steps, an error happens, it keeps on magnifying.
Implicit follows the Newton Raphson technique. But, Explicit follows the Euler Central Difference method. In the Newton Raphson method, there is a differentiation term.Since, Differentiation is done, it needs the formation of Tangent Stiffness matrix (Differentiation is nothing but the slope of the Tangent). But in Explicit, there is no need of Tangent Stiffness matrix.
4. In terms of Cost per Increment, it is costly for implicit and cheaper for Explicit. Because Implicit will cause Iterations until the conditions of equilibrium are fulfilled. This is why Implicit increments are costlier than Explicit increments.
5. This I have already listed in point 2. In case of an error, implicit will cause iterations to make sure that the error = 0 or within tolerance limits. But explicit does not rectify the error and will keep on magnifying it. This is why explicit time increments are so small so that to prevent giving room to the onset of errors.
In "Abderrachid Hamrani" response, there is a sentence that reads: "Explicit can be done by simply turning off Newton-Raphson iterations in an Implicit routine"
I am using ABAQUS. Can anyone tell me how it is possible to override Newton-Raphson iterations in ABAQUS implicit solution?
When loads are slowly applied onto a surface or structure, the loading can be considered ‘quasi-static’ or ‘time-independent’. In contrast, all dynamic and nonlinear problems such as crash and impact are time-dependent meaning that incremental load (displacement steps) are needed to solve the problem. There are two methods to solve these problems, ‘implicit’ and/or ‘explicit’. In an Explicit analysis, the stiffness matrix updates at the end of each increment based on geometry and material changes. Then a new stiffness matrix is constructed and the next increment of load (or displacement) is applied to the system. In this type of analysis, in order to get a good accuracy, the increments should be small enough, therefore this method is quit time consuming.
An Implicit FEM analysis is the same as Explicit with the addition that after each increment the analysis does Newton-Raphson iterations to enforce equilibrium of the internal structure forces with the externally applied loads. To do this, it requires a numerical solver to invert the stiffness matrix once or even several times over the course of a load/time step. This matrix inversion is an expensive operation, especially for large models. Explicit doesn't require this step.