目标
本示例用于验证 RFEM 中自定义非线性材料定律的结果。将手动定义的应力-应变图与一个独立的数值解进行比较,该数值解由专门开发的 Python Newton-Raphson 求解器生成。
模型描述
作为静力体系,选用一个简单的拉杆。
| L | 2,0 | m | 长度 |
| a | 4 | cm | 方形截面 |
| 支承 | 节点 1 | 固定(固支) | |
| 支承 | 节点 2 | 自由 | |
| Fz | 750 | kN | 作用于节点 2 的荷载 |
为了模拟 S235 钢,选用幂函数形式作为材料定律。该曲线的解析表达式为:
$$
\sigma(\epsilon) =
\begin{cases}
E_0 \cdot \epsilon & \text{对于 } 0 \le \epsilon \le 1{,}119 \cdot 10^{-3} \\
f_y \cdot \sqrt[m]{\dfrac{E_0 \cdot \epsilon}{f_y}} & \text{对于 } \epsilon \ge 1{,}119 \cdot 10^{-3}
\end{cases}
$$
其中
$$
\begin{aligned}
m &= 5 \\
E_0 &= 210\,000 \text{ kN/cm}^2 \\
f_y &= 23{,}5 \text{ kN/cm}^2
\end{aligned}
$$
为将该定律导入 RFEM,将该函数在 63 个支撑点上进行取值。在非线性范围内,选取步长 Δε = 0,002028,以实现曲线的高精度逼近。最后一个支撑点之后,采用按最后计算得到的切线模量进行线性外推。
RFEM 中的计算按照一阶理论进行非线性分析,Newton-Raphson 求解器采用以下设置:
- 荷载步数:10
- 最大迭代次数:100
验证
为进行验证,开发了一个 Python 脚本(见 用于验证示例 9964 的 Python 代码,这是一个使用牛顿-拉夫森法的非线性一维有限元分析验证示例。 ),其中实现了用于求解非线性平衡条件的 Newton-Raphson 方法。计算基于所定义的材料函数,并用于对 RFEM 的计算结果进行独立核查。
结果比较
下表对比了 10 个荷载步中节点 2 的位移 u:
| 荷载 P [kN] | uRFEM6 [mm] | u脚本 [mm] | 绝对偏差 [mm] | 相对偏差 [%] |
|---|---|---|---|---|
| 75,00 | 0,4464 | 0,4460 | 0,0004 | 0,09% |
| 150,00 | 0,8929 | 0,8930 | 0,0001 | 0,01% |
| 225,00 | 1,3393 | 1,3390 | 0,0003 | 0,02% |
| 300,00 | 1,7857 | 1,7860 | 0,0003 | 0,02% |
| 375,00 | 2,2321 | 2,2320 | 0,0001 | 0,00% |
| 450,00 | 5,7128 | 5,4950 | 0,2178 | 3,81% |
| 524,99 | 12,0050 | 11,8780 | 0,1270 | 1,06% |
| 599,99 | 23,1933 | 23,1580 | 0,0353 | 0,15% |
| 674,99 | 41,7599 | 41,7310 | 0,0289 | 0,07% |
| 749,98 | 70,6726 | 70,6720 | 0,0006 | 0,00% |
总结
RFEM 分析结果与独立参考计算几乎完全一致。
| 最大绝对偏差 | 0,2178 mm |
| 最大相对偏差 | 3,81% |
| 决定系数 R2 | 0,999987 |
| 相对偏差(最终荷载步) | 0,00% |
数值验证证实,RFEM 计算与参考解之间具有极佳的一致性。最大相对偏差 3,81% 局部出现在向塑性应变过渡的区域,原因是将连续幂函数离散化为离散的图表支撑点。于最终荷载步中,两种模型之间的差异小于 0,01%,可忽略不计。决定系数 R2 ≈ 1,0 证明了 RFEM 6 中所实现材料模型的正确性。