scalar maxAlphaCo ( runTime.controlDict().get<scalar>("maxAlphaCo") ); scalar maxAlphaDdt ( runTime.controlDict().getOrDefault("maxAlphaDdt", GREAT) ); scalar maxDi ( runTime.controlDict().getOrDefault<scalar>("maxDi", GREAT) ); scalar alphaCoNum = 0.0; scalar meanAlphaCoNum = 0.0; scalar ddtAlphaNum = 0.0; scalar DiNum = 0.0; if (mesh.nInternalFaces()) { scalarField sumPhi ( fluid.nearInterface()().internalField() *fvc::surfaceSum(mag(phi))().internalField() ); alphaCoNum = 0.5*gMax(sumPhi/mesh.V().field())*runTime.deltaTValue(); meanAlphaCoNum = 0.5*(gSum(sumPhi)/gSum(mesh.V().field()))*runTime.deltaTValue(); ddtAlphaNum = fluid.ddtAlphaMax().value()*runTime.deltaTValue(); DiNum = fluid.maxDiffNo(); } Info<< "Interface Courant Number mean: " << meanAlphaCoNum << " max: " << alphaCoNum << endl; Info<< "Maximum ddtAlpha : " << ddtAlphaNum << endl; Info<< "Maximum DiffNum : " << DiNum << endl;
时间: 2024-01-04 11:03:19 浏览: 77
Scalar-List-Utils-1.60.tar.gz
这段代码主要是计算界面库朗特数(Interface Courant Number)、最大界面变化率(ddtAlpha)和最大扩散数(DiffNum)等参数,并输出到屏幕上。
其中,maxAlphaCo、maxAlphaDdt、maxDi 分别表示界面库朗特数、最大界面变化率和最大扩散数的阈值。如果超过了阈值,则会进行相应的限制或警告。
接着,通过计算各个场量的平均值和最大值,得到界面库朗特数的数值。其中,sumPhi 表示相应场量的总和,mesh.V().field() 表示网格单元的体积,gMax 和 gSum 分别表示全局最大值和总和。
最后,通过 Info 输出计算结果到屏幕上。
阅读全文