TAGGED: membrane-elements, shell-elements
-
-
July 1, 2025 at 2:10 pm
cardiac.scripter
SubscriberHi,
I am using normal shell elements for modelling a pressure application on anatomical valve leaflets. The pressure is applied on the underside of the leaflets and closes them and the leaflets interact with contact. I noticed that the leaflets are struggling to fold tightly. This indicates a high bending stiffness. Therefore, I would like to transition from shell to membrane elements.Â
However, other papers use membrane elements to model the leaflets. I assumed this is so they can fold in tightly on each other.
I am struggling to transition from normal shells to membrane shells.
This is my current card for normal shells:
*PART_COMPOSITE_CONTACT$#Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â title
Leaflet                                                                       Â
$#    pid   elform     shrf     nloc    marea     hgid   adpopt   thshel
        1        2    0.833      0.0      0.0        0        0        0
$#     fs       fd       dc       vc     optt      sft      ssf   cparm8
                                                                              Â
$#Â Â Â mid1Â Â Â thick1Â Â Â Â Â Â Â b1Â Â Â Â tmid1Â Â Â Â Â mid2Â Â Â thick2Â Â Â Â Â Â Â b2Â Â Â Â tmid2
        4     0.45                                                          Â
$#Â Â Â mid2Â Â Â thick2
        1      0.1
$#Â Â Â mid3Â Â Â thick3
        4     0.45
and this is my card for membrane shells:
*PART_COMPOSITE_CONTACT$#Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â title
Leaflet                                                                       Â
$#    pid   elform     shrf     nloc    marea     hgid   adpopt   thshel
        1        5    0.833      0.0      0.0        0        0        0
$#     fs       fd       dc       vc     optt      sft      ssf   cparm8
                                                                              Â
$#Â Â Â mid1Â Â Â thick1Â Â Â Â Â Â Â b1Â Â Â Â tmid1Â Â Â Â Â mid2Â Â Â thick2Â Â Â Â Â Â Â b2Â Â Â Â tmid2
        4     0.45                                                          Â
$#Â Â Â mid2Â Â Â thick2
        1      0.1
$#Â Â Â mid3Â Â Â thick3
        4     0.45
Changing the elform from 2 to 5.
However, I get loads of hourglassing and the simulation fails. See example of two simulations below:Â
    à    Â
Even with using hourglassing:
*CONTROL_HOURGLASS$#    ihq       qh
        4      0.1
Or even with fully-integrated membrane elements (elform=9) we get failure but without hourglassing:
These are my control keywords:
*CONTROL_TERMINATION
$#  endtim   endcyc   dtmin   endeng   endmas   nosol
   0.099     0    0.0    0.0   1e+08     0
*CONTROL_ENERGY
$#   hgen    rwen   slnten   rylen   irgen   maten   drlen   disen
     2     2     2     1     2     1     1     1
*CONTROL_OUTPUT
$#  npopt   neecho   nrefup   iaccop   opifs   ipnint   ikedit   iflush
     1     3     0     0    0.0     0    100    5000
$#  iprtf   ierode  tet10s8   msgmax   ipcurv    gmdt  ip1dblt    eocs
     0     0     2     50     0    0.0     0     0
$#  tolev   newleg   frfreq   minfo   solsig   msgflg   cdetol
     2     0     1     0     0     0    10.0
$# phschng   demden  icrfile  spc2bnd   penout   shlsig  hisnout   engout
     0     0     0          0     0     0     0
$#   insf   isolsf    ibsf    issf   mlkbag
     0     0     0     0     0
*CONTROL_TIMESTEP
$#  dtinit   tssfac    isdo   tslimt   dt2ms    lctm   erode   ms1st
    0.0    0.1     0    0.0    0.0     0     0     0
$#  dt2msf  dt2mslc   imscl   unused   unused   rmscl   emscl    ihdo
                             0.0    0.0     0
*CONTROL_HOURGLASS
$#   ihq     qh
     4    0.1
*CONTROL_ACCURACY
$#   osu    inn   pidosu    iacc   exacc
     1     2               Â
*CONTROL_BULK_VISCOSITY
$#    q1     q2    type   btype   tstype
    1.5    0.06     -2     0     0
*CONTROL_SHELL
$#  wrpang   esort   irnxx   istupd   theory    bwc   miter    proj
   20.0     0     -2     0     2     1     1     1
$# rotascl   intgrd   lamsht   cstyp6   thshel
    1.0     0     0     1     0
