跳转至

分析步控制

FrontISTR 的结构分析通过按分析步切换边界条件、荷载、接触和单元激活来推进。本页说明各分析步的时间跨度、子步、收敛判定,以及固定增量与自动增量/cutback 的选择方法。

分析时间相关术语

本页使用以下术语区分分析时间。

  • 当前时刻:从分析开始起的总经过时间。
  • 分析步时间:从当前分析步开始起的经过时间。
  • 时间跨度:一个分析步中推进的分析时间。
  • 相对时刻:分析步时间除以时间跨度所得的值。分析步开始时为 0,结束时为 1。
  • 时间增量:从当前时刻到下一次求解平衡的时刻之间的增量。

分析时间相关术语定义

图 4.7.1 分析时间相关术语定义

功能概览

分析步控制由以下几个方面构成。

方面 作用 主要指定位置
增量方式 决定以固定增量推进分析步,还是根据收敛情况调整时间增量 !STEP
分析步类型 决定是静力分析,还是包含黏弹性、蠕变的黏性分析 !STEP
启用的条件 按分析步选择边界条件、荷载、接触和单元激活的组 !STEP 的数据行
收敛判定 按分析步调整残差、Lagrange 乘子、位移增量等判定值 !STEP
输出时刻 指定在自动增量时必须进行计算和输出的时刻 !TIME_POINTS!STEP

静力分析可选择固定增量或自动增量/cutback。动力分析也可通过多个 !STEP 切换条件,并建议使用 !STEP 指定固定增量的时间增量和分析步时间跨度。!DYNAMICn_stept_delta 在省略 !STEP 时或为了向后兼容而作为默认值处理。非线性隐式方法可使用自动增量/cutback。热传导分析的时间控制不是使用 !STEP,而是通过 !HEAT 的时间步指定来处理。

分析步中启用的条件通过组 ID 指定。由于边界条件、荷载、接触和单元激活可按分析步切换,因此可在一个分析控制文件中表示分阶段加载、接触条件切换以及包含施工顺序的分析。关于单元激活/停用模式的选择,请参见单元的激活与停用

分析步控制的选择方法

增量方式应根据分析的非线性程度和输出时刻要求来选择。

  • 对于线性分析或一个分析步即可完成的分析,通常无需细致调整增量控制。
  • 对于荷载和响应平滑变化的非线性静力分析,固定增量通常就足够。如果难以收敛,应减小时间增量。
  • 对于包含接触开始/脱离、屈服发展、大变形或材料非线性突变的分析,应优先考虑自动增量/cutback。在容易收敛的区间可增大增量,在难以收敛的区间可减小增量。
  • 如果在使用自动增量的同时希望在特定时刻输出结果,应配合使用输出时刻列表。

收敛判定值应在分析稳定性与计算时间之间取得平衡。收敛判定越严格,结果的平衡精度越高,但迭代次数也会增加。在包含接触或 Lagrange 乘子的分析中,不仅通常的残差判定,接触迭代次数和 Lagrange 乘子判定也会影响计算推进。

静力分析的分析步控制

静力分析由一个或多个分析步组成。对分析步的迭代称为分析步循环,将一个分析步划分为时间增量并求解的迭代称为子步循环。在各子步中,使用指定时刻的荷载系数、边界条件、接触状态等进行平衡计算。

固定增量中,分析步内的时间增量按指定值推进。如果收敛失败,则在该时刻结束分析。

自动增量/cutback 中,根据上一子步的收敛情况更新下一个时间增量基准值 dtime_base。如果收敛失败,则恢复到此前保存的状态,并使用更小的时间增量重新计算同一时间区间。

增量控制流程

图 4.7.2 增量控制流程

自动增量/cutback 的流程如下。

  1. 分析步开始时,将初始时间增量作为 dtime_base
  2. 确定实际时间增量,使其不越过分析步结束时刻或下一输出时刻。
  3. 在从当前时刻推进一个时间增量后的时刻进行平衡计算。
  4. 若收敛,则推进时刻,并根据收敛情况增大或减小下一个 dtime_base
  5. 若不收敛,则恢复状态,使用 cutback 缩小率减小 dtime_base 后重新计算。
  6. 当当前时刻到达分析步结束时刻时,结束该分析步。

