本发明涉及网格模型构建,特别是涉及一种基于能量误差估计的自适应分析方法及系统。
背景技术:
1、随着工程问题例如:应力高度集中的问题以及具有奇异性的裂纹问题等,越来越复杂,数值方法所需要计算的离散模型越来越庞大,例如空中客车a380型飞机模型的网格点数目超过了一亿个,网格数量更加庞大,这直接造成计算时间过长,不利于工程中产品前期的分析及优化。
2、现代数值分析技术正朝着高效、高精度、低成本和高性能等方面发展,传统的分析技术是对离散模型整体进行均匀加密建模,然而,基于均匀网格尺寸的离散模型很难精确刻画场变量变化非常剧烈的高梯度区域,为了获得更高的求解精度,只能采用均匀加密细分的方法不断的缩小网格尺寸对离散模型进行均匀加密建模,然而均匀加密细分方法不仅不能精确分析高梯度区域,而且还带来了巨大的计算量,使得复杂工程问题的分析受到了极大的限制,因此现在亟需一种更好的建模方法在实现高精度的同时降低建模的计算量。
技术实现思路
1、本发明的目的是提供一种基于能量误差估计的自适应分析方法及系统,可在实现高精度的同时降低建模的计算量。
2、为实现上述目的,本发明提供了如下方案:
3、一种基于能量误差估计的自适应分析方法,包括:
4、在当前迭代次数下,对于当前迭代次数下待建模物体的离散网格模型中的任意一个三角形网格,计算所述三角形网格中每两个网格点之间的应力差与应变差的能量值,得到能量值集合;所述离散网格模型由多个三角形网格构成;
5、确定目标能量值为所述三角形网格的误差估计因子;所述目标能量值为所述能量值集合中最大的能量值;
6、对误差估计因子大于局部剖分阈值的所有三角形网格进行加密细分得到下一迭代次数下待建模物体的离散网格模型,并更新迭代次数进入下次迭代,直到达到设定迭代次数,得到待建模物体最终的网格模型;所述局部剖分阈值是根据当前迭代次数下所述待建模物体的离散网格模型中各三角形网格的误差估计因子以及各三角形网格点的面积确定的。
7、可选的,计算所述三角形网格中每两个网格点之间的应力差与应变差的能量值,具体包括:
8、对于所述三角形网格中任意两个网格点,计算两个网格点在x方向上的应力分量之差、在y方向上的应力分量之差、在z方向上的应力分量之差、在x方向上的应变分量之差、在y方向上的应变分量之差和在z方向上的应变分量之差;
9、根据两个网格点在x方向上的应力分量之差、在y方向上的应力分量之差、在z方向上的应力分量之差、在x方向上的应变分量之差、在y方向上的应变分量之差和在z方向上的应变分量之差计算两个网格点之间的应力差与应变差的能量值。
10、可选的,所述局部剖分阈值的计算公式为:
11、其中,earea表示局部剖分阈值,表示第ne个三角形网格的误差估计因子,表示第ne个三角形网格的面积。
12、可选的,对误差估计因子大于局部剖分阈值的所有三角形网格进行加密细分得到下一迭代次数下待建模物体的离散网格模型,具体包括:
13、对于任意一个三角形网格,判断所述三角形网格中是否存在目标边,得到第一判断结果;所述目标边为所述三角形网格中与所述离散网格模型的边界重合的边;
14、若所述第一判断结果为否,则确定所述三角形网格的形心,将所述形心分别与所述三角形网格上的所有网格点连接;
15、若所述第一判断结果为是,则确定所述三角形网格点的形心,以及目标边的中心,将所述形心分别与所述三角形网格上的所有网格点以及所述目标边的中心连接。
16、可选的,根据两个网格点在x方向上的应力分量之差、在y方向上的应力分量之差、在z方向上的应力分量之差、在x方向上的应变分量之差、在y方向上的应变分量之差和在z方向上的应变分量之差计算两个网格点之间的应力差与应变差的能量值,具体包括:
17、根据公式计算两个网格点之间的应力差与应变差的能量值,其中,e12表示第1个网格点与第2个网格点之间的应力差与应变差的能量值,表示第1个网格点与第2个网格点在x方向上的应力分量之差,表示第1个网格点与第2个网格点在x方向上的应变分量之差,表示第1个网格点与第2个网格点在y方向上的应力分量之差,表示第1个网格点与第2个网格点在y方向上的应变分量之差,表示第1个网格点与第2个网格点在z方向上的应力分量之差,表示第1个网格点与第2个网格点在z方向上的应变分量之差。
18、一种基于能量误差估计的自适应分析系统,包括:
19、能量值集合确定模块,用于在当前迭代次数下,对于当前迭代次数下待建模物体的离散网格模型中的任意一个三角形网格,计算所述三角形网格中每两个网格点之间的应力差与应变差的能量值,得到能量值集合;所述离散网格模型由多个三角形网格构成;
20、误差估计因子计算模块,用于确定目标能量值为所述三角形网格的误差估计因子;所述目标能量值为所述能量值集合中最大的能量值;
21、网格细分模块,用于对误差估计因子大于局部剖分阈值的所有三角形网格进行加密细分得到下一迭代次数下待建模物体的离散网格模型,并更新迭代次数进入下次迭代,直到达到设定迭代次数,得到待建模物体最终的网格模型;所述局部剖分阈值是根据当前迭代次数下所述待建模物体的离散网格模型中各三角形网格的误差估计因子以及各三角形网格点的面积确定的。
22、可选的,所述能量值集合确定模块,具体包括:
23、应力分量之差与应变分量之差计算单元,用于对于所述三角形网格中任意两个网格点,计算两个网格点在x方向上的应力分量之差、在y方向上的应力分量之差、在z方向上的应力分量之差、在x方向上的应变分量之差、在y方向上的应变分量之差和在z方向上的应变分量之差;
24、应力差与应变差的能量值计算单元,用于根据两个网格点在x方向上的应力分量之差、在y方向上的应力分量之差、在z方向上的应力分量之差、在x方向上的应变分量之差、在y方向上的应变分量之差和在z方向上的应变分量之差计算两个网格点之间的应力差与应变差的能量值。
25、可选的,所述局部剖分阈值的计算公式为:
26、其中,earea表示局部剖分阈值,表示第ne个三角形网格的误差估计因子,表示第ne个三角形网格的面积。
27、可选的,所述网格细分模块,具体包括:
28、判断单元,用于对于任意一个三角形网格,判断所述三角形网格中是否存在目标边,得到第一判断结果;所述目标边为所述三角形网格中与所述离散网格模型的边界重合的边;
29、第一网格细分单元,用于若所述第一判断结果为否,则确定所述三角形网格的形心,将所述形心分别与所述三角形网格上的所有网格点连接;
30、第二网格细分单元,用于若所述第一判断结果为是,则确定所述三角形网格点的形心,以及目标边的中心,将所述形心分别与所述三角形网格上的所有网格点以及所述目标边的中心连接。
31、可选的,应力差与应变差的能量值计算单元,具体包括:
32、根据公式计算两个网格点之间的应力差与应变差的能量值,其中,e12表示第1个网格点与第2个网格点之间的应力差与应变差的能量值,表示第1个网格点与第2个网格点在x方向上的应力分量之差,表示第1个网格点与第2个网格点在x方向上的应变分量之差,表示第1个网格点与第2个网格点在y方向上的应力分量之差,表示第1个网格点与第2个网格点在y方向上的应变分量之差,表示第1个网格点与第2个网格点在z方向上的应力分量之差,表示第1个网格点与第2个网格点在z方向上的应变分量之差。
33、根据本发明提供的具体实施例,本发明公开了以下技术效果:
34、本发明根据三角形网格中每两个网格点之间的应力差与应变差的能量值,得到三角形网格的误差估计因子;对误差估计因子大于局部剖分阈值的所有三角形网格进行加密细分得到待建模物体的离散网格模型,只对符合条件的三角形网格进行细分,不需要对所有网格进行细分;局部剖分阈值是根据各三角形网格的误差估计因子以及各三角形网格点的面积确定的,并不是预设的,本发明可在实现高精度的同时降低建模的计算量。