在OpenFOAM中一般使用的是国际单位,分别为:
数目 | 描述 | 单位 | 符号 |
1 | Mass | kilogram | kg |
2 | Length | meters | m |
3 | Time | second | s |
4 | Temperature | Kelvin | K |
5 | Quantity | moles | mol |
6 | Current | ampere | A |
7 | Luminuous intensity | candela | cd |
在OpenFOAM中表示形式为dimensionSet (kg, m, s, K, mol, A, cd)。下面将一些常用物理量的单位整理成用OpenFOAM中单位表达的形式,方便在代码中实现:
物理量 | 原始单位 | 用OpenFOAM表示的形式 |
压力 | ||
速度 | ||
温度 | ||
浓度 | ||
体积力 | ||
表面应力张量 | ||
导热率 | ||
扩散系数 | ||
能量源项 | $$kg^{1}\cdot m^{-1}\cdot s^{-3}$$ | |
密度 | ||
动力粘度 | ||
运动粘度 | ||
比热容 | ||
膨胀系数 | ||
重力加速度 | ||
理想气体常数 | ||
摩尔质量 | ||
熔化潜热 | ||
活化能 | ||
雷诺数 | - | - |
上表中变量的单位整理成OpenFOAM的形式后,其中未出现的国际单位用0表示,例如压力单位在代码中的形式为:dimensionSet (1, -1, -2, 0, 0, 0, 0),可以看出dimensionSet中的值为量纲的指数,且按照表1中的顺序取值。
如果需要去掉某个volScalarFiled变量的量纲,可以使用命令p.dimensions().reset(dimless),其中p为volScalarFiled类型的变量。