!function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window, document,'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '366319058984917'); fbq('track', 'PageView'); (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-5M6SH59');
8 minutes read
19 December 2017

Stress singularity – an honest discussion

8 minutes read

Arjen asked me recently about stress singularity. There are quite a few articles about this issue already (it is a common problem I think). But I want to bring something to the discussion as well : )

Stress singularity basics

I’m sure you have heard about it, so I will be brief. Stress singularity is basically a place where stresses are “theoretically infinite”. I think that the most famous example would be a point load. When you apply the load to a point (no area), the stress is infinite (force is divided by zero area). There are of course other examples like:

  • Point load
  • Boundary condition applied to a point (point support)
  • Sharp “inside” corner
  • Contact on a sharp corner

Note, that this is not exactly a stress concentration. A lot of geometric features “concentrate” stress around them. I don’t want to go into details here, but in general, such problems have a “finite answer”. This means that in stress concentration you will actually get a convergence of the outcome with mesh refinement.

When it comes to stress singularity you can think about it as a “mean and ugly sister of the stress concentration”.
No matter how much you refine mesh there will be higher and higher stress all the time!

How stress singularity works

I must admit that I would have trouble explaining this on the sharp inside corner example. This is most likely one of those things I miss with my attitude toward learning the math behind FEA. If you have read a nice explanation about this one please share a link in the comments (or your thoughts on it). I would love to read about it more : )

Here I will use a point load case since this is the simplest to use (and illustrate!).

Maybe you have heard about it somewhere: FE elements do not exist! Elements more or less “describe” how nodes are connected (with equations). It’s convenient to draw elements, but in reality, the solver sees nodes connected together. Picture it this way: mesh consists of nodes connected by springs!

This is important here! You see, when you apply the load to a node, you didn’t actually load a “point”. Instead, you loaded the “space” around that node. Since your model has nodes and space between them, outcomes are a bit tricky. What you see on the screen is more or less an average of values assigned to the closest nodes. Simply speaking you are loading a node and “part” of each element that shares this node.

Now the thing becomes simple. If the elements are “big” the area that is “assigned” to the node is quite big as well. You have a force divided by this “area” that give you stress you see in your post-processor. After all how often did you saw an actual “infinity” on the scale?

From there, there is only one more step to understand this! If you make the elements smaller, the area “assigned” to the loaded node will be smaller as well. Since the force is always constant and with mesh refinement “assigned” area decreases… stress is higher and higher. It will never converge! The more you refine the mesh the higher the stress will be!

Fun fact: If a woman weighting 60kg stands on one high heel (0.5×0.5cm area) the stress is… 24MPa. Enough to smash concrete surfaces (at least the medium and weaker ones)… which as we know doesn’t really happen!

Common solutions

This is a common issue and you will find a lot of suggestions on how to deal with it. I will share them below with my thought on them:

  • Ignore the singularity: The “big” one. There is some merit to it. Saint Venant’s Principle teaches that if you are “far enough” from the source of singularity you are fine. But I always had a problem with this one. After all whatever is causing the singularity is there in reality right? I agree that the load is not on “point” as in the model. It is applied to a small area instead! This means IT IS THERE! You should expect higher stresses in that region. Sure, they won’t be infinite, but this doesn’t mean you can ignore them altogether! I think this is a common mistake. People simply ignore the outcomes near the singularity, not thinking about what really happens there.
  • Add an area: This is a reasonable choice but you can’t apply it all the time. If you have the load on a small area simply model it this way. All is nice, and this solves the problem. Issues are of course with modeling which may not be very “practical”. You can do the same thing for supports – but it is a bit more tricky because of boundary conditions.
  • Model a fillet: I really dislike this. I think this is a blanket answer to the sharp “inside” corner problem. Usually, the answer goes like: “it’s impossible to make a perfect 90deg corner. There is always a small fillet – model it!”. I perfectly understand that this is true. However, practically speaking this is a complete utopia! If you have an element that is 10x10m and you need to analyze it as a whole, adding a 0.1mm fillet (with accurate mesh there!) isn’t all that great as a solution I would say! Sure there are cases when this is an only option, just don’t go there by default!
  • Make a smaller separate model: This makes sense in some cases. If you have a big model and there is a detail you need to check… just make a small accurate model and check this detail. Be aware however that usually, it’s pretty difficult to assign proper boundary conditions to such cut-out elements. You need to be very cautious here for sure!
  • Use nonlinear material: This is actually a great option. Stresses will be limited by yield, and you will simply get some plastic strain. Sure in place of a point load this strain can be very high, but in many cases still “acceptable”. It’s quite possible that this is the “cheapest” method when it comes to time, but of course, this also is something that you can’t use all the time.

