数值模拟 数字孪生
一、数值模拟是什么
数值模拟是指利用计算机等数值方法对某个系统或过程进行数值计算和预测的过程。数值模拟包括数值计算方法、数学模型和计算机算法三个方面。数值模拟方法是通过对实际问题建立数学模型,然后采用计算机算法对模型进行求解,得到问题的数值解。
在实际问题的研究中,数值模拟可以应用于物理、化学、生物、工程等多个领域,例如气象预报、流体力学、材料科学等。数值模拟的优点是可以预测实验不易实现的过程,节省实验成本和时间,同时可以提供更加精确和全面的信息,为科学研究和工程设计提供有力的支持。
二、数值模拟方法有哪些种
数值模拟又称数值分析方法,是用计算机程序来求解数学模型的近似解,又称计算机模拟。数值模拟技术在凝固温度场计算中的应用得益于20世纪60年代以来计算机技术的迅猛发展。
采用计算机模拟技术,不仅成功地解决并直观地表达出温度场的动态变化,而且为与热过程相关的其他质量问题的研究提供了理论依据和计算思路。
如凝固组织、凝固缺陷的评估,热应力与残余变形的预测等一系列化学、物理冶金反应过程的定量分析。
温度场的数值解法最常用的是差分法和有限元法。
三、数值模拟主要过程和步骤
第一步,分析问题,确定背后的物理机制和过程,即确定应力应变,能量迁移,流体动力学,波,电磁场还是其中某些的共同作用,这决定了有哪些物理场,物理量,和物理性质要被考虑进来。
第二步,根据物理机制和过程建立数学模型。这个数学模型说白了就是一堆方程和公式,其中有以偏微分方程为代表的控制方程和其他表达状态量之间,状态量和材料性质之间关系的附加公式。另外,初始和边界条件也要确定下来,因为我们研究的问题总是对应有限时间和有限空间大小的。
第三步,上述数学模型除非特别简单的方程和边界和初始条件,一般没有解析解(也就是用初等数学函数表达的解)。于是乎,数值离散方法就上场了,常见有有限单元法,有限体积法,和有限差分法等。这些方法所做的,就是把上建立在连续空间和时间之上的数学方程们离散成一个代数方程,一般有A*X=B的形式。X是一个矩阵。如在有限元法中,X就是在有限单元的顶点上的待求函数(因变量)的值,点的数量决定了X的矩阵大小。这里,在离散中又涉及了空间离散(网格划分)和方程离散(转连续方程为代数方程)。有些方法如有限元法者上述过程中还会附加要求推导弱形式等。
第四步,有代数方程以后,我们还需要求解它。这里面就有很多方法可供选择,比如直接法如高斯法和各种不同的迭代方法。一般除非我们是做求解器的,我们可以用很多现成的工具去求解这个代数方程,而不用再写一个求解器来求解。比如,在MATLAB中就可以使用一个再简单不过的X=A\B命令来求解。
第五步,求出了解之后,取决于你想要做什么,一般我会想知道解在某一时刻在空间内如何分布的。比如,如果我们做热传导分析,我们想到温度这个因变量是如何分布的。当然,我们也可能会想知道其他依赖于温度的材料性质如热传导系数和比热容的值,分布或者变化等。这些通过简单的计算都可以得到。一般的数值软件都提供至少基本的后处理用于显示和处理计算结果。如果自己编程的话,我们也可以使用第三方的后处理程序比如Paraview等。有些偏数学和理论的同学,没准还要做敏感性分析和误差分析,也就是看误差随某些变量和计算过程的变化,以此来推断模型,离散方法,求解器等中的错误,误差,或者性能。