190 likes | 506 Vues
3D Finite Element Modeling: A comparison of common element types and patch test verification. By: Rachel Sorna and William weinlandt. Objectives. Develop a sound understanding of 3D stress analysis through derivation, construction, and implementation of our own 3D FEM Matlab Code.
E N D
3D Finite Element Modeling: A comparison of common element types and patch test verification By: Rachel Sorna and William weinlandt
Objectives • Develop a sound understanding of 3D stress analysis through derivation, construction, and implementation of our own 3D FEM Matlab Code. • Compare the accuracy of two different element types mentioned in class • Linear Tetrahedral • Tri-Linear Hexahedral • Understand and utilize the patch test as a means of verifying our code and element modeling
3D FEM Code Attempt #1 – Conversion from 2DStressAnalysis Code Can you guess what loading scheme created the deformation on the right? Answer: Uniform traction of 1000N/m2 along the top boundary…
Major Parts of Code Construction • Addition of third dimensional variable, zeta • Manual generation of meshes and defining elements and corresponding nodes • 3D Elasticity matrix • 3D Transformation matrix • Defining solid elements and corresponding boundary surface elements • Shape Functions (N matrix) • Shape Function Derivatives (B Matrix) • Gauss points and weights • Determining which element face was on a given boundary
Linear Tetrahedral • Boundary Surface Element Solid Volume Element
Tri-Linear Hexahedral • Boundary Surface Element Solid Volume Element
Patch Test: Code and Element Verification Two simple, yet effective tests were done: fixed displacement and fixed traction Test Subject: A simple Cube Material Properties: E: 200GPa ν: .3 Block Dimensions: Height: 5m Width: 5m Depth: 5m Tetrahedral Meshing Hexahedral Meshing
Fixed Displacement Test Fixed displacement of .0001 was applied in the negative Z-direction. The following analytical solution gives a stress value of 4MPa throughout the cube: Table 1. Normalized L2 Norm Error values for tetrahedral and hexahedral elements for varying degrees of mesh fineness.
Fixed Traction Test Fixed traction of 1000N/m2 was applied in the positive Z-direction. The following analytical solution gives a displacement value of 2.5e-8m on the top surface: Table 2. Normalized L2 Norm Error values for tetrahedral and hexahedral elements for varying degrees of mesh fineness.
Application – A Complex Loading Scheme Counterclockwise oriented 1000N shearing surface tractions applied to the X and Y faces produced the following ‘twisty’ cube. Comparison to the same loading scheme in ANSYS revealed that our model was valid for complex loading schemes as well. ANSYS Our Code
Convergence Plot The following plot shows the convergence of von-Mises stress for tetrahedral and hexahedral elements performed using our code as well as ANSYS for the ‘twisty’ cube loading condition.
Current Limitations of Our Code • Matlab can only handle so many elements and thus degrees of freedom before it becomes impossibly slow or runs out of memory • Limitations of the variation in orientation of tetrahedral elements • Limited possible geometries • Linear elements only, no quadratic elements
Conclusions • Hexahedral elements appear to more accurately model simple linear deformation problems than tetrahedral elements – they also take far less time! • Tetrahedral elements can be useful for complex geometries and loading conditions (rounded surfaces, sharp corners, etc.) • For accurate meshing and modeling of complex multi-part geometries, mixed meshing, or using both tetrahedral and hexahedral, as well as other element types, is best! • Writing your own FEM Code is a long and arduous process, but once you are done, you have an unparalelled understanding of the fundamental concepts!