Difference between revisions of "Finite Element Analysis"
m |
Josh Cryer (talk | contribs) m (1 revision) |
(No difference)
|
Latest revision as of 03:02, 21 January 2009
Finite Element Analysis
Finite element analysis (FEA) is a method of numerical analysis used to simulate the behavior of complex systems with a computational model. It works by approximating the system as a separable collection of discrete elements with known properties. The interaction of those elements is then used to estimate the system behavior. If the mathematical models of the elements match the actual components of the system closely enough, finite element analysis becomes functionally equivalent to the method of sections or method of joints used in classical static analysis. However, in practice, systems requiring finite element analysis to obtain a better approximation than a classical model are seldom so accommodating. Also, the finite element method can be applied to problems other than static loading, such as fluid dynamics and heat transfer.
Contents
FEA and Classical Solutions
FEA can readily return a false result if the computation steps are improperly arranged – even if the data points are all individually correct. This method offers no inherent method of recognizing wildly inaccurate solutions without comparison back to the original system. Thus, for any finite element analysis, it is advantageous to first attempt an approximate solution by classical analysis methods. This provides a basis for comparison. Generally, proper “meshing” (selection and arrangement of the approximating elements) will limit errors. Refinement of the model (using smaller elements to allow more interactions) can also increase accuracy, allowing the analysis to converge on a more exact solution.
While there are mathematical limits to the finite element method (see the section on Constraints and Boundary Conditions), as a rule most errors in FEA are created by the programmers, not the programs.
The most common methods of FEA return only specific information about a system: Forces, stresses, strains, and their mathematical equivalents for other types of analysis. It is useful to know what results a FEA simulation can give, and focus on that information in initial calculations.
The Mathematics
While all but the simplest FEA problems are best performed using specialized computer software, it is helpful to understand the mathematical priciples.
The finite element method approximates the system as a number of discrete blocks (elements), each described by its own local stiffness matrix, k, which can be multiplied by a displacement vector matrix, u, to relate it to the applied force and torque vector matrix, F. (Note that F is not a three dimensional force vector, but a one dimensional matrix incorporating both the applied force and torque. Likewise, u is not a three dimensional vector either, but incorporates position data on every node of the element.)
<math>\Sigma F = k u</math>
The matrices of individual elements are combined by expanding them with zero sum rows and columns until their dimensions correspond to the total number of nodes in the entire model, then summing the expanded matrices. For example, if the model consists of two line segment elements A and B, each will have their own local stiffness matrix to be expanded.
k11,A | 0 | k13,A | (Local descriptors for Node 1) | ||
[k] A = | 0 | 0 | 0 | (Node 2 isn’t part of this element) | |
k31,A | 0 | k33,A | (Local descriptors for Node 3) |
k11,B | k12,B | 0 | (Local descriptors for Node 1) | ||
[k] B = | k21,B | k22,B | 0 | (Local descriptors for Node 2) | |
0 | 0 | 0 | (Node 3 isn’t part of this element) |
The sum of these hypothetical matrices would be:
k11,A+ k11,B | k12,B | k13,A | |
Σ[k] = [k]A + [k]B = | k21,B | k22,B | 0 |
k31,A | 0 | k33,A |
and that sum would describe the entire system. Only the very simplest systems can be described with only three nodes, but the overall principle holds true for any finite element analysis.
Similar matrices can be derived for strain, and matrices of the same form can be used to describe heat transfer, vibration and fluid flow.
Because of the nature of the matrices used in FEA, all interactions between elements are represented as taking place only at the nodes, and the only information transferred from one iteration to the next is the state of the nodes.
Constraints and Boundary Conditions
The software used will assemble the stiffness matrix, given position data for each node and the selection of relevant material parameters. However, raw stiffness matrices (like the example above) tend to be symmetric, making them difficult to invert for use in vector calculation. This can be dealt with by specifying boundary conditions or “constraints”, which are restrictions on the displacement of certain nodes, allowing their displacement to be approximated as zero so that they can be neglected in computations. This allows the stiffness matrix to be approximated as asymmetric, making it invertable.
Examples of known boundary conditions include rigid restraints, axes of symmetry, and fixed reference frames. These allow displacements to be assumed zero at one or more nodes.
FEA software cannot solve problems with symmetric stiffness matrices unless equipped with separate (non-finite element method) numerical integration routines to bootstrap a solution from underdetermined data.
It is mathematically impossible to use the finite element method for the solution of an underdetermined problem. Boundary conditions must be known for at least one node of the model. For most FEA software, known boundary conditions must be established by the user during model assembly.
Loads
Likewise, the force vector matrix can be assembled from component force vector matrices.
<math>\Sigma F = F_{External} + F_{Body} + F_{Distributed} + </math>…
The assembled force vector matrix consists only of the force vector components on each node.
F1 | (Force on Node 1) | ||
<math>\Sigma</math>ΣF = | F2 | (Force on Node 2) | |
F3 | (Force on Node 3) |
Because of the discrete nature of the descriptors, finite element analysis will only work accurately if the forces can be reduced to the approximation that they only act discretely at the nodes. Even distributed forces must be approximated as a component of the nodal forces. However, a sufficiently finely meshed FEA model can still provide estimates for maximum stresses equivalent to those arrived at using classical analysis methods, and will yield better detail of the internal stress distributions.
As a consequence of this, the final load data used in each calculation will preserve no data about the original distribution of the force except the force vector matrix and what is recorded separately in the computer memory.
Element Types
Each element must be described by a matrix of nodal data. However, there are a number of different types possible. Each employs a matrix of slightly different form, and it is desirable to select the element type best suited to the problem. For example, many forms of two-dimensional element either cannot be rotated to provide an adequate solution in three dimensions or the software used is unequipped to rotate them. In these cases, it is generally best to use an element type already set up for three dimensional computations.
Elements are typically classified according to the area/volume they cover, the number of nodes employed per element, and their ability to be rotated.
Convergence of Solutions
Progressively finer model meshes produce progressively more accurate solutions. Graphing the model behavior with finer and finer meshes (i.e., smaller and smaller elements) can often allow the user to project the model’s behavior with an infinitely fine mesh. This often reveals asymptotic behavior which is the closest approximation of the real system possible using the given FEA model.