设定初始场
各位不好意思,近一年来事情(毕业,读博…)有些多,而且开始主要使用wave2Foam
以及plus
版本自带的IHFoam
setWaves
命令读取setWaveDict
文件。其内容只有短短一行。
$ cat system/setWavesDict
...
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object setWavesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
alpha alpha.water;
// ************************************************************************* //
其中alpha.water
为水相。
该命令读取constant/waveProperties
文件。内容如下:
...
FoamFile
{
format ascii;
class dictionary;
location "constant";
object waveProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
origin (0 0 0); //应该是起点的意思
direction (1 0 0); //传播方向
waves
(
Airy
{
length 300; //波长
amplitude 2.5; //波幅
phase 0; //初始相位
angle 0; //入射角度
}
);
UMean (2 0 0); //流速
scale table ((1200 1) (1800 0)); //猜测为松弛区起始点,也是上面网格拉伸的起始点
crossScale constant 1; //常数 1?不理解
// ************************************************************************* //
运行完该命令后,paraFoam
中查看
可以发现,波浪在初始时刻就布满了全场。此外,从1200 m处波浪波幅开始变小,一直到0。
松弛区采用的阻尼方法在constant/fvModels
文件中定义。
该文件内容如下:
...
FoamFile
{
format ascii;
class dictionary;
location "constant";
object fvModels;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
option1
{
type isotropicDamping; //不知道这是什么类型
origin (1200 0 0); //阻尼区起点
direction (1 0 0); //方向
scale
{
type halfCosineRamp; //阻尼方法
start 0; //起点,相对位置
duration 600; //长度
}
value (2 0 0);
lambda 0.5;
}
//************************************************************************* //
该文件还提供了另一个版本,其中内容大致相同,仅有type不一样。
不太了解这两种阻尼方法与waves2Foam的松弛区技术的不同。
该命令还会读取0
文件夹下的alpha.water
与U
文件,将生成的相分数场与速度场写入0
文件夹下。
*.orig
文件起备份作用,
$ tree 0
0
├── alpha.water
├── alpha.water.orig
├── polyMesh
│ └── cellMap
├── p_rgh
├── U
└── U.orig
以下开始介绍0
文件夹内的各个边界条件及初始条件