(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');
3 minutes read
31 July 2016

Subcase – your best friend in speeding up analysis!

3 minutes read

In every analysis, there is this simple “linear zone” at the beginning that does not require a lot of our attention, but then the nonlinear effects start to take place and problems get more complicated. Of course, we want to have a small load increment as reasonable in the “nonlinear zone” while it would be ideal to go through the “linear zone” without many increments… as they give no real value and take away precious computing time. Usage of subcases is a great solution just for that problem!

I remember that when I first started my Ph.D. I had to simulate numerically the elastic buckling of a shell. Such a problem is very sensitive to load increment (basically it require very small increments near the load where buckling takes place). All the automatic algorithms I knew of worked like this:


 The step was almost linear (great!) increase load increment

→ This step is also linear: increase load increment even more!

 We are doing so fine: let’s increase the load increment!

→ Ups… load increment is too high to converge near the buckling load!

So instead of helping, those automatic algorithms actually made it impossible to do the calculations I wanted to do! The only solution I knew back then was to set a very small, constant load increment and wait for the analysis to finish… it took ages, as the solver went through a very long linear part of the model at a very small pace. The stability plot from such analysis would look like this:


Look at all of the steps that were made on the linear part of the chart… basically wasting computing time!

There is a solution to this problem, however: Subcases! Using subcases takes some predictions at the beginning, but it’s easier and easier with practice. Let’s go with the previous example: I have two “zones” in my model “linear zone” and “nonlinear zone”. I assume where the linear zone will end and define a subcase with a load of that value (well a bit less to be precise), then I make a second subcase with the final load (you may have many subcases and I often use more than 2 but everything stays the same). Since each subcase has its own case control I can “order” the solver to use big load increments in the first subcase, and then small load increments in the second subcase… in other words, I get what I wanted, which looks like this (and saves around 40% of computing time for the same result!):


Subcases are a very useful tool when computing time is an issue. I must admit that defining subcases in Femap is a bit counter-intuitive, so I have made a video tutorial showing how to define them, and how they work.

Have a good one!


You can learn even more!

Definitely check out my FREE FEA essentials course. You can get it by subscribing below.

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!

Comments (2)

deva - 2017-08-15 18:11:46

useful information. thanks

Łukasz Skotny Ph.D. - 2017-08-15 18:46:59

Hey, Deva!

Thanks, I'm glad you like the post :)

All the best


Sign up to newsletter

and get Free FEA Course!