How to solve a Finite Element problem using hand calculations

Basically, when we want to determine the forces and displacements in a certain structure using Finite Element Analysis (FEA), what we are doing is creating a system of equations that relates the stiffness of the elements to the displacements and forces in each node. When we run a simulation, we do not see all the calculations. For that reason, today I want to illustrate a simple case that can be easily solved by hand applying that methodology.

Before getting started, just think of a spring. Everyone has come across the Hooke’s law at a certain point during school. It states that the force in the spring is proportional to a constant “k” multiplied by the variation in length of the spring. FEA follows the same principle, but in this case the “k” constant is the stiffness matrix and the variation in length is a vector of displacements and rotations, depending on the case.

Let’s study a simple static case. Our structure consists of two bar elements connected at a common node, where a load “P” is applied. The other two nodes have both horizontal and vertical displacements constrained (see the boundary conditions). For this particular case, the reactions in nodes 1 and 3 and the displacements of node 2 are requested. I have solved the problem by hand following a few steps that, based on my experience, can be generalised for more complex problems. Pretty much, the summary of the methodology is:

  1. Although some people memorise the stiffness matrices for different elements, I firmly believe that it is always better to derive the expressions instead of trying to remember them. Therefore, the first step is to derive the stiffness matrix for our element type in local coordinate system.
  2. For each element, write down the stiffness matrix in local coordinate system.
  3. For each element, derive the transformation matrix [T]. This expression allows you to transform the local coordinate system to the global one. Once again, some people prefer to know this matrix by heart, but I recommend its derivation in order to avoid errors.
  4. For each element, calculate the stiffness matrix in global coordinate system. The only thing you need to do is to multiply the transverse transformation matrix by the stiffness matrix (local) by the transformation matrix. It’s crucial to do it in that particular order! (basic algebra; I’d be more than happy to provide some useful references if needed).
  5. Assemble the overall stiffness matrix in global coordinate system [K].
  6. Solve the system of equations: [F]=[K][d], where [F] is the vector of forces and moments and [d] is the vector containing displacements and rotations.

And that’s it! Please find the problem solved below. I’ve also attached the solution in PDF in case anyone wants to save it and print it (FEA_HandCalculations_file).






Just a quick comment. You might have realised that the structure should be in equilibrium. That means that the sum of the forces in the horizontal direction should be equal to zero. The same principle applies to the vertical forces. However, if we have a look at the final results, they are not exactly zero… Why? Firstly because I haven’t used all the decimal numbers and secondly because Finite Element Analysis is an estimation. One might think that increasing the number of elements per bar (i.e. refining the mesh) would calculate more accurate results. However, as Dr Kevin Hughes (Brunel University and former director of my MSc at Cranfield University) stated, that option would result in errors, since we would be introducing pin joints. On the other hand, he also said that a refinement of the mesh would work if we used beam elements (remember that bars can only carry tension/compression stresses). Hope you enjoyed it and if you have any question, don’t hesitate to contact me!

