We’re putting the final touches on our new badges platform. Badge issuance remains temporarily paused, but all completions are being recorded and will be fulfilled once the platform is live. Thank you for your patience.
LS Dyna

LS Dyna

Topics related to LS-DYNA, Autodyn, Explicit STR and more.

Shell Element to Membrane Element transition causing issues.

    • cardiac.scripter
      Subscriber

      Hi,

      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,

    • Ram Gopisetti
      Ansys Employee

      Hi, 

      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 with IHQ=8? This configuration provides some warping stiffness and could potentially improve the performance of your model.

      Cheers,Ram

       

    • cardiac.scripter
      Subscriber

      Hi 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+28

      Here 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.0

      Cheers,
      Ben


    • cardiac.scripter
      Subscriber

      Hi 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

Viewing 3 reply threads
  • You must be logged in to reply to this topic.