いつもお世話になっております。
なかなか時間が取れずに検討途中のままでしたが、最近ちょっと
時間が作れたので再検討していますが、難航しています。
chtMultiRegionFoamのチュートリアルを参考にしてモデルを
作成、さらにソルバー実行時に出るメッセージから、alphatと
mutが不足していると考えて0フォルダに追加、systemフォルダ
のchangeDictionaryDictも修正しました。
添付の残差プロット(heat_ex2b#1_residuals.png)から分か
るように流れ解が収束していない段階の結果ですが、流速ベク
トル(heat_ex2b#1.png)がおかしいです。特に流入口付近。
時刻歴で見ると広がったりすぼまったり振動しています。
問題は
system/bottomWater/changeDictionaryDict
system/topWater/changeDictionaryDict
のalphat、mutの流入口(あるいは流出口も?)設定にあると
睨んでいます。もしかしたらepsilonやkも問題なのかも
しれません。
悲しいことにチュートリアルの設定と比較しても私のスキルでは
問題箇所が見いだせずにいます。モデルを添付しましたので
ぜひご指摘をお願いいたします。
system/bottomWater/changeDictionaryDictのみ以下に
コピペします。
----------------------------------
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.2.2 |
| \\ / A nd | Web:
www.OpenFOAM.org |
|
\\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object changeDictionaryDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dictionaryReplacement
{
T
{
internalField uniform 500;
boundaryField
{
".*"
{
type zeroGradient;
}
minZ
{
type fixedValue;
value uniform 500;
}
maxX
{
type inletOutlet;
inletValue uniform 500;
value uniform 500;
}
"bottomWater_to_.*"
{
type compressible::turbulentTemperatureCoupledBaffleMixed;
neighbourFieldName T;
kappa fluidThermo;
kappaName none;
value uniform 500;
}
}
}
U
{
internalField uniform (0 0 0);
boundaryField
{
".*"
{
type fixedValue;
value uniform (0 0 0);
}
minZ
{
type fixedValue;
value uniform ( 0 0 0.01 );
}
maxX
{
type inletOutlet;
inletValue uniform ( 0 0 0 );
value uniform ( 0.01 0 0 );
}
}
}
alphat
{
internalField uniform 0;
boundaryField
{
".*"
{
type compressible::alphatWallFunction;
Prt 0.85;
value uniform 0;
}
minZ
{
type fixedValue;
value uniform 0;
}
maxX
{
type inletOutlet;
inletValue uniform 0;
value uniform 0;
}
}
}
epsilon
{
internalField uniform 0.01;
boundaryField
{
".*"
{
type compressible::epsilonWallFunction;
value uniform 0.01;
}
minZ
{
type fixedValue;
value uniform 0.01;
}
maxX
{
type inletOutlet;
inletValue uniform 0.01;
value uniform 0.01;
}
}
}
k
{
internalField uniform 0.1;
boundaryField
{
".*"
{
type compressible::kqRWallFunction;
value uniform 0.1;
}
minZ
{
type fixedValue;
value uniform 0.1;
}
maxX
{
type inletOutlet;
inletValue uniform 0.1;
value uniform 0.1;
}
}
}
mut
{
internalField uniform 0;
boundaryField
{
".*"
{
type mutkWallFunction;
Cmu 0.09;
kappa 0.41;
E 9.8;
value uniform 0;
}
minZ
{
type fixedValue;
value uniform 0;
}
maxX
{
type inletOutlet;
inletValue uniform 0;
value uniform 0;
}
}
}
p_rgh
{
internalField uniform 1e5;
boundaryField
{
".*"
{
type fixedFluxPressure;
value uniform 1e5;
}
maxX
{
type fixedValue;
value uniform 1e5;
}
}
}
p
{
internalField uniform 1e5;
boundaryField
{
".*"
{
type calculated;
value uniform 1e5;
}
maxX
{
type calculated;
value uniform 1e5;
}
}
}
}
// ************************************************************************* //
2014年9月19日金曜日 18時04分35秒 UTC+9 art.sugawara: