How to check if the FEA report is good?
Learn how to briefly check an FEA report, even if you don't have a deep technical training.5 December 2022
Interpreting analysis outcomes is not simple. Even if you already have proper values from your FEA analysis, still you need to decide how to interpret FEA results. Let’s take a closer look at how to approach this task! Firstly let’s wonder how to interpret FEA results?
In structural design, you have to perform several checks. Firstly, verify if yielding is not present (or acceptable). If your model yields, check if plastic strains are acceptable. Verify if you have stability issues (i.e. with buckling analysis). Don’t forget to verify if model deformations are sufficiently small. Of course, there may be other checks depending on what analysis you are doing (like fatigue, vibrations, etc.).
This all may sound simple, but of course, there are many nuances involved. I’m constantly learning how to interpret outcomes better, even after 10 years in the practical FE design field. To help you out on your way I figured I will share the most important things from my experience with you!
This is a long post (solid 30 min to read it all!), so I’ve made a content list.
This is such a broad topic, that I feel we need to set some boundaries on it. Firstly, let’s assume you have a correct model – without that, we won’t get far. Even if you analyze outcomes properly, if the model itself was wrong this all thing can end pretty badly!
Proper interpretation of wrong outcomes lead to wrong answers!
Simple as that! But here I will assume that you’ve nailed boundary conditions, loading, meshing, and analysis setup. This means that you can in the very least display something like that:
Just note: apart from the fact that the above graphic looks pretty cool, it has little to do with “FEA outcomes”. It is just a stress contour plot!
All right then, let’s check how to approach FEA outcomes step by step!
I number the steps simply to give you a certain framework you can use later. To be honest you can perform those steps in a different order and still be fine. I guess this will come down to personal preference!
First on the list is stress analysis!
I think this is a step most people instinctively use. After all a “von Mises contour plot” must be the most checked thing when it comes to FEA outcomes!
And there is a good reason for that! After all, stress is the best measure of how much “hurt” your model took with all the load you applied!
There are a lot of various stress plots: von Mises but also Tresca, Normal stress, Shear or Principal stress just to name a few. All of those do “something” for sure. I mean if they wouldn’t who would bother to implement them into the post-processor?
As you may know, stress state in any given point of your model is a rather complicated thing! Cauchy Stress Tensor (be warned: link contains mathematics!) has 9 components after all, and all of those describe the situation in a single spot of your model! This is a lot of information, sadly it is also “overwhelming” to analyze all the time. Truth is that your material will fail (due to yielding for example) under different conditions! You can’t say that any component of Cauchy Stress Tensor is “acceptable”, as you need to take into account all 9 of them to be able to say if the spot failed or not.
This is obviously not a very practical thing… in the best case scenario showing Cauchy stress Tensor would require 9 different contour plots (one for each component)!
Luckily, we can use von Mises stress (math warning again!).
What this does is that it “combines” all the 9 components into one value: von Mises stress. This value (in MPa) is scalar and you can directly compare it against the yield strength of your material. Super cool huh? This is a one-click-wonder if you want to quickly check if material failure will occur (note that for brittle materials Tresca criterion is better).
It’s obvious we will use it in interpreting FEA outcomes. After all, we can plot von Mises stress and instantly see if our material will fail, right?
Sadly, usually, this is not so simple! I mean, if in your entire model von Mises stresses are lower than yield then you won… and also you should really optimize your model (unless there is a good reason to keep everything in an elastic range).
Most likely however you will get stresses higher than yield in linear analysis. The easiest way to understand why is to take a look at the stress-strain chart of a typical ductile material (like steel):
Notice, that the green part marks the linear dependence between stress and strain in your material, This means, that the linear analysis assumptions are fulfilled. Simply put, all work nicely!
As this point, it’s great to understand how FEA works! What is going on in your model:
As you can see from the description above, in phase 3 based on calculated strain solver produces stress in each point of your model (well at least in each Finite Element… this is not entirely the same thing). This is where the “trap” is. As long as your strain is in the linear part, all goes well. But as soon as strain increases, things tend to go sideways:
As you can see above, the solver is still trying to apply the “linear law” even as the strain is outside the linear zone. As can be easily observed this means that the stresses can be much higher than yield. Sometimes tens of hundred times higher (if the strain is “high enough”).
This makes interpreting stresses a bit difficult in linear analysis.
Oftentimes I’ve heard people say something like “this is a typical FEA error” as if FEA did something incorrectly. This is not the case – solver simply did what it was asked to do. In that regard it’s dangerous to ignore those high stresses… sure those values won’t be there in reality as yielding will happen. But yielding may cause failure as well – so stresses higher than yield just indicate you need to be extra careful when interpreting FEA results.
Let’s deal with the common misconception first. It’s rarely the case that when you get a small region where stress is higher than yield you are done.
Small region with stress higher than yield rarely means failure
But it can of course! This will be true i.e. in fatigue analysis where you enter low-cycle fatigue in such a case (assuming this stress higher than yield appears both in tension and compression). That is in most cases an instant-failure, even though you may be interested in designing stuff for low cycle fatigue. In such a case however I know that you fully understand what you are doing : )
It’s only natural to assume that the stress higher than yield means failure. After all, we are engineers! There are two values, one is lower so the case is “obvious”. On another hand someone can say a thing I’ve heard so many times before: you can’t get such high stress. This is impossible in reality, so it must be an “FEA error”. Just ignore this!
Both approaches are wrong, to be honest. After all, you got the stresses so high, because of the simplified material description you used! If you would take into account a more accurate model, you would be far better off in analyzing the outcomes!
Whenever you are uncertain if “so much” yielding is allowable USE NONLINEAR MATERIAL!
This is so simple, and in all honesty, computing doesn’t take ages (it’s far worse when buckling is involved!). This will also allow you to precisely analyze outcomes without guessing!
In such a case, I can see 3 possibilities in your analysis:
As I wrote above using nonlinear material is a great solution to linear “too high stress” problem. And I know, you may not have the time, computing takes too long, etc. But in all honesty, I’m doing nonlinear calculations to literally all of my designs. Sure, in practice when you have the experience you can judge from linear analysis if stress is acceptable or not… I never developed that skill, and I rely on nonlinear analysis instead.
So let’s assume you followed my advice and you did the nonlinear material analysis – what happens next?
Most likely you got an outcome like that:
Of course, it’s clear to see that model on the left is loaded with the smallest loads while the one on the right has the biggest loads. The question is the same: “what is acceptable”?
Luckily, since we are using nonlinear material, this time we can actually search for an answer! All you need to do is to check plastic strain! You can display it easily, simply because solver did calculate it for you, using nonlinear material characteristics. There are many various ones, but I think that the simplest bi-linear one is just fine:
It’s up to you to choose the one with work hardening (A) or without it (B). I’m usually going with (B) since I don’t want to go anywhere near material hardening in my designs… this means that material model (B) is better in describing what is going on before work hardening starts!
This all being said, it’s a simple thing to do now. Just check how much plastic strain you have!
There are several sources of what is the “acceptable” plastic strain in your model. Check for instance EN 1993-1-6 (chapter 6.3 point 5). In this case, it would be 50 * [yield strength]/[Youngs Modulus] of your material (around 5% for Steel grade S235). You can also check DNV-RP-C208. There it’s a bit more complicated but outcomes vary from 3-5% in “simple cases” even up to 10 or 12% in case of local effects. Just note that in case of such high plastic strain like 10-12% it’s good to reconsider nonlinear law with no work hardening, as you are clearly “walking” on the work hardening slope!
If the strains are acceptable, you are fine as far as the stress-check goes!
I left it for the end. Depending on the FEA field you may have to follow various codes. Some of them are written in an easier way, some are hard to understand. Some are relatively new (like EN 1993-1-6) and cover nonlinear analysis, a lot are old fashioned and still deep into the linear analysis. It’s impossible for me to cover all of the codes here, simply because there is just too much writing to be done (not to mention I don’t know most of the worldwide codes you may be using).
The good news is, if you are using the code, it should specify precisely what you should do! That is great… just follow that guideline. Sure, it may not be as “user-friendly” as what I write, but at least you have a guide to follow.
Here I’m aiming at the design of things that don’t really have a specific code… which in my experience means most of the things ; )
We are not done with checking stresses yet, but now the purpose changes. We already know, that there isn’t too much stress in our model to cause material failure. But this is far from over. Now we need to check if we will be safe from all sort of stability failures!
If you are designing a very stocky element or something purely in tension, there is no need to do this step. But I feel that usually you really should check it unless you are sure things are fine!
There are several approaches to stability, so let’s go through all of them to discuss how to verify outcomes using each of them!
You may be thinking: “Are you insane?”, but truth is, there are merits behind such an approach. In various documents, very specific rules may be given for stability design of various elements. Those are usually well described and relatively easy to follow. But what is also very important those procedures always produce the safe-side design (at least they should!). You can’t say that i.e. about Linear Buckling Analysis we will discuss later!
Usually, in stability design, you will have to know stresses in your element as well. Sometimes an average value, usually the maximal value, but in some rare cases (like in EN 1993-4-1 for silos) an actual stress distribution in a given place (over support in the case of the code I just mentioned).
What is important, however, you will need to know normal stress in a given direction, rather than von Mises stress. This is because you are interested in pure compression in most cases. Some procedures (like for slender webs in welded girders) shear stress will be of interest (in search for such rules? Check EN 1993-1-5!). Just be aware that usually in stability design it’s either normal stress or shear stress. I don’t recall hand calculation stability procedures based on von Mises stress!
Important thing about hand calculations in stability:
There are two “kinds” of stability design:
I can’t imagine a guide on how to interpret FEA results without LBA somewhere in there. And yet, I also shrug that I need to describe it!
Linear Buckling is a nice analysis, but it isn’t precisely geared toward stability design. What it does is it calculates the “ideal critical load” for you. Just as I wrote in the hand calculation section above, this is a useful value, but definitely not the end of the design! You still need to apply imperfections and other factors into the outcome.
The problem here is: there aren’t clear rules on how to do it! I mean when you are following a hand calculations routine from your favorite structural design guideline it tells you how to perform the stability design step by step. But also this guideline includes several approaches to stability design depending on the case you are solving. So there are different rules for lateral-torsional buckling of beams, different for elastic buckling for columns, different for local web stability failures in welded beams (like the one below, but this is not an outcome from LBA) and other for shell stability. Whatever you try to calculate in stability according to the code basically have its own set of rules based on experiments in that field.
But how to do such a thing for LBA? I mean you can do an LBA analysis of literally anything! And tests are done in very specific fields. So in order to calculate buckling of a column or shell buckling, you would use different procedures… but the same LBA.
This means that it’s nearly impossible to give “general guidelines” to outcomes from LBA… as they are distinctively case-specific. And there aren’t a lot of documents that tell you how to interpret LBA analysis outcomes in your particular problem.
There are no “general guidelines” for LBA
Linear Buckling is not the complete outcome. It’s just a step in obtaining that outcome! Sadly, you would need to have a guide for your specific problem in order to reasonably be able to use LBA in design. There aren’t many of those around!
This also means, that when someone tells you “critical load multipliers in LBA over X are safe” don’t understand how it works! The proper sentence would be “If you are designing this particular thing within this restrictions, then based on our research/experience/this document critical load multipliers from LBA over X are acceptable”. And this is a huge difference!
There is no “one-fit-all answer” for LBA!
And it’s easy to prove! In a reasonably designed truss, each diagonal will have a critical load multiplier of 2-3. This is completely fine. The same multiplier for a frame would be problematic at best, and for a shell structure the same value would be a tragedy.
So is the LBA outcome of 3 acceptable? The answer is: it depends on what problem are you solving!
This is why it is better, in my opinion, to do hand-design rather than base your estimates on LBA. Hand designs are almost always based on research, and in the end, are safe to use. LBA sadly can greatly overestimate the buckling capacity of a thing you wish to design… not a good thing!
Use LBA only if you really know what you are doing, or you have some guidelines on how to do it in your particular field!
And what if there are no rules you can find? Well.. then it gets a bit more complicated:
Without a doubt, nonlinear analysis is a powerful tool. But this also comes with the “price”. While setting a nonlinear material analysis in the “basic functional level” is relatively straightforward, nonlinear buckling analysis is a beast.
You know, convergence problems, proper imperfections and all that.
This is, however, a topic for a completely different post – here let’s focus on analyzing outcomes.
And when this is a goal, the thing becomes pretty simple! You see, if you successfully define a correct nonlinear analysis, the outcomes are there – just waiting for you! Just create a stability path based on your analysis outcomes (chart showing dependence between deformations and applied load) and you are done! In “normal cases” it will look like that:
You can clearly see, that when the load on the top edge of that shell (vertical axis) reaches a bit over 31kN/m the model fails. This means that you know perfectly what the capacity is. Also, in such a design you and take into account imperfections, nonlinear material, and all the other things!
Since you can analyze so much together (like buckling and nonlinear material and imperfections) it’s obvious that those effects will “interact” with each other. Sometimes this will have little impact on the outcomes (when one failure mode dominates) but often you will have a “mixed” failure. A situation where it’s actually hard to tell if the failure is due to buckling of yielding or something else. You know, something like that:
I wouldn’t dare to say if the above is a stability failure or yielding failure… it’s most likely somewhere in between. What is important however is, that thanks to nonlinear FEA I can actually calculate the capacity in such a case… and this is the goal right?
Such situations can really be calculated only in nonlinear FEA. There might be some interaction procedures for hand calculations but they often work only for very restricted problems, and real-life problems are often more complex than hand calculation rules allow.
As you can see above, when you manage to get the proper analysis, understanding outcomes is relatively simple. This is a complex behavior for sure, but then again on the stability path above you can clearly see that there is a load level where the load plateau at first, and then decreases meaning it’s a failure. All you would have to check additionally to this is, whether plastic strains are lower than what you are willing to accept (that would be step #1 in this case) and you are set!
Analyzing outcomes rule:
Generally, it’s the case that it’s very difficult to properly interpret outcomes from a simple analysis. There are simply too many assumptions you cannot be certain about.
The more complex analysis you do, the simpler it becomes to interpret results. This is definitely an upside of doing nonlinear FEA analysis!
Sure, there are some more “difficult” problems in the nonlinear analysis as well, but those I think are too specific to discuss in such broad post like this one. The above will be true for most problems you will be facing for sure!
Finally, we are here! The last step on our road. And it’s a short one in a sense. All is left is to check allowable deformations.
The trick here is, that oftentimes you have no idea what is the allowable value.
There are yet again a lot of approaches to this. Oftentimes you will simply have to agree with your Customer what is allowable (pretty hard to discuss with people who claim that no deformations are allowable at all though…). Sometimes codes will provide guidance here (i.e. old Polish codes provided some allowable deflections for various steel beams). I can imagine, that from time to time you will do that “on a gut feeling”.
Whatever approach you will adopt, it’s always a good idea to check if the deformations are “ok”. This is also a reasonable way to verify if your model behaves reasonably. Deformation in weird direction, too small or too big values or weird deformation shape may indicate, that something didn’t work properly in your analysis. This is yet another reason why you should do this!
This is the “biggest” and the “smallest” category of them all.
I think I should call it “the rest”. In most of my designs, the above 3 steps do the job. But on occasion, you are dealing with problems that require some additional attention. Maybe vibrations are a problem? Or fatigue? Or something else.
Life is rich without a doubt, and the problem of writing posts about such “broad” topics like this one is, that I will always omit something. However long a list I will do, there is someone somewhere doing something that requires “just one more step”
So I’ve added this 4th step to tell you one thing:
Be careful and think about what you are trying to check!
The list I gave you here is a really good base for analyzing structural design problems. I’m using it all the time and I really consider those to be good advice.
That being said, I also understand what I design on a day-to-day basis as I’m sure you do too. And this means we both know, that it’s impossible to “close” all the engineering problems in one checklist!
Each problem is individual, and often you will have to go outside of the scope of the above rules simply to check some additional things! This is to be expected, and please don’t treat this list as an excuse to be lazy and not analyzing all the thing you should!
Also, if you are unsure if you should check something… check it! In the worst case scenario, you will waste some time and learn that was an unnecessary check in this case… but think on the alternative for a while!
Ok, I admit this has little to do with the interpretation of outcomes. If you define your model in the wrong way, use unrealistic boundary conditions, wrong meshing or any other things that may go wrong you are toasted!
So why I’ve put this one here. Simply because post-processing is your last-defense! This is the place where you can still notice that something is wrong. If you fail to notice this now… you will simply draw wrong conclusions.
So always think when you are analyzing results, and never do this mechanically!
Yea, there were a lot of cases where someone forgot to check this or that against buckling and something bad happened. Buckling is tricky. After all, you are checking stress “again” after you did step #1, so it seems unnecessary. And people often reason like “well I only have stress at 50% of yield strength so it must be ok”, while many things fail due to buckling at much lower stress levels.
The minimal silos capacity due to shell buckling I ever designed was 60MPa so far (compared to 235MPa of yield strength). Forgetting about such thing… isn’t a good idea!
But of course, you can forget about a lot of things like deformations, loads you should apply, maybe vibrations if they are relevant. Basically, it’s easy to forget stuff… and it’s never good to do so!
It’s not even about checking something wrong (which is so obvious that I won’t even put it on the list). What I mean here is that you can actually use wrong values to do a completely correct checking procedure. You know, like using normal stress when you should use von Mises stress, etc.
Simply pay attention to what you are displaying and double-check if that is the thing you should be checking. It’s also good to pay attention to values. If you solve a lot of similar problems at work, in time you will become aware of what outcomes to expect if you are paying attention! This will help you to avoid such mistakes!
But apart from the obvious part, there is a more tricky component of this as well. That is stress averaging, or stress smoothing if you like.
Software really cares about the aesthetics of things, which means that it desperately tries to plot smooth contour plots. Sadly, in order to do that, oftentimes values get averaged in a weird way, to make the plot look “nicer”. This means that whenever you are checking values for design, make sure to display averaged and unaveraged outcomes. Simply to make sure that there are no hard-core differences between those:
Notice that the averaged stresses display 110MPa as a maximal value while the non-averaged ones are 141MPa. This may or may not be a huge difference depending on what you are doing and why. But regardless of the case, it’s always good to be aware that this is happening!
I think that whenever I got “caught” on a mistake by someone from my office checking my design was when I was too lazy to think why something is as it is. You know, you see something that in your opinion should look slightly different (or maybe even completely different) and you say to yourself “well maybe this is just the way this will work”. And you move on.
Usually, when something “weird” is happening this is for a reason… so investigating that may be critical. Of course, it takes time, but there are two positives of that: Firstly you gain certainty that what you did is ok, but also you’ve just learned about a new mechanism or some effect that made those outcomes so different. I think I’ve learned the most about FEA while investigating “why the outcomes look so stupid”.
Truthfully this is a win-win situation: you either find a mistake (a win!) or you learn something new (even bigger win!)… so always do that!
What should I check in my case?
I think that you may not like this one, but I will write this anyway. If you are not certain about what you should check in your “real life” design problem… most likely you shouldn’t be solving it.
It’s very hard to properly interpret outcomes for a problem you cannot understand properly, and if you would understand the problem properly it would be obvious to you, what things should be checked.
Sure, a “how to check this against fatigue?” question is a good one. I mean you don’t have to know by heart all the procedures. But you should be able to easily list all the potential failure modes of the thing you are designing, so at least you would know what to search for. Otherwise, it will be too risky to perform such a design I think!
But to give you an answer – the above list is a good start. And when you are done with it, search for someone maybe a bit more experienced so they can verify if what you did is sufficient or if there are any other things that require checking in your case.
Is stress X times higher than yield stress still acceptable?
This is a wrongly stated question, and there is no obvious answer! Imagine you have a steel bar under uniform tension. Is stress twice as high as yield allowable in such a case? Of course not, the bar will break under much lower load.
Then on another part of the spectrum, you get something like this (notice the stress concentration where the stiffener ends):
Will stress twice as high as yield stress be allowed in such case… most likely yes! It will just cause a small local yield and all will be fine.
So now, when we know there is a spectrum, and we know what the “ends are”, your case is probably between those two somewhere. But how can you guess where? Well… you can’t really. This is why nonlinear material analysis is such a great tool : )
This is great! I’ve made a complete FEA online course! If you are interested, below this post you can sign up for a free lesson! You don’t have to provide me with a credit card or anything else really. Just put your first name and email below, check the “marketing” box and get the free lesson. Simple as that : )
10 Lessons I’ve Learned in 10 Years!