CFVR7612 - Solid to Shell: Irregular mesh
Test of Solid to Shell utility on an irregular mesh.
Results obtained from a SOLID95 model with tetrahedral elements are compared with a SHELL281 elements model. The models are equivalent: rectangular slab with all the degrees of freedom restrained on two adjacent sides.
The load is an acceleration of 10 m/s2 on the three directions (X, Y and Z).
Element types used in the model: SOLID95, SHELL281, MESH200 Needed CivilFEM Modules: |
|
| Model Statistics | |
| Number of elements | 5467 |
| Number of nodes | 8631 |
| Number of civil materials | 3 |
| Number of cross sections | 0 |
| Number of shell vertices | 2 |
Log file: CFVR7612.DAT
FINISH ~CFCLEAR,,1 NomFile='CFVR7612' /TITLE, %NomFile%, Solid to Shell: Irregular mesh ! --------------------------------------------------------------------------------- ! Model definition ! --------------------------------------------------------------------------------- ! CivilFEM Setup: Units ~UNITS,SI ! Set International System units /PREP7 ! Preprocessor ! -------------------------------------------------- ! Element type ET,1,SOLID95 ET,2,SHELL281 ! Materials ~CFMP,1,LIB,CONCRETE,EC2,C20/25 ~CFMP,2,LIB,REINF,EC2,S400 ! Solid Modeling Length = 2.0 Width = 1.0 Thickness = 0.30 El_Size = 0.10 MC = 0.05 Z3 = 5*Thickness ! Model 0: Shell ~SHLRNF,1,Thickness,1,2,MC,0.0,0.0,0.0,0.0,0,0.0,45.0 ~BMSHPRO,10,SHELL,1,1,1,1,281,,,,Shell 1 ! Model 1: Solid45 NREAD,NL7612,txt EREAD,EL7612,txt ! Boundary conditions NSEL,S,LOC,X,0 NSEL,A,LOC,Y,0 D,ALL,ALL,0 NSEL,ALL ! Solid To Shell Model 1 NSEL,S,LOC,Z,Z3-Thickness/2,Z3+Thickness/2 ESLN,S CM,ELEM_M1,ELEM NSEL,S,LOC,Z,Z3+Thickness/2 CM,NODE_M1,NODE ~SD2SH,NODE_M1,ELEM_M1,,,2,MC,,,0.01 ! Change element axis LOCAL,11 ESEL,S,ENAME,,181 ESEL,A,ENAME,,281 NSLE,S EMODIF,ALL,ESYS,11 ALLSEL ! Loads and solve /SOLU ACEL,10,10,10 ALLSEL SOLVE /POST1 !-------------------------------------------------------------------------------------- ! DATA CHECK !-------------------------------------------------------------------------------------- ! Data comparison number NComp = 8*4 NComp_ch = 0 ! Marix dim. *DIM,LABEL,CHAR,Ncomp,1 *DIM,LABEL_CH,CHAR,Ncomp_ch,1 *DIM,VALUE,,Ncomp,3 *DIM,VALUE_CH,CHAR,Ncomp_ch,3 *DIM,TOLER,,Ncomp,2 ! Labels group = 0 *DO,II,1,4 LABEL(group+1) = 'TX' LABEL(group+2) = 'TY' LABEL(group+3) = 'TXY' LABEL(group+4) = 'NX' LABEL(group+5) = 'NY' LABEL(group+6) = 'MX' LABEL(group+7) = 'MY' LABEL(group+8) = 'MXY' group = group + 8 *ENDDO ! Correct data, obtained data !-------------------------------------------------------------------------------------- ~CFSET,,1 group = 0 Node1 = NODE( 1.0275,0.54307,0) Node2 = NODE(0.98656,0.64038,0) Node3 = NODE( 1.0886,0.63862,0) NSEL,S,NODE,,Node1 NSEL,A,NODE,,Node2 NSEL,A,NODE,,Node3 ESLN,S,1,CORNER elemn1 = ELNEXT(0) ~CFGET,VALUE(group+1,1),ELEMENT,elemn1,FORCE,TX,I ~CFGET,VALUE(group+2,1),ELEMENT,elemn1,FORCE,TY,I ~CFGET,VALUE(group+3,1),ELEMENT,elemn1,FORCE,TXY,I ~CFGET,VALUE(group+4,1),ELEMENT,elemn1,FORCE,NX,I ~CFGET,VALUE(group+5,1),ELEMENT,elemn1,FORCE,NY,I ~CFGET,VALUE(group+6,1),ELEMENT,elemn1,FORCE,MX,I ~CFGET,VALUE(group+7,1),ELEMENT,elemn1,FORCE,MY,I ~CFGET,VALUE(group+8,1),ELEMENT,elemn1,FORCE,MXY,I ALLSEL,ALL Node1 = NODE( 1.0275,0.54307,Z3) Node2 = NODE(0.98656,0.64038,Z3) Node3 = NODE( 1.0886,0.63862,Z3) NSEL,S,NODE,,Node1 NSEL,A,NODE,,Node2 NSEL,A,NODE,,Node3 ESLN,S,1,CORNER elemn2 = ELNEXT(0) ~CFGET,VALUE(group+1,2),ELEMENT,elemn2,FORCE,TX,I ~CFGET,VALUE(group+2,2),ELEMENT,elemn2,FORCE,TY,I ~CFGET,VALUE(group+3,2),ELEMENT,elemn2,FORCE,TXY,I ~CFGET,VALUE(group+4,2),ELEMENT,elemn2,FORCE,NX,I ~CFGET,VALUE(group+5,2),ELEMENT,elemn2,FORCE,NY,I ~CFGET,VALUE(group+6,2),ELEMENT,elemn2,FORCE,MX,I ~CFGET,VALUE(group+7,2),ELEMENT,elemn2,FORCE,MY,I ~CFGET,VALUE(group+8,2),ELEMENT,elemn2,FORCE,MXY,I ALLSEL,ALL group=group+8 Node1 = NODE(1.0275,0.54307,0) Node2 = NODE(1.0886,0.63862,0) Node3 = NODE(1.1320,0.53934,0) NSEL,S,NODE,,Node1 NSEL,A,NODE,,Node2 NSEL,A,NODE,,Node3 ESLN,S,1,CORNER elemn1 = ELNEXT(0) ~CFGET,VALUE(group+1,1),ELEMENT,elemn1,FORCE,TX,I ~CFGET,VALUE(group+2,1),ELEMENT,elemn1,FORCE,TY,I ~CFGET,VALUE(group+3,1),ELEMENT,elemn1,FORCE,TXY,I ~CFGET,VALUE(group+4,1),ELEMENT,elemn1,FORCE,NX,I ~CFGET,VALUE(group+5,1),ELEMENT,elemn1,FORCE,NY,I ~CFGET,VALUE(group+6,1),ELEMENT,elemn1,FORCE,MX,I ~CFGET,VALUE(group+7,1),ELEMENT,elemn1,FORCE,MY,I ~CFGET,VALUE(group+8,1),ELEMENT,elemn1,FORCE,MXY,I ALLSEL,ALL Node1 = NODE(1.0275,0.54307,Z3) Node2 = NODE(1.0886,0.63862,Z3) Node3 = NODE(1.1320,0.53934,Z3) NSEL,S,NODE,,Node1 NSEL,A,NODE,,Node2 NSEL,A,NODE,,Node3 ESLN,S,1,CORNER elemn2 = ELNEXT(0) ~CFGET,VALUE(group+1,2),ELEMENT,elemn2,FORCE,TX,I ~CFGET,VALUE(group+2,2),ELEMENT,elemn2,FORCE,TY,I ~CFGET,VALUE(group+3,2),ELEMENT,elemn2,FORCE,TXY,I ~CFGET,VALUE(group+4,2),ELEMENT,elemn2,FORCE,NX,I ~CFGET,VALUE(group+5,2),ELEMENT,elemn2,FORCE,NY,I ~CFGET,VALUE(group+6,2),ELEMENT,elemn2,FORCE,MX,I ~CFGET,VALUE(group+7,2),ELEMENT,elemn2,FORCE,MY,I ~CFGET,VALUE(group+8,2),ELEMENT,elemn2,FORCE,MXY,I ALLSEL,ALL group=group+8 Node1 = NODE(1.0275,0.54307,0) Node2 = NODE(1.1320,0.53934,0) Node3 = NODE(1.0666,0.44625,0) NSEL,S,NODE,,Node1 NSEL,A,NODE,,Node2 NSEL,A,NODE,,Node3 ESLN,S,1,CORNER elemn1 = ELNEXT(0) ~CFGET,VALUE(group+1,1),ELEMENT,elemn1,FORCE,TX,I ~CFGET,VALUE(group+2,1),ELEMENT,elemn1,FORCE,TY,I ~CFGET,VALUE(group+3,1),ELEMENT,elemn1,FORCE,TXY,I ~CFGET,VALUE(group+4,1),ELEMENT,elemn1,FORCE,NX,I ~CFGET,VALUE(group+5,1),ELEMENT,elemn1,FORCE,NY,I ~CFGET,VALUE(group+6,1),ELEMENT,elemn1,FORCE,MX,I ~CFGET,VALUE(group+7,1),ELEMENT,elemn1,FORCE,MY,I ~CFGET,VALUE(group+8,1),ELEMENT,elemn1,FORCE,MXY,I ALLSEL,ALL Node1 = NODE(1.0275,0.54307,Z3) Node2 = NODE(1.1320,0.53934,Z3) Node3 = NODE(1.0666,0.44625,Z3) NSEL,S,NODE,,Node1 NSEL,A,NODE,,Node2 NSEL,A,NODE,,Node3 ESLN,S,1,CORNER elemn2 = ELNEXT(0) ~CFGET,VALUE(group+1,2),ELEMENT,elemn2,FORCE,TX,I ~CFGET,VALUE(group+2,2),ELEMENT,elemn2,FORCE,TY,I ~CFGET,VALUE(group+3,2),ELEMENT,elemn2,FORCE,TXY,I ~CFGET,VALUE(group+4,2),ELEMENT,elemn2,FORCE,NX,I ~CFGET,VALUE(group+5,2),ELEMENT,elemn2,FORCE,NY,I ~CFGET,VALUE(group+6,2),ELEMENT,elemn2,FORCE,MX,I ~CFGET,VALUE(group+7,2),ELEMENT,elemn2,FORCE,MY,I ~CFGET,VALUE(group+8,2),ELEMENT,elemn2,FORCE,MXY,I ALLSEL,ALL group=group+8 Node1 = NODE( 1.0275,0.54307,0) Node2 = NODE( 1.0666,0.44625,0) Node3 = NODE(0.96761,0.44892,0) NSEL,S,NODE,,Node1 NSEL,A,NODE,,Node2 NSEL,A,NODE,,Node3 ESLN,S,1,CORNER elemn1 = ELNEXT(0) ~CFGET,VALUE(group+1,1),ELEMENT,elemn1,FORCE,TX,I ~CFGET,VALUE(group+2,1),ELEMENT,elemn1,FORCE,TY,I ~CFGET,VALUE(group+3,1),ELEMENT,elemn1,FORCE,TXY,I ~CFGET,VALUE(group+4,1),ELEMENT,elemn1,FORCE,NX,I ~CFGET,VALUE(group+5,1),ELEMENT,elemn1,FORCE,NY,I ~CFGET,VALUE(group+6,1),ELEMENT,elemn1,FORCE,MX,I ~CFGET,VALUE(group+7,1),ELEMENT,elemn1,FORCE,MY,I ~CFGET,VALUE(group+8,1),ELEMENT,elemn1,FORCE,MXY,I ALLSEL,ALL Node1 = NODE( 1.0275,0.54307,Z3) Node2 = NODE( 1.0666,0.44625,Z3) Node3 = NODE(0.96761,0.44892,Z3) NSEL,S,NODE,,Node1 NSEL,A,NODE,,Node2 NSEL,A,NODE,,Node3 ESLN,S,1,CORNER elemn2 = ELNEXT(0) ~CFGET,VALUE(group+1,2),ELEMENT,elemn2,FORCE,TX,I ~CFGET,VALUE(group+2,2),ELEMENT,elemn2,FORCE,TY,I ~CFGET,VALUE(group+3,2),ELEMENT,elemn2,FORCE,TXY,I ~CFGET,VALUE(group+4,2),ELEMENT,elemn2,FORCE,NX,I ~CFGET,VALUE(group+5,2),ELEMENT,elemn2,FORCE,NY,I ~CFGET,VALUE(group+6,2),ELEMENT,elemn2,FORCE,MX,I ~CFGET,VALUE(group+7,2),ELEMENT,elemn2,FORCE,MY,I ~CFGET,VALUE(group+8,2),ELEMENT,elemn2,FORCE,MXY,I ! Warning and error tolerances !------------------------------------------------------------------------------ ! Note: tolerances are greater than 1% because two diferent methods are compared and ! results can not be equal but must be aproximated. Moreover, the elements have ! a free course mesh. *DO,II,1,NComp TOLER(II,1)= 1E2 $ TOLER(II,2)= 1E2 *ENDDO TOLER( 1,1)= 1E3 $ TOLER( 1,2)= 1E3 TOLER( 5,1)= 1E3 $ TOLER( 5,2)= 1E3 TOLER( 9,1)= 1E3 $ TOLER( 9,2)= 1E3 TOLER(10,1)= 1E3 $ TOLER(10,2)= 1E3 TOLER(11,1)= 1E3 $ TOLER(11,2)= 1E3 TOLER(13,1)= 1E3 $ TOLER(13,2)= 1E3 TOLER(18,1)= 1E3 $ TOLER(18,2)= 1E3 TOLER(21,1)= 1E3 $ TOLER(21,2)= 1E3 TOLER(27,1)= 1E3 $ TOLER(27,2)= 1E3 TOLER(29,1)= 1E3 $ TOLER(29,2)= 1E3 !-------------------------------------------------------------------------------------- ! Results Comparison !-------------------------------------------------------------------------------------- COMPARA.MAC |
Results
| Label | Target | CivilFEM | Ratio | Tolerance |
| TX | -3041.1 | -3043.2 | 0.999 | 1000 |
| TY | -3098.1 | -3143.8 | 0.985 | 100 |
| TXY | -1724.2 | -1771.2 | 0.973 | 100 |
| NX | 129.38 | 144.24 | 0.885 | 100 |
| NY | -1926.5 | -1930 | 0.998 | 1000 |
| MX | 218.27 | 225.93 | 0.965 | 100 |
| MY | -189.73 | -180.9 | 1.047 | 100 |
| MXY | -442.86 | -446.53 | 0.992 | 100 |
| TX | -2776.6 | -2950.6 | 0.937 | 1000 |
| TY | -3363 | -3253.3 | 1.033 | 1000 |
| TXY | -1911.5 | -1625.8 | 1.150 | 1000 |
| NX | 252.05 | 236.51 | 1.062 | 100 |
| NY | -2224.6 | -2145.6 | 1.036 | 1000 |
| MX | 187.66 | 196.4 | 0.953 | 100 |
| MY | -258.19 | -255.1 | 1.012 | 100 |
| MXY | -417.67 | -423.58 | 0.986 | 100 |
| TX | -2565.9 | -2643 | 0.970 | 100 |
| TY | -3888.8 | -3901.3 | 0.997 | 1000 |
| TXY | -2212.6 | -2150 | 1.028 | 100 |
| NX | 380.2 | 371.6 | 1.023 | 100 |
| NY | -2649 | -2602.7 | 1.018 | 1000 |
| MX | 130.67 | 133.04 | 0.982 | 100 |
| MY | -385.06 | -373.59 | 1.030 | 100 |
| MXY | -406.58 | -399.87 | 1.017 | 100 |
| TX | -2606 | -2685.7 | 0.969 | 100 |
| TY | -4150.1 | -4122.5 | 1.007 | 100 |
| TXY | -2317.1 | -2145 | 1.074 | 1000 |
| NX | 412.25 | 399.16 | 1.032 | 100 |
| NY | -2745.9 | -2652.8 | 1.034 | 1000 |
| MX | 107.1 | 113.55 | 0.940 | 100 |
| MY | -430.64 | -431.93 | 0.997 | 100 |
| MXY | -419.65 | -429.66 | 0.976 | 100 |
Contains proprietary and confidential information of Ingeciber, S.A.