Things to consider

It is easy to see that the problem is complicated – this is why there are so many approaches! Without a doubt each one of them is useful, simply otherwise they would not appear in all those articles (mine among them!).

I would say there are a few special cases where you need to be extra careful. The one I want to mention the most is fatigue! If you want to solve the fatigue problem – stress singularity will make your head spin! Simply put you can’t ignore it (since it is critical to safety!), and you won’t use yield (unless you want to check against low-cycle fatigue which may not be the goal).

This usually means, that when fatigue is involved those small fillets and modeling of areas on which load is applied really does happen in complex models. Again, it is worth mentioning that in many cases creating a separate more detailed model may be a good idea. Just be cautious about boundary conditions!

Summary

I will try to recap what I have written here:

  • Stress singularities are a result of simplified modeling (which is completely reasonable).
  • Making more accurate model will solve the problem (but requires time that sometimes will simply be too long!).
  • Making a smaller model with sufficient details may help. Care should be taken for boundary conditions in such case.
  • Outcomes “far enough” from the singularity are ok thanks to the Saint Venant’s Principle.
  • Ignoring outcomes in stress singularities seems a common approach. Sadly this shouldn’t be done, as usually the effects are there for real (they are simply overestimated). Ignoring the outcomes altogether in that region will be risky!
  • Usually using nonlinear material means that in singularity region material yields. This solves the “infinite stress” problem. However plastic strains in those regions can be high, and should be checked as well!

There is a spoiler as well. I’m thinking about a simplified method of dealing with this. I need to discuss it with a few people (that are smarter and more experienced than me!) and if it is any good I will write about it soonish : )

Do you want to learn more about FEA?

This is great! I’ve prepared a free FEA course! Subscribe below to get it:

Author: Łukasz Skotny Ph.D.

I have over 10 years of practical FEA experience (I'm running my own Engineering Consultancy), and I've been an academic teacher for a decade. Here, I gladly share my engineering knowledge through courses, and on the blog!

Read more

10 Lessons I’ve Learned in 10 Years!

Get Essential FEA Course for Free!

Join the discussion

Comments (34)

Keyur - 2021-11-24 10:14:05

Hello Lukasz,

Really nice article. I came here through you YT channel.
I have a question, if stress singularity occurs then what value of stress should we take as right one? I mean is there any critical distance from stress singularity point where we can approximate correct values of stress?
In my case I have a bonded joint with epoxy. And stress singularity occurs on certain elements only. When I ignore it and consider 1 or 2 elements away from it then it gives me some believable results. Am I doing right?

Reply
Łukasz Skotny Ph.D. - 2021-11-24 11:45:43

Hey Keyur!

First of all, welcome to the blog :)

