OpenFOAM

4.5k 主题 26.4k 帖子
  • coalChemistryFoam如何添加热解模型

    3 帖子
    1k 浏览

    多谢老师指点

  • 利用interPhaseChangeFoam的LES计算空化流动求助

    1 帖子
    759 浏览

    大家好!

    我现在利用interPhaseChangeFoam里面的LES 一方程涡粘模型 计算绕Clark-Y水翼空化流动,计算出的升力系数cl比试验值偏大一倍,总的空穴体积小与实验值。我分析是我计算的 流场压力,出了问题,我感觉主要可能是离散格式 和求解器的问题,请问谁 利用interPhaseChangeFoam里面的LES计算过水翼空化呢? 可以分享一下经验吗?

    谢谢!

    求解器设置

    /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 4.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { alpha.water { nAlphaCorr 1; nAlphaSubCycles 1; cAlpha 1; MULESCorr yes; nLimiterIter 5; solver smoothSolver; smoother symGaussSeidel; tolerance 1e-8; relTol 0; maxIter 100; } alpha.waterFinal { nAlphaCorr 1; nAlphaSubCycles 1; cAlpha 1; MULESCorr yes; nLimiterIter 5; solver smoothSolver; smoother symGaussSeidel; tolerance 1e-8; relTol 0; maxIter 100; } "U.*" { solver smoothSolver; smoother symGaussSeidel; tolerance 1e-6; relTol 0; }; ".*(rho|rhoFinal)" { solver diagonal; } pcorr { solver PCG; preconditioner { preconditioner GAMG; tolerance 1e-05; relTol 0; smoother DICGaussSeidel; } tolerance 1e-05; relTol 0; maxIter 500; } pcorrFinal { solver PCG; preconditioner { preconditioner GAMG; tolerance 1e-05; relTol 0; smoother DICGaussSeidel; } tolerance 1e-05; relTol 0; maxIter 500; } Phi { $p_rgh; relTol 0; }; p_rgh { solver GAMG; tolerance 1e-07; relTol 0.00001; smoother DIC; } p_rghFinal { solver PCG; preconditioner { preconditioner GAMG; tolerance 1e-07; relTol 0; nVcycles 2; smoother DICGaussSeidel; nPreSweeps 2; } tolerance 1e-07; relTol 0; maxIter 1000; } U { solver smoothSolver; smoother GaussSeidel; tolerance 1e-06; relTol 0; nSweeps 1; } "(U|k|omega)" { solver smoothSolver; smoother symGaussSeidel; tolerance 1e-08; relTol 0.0001; } "(T|k|B|nuTilda).*" { solver smoothSolver; smoother symGaussSeidel; tolerance 1e-08; relTol 0; maxIter 100; } "(U|k|omega)Final" { solver smoothSolver; smoother symGaussSeidel; tolerance 1e-08; relTol 0; } } PIMPLE { momentumPredictor no; transonic no; nOuterCorrectors 1; nCorrectors 2; nNonOrthogonalCorrectors 0; } // ************************************************************************* //

    离散格式设置

    /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 4.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default Euler; } gradSchemes { default Gauss linear; } divSchemes { default none; div(phi,alpha) Gauss vanLeer; div(phirb,alpha) Gauss linear; div(phi,rho) Gauss limitedLinear 1; div(rhoPhi,U) Gauss linearUpwind grad(U); div(phi,thermo:rho.water) Gauss upwind; div(phi,thermo:rho.air) Gauss upwind; div(rhoPhi,T) Gauss upwind; div(rhoPhi,K) Gauss upwind; div(phi,p) Gauss upwind; div(phi,k) Gauss upwind; div(rhoPhi,omega) Gauss limitedLinear 1; div(phi,omega) Gauss upwind; div(rhoPhi,k) Gauss upwind; div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear; } laplacianSchemes { default Gauss linear limited corrected 0.33; } interpolationSchemes { default linear; } snGradSchemes { default limited corrected 0.33; } wallDist { method meshWave; } // ************************************************************************* //
  • 并行计算无法输出结果

    1 帖子
    615 浏览

    在算例运行中出现如下提示,计算结果也不按writeInterval设置输出。请问这种情况该怎么解决

    83900b4f-bcfd-480d-a512-145f554ffaf7-image.png

  • 涡激振动振幅监测

    2 帖子
    921 浏览

    @VamosZhi 忘说了,是OpenFOAM,用的pimpleDyMFoam

  • 大网格-奇怪报错

    8 帖子
    8k 浏览

    @白礼耕 “”应该只是报警不是报错。

    时间好久了,当时好像用到的命令:

    mpiexec --mca mpi_warn_on_fork 0 -n 288 pisoFoam -parallel > 0-pisoFoam_LES_288_${PBS_JOBID}.out
  • OpenFoam求解不可压RANS方程的压力问题

    6 帖子
    2k 浏览

    哦,那就是和层流计算时的压力有区别了。

  • 感谢李老师!

    3 帖子
    1k 浏览

    感谢 :wolaile:

  • partialSlip

    1 帖子
    490 浏览

    请问大家知道partialSlip的使用格式么,我在tutorials中没有找到,谢谢!

  • 距壁面第二个网格中心速度代码求助

    5 帖子
    2k 浏览

    这个问题主要是找到边界面正对的面,然后通过neighbor-owner找到单元。可以通过边界面的点找到共点的edge,然后找到另一顶点,再来查找面。呃,好像有点繁琐。第二个可以通过particle类,将边界面法相取反作为位移方向,edge长度作为位移,trackToFace找到面。记得用labelPair保存相邻单元。

  • 3 帖子
    1k 浏览

    @yfclark 谢谢你的建议,我去了解了解。

  • 3 帖子
    2k 浏览

    https://github.com/OpenFOAM/OpenFOAM-6/blob/master/src/TurbulenceModels/turbulenceModels/linearViscousStress/linearViscousStress.C 这里面计算的散度

    template<class BasicTurbulenceModel> Foam::tmp<Foam::fvVectorMatrix> Foam::linearViscousStress<BasicTurbulenceModel>::divDevRhoReff ( volVectorField& U ) const { return ( - fvc::div((this->alpha_*this->rho_*this->nuEff())*dev2(T(fvc::grad(U)))) - fvm::laplacian(this->alpha_*this->rho_*this->nuEff(), U) ); }
  • reactingmultiphaseEulerFoam中的表面张力实现

    1 帖子
    668 浏览

    各位老师好,我最近研究了一下reactingmultiphaseEulerFoam,对其中的表面张力的计算有一些困惑:
    在pEqn.H中定义了:

    phigFs.set ( phasei, ( alpharAUfs[phasei] *( ghSnGradRho - (fvc::interpolate(phase.rho() - rho))*(g & mesh.Sf()) - fluid.surfaceTension(phase)*mesh.magSf() ) ).ptr() );

    最后通过该式更新各项的速度:

    mSfGradp = pEqnIncomp.flux()/rAUf; forAll(phases, phasei) { phaseModel& phase = phases[phasei]; phase.U() = HbyAs[phasei] + fvc::reconstruct ( alpharAUfs[phasei]*mSfGradp - phigFs[phasei] ); phase.U().correctBoundaryConditions(); fvOptions.correct(phase.U()); }

    我个人推导的公式为:
    78b21ff7-7858-4542-a777-3f2e993f3957-image.png
    代码里面实现的公式为:
    efa31825-beb7-4ee1-8483-980d46400369-image.png
    表面张力项多了一个alpha,请大佬看看,不知道是我推导错了还是代码有bug
    @东岳
    reactingtwophaseEulerFoam中的式(20)和式(21)有个地方符号有问题:
    d07eb439-d134-41ab-862d-944dc3a3efd9-image.png
    最后压力项前应该为$-\alpha_{d}$

  • New snappyHexMesh directional stretching

    5 帖子
    2k 浏览

    多次尝试,终于搞定了,打扰了

  • 1 帖子
    758 浏览

    80a6ed67-6d71-4c4f-9c0b-de7dd78ac863-image.png
    如图左侧进口压力为0梯度,来流速度为抛物线分布,上下两边为0,中间最大。中点处速度从零开始平缓增大至最大值,其随时间的变化规律如下式,请问这种情况如何设置0文件夹下的边界条件呢?谢谢
    4956dd8a-7642-4853-9570-74be9dab8073-image.png

  • 在不同的block中设置不同的物性参数

    2 帖子
    1k 浏览

    自问自答一波:
    我现在感觉好像是检查constant/porosityProperties 文件里面的字典. 只要里面存在字典 cellZone(键) 对应的 name_(值)的block就被当作是多孔介质, 然后通过

    cellZoneID = mesh.cellZone().indices(name_)

    这个函数来确认该区域的ID
    上述内容是在
    porosityModel.H porosityModel.C中感觉到的.但是没有找到实质的证据.

  • TwoPhaseEulerFOAM的一些小问题

    11 帖子
    3k 浏览

    @东岳 明白了,谢谢东岳老师

  • 怎样统计多相流计算中物体的受力

    16 帖子
    8k 浏览

    @王金成 我用的1812,可以编译SWAK,不过需要自己做些配置,不然会报错,过段时间我写个教程。

  • List类的问题

    5 帖子
    2k 浏览

    @浪迹天大 谢谢您! 问题解决了

  • 怎么跳过runtimeSlector直接使用模型

    3 帖子
    1k 浏览

    @东岳 把基类重写了一遍,实现了我想要的功能,虽然麻烦,但是相当于在Cloud里面添加功能,对原有的代码结构基本没有影响,还算不错的思路。

  • fieldAverage怎样对指定时间范围求时均?

    8 帖子
    4k 浏览

    @hy1112006 谢谢,之前网址打不开,没有看见里面内容,今天基本看懂了。

  • Paraview中如何输出焓值和熵值?

    6 帖子
    3k 浏览

    @qjh888 您好,不知道您如何更新的solver?方便讲一下吗?最近我也在做相关的事情。

  • 求助一些FireFoam的学习资料

    1 帖子
    698 浏览

    各位CFD朋友,目前我想学习一下firefoam,但是baidu搜到的资料实在有限,如果方便的话能否提供一些算例资料给我,谢谢大家。

  • 1 帖子
    616 浏览

    在求解可压缩流动时,出现了如下情况:导致最终结果发散,可能是哪个参数的问题呢?

    rhoEqn max/min : 1.21419 0
  • 东岳老师最近做的DNS验证算例疑惑点

    13 帖子
    4k 浏览

    @东岳 请问东岳老师,可以用速度基求解器比如rhoCentralFoam求解这个算例么?还得加个温度去解压力?
    没算过DNS,望指点!谢谢!

  • simpleFoam中的 rAtU

    8 帖子
    4k 浏览
  • 5 帖子
    2k 浏览

    @东岳 谢谢李老师,ABL是大气边界层,是风场的边界条件,

  • 3 帖子
    1k 浏览

    已经解决了。谢谢您。可能是自己安装的经验不够吧。

  • 2 帖子
    2k 浏览

    滤镜-time annodate
    即可

  • 咨询,关于文件读写的问题

    10 帖子
    3k 浏览

    :tishizi:

  • 8 帖子
    2k 浏览

    谢谢,谢谢。

  • OF的湍流模型怎么改湍流普朗特数?

    6 帖子
    3k 浏览

    @程迪 程老师您好,请问您知道如何把Prt定义成某个表达式吗?

  • 湍流算例porousBlockage出现错误

    1 帖子
    693 浏览

    东岳老师好,大家好:
    我是正在学习OpenFOAM的新手
    最近在学习模拟湍流时运行pisoFoam下自带算例porousBlockage时出现错误:

    Create time Create mesh for time = 0 Reading field p Reading field U Reading/calculating face flux field phi Selecting incompressible transport model Newtonian Selecting turbulence model type laminar Selecting laminar stress model Stokes No MRF models present Creating finite volume options from "constant/fvOptions" Selecting finite volume options model type explicitPorositySource Source: porosity1 - selecting cells using cellZone porousBlockage --> FOAM FATAL ERROR: Cannot find cellZone porousBlockage Valid cellZones are 0() From function void Foam::fv::cellSetOption::setCellSet() in file cellSetOption/cellSetOption.C at line 142. FOAM exiting

    请问是什么原因呢?

    此外,还想问一下,如果使用标准k-epsilon模型(RAS算例下)模拟湍流,进出口使用什么条件比较合适呢?

  • 动网格设置两块旋转域问题?

    1 帖子
    751 浏览

    如果想要设置两块旋转域(对转),dynamicMeshDict应该怎么编写呢?我像下面那样编写,结果只有sector_part2旋转。

    dynamicFvMesh dynamicMotionSolverFvMesh; motionSolverLibs ("libfvMotionSolvers.so"); motionSolver solidBody; cellZone sector_part1; solidBodyMotionFunction rotatingMotion; origin (0 0 0); axis (0 0 1); omega 112.573737; // rad/s cellZone sector_part2; solidBodyMotionFunction rotatingMotion; origin (0 0 0); axis (0 0 1); omega -112.573737; // rad/s

    正确的编写形式应该是怎样的呢?

  • 3 帖子
    1k 浏览

    @星星星星晴

    :wolaile: 没太细看哈不过

    我需要return dClass,PUr和PUz。

    你可以把这三个打包成一个struct或者class,而不是三个哦,然后返回这个struct或者class,差不多这种

    class test { public: scalar A_; scalar B_; } test returnFunction(test& f) { f.A_ = 1; f.B_ = 2; return f; }
  • 复杂几何体的绘制

    1 帖子
    642 浏览

    想问一下,针对复杂几何,大家都用什么软件画然后导入啊?

  • paraview显示网格的问题

    2 帖子
    1k 浏览

    还没关注过这个问题 :xinlei:

  • 使用KomegaSST模型做湍流模拟的y+值

    1 帖子
    964 浏览

    对于使用KomegaSST模型作低雷诺数的湍流管流模拟,当y+值小于1时,是不是可以认为网格足够精细,无需再细化?
    另外k omega nut三个量大概在哪个范围内合理?我的结果大概是以下:

    k 10的负3次方

    omega 最大50w+,最小500左右
    nut 10的负10到负5次方

  • 6 帖子
    3k 浏览

    这里整理了一些 找对象 的诀窍:xinxin:

  • forAll boundary

    3 帖子
    1k 浏览

    应该是Sb.boundaryField() 返回const reference
    Sb.boundaryField().ref() 返回 reference
    根据我的经验是这样,如果错误的话把编译错误贴上来
    认真看看代码很简单的,编译器的错误已经告诉你所有信息了!

  • 关于nutkAtmRoughWallFunction中nutw公式的疑问

    2 帖子
    1k 浏览

    《A Thorough Description Of How Wall Functions Are Implemented In OpenFOAM》一文2.6节描述了nutWallFunction,nutAtmRoughWallFunction中nutw公式与之相同,其他量有改变,我再看看。

  • 压力驱动的方腔流动

    1 帖子
    709 浏览

    最近计算一个方腔流动遇到一些问题,这个流动沿流向(x方向)是周期性边界,yz方向是壁面,流动固定x方向的平均速度,自动求解压力梯度,在采用rans计算时是正常的,可以计算出一个合理的结果

    pressure gradient = 0.179097

    但是当采用PANS(自己编译的湍流模型)计算的时候,压力梯度会变得非常小,导致计算结果很差,

    pressure gradient = 0.0903267

    自己编译的模型可以在channel395中正常计算,但是在该算例中出现压力的降低,不知道是什么原因引起的

  • bubbly flow printStack error

    6 帖子
    2k 浏览
    [2] [1] ##00 [38] #0 Foam::error::printStack(Foam::Ostream&)Foam::error::printStack(Foam::Ostream&)Foam::error::printStack(Foam::Ostream&) at ??:? [38] #1 Foam::sigFpe::sigHandler(int) at at ??:???:? [1] [2] ##11 Foam::sigFpe::sigHandler(int)Foam::sigFpe::sigHandler(int) at ??:? [38] #2 ? at ??:? [2] #2 ? at ??:? [1] #2 ? in "/lib64/libpthread.so.0" [38] #3 ? in "/lib64/libpthread.so.0" [2] #3 ? in "/lib64/libpthread.so.0" [1] #3 ? in "/lib64/libm.so.6" [38] #4 ? in "/lib64/libm.so.6" [2] #4 ? in "/lib64/libm.so.6" [1] #4 ? in "/lib64/libm.so.6" [38] #5 ? in "/lib64/libm.so.6" [2] #5 ? in "/lib64/libm.so.6" [1] #5 ? in "/lib64/libm.so.6" in "/lib64/libm.so.6" in "/lib64/libm.so.6" _pmiu_daemon(SIGCHLD): [NID 00126] [c0-0c1s15n2] [Tue Jul 9 10:43:27 2019] PE RANK 38 exit signal Floating point exception _pmiu_daemon(SIGCHLD): [NID 00082] [c0-0c1s4n2] [Tue Jul 9 10:43:27 2019] PE RANK 1 exit signal Floating point exception [NID 00126] 2019-07-09 10:43:27 Apid 8697814: initiated application termination

    I have tried it again, the same problem occurs.
    Last time i have used shear gradient boundary, and this time i just use zeroGraident. However, ....

    I guess. the problem is the signal floating exception???

    Tks

  • 9 帖子
    3k 浏览

    @队长别开枪

    谢谢您的建议,感觉这个方案可行。 我尽早试试,给您答复。。。

    谢谢

  • 怎样在waves2Foam中增加新的自定义波浪类型?

    3 帖子
    1k 浏览

    把你的新库通过controlDict挂载一下,在controlDict里面添加

    libs ( "libnew1.so" "libnew2.so" );
  • SPARTA

    1 帖子
    605 浏览

    有没有老哥用过SPARTA这个软件,有没有什么好的入门读物推荐呀?谢谢啦(不知道帖子该放哪就发到这里了)

  • 关于分步法和PISO算法

    5 帖子
    3k 浏览

    @夏雨天 你把7.55-57三个方程加起来,就会发现他们用的是C-N格式,三者加和是7.59。在书上179页最底下也说啦 :duang:

  • 数值模拟时间与实验时间不符合的问题

    5 帖子
    3k 浏览

    @东岳 谢谢东岳老师的关心,后来还是有点进展,不过进度不是很大,现在所走的路就是修改求解器,文章还没有出来。等出来之后我会详细说下这个问题。

  • 2 帖子
    818 浏览

    看起来只不过是模拟准确不准确的问题哦?可能下图模拟出来就是这样啊

  • 关于CFDEM学习资料

    3 帖子
    2k 浏览

    @东岳 我这边主要想做岩土工程灾害的模拟,比如泥石流、滑坡这种,DPMFoam可能不合适。

  • DNS中间结果疑惑点

    5 帖子
    2k 浏览

    原实验论文里面把这个case称作‘subturbulent’,雷诺数是6020,T0 = 297.15 K,
    P0 = 0.0927 MPa, D = 0.0274 m,V0=3.73 m/s,文中好像有讲到流动有趋于层流的趋势。