CFD (差价合约) 是什么?
Scan to Download ios&Android APP
Natural Gas
还在找一位您可以信任的经纪商吗?
封闭式股份公司 Capital Com Bel 于 2019 年 3 月 19 ,193225654同时并不是为了向任何国家或地区的任何人分发或使用此类分发或使用将违反当地法律或法规。
CFD (差价合约) 是什么?
CAE(Computer Aided Engineering)指工程设计中的计算机辅助工程,指用计算机辅助求解分析复杂工程和产品的结构力学性能,以及优化结构性能等,把工程(生产)的各个环节有机地组织起来,其关键就是将有关的信息集成,使其产生并存在于工程(产品)的整个生命周期。而CAE软件可作静态结构分析,动态分析;研究线性、非线性问题;分析结构(固体)、流体、电磁等。
CAE 发展历程
CAE(Computer CFD (差价合约) 是什么? Aided Engineering)是用计算机辅助求解复杂工程和产品结构强度、刚度、屈曲稳定性、动力响应、热传导、三维多体接触、弹塑性等力学性能的分析计算以及结构性能的优化设计等问题的一种近似数值分析方法。CAE从60年代初在工程上开始应用到今天,已经历了50多年的发展历史,其理论和算法都经历了从蓬勃发展到日趋成熟的过程,现已成为工程和产品结构分析中(如航空、航天、机械、土木结构等领域)必不可少的数值计算工具,同时也是分析连续力学各类问题的一种重要手段。随着计算机技术的普及和不断提高,CAE系统的功能和计算精度都有很大提高,各种基于产品数字建模的CAE系统应运而生,并已成为结构分析和结构优化的重要工具,同时也是计算机辅助4C系统(CAD/CAE/CAPP/CAM)的重要环节。CAE系统的核心思想是结构的离散化,即将实际结构离散为有限数目的规则单元组合体,实际结构的物理性能可以通过对离散体进行分析,得出满足工程精度的近似结果来替代对实际结构的分析,这样可以解决很多实际工程需要解决而理论分析又无法解决的复杂问题。其基本过程是将一个形状复杂的连续体的求解区域分解为有限的形状简单的子区域,即将一个连续体简化为由有限个单元组合的等效组合体;通过将连续体离散化,把求解连续体的场变量(应力、位移、压力和温度等)问题简化为求解有限的单元节点上的场变量值。此时得到的基本方程是一个代数方程组,而不是原来描述真实连续体场变量的微分方程组。求解后得到近似的数值解,其近似程度取决于所采用的单元类型、数量以及对单元的插值函数。针对这种情况,表示应力、温度、压力分布的彩色明暗图,我们称这一过程为CAE的后处理。计算机辅助工程(Computer Aided Engineering,CAE)技术的提出就是要把工程(生产)的各个环节有机地组织起来,其关键就是将有关的信息集成,使其产生并存在于工程(产品)的整个生命周期。因此,CAE系统是一个包括了相关人员、技术、经营管理及信息流和物流的有机集成且优化运行的复杂的系统。
随着计算机技术及应用的迅速发展,特别是大规模、超大规模集成电路和微型计算机的出现,使计算机图形学(Computer Graphics,CG)、计算机辅助设计(Computer Aided Design,CAD)与计算机辅助制造(Computer Aided Manufacturing,CAM)等新技术得以十分迅猛的发展。CAD、CAM已经在电子、造船、航空、航天、机械、建筑、汽车等各个领域中得到了广泛的应用,成为最具有生产潜力的工具,展示了光明的前景,取得了巨大的经济效益。 [1]
CAE 基本概念
CAE软件可以分为两类:针对特定类型的工程或产品所开发的用于产品性能分析、预测和优化的软件,称之为专用CAE软件;可以对多种类型的工程和产品的物理、力学性能进行分析、模拟和预测、评价和优化,以实现产品技术创新的软件,称之为通用CAE软件。CAE软件的主体是有限元分析(FEA,Finite Element Analysis)软件 [1] 。
计算机解决工程问题
“嗯,这些方法的确可以用于计算机求解线性方程组,这些方法可以统称为直接求解法。然而在工程应用上是存在很大问题的。我们知道,为了得到比较精确的计算结果,网格数量常常非常多,直接后果就是最终的代数方程组包含的方程数量非常非常多。打个比方,如果网格数量是100万个,那么最终求解的代数方程组就有100万个方程,在利用直接法求解的过程中,需要采用100万维的矩阵进行存储,如此庞大的矩阵,消耗的内存是非常巨大的,而且其求逆计算或三角分解计算都是非常困难的,计算效率是极其低下的。因此,工程上求解这类数量庞大的方程组通常采用迭代法。”小牛师兄说。
关于迭代残差
给定一个初值,如 x(0)=(0,0,0)T ,代入到式(2)中,可以得到 x(1)=(2.5,3,3)T
迭代次数 | x1 | x2 | x3 |
---|---|---|---|
0 | 0 | 0 | 0 |
1 | 2.5 | 3 | 3 |
2 | 2.875 | 2.363636364 | 1 |
3 | 3.136363636 | 2.045454545 | 0.971590909 |
4 | 3.024147727 | 1.947830579 | 0.920454545 |
5 | 3.000322831 | 1.983987603 | 1.000968492 |
6 | 2.993753228 | 1.999970652 | 1.003841684 |
7 | 2.999028573 | 2.002620797 | 1.003130723 |
8 | 3.CFD (差价合约) 是什么? 000200118 | 2.000637857 | 0.999830514 |
9 | 3.000281568 | 1.999911822 | 0.999740477 |
10 | 3.000031814 | 1.999874019 | 0.999881261 |
11 | 2.999982442 | 1.999977637 | CFD (差价合约) 是什么?1.000015588 |
12 | 2.999987717 | 2.000007802 | 1.00001437 |
13 | 2.999999333 | 2.000005773 | 1.000004191 |
14 | 3.000001117 | 2.000000623 | 0.99999889 |
15 | 3.000000511 | 1.999999493 | 0.999999286 |
16 | 2.999999988 | 1.999999749 | 0.999999871 |
17 | 2.999999938 | 1.999999992 | 1.000000068 |
18 | 2.99999998 | 2.000000029 | 1.000000033 |
19 | 3.000000003 | 2.00000001 | 1.000000003 |
20 | 3.000000003 | 1.999999999 | 0.999999996 |
我们可以将某一物理量两次迭代计算值的差值称之为该物理量的迭代残差。比如上面的迭代计算x1的第一次迭代计算残差为2.5,第二次迭代计算后残差变为0.375。
当然上面提到的残差为绝对残差,在实际计算过程中,有时也常常采用相对残差,即物理量随迭代进行的变化量。可以看到,当残差非常小时,可以认为不用再往下计算了,或者说再往下算已经没有太大意义了。
CFD计算中的残差
最大残差:在一次迭代中,取所有网格中的残差值的最大值作为本次计算的残差。
平均残差:在一次迭代中,计算所有网格中的算术平均值作为本次迭代的残差
均方根残差:在一次计算,计算所有网格中残差值的均方根作为本次迭代计算的残差
CFD中的收敛
收敛判断规则之一:残差达到某一设定标准时可以认为迭代计算达到收敛。
- 计算区域中存在低质量的网格。低质量的网格会造成计算残差增大及残差震荡
- 边界条件设置有误。错误的边界条件或边界类型搭配都会导致计算残差震荡。
- 利用稳态求解器计算瞬态问题也会造成残差的震荡。
收敛判断规则之二:进出口物理量通量达到平衡
收敛判断规则三:计算域中的物理量随迭代进行不再发生变化
稳态及瞬态计算的收敛
在CFD迭代计算过程中,稳态残差曲线与瞬态残差曲线的形态有很大的不同。
如下图所示为稳态计算残差,每一个物理量都有一条残差曲线,当残差曲线低于设定的标准时认为计算收敛,当所有的残差曲线低于设定的标准时,计算结束。
下图所示为典型的瞬态计算残差。可以看到其形状特征与稳态残差曲线有很大的不同。瞬态计算要求在每一个计算时间步内达到收敛。若不能达到收敛,则迭代次数达到所设定的内迭代次数后进入下一个时间步,重新开启迭代计算。因此书台计算残差呈现出下图所示的锯齿状。
注意:瞬态计算要求每一个时间步内均达到收敛。
OpenFOAM
2004年12月,Henry Weller, Chris Creenshields, Mattijs Janssens通过他们创立的OpenCFD公司将FOAM开源化并发行,同时将“FOAM”更名为“OpenFOAM”。同年,Hrvoje Jasak创办了Wikki公司(2008年Henrik Rusche加入),Hrvoje Jasak的公司主要负责OpenFOAM-Extened版本的发布和管理。
2015年3月,Henry Weller,Chris Creenshields,Jenya Collings在英国雷丁创立CFD Direct,以OpenFOAM基金会的利益负责OpenFOAM的开发和管理。
OpenFOAM 主要功能
简单来讲,OpenFOAM是一个针对不同的流动编写不同的C++程序集合 [5] ,每一种流体流动都可以用一系列的偏微分方程表示,求解这种运动的偏微分方程的代码,即为OpenFOAM的一个求解器。针对一个简单的单相牛顿流体层流运动,icoFoam即可进行求解。