Understanding the Finite Element Method

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments

The Efficient Engineer is so wonderful

๐Ÿ‘๏ธŽ︎ 20 ๐Ÿ‘ค๏ธŽ︎ u/okwowandmore ๐Ÿ“…๏ธŽ︎ Apr 27 2021 ๐Ÿ—ซ︎ replies

Man I hate FEA

๐Ÿ‘๏ธŽ︎ 12 ๐Ÿ‘ค๏ธŽ︎ u/tom123qwerty ๐Ÿ“…๏ธŽ︎ Apr 27 2021 ๐Ÿ—ซ︎ replies

Im a senior in highschool who is in precal. I have no chance in hell of understanding this. Will report back

๐Ÿ‘๏ธŽ︎ 2 ๐Ÿ‘ค๏ธŽ︎ u/Ironmaverick22 ๐Ÿ“…๏ธŽ︎ Apr 27 2021 ๐Ÿ—ซ︎ replies

Honestly Iโ€™m just looking at the thumbnail and it says โ€œfk u.โ€ Like thanks FEA I love you too.

๐Ÿ‘๏ธŽ︎ 1 ๐Ÿ‘ค๏ธŽ︎ u/Revoider ๐Ÿ“…๏ธŽ︎ Apr 27 2021 ๐Ÿ—ซ︎ replies

I wish this stuff was around when I was studying ME

๐Ÿ‘๏ธŽ︎ 1 ๐Ÿ‘ค๏ธŽ︎ u/ayousuf19 ๐Ÿ“…๏ธŽ︎ Apr 28 2021 ๐Ÿ—ซ︎ replies

I really enjoyed this video. I never studied finite element method but I use FEA regularly in my work. The big takeaways for me that bring more context to FEA are:

  1. Youโ€™re basically solving hookeโ€™s law at each of the nodes in your mesh. F=k*X, and your displacement vector X will depend on how many degrees of freedom your mesh element has.

  2. In the above, your stiffness k is a square matrix composed of elements that depend on node-node relationships. The matrix elements are directly proportional to area A, modulus E, moment of inertia I, and inversely proportional to length between nodes L (mesh size). Given this, it seems the only important material property for FEM is elastic modulus.

  3. For any given 2D or 3D mesh element, youโ€™re only solving for stress/strain at the nodes, not the surface(s) between. The solver interpolates between the nodes to estimate the surface behavior.

Thanks for sharing!

๐Ÿ‘๏ธŽ︎ 1 ๐Ÿ‘ค๏ธŽ︎ u/extants ๐Ÿ“…๏ธŽ︎ Apr 28 2021 ๐Ÿ—ซ︎ replies

What a powerful tool FEA is. Throughout the courses I took in mechanics of materials I always wondered how stresses in complex shapes (other than the beams, shafts and trusses that I studied) are calculated. I wonder how engineers in the past before FEA were able to design complex machine elements like car suspension or engine components?

๐Ÿ‘๏ธŽ︎ 1 ๐Ÿ‘ค๏ธŽ︎ u/Astra1839 ๐Ÿ“…๏ธŽ︎ Apr 28 2021 ๐Ÿ—ซ︎ replies

I graduated as a ME last year but god, I wish I knew about this channel before! What a diverse and not so shallow approach to these topics, it is of great help to anyone here I bet. Thanks for sharing this OP!

