OpenFOAM中搞笑的变量 和 奇怪的命名
-
编程的时候大家都知道,总需要对变量进行命名,比如:
int A;//A为变量名 double Uvelocity;//U为变量名
OpenFOAM里面存在大量的变量,有的时候变量名非常不好起,比如说OpenFOAM中有个变量叫
HbyA
,这个变量是什么意思呢?参考icoFoam解析中的公式15, 其实HbyA
就是H除A的意思。有的时候变量名还真不好理解,比如这个:
volScalarField rAU(1.0/UEqn.A());
rAU
为速度系统的对角线的倒数,但是为什么不叫成byUA
或者byAU
, 或者rUA
也不得其解。要是大家对
1.0/UEqn.A()
命名,你比较喜欢怎么称呼?我觉得byUA
挺好。
-
reciprocal?
-
@wwzhao
100%支持!:sunglasses:
-
HbyA表示H除以A。
-
fvm::Su
fvm::Sp
fvm::SuSp
其中S应该是Source的意思,u和p应该是什么意思呢?猜测是由于历史遗留问题,Su表示速度的线性化,Sp表示斜率?《数值传热学》里面用的是Sc和Sp,至少Sp对上了。或许patankar用的是Su。这样就对上了。
-
@李东岳
s: source
p: proportion
u: unproportion猜的
本质上就是个线性化和稳定化。
但是我觉得它有问题,矩阵非对角占优也可以解吧。。。
-
你觉得作为基于Volume of fraction(VOF)模型的
interFoam
中的inter
表示什么意思?interface
?
-
@李东岳 还能是啥?interphase? 估计作者也不知道取啥,就拿个共同的部分吧。
-
src/lagrangian/
下面的intermediate
为什么叫intermediate
?
-
其实HbyA就是H除A的意思
还有就是为什么叫
H
,这个H
应该表示除了压力项之外的玩意,为什么叫H
?
-
@李东岳
H是H operator,是个函数$H:R^N\to R^N$简化的搞法是H() = M-D=L+U,其实他们想玩的是单次Jacobi迭代。
另外还有个H1 = H(1)
1表示1状态向量: [1,1,1,1,...,1,1,1,1]'
参考:https://chengdi123000.github.io/2018/01/05/OpenFOAM的不可压缩流算法/#关于H1和H的区别
这个H应该是作者瞎取得,参考:http://mathworld.wolfram.com/topics/MatrixTypes.html ,H开头的词儿没有和它相对应的。
-
这个H应该表示除了压力项之外的玩意,为什么叫H?
代码中的
H
应该来自此处,然而原著也只是说是个缩写,可能确实是随便叫了个名吧。H is shorthand notation for the advective and viscous terms whose treatment is of no importance here