可靠的应力结果对于做出明智的工程决策、确保安全性和优化设计至关重要。在运行仿真时,任何分析中存在假设和近似值,都必须确保结果与实际观察结果相一致。
为了避免错误和误导性结果,必须谨慎建模和进行分析设置。充分细化的网格和适当的单元选择是平衡分析结果效率和准确性的最佳方法。本文探讨了在 Abaqus 中提高应力结果准确性和可靠性的关键网格划分技术。
选择正确的单元类型是网格生成的第一步,至关重要。您应该使用实体单元(三维)、壳单元(二维)、梁单元(一维)还是多种单元组合?以准确性为目标,实体元素似乎是显而易见的选择。毕竟,现实世界是三维的;难道不应该使用三维元素来体现这一点,而不是简化吗?
实际测试表明,如果选择得当,壳单元或梁单元能够提供准确的结果,同时节省计算资源。一般来说:
壳网格划分对于厚度均匀的薄体(金属板等)非常有用
梁网格划分最适合(您猜对了)梁(和桁架),特别是当梁的长度至少是其横截面直径的十倍时。
图 1:实体、壳和梁单元的示例
假设您需要计算均匀 200 N/m 载荷下 1.5 m 悬臂梁(方形横截面 0.05 m x 0.05 m)末端的挠度:
图 2:悬臂梁问题设置
让我们来算一下...
最大偏转 (δ) = ( qL4 )/( 8EI )
q = 施加的力 = 200 N/m
L = 梁长 = 1.5 米
E = 弹性模量 = 50 GPa
I = 转动惯量 = (1/12) b4 = (1/12)(0.05) 4 = 5.208333e– 7m4
δ = (200 * 1.5 4 ) / (8 * 50e9 * 5.208333e–7)
= 0.004860 米
= 4.860 毫米
数学告诉我们最大挠度是 4.860 毫米 。如果我在 Abaqus 中建模并使用实体单元进行网格划分,则不同网格尺寸下的结果如下:
实体单元尺寸 | 元素数量 | 最大挠度 | 计算结果的误差 |
0.05米 | 5.880 毫米 | 20.99% | |
0.025米 | 4.774 毫米 | 1.77% | |
0.01米 | 3,750 | 4.829 毫米 | 0.64% |
0.005米 | 30,000 | 4.846 毫米 | 0.29% |
图 3:使用实体元素时的结果表
图 4:梁挠度结果
如果将同一模型与梁单元进行网格划分,则结果如下:
梁单元尺寸 | 元素数量 | 最大挠度 | 计算结果的误差 |
0.05米 | 4.867 毫米 | 0.14% | |
0.025米 | 4.866 毫米 | 0.12% | |
0.01米 | 4.866 毫米 | 0.12% | |
0.005米 | 4.866 毫米 | 0.12% |
图 5:使用梁单元时的结果表
因此,虽然实体单元是三维的,因此最接近现实世界,但需要非常精细的网格才能接近计算结果——大约需要 3,000 个单元才能获得 <1% 的误差。将其与梁的结果进行比较:仅用 30 个单元,我的答案就已经在计算值的 0.14% 以内了。
类似的想法也适用于壳体网格划分。在适当的情况下,壳体网格划分至少可以与实体网格划分一样精确,同时节省宝贵的计算资源。务必考虑被分析物体的形状,并选择合适的单元类型。
一旦选择了元素类型,下一步就是在一阶(线性)和二阶(二次)元素之间进行选择,这定义了每个元素的分辨率和质量,然后是元素积分的类型。
图 6:“分配元素类型”对话框,其中选择积分和阶数
一阶元素在每个角都有节点,而二阶元素在每条边的中点有额外的节点。
图7:一阶和二阶元素之间的差异
二阶单元中的附加节点引入了额外的自由度,与刚度更高的一阶单元相比,其刚度更低,挠度计算更精确。然而,更高质量的单元意味着更高的计算成本,因此求解时间也更长。在某些情况下,尤其是在高速动态情况下,例如汽车碰撞或跌落测试,一阶单元是更稳定的选择。
另一个关键考虑因素是元素的公式化和集成。集成选项如下:
全面整合 计算每个元素(例如 C3D8 元素)所有积分点(称为“高斯点”)的位移。
整合度降低 (例如 C3D8R 元素)根据每个元素的一个中心高斯点计算位移。
选择性减少积分 (例如 C3D8I)是两者的结合:关注区域(例如高剪切或体积应变)中的元素将在所有高斯点完全积分,而其他地方的元素将使用减少积分。
图8:单元类型的差异
与建立分析模型时做出的大多数选择一样,每个选项都有其优点和缺点,必须权衡这些优点和缺点才能最大限度地提高准确性和效率:
集成类型 | 优势 | 缺点 |
满的 |
|
|
减少 |
|
|
选择性还原 |
|
|
图 9:完全积分、缩减积分和选择性缩减积分的优缺点列表
回到我的悬臂梁示例,我使用四种不同的单元公式对研究进行了网格划分和求解:一阶/完全积分、二阶/完全积分、一阶/降阶积分和二阶/降阶积分。结果表如下:
图 10:悬臂梁问题中元素阶数和积分的结果
对于这类简单问题,求解时间显然不是什么大问题。然而,所选公式的不同,精度会有显著差异。最佳方案显然是二阶/全积分,它能给出非常接近计算结果 4.860 毫米的结果,而且无需进一步细化网格。
下表列出了各种分析类型及其推荐的元素质量和公式选择:
问题类型 | 推荐元素类型 |
弯曲(无接触) | 二阶全积分 |
应力集中 | 二阶全积分 |
固有频率(线性动力学) | 二阶全积分 |
复杂模型几何(线性材料,无接触) | 二阶六面体(如果未扭曲),二阶四面体(如果网格划分困难) |
复杂模型几何(非线性问题或接触) | 一阶六面体(若未扭曲),二阶四面体(若网格划分困难) |
几乎不可压缩(v > 0.475) | 一阶或二阶降阶积分 |
完全不可压缩(v = 0.5) | 混合(如果预计会发生大变形,则为一阶) |
体积金属成型(高网格变形) | 一阶降阶积分 |
接触弯曲 | 一阶降阶积分 |
非线性动态(冲击) | 一阶全积分 |
变形体之间的接触 | 一阶全积分 |
图 11:针对各种问题类型的推荐元素类型
单元公式和积分
选择网格类型后,即可生成网格。接下来,您需要验证其质量。扭曲、倾斜或角度过大的网格可能会导致计算错误,因此您需要找到并尽量减少这些问题。使用网格检查工具发现的任何问题区域,都可以通过全局或局部网格控制进一步细化网格来解决。较小的单元尺寸有助于减少失真和纵横比。
验证您的网格
图 12:元素纵横比以及如何验证网格质量
即使创建并验证了高质量的网格,盲目相信结果而不检查其收敛性也是有风险的。网格灵敏度分析需要使用逐步细化的网格运行模拟,以观察结果何时趋于稳定。
例如,让我们回到之前提到的悬臂梁示例。您可以看到,为了接近 4.860 毫米的理论答案,网格细化是必要的。然而,到了一定程度,进一步细化并不能显著改善结果,反而会减慢计算速度。
实体单元尺寸 | 元素数量 | 最大挠度 | 计算结果的误差 |
0.05米 | 5.880 毫米 | 20.99% | |
0.025米 | 4.774 毫米 | 1.77% | |
0.01米 | 3,750 | 4.829 毫米 | 0.64% |
0.005米 | 30,000 | 4.846 毫米 | 0.29% |
0.0025米 | 240,000 | 4.851 毫米 | 0.19% |
图 13:减小单元尺寸的结果
如果您从粗网格开始,然后不断细化直到结果收敛,那么您可以确信您的结果是对我们设置的问题的准确计算。
悬臂梁的设计灵敏度分析
但是,您还可以通过其他几种方式来优化网格,使其尽可能高效地运行,同时又不牺牲准确性。
通过选择合适的单元类型和公式,构建出足够细化的网格,我们就能顺利地在 Abaqus 中生成可靠的结果。但是,加大网格细化程度并让计算机全力以赴可能并非从分析中找到所需答案的最有效方法。
子模型
这项技术用于将网格细化集中在感兴趣的区域,而无需细化整个模型的网格。它能够在需要的地方提供准确的结果,而无需强迫系统在其他区域进行不必要的精确计算。
在进行子模型构建时,首先要对整个模型进行粗略的全局网格划分,以捕捉整体结构行为,并将其保存为节点结果。然后,使用细网格对模型中较小的区域(称为子模型)进行分析,并应用从粗略全局模型继承的位移/应力边界条件。
图 14:子模型技术
这种多步骤方法是处理包含较小、更详细的关注区域的大型模型的好方法,而且不需要过多的计算资源。
自适应网格划分
应用了类似的概念(在需要的区域使用细网格,在其他地方使用粗网格),但它在求解过程中会自动运行。借助自适应网格划分,Abaqus 可以识别应力梯度较高的区域,并自动细化这些特定区域的网格。这有助于收敛并监控求解过程中的错误,而无需手动分析和更新网格,也无需过度细化的全局网格。
除了这些选项之外,您还可以根据需要随时随地手动细化网格, 局部网格控制 。局部网格控制允许您根据需要在特定区域输入特定的单元尺寸,同时保持全局网格的合理粗糙度。一些用户更喜欢使用局部网格控制提供的完全控制,而不是让 Abaqus 使用自适应网格自动进行这些更改。
分配网格控制
图 15:具有粗全局网格和感兴趣区域细局部网格控制
对于可靠的工程分析、设计改进和避免代价高昂的错误至关重要。周到的网格划分决策可以最大限度地减少计算问题和不切实际的变形。细化网格、使用合适的单元公式并通过敏感性研究验证结果,有助于确保您的研究能够反映实际行为。
通过应用这些最佳实践,您可以提高模型的可靠性,从而做出更自信的设计决策并构建更安全的系统。精心构建的模拟不仅仅在于生成结果,更在于确保这些结果的可信度。