SimScale CAE Forum

FEA boundary conditions - Calculix vs CodeAster


Many new users have a general question related to boundary conditions for structural analysis: “I want to apply a force to a surface but I cannot select any surfaces to apply a force on. I can only select nodal load, but cannot see the force boundary condition.”

The following information will help you.

Reason for Basic Boundary conditions:
1.SimScale provides user with functionality to use two types of solvers for Structural analysis.

2.Type ‘Static analysis’ is a basic setup which has Calculix running as a FEA solver. The option of boundary conditions provided are as follows:

3.Type ‘Static analysis - advanced’ is a more advanced which has CodeAster as the backend FEA solver. The option of boundary conditions provided are as follows:

4.Since you chose the analysis type to be ‘Static analysis’, you can only view nodal load.

Therefore, in order to use more variety of boundary conditions, select ‘Static analysis - advanced’ to be the analysis type.

Update [July 12th 2017]

With today release we made some changes to the default analysis types, their naming and visibility. From now on the default static and dynamic analysis types have all available load and constraint options as they are now based on the Code-Aster solver and the previous advanced analysis types. The CalculiX-based analysis types are still available via the solver perspective choosing the Calculix solver. For more details see the release notes.

'Lightsource Assembly' simulation project by cstatz
'Static Analysis of a Wrench' simulation project by rakamath
'stacker Mod1' simulation project by hksuthar
'Sporte' simulation project by carlosfloreshz
'tubejoint' simulation project by rking
Setting boundary conditions for load
'New Pump Bracket' simulation project by mennelli

Hi @mkhan,

Thanks for the explanation but since the “Static Analysis” using the Calulix solver seems very limited what is the purpose or benefit of having it in Simscale? It seems confusing to have the two options when one is so limited.



@cjquijano SimScale has an idea to separate the Analysis type for beginners and more advanced users. Therefore, we include CCX (Calculix) for the ‘Static analysis’ which in my opinion is sufficient for the basic user. It also allows a pressure boundary condition which is normally used in the first tutorials for any Solids mechanic FEA simulations.

Another advantage of CCX is that it is much faster than CodeAster. Hence, if we have a basic problem to solve we can always choose Static analysis for a quick result.

Lastly, in comparison to Calculix, CodeAster requires two solids whenever some linear contact i.e. bonded, sliding needs to be prescribed. However, CCX does not need any geometry modification and can also solve bonded contact between two faces of a single solid.


Hi @cjquijano,

@mkhan outlined why those solvers are right now both available. However I agree very much with you that having (at least on the first glance) redundant functionality indeed is confusing to the user, so we’re looking into ways how to structure this better and present it clearer. Relevant questions from my perspective are:

  • How helpful/relevant would you say is having two different implementations of the same analysis type available? We had situations where users appreciated that they could run the same simulation setup with two different solvers to gain confidence into the setup/results. So validation/benchmarking is made simple. However again, that comes for the price of presenting two different implementations that might be hard to understand in the beginning.

  • Let’s assume we come to the conclusion, that having two different implementations makes sense, could you think of a clearer/better/easier way present them in the user interface?

Moving forward there will be more “overlapping” functionality in SimScale, so this situation might occur again. Very interested in your opinion/ideas!




Hi @dheiny,
Thanks for following up on this. I have found this confusing so I am sure other people with less experience also find the multiple options confusing as well.

The above screenshot show the current options under Analysis Type. For your example of someone wanting to compare two different solvers it’s probably safe to say this is not a beginner. So with your current layout they can simply go to the Solver Perspective and choose the solver in that tab. This part of the layout work for me.

What would make more sense to me would be to change the options under the Physics Perspective, Solid mechanics. Here I would show only Static Analysis, Dynamic Analysis, Modal Analysis, Frequency Analysis, and Harmonic Analysis.

Once you click on Static Analysis, in the properties area I would have the solver option as well as the nonlinear analysis option. In the right panel I would have a side by side table listing the pros and cons of each solver type.

In my mind anyway, this makes sense. :smile:



I agree with @cjquijano. It makes more sense to pick the physics, then pick simple/advanced, especially since there is a difference in BC capability. Or, just offer “Statics” under Solver option. Then give all BC options under “Model”, then put the solver option further in the workflow, for example at Numerics. If it’s done in this order, Simscale might also be able to down-select the solver, if for example they use a BC that is only supported by one solver type (Face>Code Aster). This takes away the decision from the novice user.

@dheiny Fast forward when Simscale has many “overlapping” functionalities, you’ll want the workflow to present all possible options, thus allowing the user to choose what they want. Let Simscale do the “solver options filtering” on the fly, and in the background, IMHO. Superusers will spend the time to learn whats going on in the background, while casual analysts will feel empowered and confident. Just my two cents!

Also, is there any way to have the materials transfer over from CCX to CodeAster? I just went through swapping solvers (hence me finding this convo, haha). Not a big deal with 1 volume, but it could be a little discouraging if it were a large assembly.