首页 > 其他分享 >COMSOL中的求解器(1)—— 方程形式

COMSOL中的求解器(1)—— 方程形式

时间:2023-08-02 20:55:05浏览次数:29  
标签:方程 COMSOL 瞬态 求解 矩阵 Jacobian

1. 流程

COMSOL中将PDE转成ODE(瞬态仿真),再通过对时间项离散,最后获得稀疏矩阵方程,通过求解器求解。而稳态仿真则跳过上述时间离散的过程,其余与瞬态仿真求解一致。

流程如下:

瞬态:

 

稳态:

 

 

 

2. 隐式ODE,及其离散形式

 

将隐式方程L(U对时间的导数, U, t) = 0 进行离散,获得代数系统(代数方程)。默认使用后向欧拉法(隐式欧拉法),其稳定性好。COMSOL会根据精度,自动在1阶到5阶中选择。

 

 3. 非线性求解(牛顿法)

如果物性参数具有非线性,比如随温度变化。那么需要求解的就是一个非线性问题,要用牛顿法求解。

F’是标量形式,矢量形式为Jacobian矩阵。

然而牛顿法的求解是否成功,与初始值的选取有关。若初始值没选正确,会导致迭代时发散。因此,COMSOL中可以选择带阻尼的牛顿法求解。

 在COMSOL中可以选择constant 阻尼系数,也可以自动选择阻尼系数。

另外,Jacobian矩阵的更新会很耗时,因此默认使用最少次数更新Jacobian矩阵。如果遇到不收敛,可以手动调整为每次迭代都更新Jacobian矩阵。

下面是非线性求解器设置的技巧:

 

 4. 瞬态及稳态的方程小结

 

标签:方程,COMSOL,瞬态,求解,矩阵,Jacobian
From: https://www.cnblogs.com/spacerunnerZ/p/17601712.html

相关文章

  • 拉格朗日和kkt公式的应用示例 无论求解最大还是最小值,u都是>=0哈!最大是+ 最小是- 至少
    KKT这个公式一直觉得理解和使用起来很蛋疼,我又从国外站点找了一个例子帮助理解,见最后!https://o-o-sudo.github.io/numerical-methods/-kkt-lagrange-multiplier-to-kkt-condition.html 注意:拉格朗日里的lambda并没有要求>=0,kkt的u才有要求。           注意,国外这个......
  • fluent:关于湍流模型和湍流方程
    水平有限理解较为浅显,以后会进行改进。湍流数值模拟湍流数值模拟方法主要有三种:直接模拟(DNS):不需要对湍流流动建立模型,采用数值计算直接求解流动的控制方程,需要大的计算机内存和大量时间;大涡模拟(LES):大尺度直接数值求解,小尺度建立模型;雷诺时均模拟(RANS):不计算各种尺度的湍流脉......
  • 《反相必须对麦克斯韦方程组进行修改。》 回复
    《反相必须对麦克斯韦方程组进行修改。》     https://tieba.baidu.com/p/8525692641     老杨在大大前天(7/27)爆发后,  突破了  。  老杨爆发见  《旧话重提,什么是相对性原理?》    https://tieba.baidu.com/p/8510119366    32......
  • Amos 28结构方程建模软件下载和安装教程
    IBMSPSSAmos是一款强大的结构方程建模(SEM)软件,支持通过扩展标准多变量分析方法(包括回归、因子分析、相关分析以及方差分析)来支持研究和理论。使用直观的图形或程序化用户界面构建态度和行为模型,与标准多变量统计方法相比,这些模型可以更准确地反映复杂关系。软件介绍提供SEM......
  • 数据结构练习笔记——求解由单链表表示的一元多项式的值
    求解由单链表表示的一元多项式的值【问题描述】一个形如\[a_0x^0+a_1x^1+...+a_nx^n\]的一元多项式含有n+1项,每一项由系数和指数唯一确定,可表示成由系数项和指数项构成的一个二元组(系数,指数),一元多项式则可以表示成二元组的集合{(a0,0),(a1,1),(a2,2)...(an,n)},可看成是数据......
  • maxwell方程组
    Maxwell方程组是一组描述电场、磁场与电荷密度和电流密度之间关系的偏微分方程,其偏微分形式如下:式中,E为电场强度;B为磁感应强度;D为电位移矢量;H为磁场强度。maxwell方程组积分形式:(1)静电场高斯定理该方程描述了电荷如何产生电场,电场强度对任意封闭曲面的通量只取决于该封闭曲面......
  • python求四元一次方程
    求解四元一次方程的流程求解四元一次方程的过程可以分为以下几个步骤:输入方程的四个系数计算方程的判别式根据判别式的值判断方程的解的情况如果判别式大于0,则方程有两个实根,计算并输出这两个实根如果判别式等于0,则方程有两个相等的实根,计算并输出这个实根如果判别式小于0,......
  • Dijkstra 算法——求解最短路径问题
    Dijkstra算法——求解最短路径问题  迪杰斯特拉算法(Dijkstra'salgorithm)是一种用于解决单源最短路径问题的贪心算法。它可以找到从一个起始顶点到其他所有顶点的最短路径,并且适用于边的权重非负的图。算法步骤如下:创建一个数组dist,用于保存起始顶点到其他顶点的最短距离......
  • 利用模 m 的原根存在性判断以及求解
    完整资料进入【数字空间】查看——搜索"writebug"一、题目:模m的原根存在性判断以及求解。判断m原根是否存在,如存在给出一个原根以及所有原根。二、问题描述首先要判断给定模m是否存在原根,然后需要对其原根进行求解。三、数学基础①埃氏筛法,将给定范围内的素数以打表的形式求......
  • HJ107 求解立方根
    1.题目读题HJ107 求解立方根  考查点 2.解法思路 解题思路:我们可以使用二分法来求解立方根,即在一个区间内不断缩小范围,直到找到一个满足条件的数。首先,我们确定一个初始区间[0,N],然后计算区间的中点mid=(0+N)/2,判断mid的立方是否等于N,如果等于,则直接返......