Temperature dependent material for thermal-structural analysis

7 views
Skip to first unread message

Rija Baritiana

unread,
Nov 23, 2025, 2:42:03 PMNov 23
to LS-DYNA2
Hi everyone,

I am modeling the structural response of a steel structure (cylindrical shape) to fire load (defined by keyword *LOAD_THERMAL_VARIABLE_). The temperature ranges from 20 degrees to 600 degrees.

The thermal effects on the mechanical properties (young modulus, stress-strain curves, thermal expansion) are described as in the eurocode. I have defined those parameters using curve and/or table.

I tried using the *MAT_255 since it allows using curves/tables to define the mechanical properties. Is there any "better" material model to include thermal dependance on the mechanical properties?

The model runs smoothly when the temperature is still low (inferior to 100 degree).
However, i am having the warning "the plasticity algorithm failed to converge" when the temperature rises "too quickly" (50 degree to 300 degree in 150 seconds). Regarding the time step, TMIN = 10s and TMAX = 60s. It adjust itself via *CONTROL_IMPLICIT_AUTO. I have tried tweaking the implicit time step but there are still this " plastic algorithm failed".

I am wondering how ls dyna deals with the non convergence of the plasticity algorithm. In LS-Prepost, the effective plastic strain is on physical (1E+12) and the internal energy is NaN in the glstat file.  Besides, some elements have been deleted automatically despite of no erosion criteria defined in the input deck.
 
Do you have any recommendation to adress these issues?

Find below an extract of the material definition :

*MAT_PIECEWISE_LINEAR_PLASTIC_THERMAL_TITLE
S235_T_MAT255
$#     mid        ro         e        pr         c         p      fail      tdel
      5000    7850.0     -1000       0.3       0.0       0.0       0.0       0.0
$#  tabidc    tabidt    lalpha      
      4000      4000      1001
$#  alpha       tref    
       0.0      20.0

*DEFINE_CURVE_TITLE
Young_T
$#    lcid      sidr       sfa       sfo      offa      offo    dattyp     lcint
      1000         0       1.0       1.0       0.0       0.0         0         0
$#                a1                  o1  
                 0.0    2.1000000307e+11
               100.0    2.1000000307e+11
               200.0    1.8900000768e+11
               300.0    1.6799999590e+11
               400.0    1.4700000051e+11
               500.0    1.2599999693e+11
               600.0    6.5100001280e+10
               700.0    2.7299999744e+10
               800.0    1.8900000768e+10
               900.0    1.4174999552e+10
              1000.0    9.4500003840e+09
              1100.0    4.7250001920e+09
              1200.0    4.2000000000e+08
              1400.0    2.1000000000e+08
*DEFINE_CURVE_TITLE
Alpha_T
$#    lcid      sidr       sfa       sfo      offa      offo    dattyp     lcint
      1001         0       1.0       1.0       0.0       0.0         0         0
$#                a1                  o1  
                 0.0    8.3200000518e-05
               100.0    9.9839999166e-05
               200.0    1.0304000170e-04
               300.0    1.0623999697e-04
               400.0    1.0943999951e-04
               500.0    1.1264000204e-04
               600.0    1.1583999731e-04
               700.0    1.1903999984e-04
               800.0    1.1280000035e-04
               900.0    1.0728000052e-04
              1000.0    1.1264000204e-04
              1100.0    1.1703999917e-04
              1200.0    1.2063999748e-04
              1400.0    1.2063999748e-04

*DEFINE_TABLE_TITLE
COURBE_ING_S235
$#    tbid       sfa      offa    
      4000
$#             value      lcid    
                 0.0      2001
               100.0      2002
               200.0      2003
               300.0      2004
               400.0      2005
               500.0      2006
               600.0      2007
               700.0      2008
               800.0      2009
               900.0      2010
              1000.0      2011
              1100.0      2012
              1200.0      2013
              1400.0      2014
              1600.0      2015
*DEFINE_CURVE_TITLE
ECRO_S235_T000
$#    lcid      sidr       sfa       sfo      offa      offo    dattyp     lcint
      2001         0       1.0       1.0       0.0       0.0         0         0
$#                a1                  o1  
                 0.0    2.1000000000e+08
    3.7900000461e-04    2.3500000000e+08
    8.7799999164e-04    2.3500000000e+08
             0.00138    2.3600000000e+08
             0.00486    2.3600000000e+08
             0.00535    2.3700000000e+08
              0.00882    2.3700000000e+08
             0.00981    2.3800000000e+08
               0.0128    2.3800000000e+08
              0.0138    2.3900000000e+08
              0.0177    2.3900000000e+08
              0.0187    2.4000000000e+08
              0.0283    2.7200000000e+08
              0.0378    3.0600000000e+08
              0.0473    3.0800000000e+08
              0.0568    3.1100000000e+08
              0.0662    3.1400000000e+08
              0.0755    3.1700000000e+08
              0.0847    3.2000000000e+08
              0.0938    3.2300000000e+08
               0.103    3.2600000000e+08
               0.112    3.2900000000e+08
               0.121    3.3200000000e+08
               0.129    3.3500000000e+08
               0.138    3.3800000000e+08
               0.147    3.4100000000e+08
               0.155    3.4400000000e+08
               0.164    3.4700000000e+08
               0.172    3.5000000000e+08
               0.181    3.5300000000e+08
               0.189    3.5500000000e+08


Best regards
RRB

l...@schwer.net

unread,
Nov 24, 2025, 8:35:42 AMNov 24
to Rija Baritiana, LS-DYNA2

The message "the plasticity algorithm failed to converge" occurs in any step when the strain increment is too large. Such a large strain increment causes the calculated stress-strain response to drift away (deviate) from the specified stress-strain response. There is an iterative algorithm in the constitutive model that subdivides strain increments to avoid this drift away from the specified stress-strain response. The maximum number of strain increment subdivisions is fixed and if the calculated stress-strain response is still too far from the specified response the above (warning) message is issued.

 

Typically when this error message is issued the calculation should be stopped, as it is unlikely in the next step the calculated stress-strain response will be improved.

 

When using the explicit solver, the viscoplastic option input parameter VP that activates this strain increment subdivision can be turned off (VP=0). Although your input indicated by default you have VP=0, my guess is using the implicit solver automatically invokes this strain increment subdivision.

 

In any case, the only solution is to use smaller time/load increments; this results in smaller strain increments being sent to the constitutive algorithm.

 

                                --len

--
You received this message because you are subscribed to the Google Groups "LS-DYNA2" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ls-dyna2+u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ls-dyna2/77955436-a109-4aaa-90ab-06cdf6bec31dn%40googlegroups.com.

Reply all
Reply to author
Forward
0 new messages