A puzzling result

Hi all,
A question for those more experienced than I…
(Running ccx_static V2.21 on Windows)
I have been running wing models under flight pressure loads using different element type combinations. Before I go into a long winded description I noticed two things:
First: The same model if run more than once in the same DOS command session will have vastly different results.
Second: The model solution seems to go divergent when the shell element thickness gets less than about 1/70 of the shell element’s width/length. (I did try doubling the mesh density for the same shell thickness with no better results)

The model I am showing here is using C3D20 spar cap elements and S8 elements for ribs, shear webs and skins. I am constraining (1-3) the model at center section of the front an rear spar. As I varied the skin thickness of the skins, I started to see divergent solutions (quite by accident)

This is a screen shot of a run that appears to have the expected stress distribution for the load applied. (No detailed verification yet)

This next screenshot is the SAME model, but run a second time in the same DOS command prompt. The results are SO different I am wondering if ccx_static is re-using transient data from the previous run.

I tried a new DOS command session and the results matched the first run.
So finally, my first question:
Are there temporary files being used from run to run in a basic ccx_static analysis? I could not find reference to this in the docs.

And my second question:
I only discovered this weird behavior as I was thinning the skins on my model. Is there a practical limit for shell thickness as a ratio of the elements area?

Thanks in advance for any insight…


Can you share the .inp file ? It’s hard to say what happens without it.

There’s no shared data between independent analyses (the same input deck submitted multiple times or different input decks without explicit references to each other). Try with a different solver (you can choose from Spooles, PaStiX and Pardiso among the others) - such strange behavior is often solver-specific.

Thankyou !

I re-ran a few of the models trying different solvers.
PaStiX exhibited the same weird behavior (Is that the built-in solver used when not specified? I didn’t think it was…)
However, Spooles gave consistent (and good) results when run multiple times. In addition, Spooles did not exhibit the same divergent behavior for thinner skins, which is good, because the model was breaking down when I got to typical aluminum skin thicknesses (.0031 In or 0.8mm) when using the default solver.

Thanks again for your help.


1 Like

PaStiX is currently default but there are still some issues with it, especially in dynamic analyses. Spooles can be more reliable but Pardiso is also a very good (and fast) alternative.

I will try Paradiso out as well.

I was looking at the results of the last run using ProProMax, and YIKES I noticed that my Spar caps are floating off of the shear webs. This does not happen in Nastran… and I know the nodes are shared on the element boundaries.

I am obviously doing something wrong…I find it hard to believe that I cannot connect the Shear web as a S8 element along its edge to a C3D20… or is that a big no-no in Calculix.

Run a frequency analysis to see what is flying off. You may need a tie constraint there.

1 Like

Sorry to waste your time.
Dumb user error. I was not requesting all the correct output data in my *EL FILE and *Node FILE.

Yep, this is a known issue with pastix. Follow @Calc_em 's recommendation. Ideally, pardiso if you can.

Pastix is unreliable by default (especially for high aspect ratios like this) but it’s more robust if you turn off mixed precision which you can do with an environment variable PASTIX_MIXED_PRECISION = 0