Mesh resulting from expanded beam elements


¿Could be possible to export the resulting mesh from the expansion of beam or shell elements as a new
solid mesh?


You can do this in PrePoMax using File → Export → Deformed mesh *.inp

1 Like

I knew about that option but I assumed that the exported mesh was the deformed beam or shell elements.
Thank you Calc_em

No, it exports solids if output=3D. I encountered that when I was preparing a nonlinear shell buckling tutorial.

1 Like

it’s also capable in CGX, an option keyword with *No Analysis and Output=3D then export the solid mesh by send command.

Some limitation is in expanded shell element with Composite options, it seems the common nodes are duplicated, and the element is separate. However, these problems can be easily to fix by reopening the model in CGX and merging the nodes to make it continuous.

1 Like

That’s not a limitation, that’s a necessity when dealing with different materials in one mesh like composites or sandwiches.
If you have elements with different material properties that share nodes, you will see stress “bleed through” because of nodal averaging.

Example sandwich with bleed-through because of shared nodes. This particular sandwich has aluminium skins and a core from PMI foam (Rohacell 71IG).

This image does not represent physical reality!
First, the modulus of the skins is approximately 2400 times larger than that of the foam core. Since both skin and core experience the same strain on the interface, the core should not show much stress at all.
Second, this is the clamped end of a sandwich under bending. So the top skin is loaded in tension and the bottom skin in compression. But the foam near the skins shows opposite stresses. That can’t be right.

Example using separate nodes and tie constraints to prevent bleed-trough:

Regarding the computational inpact;

Both simulations have 4320 elements. The one with the tie constraint obviously has more nodes; 22605 versus 20247.
The number of equations is 59640 in both cases.
The one with the tie constraints has more nonzero lower triangular matrix elements; 5935245 versus 4629669.
Total runtime (preprocessor+solver) on my machine is 15 seconds for shared nodes versus 24 seconds for tied. The increase is mostly in the preprocessor; the solver time only increased by 3.5 seconds. Memory use is approx. 5.4 MiB more for the tied version.

1 Like

Indeed, in shell models the equal displacement constraint generates internally for sharing common nodes to eliminate averaging by extrapolated in post-processor.

However, not all composite options are to be used in composite structures. One advantage’s for layering purpose to improve accuracy and avoid locking.

1 Like

hi, i found a workaround in case of composite structure but in PrePoMax instead. Each layer is grouping by part after exported, and it can be hide, select and assign tied contact between common face.

however, i did not find merging nodes features for case of non-composite structures (i.e the same material for all layers) as available in CGX…

1 Like

I have seen some users prefer working composites directly with solids.
¿Would tie as suggested by xyont be an equivalent solution?
It would safe a lot of work not to write all the equations for each pair of nodes.

In case is not, ¿Is there a way to export the equations too?

I’m one of the users that prefers to use solids rather than shells for composites. And tie constraints work perfectly well in that case.

But instead of laboriously generating them all by hand, I use e.g. neigh all 1e-4 abq tie in cgx to generate all of them in one go. The resulting DCF* and ICF* files are concatenated into ties.sur and discarded.
The file ties.sur is then included in the solver job file.

1 Like

currently, i’m rare in modeling composites structures, so merging nodes and make it continuous mesh is frequently used.

in case of composite structures and conformal mesh as example above, equal displacement constraint seems effective one in solver. Tie constraint or areampc command in CGX also, even it may not as fast due to weighted factors. Non-conformal mesh required to investigate further as notify in documentation,

The user should check his calculation for unrealistic high stresses at the junctions and eventually change the formulation on such locations to ADJUST=YES. If the calculation does not run anymore he might modify the mesh locally or use the ’equ’ option for that location.

Tied contact type is general approach and probably can work in any case, but heavy in solver process due to large integration point generates. It’s about 100 points for a single face of element.

1 Like

that’s advanced ones in CalculiX over another i.e Abaqus or Ansys. Shell element treated as solid element internally by the solver, not shell like solid (continuum) element or classical composite shell element as another.

Due to solid element being used in CalculiX, it seems will perform better for thick geometry, stress triaxiality and punching shear conditions.

1 Like

It really depends on the case. Sometimes composite solids are better because there’s contact, important through-thickness behavior or connection with solid components (like in pressure vessels). Abaqus also has continuum shell elements that are something between shells and solids. In their case, the 3D volume is discretized but shell element formulation is used.

Actually, it is advised in Abaqus to use shell (or continuum shell) elements in most cases of composite modeling and choose solids only when needed (normal stresses can’t be ignored, accurate interlaminar stresses near complex geometry are needed and so on).

There are even so-called continuum solid shell elements that are shell-like but have no rotational DOFs and support a 3D (not plane) stress state. The thickness direction is treated differently.

Of course, CalculiX is different because of the expansion of shells to solids but some of those remarks may still apply.

1 Like

Seems there are more options than I thought.

Working composites directly with solids may provide some advantage when:

-Normal stresses can’t be ignored.
-Accurate interlaminar stresses near complex geometry are needed.
-Contact between parts.(BUG: CONTACT ELEMENTS breaks displacement on composites. · Issue #56 · Dhondtguido/CalculiX · GitHub)
-Existance of BC that are known to be difficult to apply to shells.

Conformal meshes

C1- If one wants to work with solids and avoid bleed through because of nodal averaging , Tie nodes with cgx.

It generates all of them in one go.

neigh all 1e-4 abq tie

The resulting DCF* and ICF* files are concatenated into ties.sur and discarded.
The file ties.sur is then included in the solver job file.

C2-Merge nodes after expansion if nodal averaging is not a concern. It can improve accuracy of non-composite shell models and avoid locking.

(One could always look at the integration points if averaging is a concern)

Non-conformal meshes

NC1-Tie constraint or areampc command in CGX also, even it may not as fast due to weighted factors.

Thank you @Calc_em , @rsmith and @xyont for your assistance.

With composites, out-of-plane loads are one of the things that should never be ignored. Unless they’re really small.

This! While I’ve tried to create a sandwich by connecting a solid core to a shell skins, I’ve never gotten in to work.
So that’s my main reason to model the skins in solid elements as well.

Check the BUG report. There seems to be a workaround. :smiley:

interesting to know how Abaqus to model of continuum shell, i can not imagine how complex is in. Many problems occur in Abaqus in modeling, specifically at intersection part.

many thanks to knot and constraint in CalculiX which treat all connection carefully by internal solver. Further use of tie constraint or contact also possible at some condition if required.

Also, thanks @Disla for bringing an interesting topic, this approach can fill the gap in others pre-processor with lack of capability in converting shell to solid by normal extrusion of complex Nurbs surface.

probably it uses tie constraint instead and make conflict with another constraint exist in model,

try switching to tied contact type to solve the problems.

Unfortunately not posted in here, or mirroring at least. Problem is specific case of contact solid and shell with composite options.

It seems the problem related to output display results only, not in the solver calculation. Request output in Contact elements activated lead to canceling the output of composite shell part.