As to your question, this is sadly not as simple. I mean, there is no "magic" distance where things are ok... especially since you want to know the "real value" near the singularity (since St Venant principle says that "sufficiently away" things are ok, but this DOES NOT work in the area of the stress singularity, and there stresses in reality still will be high (although maybe not as high as FEA shows you).

My usual response/advice would be to use nonlinear material and decently small mesh, but with epoxy, this may be tricky (I don't know the material model for that).

Apart from this, modeling the geometry more accurately may be a thing... but honestly, this is easier said than done in many cases. Cutting out a portion of the model and modeling it more accurately is a reasonable choice, but be sure you will get the load/boundary conditions right (and this may be difficult).

As you can see... there are no easy options here!

All the best!
Ł

Reply
ridho - 2021-11-30 08:45:13

hi lucas, as to your answer above, I want to ask if I use non linear material, then the stress will be limited by the yield strength of the material. if so, I still don't get the correct value of stress right?, so how to make decision whether the material is yielding or not after you use non linear material? what if the correct value is not as high as the material yield strength?

Best Regards
RIM

Reply
Łukasz Skotny Ph.D. - 2021-12-04 21:47:02

Hey!

Well... if you can allow yielding that is not a problem. And if you can't allow yielding (perhaps the material is brittle, or fatigue is a big factor)...then nonlinear material is not an option anyway, since you can't use the yielding in such case... then to assess the situation you would need a more accurate geometry model I think (and of course to mesh convergence).

All the best!
Ł

Reply
Thomas - 2020-12-16 10:41:20

Hey there,

Since the real world applications often helped me to understand the math which was originally developed to describe them, I hoped to find an "engineering" or " physical" explanation why a sharp inside corner causes stress singularities. I can follow the math but I don't fully understand it. It seems I need to continue being patient.

Then I'd like to add some thoughts I think are still missing from this discussion.
First let me describe my understanding of a stress singularity: At a point or an edge there exist a stress singularity if for an arbitrary threshold s_t > 0 you can find a domain around the edge/corner where the stresses
are greater than this threshold.
Now, a stress singularity can exist even for low loads in which case no plastic deformations occur least of all your structure fails. In this cases you can ignore the singularity and you are fine.
But what's the catch here? Is the math wrong? The singularity still exist in the mathematical model. And that's the point, in the model which brings simplifications. You can still find a domain in which the stresses are greater than s_a which shall be any admissible stresses (von Mises, ...).
What happens is that this area is very small. In my understanding it is so small, that inside this area it's no longer possible to view steel as a continuum. If you are on a small enough scale, you have to look at steel as a grid of atoms. So the assumption that your material is a continuum isn't valid any more meaning the math is still right but it fails to be an adequate description.

Some of you may have the question now. When is this domain so small? That's an question I can not answer. I know some persons who have enough experience and/or just "engineering guts" on which they can rely.

Maybe those thoughts help you, maybe not. Nevertheless stay curious.

Best Regards,
Thomas

Reply
Łukasz Skotny Ph.D. - 2020-12-16 23:47:32

Hey Thomas!

First of all, I'm not sure if there is a real life explanation for the inside corner thing. I'm still in search of one - that is for sure!

As to your description, I'm not sure this works like that. As far as I know, it has far more do to with crack mechanics. Simply put, the energy needed to develop a longer crack is still higher than the one released from the material when the initial small crack happened. And there is a limiting width of the crack, after which this is not true anymore, and then the crack propagates (this is Griffith's crack width, but I may be spelling the name wrongly).

I'm not super sure if going into the "atom direction" would be my call... but I'm way too weak in chemistry to have a say on this!

All the best!
Ł

Reply
Thomas Rau - 2020-12-29 14:32:08

Hey Lukuas,

Thanks for your answer. Let me know when you find one ;)

I don't know what happens in crack mechanics. I only have some experience in contact mecanics. If you press an elastic cylinder against an elastic surface, you get those stress singularities I described above.

Well, what model you need depends on your application: Which effects do you need to compute with which accurary?

Than a Happy New Year

Best regards,
Thomas

Reply
Łukasz Skotny Ph.D. - 2021-01-03 16:31:54