9 thoughts on “How to solve a Finite Element problem using hand calculations

    1. Ignacio Carranza Guisado Post author

      Hi! Thank you for your question! It’s actually an interesting one and I might write about it in the future, so thanks for the idea!

      Well, I have never done this type of hand calculation, butif we considered the same structure with a dynamic load (i.e. load P would vary in time, P(t)), then the approach wuld be basically the same. We should define the number of intervals that we want to know, calculate the load for the exact time that we are looking at, and calculate the displacements for each step. For example, we would start with t=0: we would use the value of P(t=0) for the first step and we would be able to calculate the displacements for t=0. Then we could ove to t=1. So we should do exactly the same but knowing that the displacement should be updated using the one calculated earlier.

      However, other cases would imply the use of Impact Dynamics and energy based theories, which are way more complicated to solve.

      I will try to look into this in more detail and I’ll let you know if the approach that I suggested above would be accurate or not!



      1. spreadyoursight

        I’ve read some theory of dynamics analysis. It can solve by stiffness method for mass and stiffness, you right sir another way is by using virtual energy. But I’ve no find the example.

        Thank you sir, I’m waiting for your writing about dynamics calculation. I hope I can gain knowledge from an expert like you sir.

        Ichsan. Last year student of Ocean Engineering from Indonesian.

        Liked by 1 person

      2. Ignacio Carranza Guisado Post author

        Thank you for your kind words, I really appreciate it. It’s really satisfying reading a comment like that. I will definitely try to look into that topic in the upcoming weeks!



  1. Cesar Vasini

    Hi Mr. Carranza! Beforehand, thanks for your example, bringing us the FEM concept. It is very interesting for learning purposes. However, the simple problem you stated above can be easily solved for the reactions at “1′ and ‘3” with elementary statics, which do not deal with sitffness at all. I have done this. The modules (regardless signals) figured out this way are F1x=F1y= 78.8675 kN; F3x= 21.1325 kN; and F3y= 78.8675 kN. Please, note that these numbers are VERY different from those resulting from FEM method. These differences cannot be blamed to accuracy. Perhaps you want to clarify somethings about the FEM concept. Best regards.


    1. Ignacio Carranza Guisado Post author

      Hi Cesar! First of all let me thank you for your comment and for visiting my blog.
      Please, forgive me if I’m missing something (no one’s perfect!).
      If I’m not wrong this structure constitutes a “hyperstatic” case or, in other words, statically indeterminate scenario, since we have four reaction forces and only three equilibrium equations. Therefore, simple static equilibrium is not enough to solve the system. There are ways to determine the solution without using FEA, such as energy methods, but from my understanding, you always need some additional “tool” to get the value of all the reactions.
      Maybe I’m missing something too obvious, but how did you get the values of the horizontal reactions just by applying equilibrium? Even if you considered the free body diagram of one bar (e.g. bar “2”), you would still need to include the effect that the other bar has in it, hence introducing another variable which, once again, relates to the remaining unknowns.
      Looking forward to your reply! (I’m really bugged right now, I must admit!)


      1. cesarvasini

        Dear Mr. Carranza, thanks a lot for your quick repply.
        According to my understanding the concerned problem is static, not hyperstatic.
        Therefore, the static equilibrium conditions suffice to its solution. In regard of your request, I’ve prepared a pdf of the applicable solution, which I’d be pleased to send you by e-mail if you provide me an address. Unfortunately, I’m unable to post it here.


      2. Ignacio Carranza Guisado Post author

        Hi Cesar! You’re actually right, sorry about my mistake! It’s always great to remember these things! Apologies for my confusion.
        No need to send me the pdf, you can apply equilibrium on node “2” to get the axial stresses for the bars and from there you calculate everything else.
        What we cannot do is to calculate all the reactions from global equilibrium, since the structure is “externally hyperstatic” (being globally isostatic, as you appropriately pointed out).
        Now, with regards to the difference with FEA, I believe it is due to the estimation it provides. If you have a look, your results differ from the ones following the FE approach by a constant factor. As you may know, in order to get better convergency and more accurate results in FEA, it is desirable to have fine mesh, i.e. dividing each component in a greater number of elements. As I said in the post, this cannot be done in this case if “bar” elements are considered because we would be introducing pin joints. To solve that we would need to use “beam” elements which are more complex. I will try to check this to see if the solution then correlates better with the one obtained by applying equilibrium! (there’s also a chance I might have made a mathematical error with the calculator when solving this! Imagine solving a way more complicated structure by hand!)
        The idea of the post was to illustrate with a simple case how FEA actually works (from general point of view).
        Once again, thanks for contacting me! It’s great to have this type of conversation! 🙂


      3. Ignacio Carranza Guisado Post author

        I remember something quite similar from my MSc, when I had to compare the result of a Cantilever beam with hand calculations and a FE model provided by the university. It was funny how the results did not correlate at all. As soon as I refined the mesh, the solutions converged to the same values as the hand calculations. But for this case, I’d really like to check it again! 🙂


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s