增量的增大或减小根据上一子步的迭代情况判定。用于判定的三个代表性量如下。

含义
N_max Newton 法迭代次数的最大值
N_sum Newton 法迭代次数的总和;无接触迭代时与 N_max 相同
N_cont 接触迭代次数

如果 N_maxN_sumN_cont 中任一量超过减小侧阈值的状态连续达到指定次数,则减小时间增量。反之,如果三个量全部处于增大侧阈值以内的状态连续达到指定次数,则增大时间增量。增大时会进行调整,使时间增量不超过上限。

在自动增量/cutback 中,以下情况将分析作为失败结束。

  • 在分析步结束前达到子步数上限。
  • 时间增量基准值低于时间增量下限。
  • 连续 cutback 次数达到上限。

下面的示例启用自动增量,并设置初始时间增量 0.01、分析步时间跨度 2.5、时间增量下限 1E-5、时间增量上限 0.3、最大子步数 200。将自动增量参数集 AP1 和包含总时刻 1.5、2.7、3.9 的输出时刻列表 TP1 分配给该分析步。

!AUTOINC_PARAM, NAME=AP1
0.25, 10, 50, 10, 1
1.25,  1,  1,  1, 2
0.25,  5
!TIME_POINTS, TIME=TOTAL, NAME=TP1
1.5
2.7
3.9
!STEP, INC_TYPE=AUTO, SUBSTEPS=200, AUTOINCPARAM=AP1, TIMEPOINTS=TP1
0.01, 2.5, 1E-5, 0.3

输入格式和各参数的默认值请参见 !STEP!AUTOINC_PARAM!TIME_POINTS

动力分析的分析步控制

动力分析中的直接时间积分使用 !DYNAMIC 指定求解方法和时间积分参数,并使用 !STEP 指定分析步、边界条件/荷载组和增量方式。省略 !STEP 时,将其作为所有边界条件和荷载均启用的单步分析处理。

固定增量中,在 !STEP 第 2 行指定 DTIME, ETIME,按分析步控制时间增量和分析步时间跨度。定义多个 !STEP 后,可按分析步切换启用的边界条件和荷载组。!DYNAMICt_deltan_step 作为省略 !STEP 的旧格式单步输入以及向后兼容时的默认值处理。对于新输入,即使使用固定增量,也建议在 !STEP 中明确指定时间条件。

使用自动增量时,指定 !STEP, INC_TYPE=AUTO,并在 !STEP 数据行中给出初始时间增量、分析步时间跨度、时间增量下限和时间增量上限。在非线性隐式方法中,根据 Newton 迭代和接触迭代情况增大或减小时间增量;若不收敛,则恢复上一状态并使用更小的时间增量重新计算。

时间积分方法和 Newmark-β 法系数等使用 !DYNAMIC 指定。输入格式请参见 !DYNAMIC!STEP

热传导分析的分析步控制

热传导分析的时间步使用 !HEAT 指定。!HEAT 将时间步、结束时刻、最小时间步、最大温度变化、迭代次数、收敛判定值等作为一组给出。

热传导分析的时间控制采用与结构静力分析的 !STEP, INC_TYPE=AUTO 不同的机制。因此,在热传导分析中调整时间步时,不应使用 !STEP,而应确认 !HEAT 的指定。输入格式请参见 !HEAT

输出时刻的指定

自动增量中时间增量会随收敛情况改变,因此结果输出时刻可能无法事先对齐。!TIME_POINTS 是用于调整时间增量的时刻列表,以确保在指定时刻一定进行平衡计算并可输出结果。

时刻列表可选择以分析开始后的总时刻指定,也可选择以分析步开始后的分析步时刻指定。若希望跨多个分析步指定共同的时刻,使用总时刻;若希望每个分析步指定相同的相对输出位置,使用分析步时刻。

各分析步从 !STEP 引用要使用的时刻列表。与自动增量配合使用时,时间增量会被截短,使其不越过下一输出时刻或分析步结束时刻。输入格式请参见 !TIME_POINTS

相关项目