Indeed, in the end, this always depends on what you need to calculate and how accurately! Somehow a lot of folks I talked with assumed that "FEA" is "uniform" in some sense. By this, I want to say that the accuracy of FEA is somewhat independent of the user... it's either "good" or "bad" depending on what that particular person thought about FEA, but it's kind of constant (so it's always good or always bad).

While in truth, it's just a calculator! If you want accurate outcomes, do an accurate model and all that...

And of course, I will let everybody know when I will find the reasoning behind the inside corner :)

All the best!

Reply
Bala - 2020-11-14 23:33:09

Hello, I enjoyed learning this blog. I have one question. Why is it impractical to apply load or boundary condition to a small area? This is regarding the second solution "Add an area". Can you explain with an example please? Thanks!

Reply
Łukasz Skotny Ph.D. - 2020-11-15 09:39:17

What I meant is, that if you have a huge model, and you need to apply load to an area of 50x50mm this may require a super small mesh (compared to the model size) and will lead to a huge element count in general. And as such, I think it's not a very practical approach :)

All the best!
Ł

Reply
Venkat - 2020-10-21 17:12:44

I took rbe2 connection instead of bolt in nx12. Stresses are coming very high near spider connection. Is that real stresses?

Reply
Łukasz Skotny Ph.D. - 2020-10-23 14:32:19

Hey!

This is an impossible question - without knowing what you are modeling, how your model is done, etc. there is no way to give you an answer that will have a chance to be correct :(

Good luck in solving that issue!
Ł

Reply
Marcos Pereira - 2020-03-04 16:25:02

A good esplanation for the corner singularity can be found in this link. http://www.acin.net/2015/06/02/stress-singularities-stress-concentrations-and-mesh-convergence/

Reply
Łukasz Skotny Ph.D. - 2020-03-05 22:37:00

Thanks for the reference Marcos. Do you know if this blog is still active? It looks to me that the last post in FEA is from 2015...

Reply
Piotr Kucza - 2020-01-17 10:34:22

A headache is a good term.
By the way, I have just read other articles from your blog. Very nice frame, user-friendly language and explanations - professional job!

Best Regards, Piotr

Reply
Łukasz Skotny Ph.D. - 2020-01-18 09:36:07

Thank you Piotr!

I'm really glad that you like my work - it's very kind of you to say so :)
Ł

Reply
Piotr Kucza - 2020-01-16 17:17:43

Hi Lukasz,

I suggest to use hand calculations to deal with singularities (totally agree with Phill).
It's a best practise in many companies in the world. Furthermore, all FE codes are made with respect to the classical calculations (including theories and hypothesis).
If you provide results justification by using hand calculations you will never receive any questions.

Best Regards, Piotr

Reply
Łukasz Skotny Ph.D. - 2020-01-16 21:48:50

Indeed! Hand calculations can often save you a lot of headaches :)

All the best!
Ł

Reply
jeremy theler - 2020-01-15 12:13:20

I used to refer people to Nick's post https://nickjstevens.netlify.com/post/2019/stress-singularities/

I had forgotten about this article!

Reply
Łukasz Skotny Ph.D. - 2020-01-16 09:29:59

Yea, Nick is great :)

Reply
Stathis kardaris - 2019-03-22 10:26:07

Great tutorial Łukasz!

The solution i have found in case of stress singularities is to turn the stress values to "element mean" in port processor instead of "Nodal averaged stress" in order to "stretch" the stress results into elements instead of nodes. That solution eliminates the problem of stress singularity (of course still exists!) but in combination with relatively small elements in the area of interest sims to work.

Reply
Łukasz Skotny Ph.D. - 2019-03-22 14:20:18

Hey Stathis!

I'm not sure if that would completely solve the problem (as you yourself noted). I guess this also depends on what Ansys does with the outcomes (and which outcomes BTW) when you use "elements mean" option. Did you ever try to learn that? That would be interesting to learn :)

All the best, and thanks for posting!
Ł

Reply
Jurgen - 2018-05-19 21:17:47