$# psstupd  sidt4tu   cntco   itsflg   irquad   w-mode  stretch    icrq
     0     0     0     0     3               0
$#  nfail1   nfail4  psnfail   keepcs   delfr  drcpsid   drcprm  intperr
               0     0     0     0    1.0     0
$#  drcmth  lispsid   nlocdt
     0     0     0
Here are my material keywords:
*MAT_001
$#   mid     ro     e     pr     da     db   unused
     1  1.25e-09    32.0    0.45               Â
*MAT_001
$#   mid     ro     e     pr     da     db   unused
     4  1.25e-09    0.55    0.45               Â
If you could provide some guidance that would be amazing.
Thanks in advance, -
July 2, 2025 at 11:58 am
Ram Gopisetti
Ansys EmployeeHi,Â
Hi,
I noticed in your information that the
TSSFAC
value is set quite low—at 0.1. Is this intended for a hypersonic model? Typically,TSSFAC
is a scale factor for the computed time step and is set to 0.9 by default. While it can be reduced for high-energy simulations, such as explosions, it's generally best to keep it at 0.9 for most cases. Could you try adjusting it back to 0.9 and see if the model performs as expected?Also, have you considered using
ELFORM 9
withIHQ=8
? This configuration provides some warping stiffness and could potentially improve the performance of your model.Cheers,Ram
Â
-
July 2, 2025 at 2:55 pm
cardiac.scripter
SubscriberHi Ram,Â
I moved to TSSFAC of 0.9.Â
ELFORM 9 with IHQ=8 looks like it works well. But the shells fail 24084 t 2.6000E-02 dt 1.07E-06 write d3plot file      07/02/25 15:51:30 25000 t 2.6985E-02 dt 1.07E-06 flush i/o buffers      07/02/25 15:51:32 25014 t 2.7000E-02 dt 1.07E-06 write d3plot file      07/02/25 15:51:32 25952 t 2.8000E-02 dt 1.06E-06 write d3plot file      07/02/25 15:51:34 26911 t 2.9000E-02 dt 1.04E-06 write d3plot file      07/02/25 15:51:36 27894 t 2.9999E-02 dt 9.79E-07 write d3plot file      07/02/25 15:51:39 28910 t 3.0999E-02 dt 1.02E-06 write d3plot file      07/02/25 15:51:42Â*** Error 40500 (SOL+500)  node # 7828 has out-of-range velocities   x-velocity= -1.3640E+30   y-velocity= -3.9775E+28   z-velocity= 3.2981E+29Â*** Error 40500 (SOL+500)  node # 7829 has out-of-range velocities   x-velocity= -1.3688E+30   y-velocity= -3.9997E+28   z-velocity= 3.2999E+29Â*** Error 40500 (SOL+500)  node # 7936 has out-of-range velocities   x-velocity= 1.6540E+30   y-velocity= 9.2023E+29   z-velocity= 4.4860E+28Here is my contact keyword:
*CONTACT_AUTOMATIC_SINGLE_SURFACE
$#   cid                                 title
$#  surfa   surfb  surfatyp  surfbtyp  saboxid  sbboxid    sapr    sbpr
     3     0     2     0     0     0     0     0
$#    fs     fd     dc     vc    vdc   penchk     bt     dt
    0.0    0.0    0.0    0.0    60.0     0    0.0    0.0
$#   sfsa    sfsb    sast    sbst   sfsat   sfsbt    fsf    vsf
    1.0    1.0    0.0    0.0    1.0    1.0    1.0    1.0
$#   soft   sofscl   lcidab   maxpar   sbopt   depth   bsort   frcfrq
     2    0.1     0   1.025     2     2     0     1
I noticed also the damping is very high:
*DAMPING_GLOBAL
$#   lcid   valdmp    stx    sty    stz    srx    sry    srz
     0   2500.0    0.0    0.0    0.0    0.0    0.0    0.0Cheers,
