I have recently discovered the great software that is CalculiX and have been following rsmith’s excellent tutorial series on using CalculiX for FE analysis on a composite sandwich using solid elements.
I regularly need to analyze composite sandwich structures, so the series is really directly related to what I aim to do. It also helped me a lot understanding the workflow of using CalculixX, the interaction between cgx and ccx, etc.
I have been trying to build a sandwich in a slightly different manner, however, as that is more convenient for the type of things I want to do: create a cross section for the sandwich first, sweep it over a certain length and apply a load on one of the skins of the sandwich.
Most things seem to work, but I somehow cannot get a set created with the surfaces that form the appropriate skin. The issue seems to be somewhere here:
# topface seta faces f all rep faces enq faces topface rec _ _ z3 0.1 a
I created an .fbd file and an .inp that directly reflects my approach for a simple example. I would appreciate any pointers to what I’m doing wrong here! Sorry if the answer is obvious, still learning…
The .FBD file:
valu L 500 valu W 500 valu H 100 valu t 10 valu z0 0 valu z1 t valu z2 - H t valu z3 H # btm skin pnt p0 0 0 z0 pnt p1 0 W z0 pnt p2 0 W z1 pnt p3 0 0 z1 line l0 p0 p1 20 line l1 p1 p2 4 line l2 p2 p3 20 line l3 p3 p0 4 seto surfbtm surf surfbtm l0 l1 l2 l3 setc seto swpbtm swep surfbtm swpbtm tra L 0 0 20 setc # core pnt p4 0 0 z1 pnt p5 0 W z1 pnt p6 0 W z2 pnt p7 0 0 z2 line l4 p4 p5 20 line l5 p5 p6 10 line l6 p6 p7 20 line l7 p7 p4 10 seto surfcore surf surfcore l4 l5 l6 l7 setc seto swpcore swep surfcore swpcore tra L 0 0 20 setc # top skin pnt p8 0 0 z2 pnt p9 0 W z2 pnt p10 0 W z3 pnt p11 0 0 z3 line l8 p8 p9 20 line l9 p9 p10 4 line l10 p10 p11 20 line l11 p11 p8 4 seto surftop surf surftop l8 l9 l10 l11 setc seto swptop swep surftop swptop tra L 0 0 20 setc # elements elty all he20r mesh all neigh all 1e-5 abq tie # supported nodes seta nodes n all enq nodes sup1 rec 0 _ z0 0.1 a enq nodes sup2 rec L _ z0 0.1 a # topface seta faces f all rep faces enq faces topface rec _ _ z3 0.1 a send all abq send swpbtm abq nam send swpcore abq nam send swptop abq nam send sup1 abq nam send sup2 abq nam send topface abq nam
And the .INP file:
*HEADING Sandwich *INCLUDE, INPUT=all.msh *INCLUDE, INPUT=ties.sur *INCLUDE, INPUT=neigh.con *INCLUDE, INPUT=swptop.nam *INCLUDE, INPUT=swpcore.nam *INCLUDE, INPUT=swpbtm.nam *INCLUDE, INPUT=sup1.nam *INCLUDE, INPUT=sup2.nam *INCLUDE, INPUT=topface.nam *MATERIAL, NAME=topskin *ELASTIC, TYPE=ISO 32000,0.25,5000 *DENSITY 2e-09 *MATERIAL, NAME=btmskin *ELASTIC, TYPE=ISO 34000,0.25,5000 *DENSITY 2e-09 *MATERIAL, NAME=core *ELASTIC, TYPE=ISO 14000,0.25,5000 *DENSITY 1.6e-09 *SOLID SECTION, ELSET=Eswptop, MATERIAL=topskin *SOLID SECTION, ELSET=Eswpcore, MATERIAL=core *SOLID SECTION, ELSET=Eswpbtm, MATERIAL=btmskin *BOUNDARY Nsup1,1,2,3 *BOUNDARY Nsup2,1,2,3 *STEP *STATIC ** Loading 5kN/m2 *DLOAD Stopface,P5,0.005 *NODE FILE U,RF *EL FILE E,S *END STEP