Yes. That's the one. Thanks for your nice blog.

Reply
Łukasz Skotny Ph.D. - 2018-05-20 03:54:24

Hey Jurgen!

I'm really glad that you like it!

All the best
Ł

Reply
Alexander - 2018-05-18 07:50:04

To simple the scheme: there are only three variants
1. Ignore the singularity
2. Resolve singularity (it is yours 2-4)
3. Use nonlinear material

Reply
Łukasz Skotny Ph.D. - 2018-05-18 12:10:51

Hey Alex!

More or less you are right. I will just add that "ignoring the problem" rarely is the best solution, but sometimes is a reasonable approach. It would, however, require some knowledge from a person ignoring the problem : )

All the best
Ł

Reply
LUIZ HENRIQUE ECKSTEIN - 2018-05-12 01:17:37

Beginners like me, it's a bit difficult to understand stress singularity, but after understanding it, the world change to better. This article goes beyond, It helps us understand the particularity (superficial sometimes is essential) and gives some tricks to find alternatives like "look for a sister".
Good article.

Luiz Eckstein

Reply
Łukasz Skotny Ph.D. - 2018-05-12 04:27:20

Hey Luiz!

I'm really happy that you like it! Understanding stress singularity indeed is great, but I will raise the bar higher for you - understanding nonlinear FEA changed my career - tackle with that, it's really worth it!

All the best
Ł

Reply
Henrik Sönnerlind - 2017-12-22 14:48:31

Hi Lukasz,

Always interesting to read your blogs. It seems that we have similar ideas about several topics. Here is a blog post I wrote on the same topic a couple of years ago:

https://www.comsol.com//blogs/singularities-in-finite-element-models-dealing-with-red-spots

Regards,
Henrik

Reply
Łukasz Skotny Ph.D. - 2017-12-24 13:04:04

Hey Henrik!

I'm glad that you like my blog - very nice to hear, especially from you!

I will definitely read what you have written - great to read others opinions on a subject - it nicely broadens perspective!

All the best
Ł

Reply
Phill Le Mottée - 2017-12-22 06:30:12

Often singularities once understood can be rationalized and identified as specific contact or connections. In these cases the straight forward approach is to take loads from the model (grid point force, spc force or indeed applied load ) and deal with the local issue using classical hand analysis. This is frequently cheaper and far more efficient on budget and schedule. Too many fea focussed engineers try too hard to stress an item by fea colours rather than apply logical rationalisation and time proven classical hand analysis.
A typical example is where in a bolted joint under extreme loads in shear one bolt in fea is assumed to fail and indicates a singularity whilst adjacent bolt is low loaded. This is impossible in practice with all things equal the "give" due to elastic strain will cause load shed to redistribute the load in the joint.
The effort I've witnessed engineers go to try and "model it out" is insane. So the message is "STEP BACK AND THINK ABOUT THE REAL LIFE PROBLEM WITH A PRACTICAL HEAD"
This applies in some form to many singularity issues and is prominent at interfaces that do not account for material abutment.
This is an important subject and often poorly communicated concepts applied offering over complex "solutions"

Reply
Łukasz Skotny Ph.D. - 2017-12-22 10:11:13

Hey Phill!

This is a great point! Of course, this application has limits, but overall I agree. A lot can be verified with simple hand calculations and this is usually a great thing to do! Thank you for bringing this up - a really valuable comment for sure!

All the best!
Ł

Reply
J. Voermans - 2017-12-20 11:24:20

This is a very nice book on FEM, espcially part 3.

Plates and FEM - Surprises and Pitfalls

Enjoy reading!

Reply
Łukasz Skotny Ph.D. - 2017-12-20 11:30:41

Hey!

Do you mean this book: http://www.springer.com/la/book/9789048135950 ?

Thanks for suggesting it - to be honest, I haven't heard about it before!

All the best
Ł

Reply

Sign up to newsletter

and get Free FEA Course!