欧拉座屈 — 故障排除指南
更充实的内容请访问 euler-column.html。
座屈解析的故障排除
老师,我运行座屈解析后得到了奇怪的结果,我很困扰…。
座屈解析是比其他解析更容易出现故障的领域。让我们按症状整理常见问题。
出现负特征值
在线性座屈解析中出现了负特征值。这是什么意思?
负特征值意味着座屈发生在参考荷重的反方向。也就是说,虽然施加的是压缩荷重,但出现的是拉伸方向的座屈。
原因和对策:
| 原因 | 情况 | 对策 |
|---|---|---|
| 荷重方向符号错误 | 拉伸荷重被输入为压缩 | 确认并修改荷重方向 |
| 反力方向的座屈 | 部分构件的反力为压缩 | 仅评估正的特征值 |
| 求解的模态数不足 | 负特征值掩盖了正的最小模态 | 增加求解的模态数 |
原来如此。负特征值本身不是bug,而是物理意义上的拉伸座屈。
正确。但在实际应用中,最小的正特征值很重要。如果求10个模态全部是负的,那很可能是荷重方向完全弄反了。
座屈荷重与手工计算差异大
用欧拉公式计算得 $P_{cr} = 293$ kN,但FEM显示450 kN。差了5成…。
当FEM结果高于手工计算时,首先检查以下几点:
1. 座屈方向是否正确?
欧拉公式使用截面的最小惯性矩 $I_{min}$。对于H形钢,是弱轴(y轴)。检查FEM中是否出现了强轴(x轴)座屈。一定要确认模态形状。
有可能强轴座屈先出现吗?
完全可能。根据边界条件,有时会约束弱轴方向的位移,导致弱轴座屈被抑制,只有强轴座屈。例如,柱靠着墙,墙方向(弱轴方向)被约束,就会抑制弱轴座屈。如果这是有意的,那没问题。但如果是建模失误,后果严重。
2. 边界条件的约束程度是否正确?
本想设置 $K = 1.0$(两端铰支),但旋转被约束,实际相当于 $K = 0.5$(两端固定)时,座屈荷重会跳升4倍。
3. 单元类型是否合适?
梁单元如果不考虑翘曲,开截面(H形钢、槽形钢)的座屈荷重会被高估。检查Nastran的CBEAM是否包含翘曲自由度。
相反,FEM结果低于手工计算时呢?
这种情况通常是局部座屈先出现。欧拉公式只评估整体座屈,但用壳单元或实心单元建模时,法兰的局部座屈会先发生。检查模态形状是否不是整体横向挠曲,而是局部波状。
非线性座屈解析无法收敛
我想用Riks法做非线性座屈,但在座屈点之前就无法收敛。
这是非线性座屈中最常见的问题。主要原因有三个。
原因1: 未输入初始不整
对完全对称的结构施加对称荷重时,在数值上无法通过「分岔点」。如果没有微小扰动,求解器会倾向于保持直的平衡路径,在分岔点处路径变得不确定。
对策:将线性座屈的第一个模态形状引入作为初始不整。振幅通常为部件长度的1/1000~1/500。在Abaqus中可以用 *IMPERFECTION 轻松设置。
原因2: 增量步长过大
在座屈点附近,荷重-位移曲线的斜率急剧变化。如果增量步长太大,无法跟踪这种急剧变化。
对策:减小初始增量。对于Riks法,将初始弧长设置为荷重的1%左右。对于Abaqus的 *STATIC, RIKS,可以这样设置:0.01, 1.0, 1e-8, 0.1,即初始增量较小,最小增量更小。
原因3: 接触和边界的非线性性
支点上有弹簧单元,这会有影响吗?
当座屈导致大变形时,接触条件和弹簧状态可能急剧变化,扰乱收敛。在调试座屈解析时,首先应尽可能简化边界条件(使用理想铰支和固定),确认收敛,然后逐步增加复杂性。这是基本原则。
座屈模态依赖于网格
改变网格时,座屈荷重和模态形状都会改变。怎样才能稳定?
必须确认网格收敛性。步骤如下:
1. 粗网格求解 → 记录座屈荷重和前5个模态
2. 网格细分2倍 → 同样确认
3. 再细分2倍 → 同样确认
4. 座屈荷重的变化控制在2~3%以内则可接受
局部座屈情况下特别敏感,对吧?
完全同意。整体座屈对网格相对不敏感,但局部座屈(如板的波状座屈)需要座屈半波长中至少有4个单元才能正确表现。粗网格时,局部座屈模态会「看不见」。
特别要注意的是板的自由边附近。自由边座屈对网格密度非常敏感,沿边需要足够的单元数。
按求解器分类的常见错误
Nastran SOL 105
| 错误 | 含义 | 对策 |
|---|---|---|
| FATAL 2012: Singular KAA | 刚性矩阵奇异 | 约束不足。存在刚体模式。添加SPC |
| 全部特征值接近零 | 几何刚性矩阵接近零 | 前阶静力分析没有产生应力。检查荷重设置 |
| 高阶模态呈振动型 | 求解的模态数过多 | 限制为有实际意义的模态数(约5~20个) |
Abaqus *BUCKLE
| 错误 | 含义 | 对策 |
|---|---|---|
| Zero pivot in row N | 第N个自由度约束不足 | 检查相应节点的约束 |
| No converged eigenvalues | Lanczos法未收敛 | 切换为SUBSPACE法,或指定移位值 |
| Negative eigenvalues only | 荷重方向相反 | 检查荷重符号 |
Ansys Eigenvalue Buckling
| 错误 | 含义 | 对策 |
|---|---|---|
| Insufficient constraints | 存在刚体模式 | 添加约束自由度 |
| 座屈荷重明显偏高 | 前阶静力分析为线性 | 启用PSTRES以激活应力刚度 |
调试的基本原则
座屈解析出故障时,最有效的调试步骤是什么?
根据经验,按这个顺序调查是最快的:
步骤 1:用眼睛看模态形状
看数值之前先可视化模态形状。如果变形物理上不合理,说明输入有误。这样可以解决80%的问题。
步骤 2:用最简单的模型验证
建立重现问题的最小模型。用梁单元(5~10个)将欧拉理论解与结果对比。若此步不合,说明求解器设置根本有误。
步骤 3:逐步增加复杂性
简单模型验证后,逐步接近实际模型。细分网格、详细化边界条件、增加材料模型…。在哪个阶段结果变差,就能定位问题原因。
「最小模型与理论解相比」才是开始啊。不要一开始就在实模型上纠缠。
座屈解析是很难区分「求解器有问题」还是「自己理解不足」的领域。如果能用最小模型再现欧拉理论解,至少可以确信求解器的使用方法是对的。从那里一步步积累,看似绕远路,其实是最快的方法。
线性座屈解析的特征值与实验不符时
欧拉座屈的线性FEM分析值有时仅为实验值的60~80%。原因是初始不整(几何误差、残余应力),线性分析假设完全圆形截面和直轴,所以过高估计。实际制造误差(弯曲量L/1000左右)和残余应力(屈服的30~50%)考虑进来,进行非线性座屈分析(NLBA),可得到与实验相符±10%以内的结果。
相关主题
更多细节
错误