Ben -
July 2, 2025 at 3:40 pm
cardiac.scripter
SubscriberHi Ram,
I have simplified my parts so that they are no longer composites. Material model is *MAT_ELASTIC.
Now I get failure at 26% through simulation. With these failure messages:
 43800 t 2.0000E-02 dt 4.53E-07 write d3plot file       07/02/25 16:35:11
 45000 t 2.0543E-02 dt 4.53E-07 flush i/o buffers       07/02/25 16:35:17
 46008 t 2.1000E-02 dt 4.53E-07 write d3plot file       07/02/25 16:35:23
 48215 t 2.2000E-02 dt 4.53E-07 write d3plot file       07/02/25 16:35:29
 50000 t 2.2807E-02 dt 4.53E-07 flush i/o buffers       07/02/25 16:35:34
 50426 t 2.3000E-02 dt 4.53E-07 write d3plot file       07/02/25 16:35:36
 52630 t 2.4000E-02 dt 4.67E-07 write d3plot file       07/02/25 16:35:43
 54793 t 2.5000E-02 dt 4.53E-07 write d3plot file       07/02/25 16:35:50
 55000 t 2.5094E-02 dt 4.55E-07 flush i/o buffers       07/02/25 16:35:51
 57041 t 2.6000E-02 dt 4.26E-07 write d3plot file       07/02/25 16:35:58
   beam  element 40  failed at time  2.6465E-02
   beam  element 56  failed at time  2.6465E-02
   beam  element 38  failed at time  2.6465E-02
   beam  element 39  failed at time  2.6465E-02
   beam  element 55  failed at time  2.6465E-02
   beam  element 57  failed at time  2.6465E-02
   shell element 15871  failed at time  2.6465E-02
   shell element 16328  failed at time  2.6465E-02
   shell element 19092  failed at time  2.6465E-02
   shell element 19093  failed at time  2.6465E-02
   shell element 19094  failed at time  2.6465E-02
   shell element 19095  failed at time  2.6465E-02
   shell element 20939  failed at time  2.6465E-02
   shell element 21398  failed at time  2.6465E-02
   shell element 21857  failed at time  2.6465E-02
   shell element 21862  failed at time  2.6465E-02
   shell element 23234  failed at time  2.6465E-02
   shell element 19109  failed at time  2.6465E-02
   shell element 21861  failed at time  2.6465E-02
These are my energies just before failure:
These are my control cards:
*CONTROL_ACCURACY
$#   osu    inn   pidosu    iacc   exacc
     1     2     0     0    0.0
*CONTROL_BULK_VISCOSITY
$#    q1     q2    type   btype   tstype
    1.5    0.06     -2     0     0
*CONTROL_ENERGY
$#   hgen    rwen   slnten   rylen   irgen   maten   drlen   disen
     2     2     2     1     2     1     1     1
*CONTROL_HOURGLASS
$#   ihq     qh
     8    0.1
*CONTROL_OUTPUT
$#  npopt   neecho   nrefup   iaccop   opifs   ipnint   ikedit   iflush
     1     3     0     0    0.0     0    100    5000
$#  iprtf   ierode  tet10s8   msgmax   ipcurv    gmdt  ip1dblt    eocs
     0     0     2     50     0    0.0     0     0
$#  tolev   newleg   frfreq   minfo   solsig   msgflg   cdetol   igeom
     2     0     1     0     0     0    10.0     1
$# phschng   demden  icrfile  spc2bnd   penout   shlsig  hisnout   engout
     0     0     0     0     0     0     0     0
$#   insf   isolsf    ibsf    issf   mlkbag   kineng   isfcnt
     0     0     0     0     0     0     1
*CONTROL_SHELL
$#  wrpang   esort   irnxx   istupd   theory    bwc   miter    proj
   20.0     0     -2     0     2     1     1     1
$# rotascl   intgrd   lamsht   cstyp6   thshel
    1.0     0     0     1     0
$# psstupd  sidt4tu   cntco   itsflg   irquad   w-mode  stretch    icrq
     0     0     0     0     3    0.0    0.0     0
$#  nfail1   nfail4  psnfail   keepcs   delfr  drcpsid   drcprm  intperr
     0     0     0     0     0     0    1.0     0
$#  drcmth  lispsid   nlocdt   iswshl
     0     0     0     0
*CONTROL_TERMINATION
$#  endtim   endcyc   dtmin   endeng   endmas   nosol
    0.1     0    0.0    0.01.000000E8     0
*CONTROL_TIMESTEP
$#  dtinit   tssfac    isdo   tslimt   dt2ms    lctm   erode   ms1st
    0.0    0.9     0    0.0    0.0     0     0     0
$#  dt2msf  dt2mslc   imscl   unused   unused   rmscl   emscl    ihdo
    0.0     0     0              0.0    0.0     0
-
- You must be logged in to reply to this topic.
-
3402
-
1052
-
1050
-
896
-
872
© 2025 Copyright ANSYS, Inc. All rights reserved.