๐Ÿ‘๏ธŽ︎ 1 ๐Ÿ‘ค๏ธŽ︎ u/cacaloca23 ๐Ÿ“…๏ธŽ︎ Apr 28 2021 ๐Ÿ—ซ︎ replies
Captions
Thanks to CuriosityStream for sponsoring this video. There are a lot of different analytical methods that engineers can use to solve structural mechanics problems, whether it's to calculate the deflection of a beam or the stresses in a flat plate. But we often encounter problems that can't be solved in this way, typically because the geometry, loads or materials are too complex. The finite element method is a powerful numerical technique that uses computational power to calculate approximate solutions to these types of problems. It's widely used in all major engineering industries. It could be used to check that satellite components will survive the launch conditions, for example. Or to optimise the design of automotive components, like the lower control arm of this car's suspension system. Finite element analysis software can be used to analyse a wide range of solid mechanics problems, including static, dynamic, buckling, and modal analyses. But it can also be used for fluid flow, heat transfer, and electromagnetic problems. For this introduction to the finite element method, we'll focus on how it applies to static linear-elastic stress analysis. Imagine we want to analyse the brackets supporting this air conditioning unit. The goal of a static stress analysis would typically be to calculate the stresses, strains and displacements within the bracket. These unknowns are called "field variables". Internal stresses develop within a body in such a way as to maintain equilibrium over any volume of the body, so we can apply the concept of equilibrium to calculate the field variables. This is easy to do for a simple beam - we can use equilibrium to calculate the bending moment and shear force along it, and from there we can calculate the normal and shear stresses in the beam. But enforcing equilibrium over a two dimensional shape like this bracket is difficult, and it becomes even more complicated for a three dimensional body. The finite element method approaches this problem by splitting the body into a number of small elements, that are connected together at nodes. This process is called discretisation, and the collection of nodes and elements is called the mesh. Discretisation is useful because the equilibrium requirement now only needs to be satisfied over a finite number of discrete elements, instead of continuously over the entire body. Several different element shapes can be used. We've used triangular surface elements to model this bracket. Surface elements are two dimensional elements that are typically used to model thin surfaces. They can be triangular or quadrilateral. Triangular elements are good for modelling awkward shapes, although quadrilateral elements tend to perform better. Solid elements are used for three-dimensional bodies. And then we have line elements. Choosing the right element for your model will depend on the specific scenario being analysed, and requires some expertise. In the case of our bracket we could have used solid elements, or even line elements, depending on how much we wanted to simplify the problem. Even for elements of the same shape, there are hundreds of different types to choose from that each have different formulations, and introduce different levels of approximation. A line element can be a bar, for example, that only carries axial loads, or a beam, that can carry axial, bending, shear and torsional loads. We can model the bracket using plane stress surface elements, because the bracket is thin and the loading is all in the same plane. But that's only one of many surface element types. These are all first order elements, but we can also use second order elements, which have additional mid-side nodes and are more accurate. For stress analysis problems the fundamental variable we want to calculate is the displacement at each node. If we know how a body displaces when loads are applied, we'll easily be able to calculate secondary outputs like stress and strain. For each element we can define a vector {u} that contains all of the possible displacements for the nodes of the element, including rotations. If we're analysing a two-dimensional case with beam elements, each node can translate along the X and Y axes and it can rotate about the Z axis, so the vector {u} will look like this. Each of these displacements is called a degree of freedom. For the beam element we have 3 degrees of freedom per node, or 6 in total. For a 3D case that increases to 6 degrees of freedom per node. A shell element node also has 3 degrees of freedom in two dimensions, but since the element has 4 nodes, it has 12 degrees of freedom in total. The nodes of a solid element only have the 3 translational degrees of freedom. The nodes aren't allowed to rotate and instead rotation of the element is captured by translation of the nodes. So how can we calculate all of the displacements at every node in our mesh? For a spring, the relationship between force and displacement is defined by Hooke's law. The spring stiffness k determines how far the spring will displace for a given force. In the same way, we can think of the elements of our mesh as having a certain amount of stiffness, that resists deformation. In this equation {f} is a vector of the nodal forces and moments, {u} is the vector of the nodal displacements, and [k] is the stiffness matrix of the element. A 2D beam element has 6 degrees of freedom, so the displacement vector looks like this. And the force vector and the stiffness matrix will look like this. The element stiffness matrix defines how much each node in the element will displace for a set of forces and moments applied to the nodes, and so is the key to solving the displacements at every node of our mesh. It's a square matrix - the number of rows and the number of columns are equal to the number of degrees of freedom of the element. We can figure out what the terms of the stiffness matrix are by enforcing equilibrium. We'll come back to this later on in the video, but for a 2D beam the matrix looks like this. We can think of this equation as a system of linear equations that we can solve to obtain the displacements at the nodes of our mesh. If we apply a lateral displacement to node 2, for example, and all of the other degrees of freedom are fixed, and so are equal to zero, we can use the stiffness matrix to calculate the forces and moments at both of the nodes. To make the next steps easier to visualise, let's represent the stiffness matrix in a more abstract form. This is just one element, but our overall mesh will be made up of many more elements. Let's look at a simple example where we have a mesh made up of three 2D beam elements, that we're using to model a cantilever beam. We can assemble the individual stiffness matrices for all of the elements in our mesh into a huge global stiffness matrix that defines how the entire structure will displace when loads are applied to it. Like the element stiffness matrix, the global stiffness matrix is a square matrix and the number of rows and columns is equal to the total number of degrees of freedom in the model. The element stiffness matrices are assembled together to form the global stiffness matrix based on how the elements are connected together. Elements 1 and 2 are connected at node 2 for example. Continuity tells us that since these two elements are connected at the same node, the displacements for both elements must be the same at the common node. So when we assemble the global stiffness matrix, the terms in the element stiffness matrices corresponding to node 2 should be summed for each degree of freedom. Element 3 is not connected to node 2, so this element's stiffness matrix should have no effect on the displacements at node 2. This is what the actual global stiffness matrix looks like for this model. It has some interesting characteristics. It is said to be sparse, because it contains a lot of zeros, and banded, because the non-zero terms are grouped around the diagonal. For linear-elastic problems the matrix will also be symmetric. If we modify the mesh so that the three elements are connected differently, the global stiffness matrix will change. In this case we have three nodes instead of four, so the matrix will be smaller, and the fact that elements 1 and 3 are connected is reflected in the matrix. An important thing to note here is that the elements are no longer aligned to the same coordinate system, so we have to transform the stiffness matrix for each element so that it aligns with a global coordinate system. We can do this by multiplying each element stiffness matrix by a rotation matrix. Now that we've assembled the global stiffness matrix, we need to solve this equation to obtain the displacements at each of the nodes. To do this we need to define the external loads, and the boundary conditions. The boundary conditions are known displacements at specific nodes, typically because specific degrees of freedom are fixed. In this model, vertical and horizontal translations are fixed at node 1, and vertical translations are fixed at node 2, so the displacement vector looks like this. And the force vector will look like this. It includes the applied force and the reaction forces at the supports. Now we can solve the equation. We could do this by inverting the global stiffness matrix and solving the displacements from there. But in practice inverting the matrix isn't very efficient, particularly because it's a sparse matrix. Commercial solvers mostly use methods that involve iteratively approximating the displacement vector, like the conjugate gradient method. Once we've solved for the nodal displacements, we can calculate the strains and then stresses throughout the mesh. A typical finite element mesh could easily have a hundred thousand degrees of freedom, which would be impossible to solve by hand, and so applying the finite element method to anything more complicated than a very basic model requires the use of appropriate software. Now that we have an overall understanding of the finite element method, let's return to the element stiffness matrix to see how it's derived. The matrix shown here is for a 2D beam element, but it will look very different for different element types. Several different methods can be used to derive these stiffness matrices, and they are all fundamentally based on the concept of equilibrium. The direct method derives the stiffness matrix directly from the equilibrium equations that govern the behaviour of the element. The lateral deflection of a beam is governed by this equation, for example, so we can solve the equation to obtain the stiffness matrix for a beam element. These governing equations are usually differential equations. The differential equations and associated boundary conditions are what we call the "strong" form of the equilibrium problem. But it's only really possible to solve the strong form for simple elements. For more general cases we can use "weak" forms that describe the differential equations in integral form, instead of solving the differential equations directly. These give approximate solutions to the equilibrium equations, but are easier to solve. The first of the weak form methods is based on variational principles. One such principle commonly used for structural mechanics problems is the Principle of Minimum Potential Energy. It states that the displacement configuration that satisfies equilibrium conditions is the one that minimises the total potential energy, where the potential energy is the sum of the strain energy and the potential energy of the external loads. By applying a mathematical technique called the calculus of variations to minimise the total potential energy, we can obtain an approximate solution to the equilibrium equations. The other weak form method is the Galerkin method of weighted residuals. In this method the function that satisfies the differential equation is approximated as the sum of a number of assumed trial functions that each have unknown coefficients. This approximate solution is substituted into the differential equation, and an equation for the error, called the residual, is obtained. If we multiply each trial function by the residual and set the integral of this product to zero, we can calculate the unknown coefficients that minimise the residual. This gives us an approximate solution to the differential equation. This is a more widely applicable approach than the principle of minimum potential energy, but for stress analysis problems both methods give the same result. Regardless of which method we use, we end up with the stiffness matrix for our element. But to apply these methods we need to be able to describe how displacements and other field variables vary inside the element, instead of just at the nodes of the element. To overcome this issue, an element needs to have a defined function that calculates values inside the element by interpolating the values at the nodes. The shape function is just an assumption. It's usually chosen to be a polynomial, since they're relatively simple and sufficiently accurate. And with that we've covered all of the key aspects of the finite element method. In summary, the first step in the finite element method is defining the problem, including the relevant material properties, loads and boundary conditions. Next the body being analysed is split into a number of small elements connected at nodes, and the element types are chosen. Then a stiffness matrix is defined for each element, using one of the three methods we covered earlier. The element stiffness matrices are then assembled into a global stiffness matrix based on element connectivity. This global stiffness matrix defines how the structure will respond to applied loads, and we can use it along with boundary conditions to solve for the displacement at each node in the structure. Once we have displacements we can calculate stresses, strains and other field variables of interest. Then all that's left to do is post-processing to obtain the desired results, and validation of the model. A lot of the hard work like calculating the element stiffness matrices, assembling the global stiffness matrix and solving the model is done by the software being used. But the engineer is responsible for making sure that the problem has been properly defined, that the mesh is suitable, and for interpreting and validating the results. I hope this video has helped you develop a better understanding of the fundamentals of the finite element method. If you're interested in learning more, you can check out the extended version of this video, that's available now over on Nebula, where I spend a few more minutes covering the problem definition, discretisation, post-processing, and validation steps. Nebula is a streaming service built by independent educational creators. It's a place where you can find extended versions of my videos, alongside amazing original content from other creators, like Mustard and Wendover, without any ads or sponsor messages. You can get access to Nebula for free when you sign up for CuriosityStream. CuriosityStream is the perfect streaming service for curious minds. It has thousands of high quality documentaries to keep you entertained and learning, like Particle Fever, an incredible film that follows experimental and theoretical physicists during the first round of experiments at the Large Hadron Collider, the largest science experiment ever conducted, as they work to prove the existence of the Higgs boson particle. If you sign up to CuriosityStream using this link, you'll get a 26% discount on their annual plan, and you'll get access to Nebula for free. All for less than $15 a year. So to watch my bonus content on Nebula, and Particle Fever and countless other documentaries on CuriosityStream, head over to curiositystream.com/efficientengineer, or click the link in the description. It's an amazing deal, and signing up is a great way to support this channel. And that's it for this introduction to the finite element method. Thanks for watching!
Info
Channel: The Efficient Engineer
Views: 397,546
Rating: 4.9777956 out of 5
Keywords: finite element method, finite element analysis, FEA, FEM, Galerkin, weighted residuals, stiffness matrix, mesh, elements, shape functions, boundary conditions
Id: GHjopp47vvQ
Channel Id: undefined
Length: 18min 36sec (1116 seconds)
Published: Tue Apr 27 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.