Creating membrane elements

Hi,

I need to perform FSI simulations on a lid-driven cavity (here an example of the configuration). I use CalculiX to compute the structure part of the problem, preCICE for the coupling and an in-house code for the CFD part.

To model the lid, I wish to use a *MEMBRANE SECTION. The initial mesh is generated using the following script using cgx:

# Define side length
valu c 1.0

# Define points and line to generate the geometry
pnt p1 0.0 0.0 0.0
pnt p2 0.0 0.0 c
line l1 p1 p2 1
swep all new tra c 0 0

# Group all sides together
seta sides l l1 L001 L002 L003

# Generate the mesh
div sides 32
elty all qu4
mesh all

# Group all nodes together
seta nodes n all

# Group nodes by boundary conditions
enq nodes right rec c _ _ 0.0001
enq nodes bottom rec _ _ c 0.0001
enq nodes left rec 0.0 _ _ 0.0001
enq nodes top rec _ _ 0.0 0.0001
enq nodes fsiinterface rec _ 0.0 _ 0.0001

# Write all nodes to their respective files
send all abq
send right abq nam
send left abq nam
send top abq nam
send bottom abq nam
send fsiinterface abq nam

# Inspection with cgx
view elem
plot f all

The mesh is fed to ccx using another script and I define the element type here:

********************************************************
** MATERIAL MODEL
********************************************************
*MATERIAL,NAME=LID
*ELASTIC, TYPE=ISO
250.0,0.3
*DENSITY
500.0
*ELEMENT, TYPE=M3D4, ELSET=Eall
*MEMBRANE SECTION, ELSET=Eall, MATERIAL=LID
0.0002

This code creates the following error:

 *ERROR reading *MEMBRANE SECTION: *MEMBRANE SECTION can
        only be used for membrane elements.
        Element            1  is not a membrane element.
 *INFO reading *STEP: nonlinear geometric
       effects are turned on
 
 *ERROR in gen3delem: first thickness
        in node            1  of element            1
        is zero

When checking the .msh file, the element type chosen by cgx is TYPE=S4. When replacing, the S4 type with M3D4, I don’t get any errors. The mesh generation script works fine if I use *SHELL SECTION as S4 elements are used for shells.

I can’t find any information on how to generate membrane elements from cgx in the documentation. What is the usual procedure to define a membrane properly?

Feel free to ask for additional information if you need it. I will continue to search for a solution.

Thank you in advance for your help.

it seems setting as membrane element type not yet supported in CGX, maybe by adding ‘m’ for this purpose like elty all qu4m

Thanks for the answer, however there is no such thing as a qu4m element and cgx returns an error. I forgot to mention that I use cgx/ccx v2.20.

Note that setting M3D4 manually in the .msh file works fine, but I would like to not myself.

Since membrane elements are not listed under elty in the manual:

at last an attribute describing the mathematical formulation or other features (c: axisymmetric, e: plain strain, s: plain stress, u: unstructured mesh, r: reduced integration, i: incompatible modes, f: fluid element for ccx, t: initial temperatures are interpolated linearly within the tet element (ccx:C3D10T))

we can assume they aren’t currently supported. You could ask @klaus.wittig to make this improvement in cgx.

Alright thank you for the very quick answer.