OpenFOAM

4.5k 主题 26.2k 帖子
  • 请教一个代码IOdictionary_H

    4 帖子
    2k 浏览

    @刘雄国 对,我是说没有功能上的作用

  • In solid-water flow

    6 帖子
    1k 浏览

    @kimyIn solid-water flow 中说:

    interphase slip agebrism

    Never heard of that

    That's internal field, a good approximation is good for convergence. From your depiction I feel you need to learn more about the general CFD knowledge. You can definitely feel that the lacking of CFD theory is holding you back now

  • 将高精度插值格式加到OF中

    13 帖子
    9k 浏览

    @hangsz 非结构有限体积也有高精度格式

  • Mesh generator讨论

    3 帖子
    1k 浏览

    @wwzhao 原来是这样,icem软件的六面体导出网格前都要转成非结构,应该就是为了适应fluent中的非结构计算。

  • 请教:cloudFunction 编译问题

    5 帖子
    2k 浏览

    @刘雄国 我知道这个网站,之前就看了一些,现在是OpenFOAM的版本差的有点多,之前的cloudFunctions是单独编译的,这样就很好弄,但是现在的是和liblagrangianIntermediatemy.so放在一起编译的,包含很多程序,我不知道在/src/lagrangian/intermediate/Make/file 里面哪个地方是指定的对于cloudFunctions 的编译。

  • 关于时变边界条件中的polynomial设置

    1 帖子
    659 浏览

    在Openfoam中的时变边界条件中的多项式设置如图
    a244f322-80ca-4bf8-99ab-670cd38326c9-image.png
    如何实现在多项式上添加时间段的限制
    例如:0<t<1,velocity = 0.1 + 1.3x^2 + 2.7x^3
    1≤t<2,velocity = 2x^2 + 22x^3
    这种应该如何添加时间段限制

  • 今天准备这么个算例,感觉相当神奇..

    1 帖子
    763 浏览

    拉格朗日taylor-green涡中运动,好酷炫

    image.jpg

  • 想在边界添加一个指向圆心的速度

    4 帖子
    2k 浏览

    @东岳 试了一下,等待结果中~

  • 请教“icoFoam解析”中的问题

    2 帖子
    1k 浏览

    多谢,已修正方程6、8、11、12、13 :xiexie:

  • 求助:.msh网格转换错误。

    2 帖子
    844 浏览

    回头试了下,用ICEM画就可以转换成功。

  • 并行运行算例遇到的问题

    9 帖子
    3k 浏览

    是不是用户的问题,切换其他用户试试?

  • 关于OpenFOAM的残差定义问题请教

    6 帖子
    3k 浏览

    不太清楚,可能需要去看一下代码了。

  • DPMFoam 计算时出现奇怪报错

    7 帖子
    2k 浏览

    @东岳 wo我把除了inlet和outlet的patch都改为stick,然而一样的结果,一样的报错信息。

  • LU-SGS求解器

    34 帖子
    26k 浏览

    @程迪
    您好,有个问题想请教您。看到您在《OpenFOAM的残差定义》一文中提到了残差定义方式:https://chengdi123000.github.io/2018/01/04/OpenFOAM的残差定义/
    804487c1-8422-49c6-a9b1-116b1949a77f-image.png
    关于分母normFactor,有些疑问,不知道为什么要这样定义,有什么数学上的原理吗?
    谢谢!

  • OpenFOAM与python的耦合

    6 帖子
    4k 浏览

    @东岳 请问李老师,turbulence->correct()中的correct()函数具体是怎么实施的?源码在哪里可以找到?谢谢

  • paraview中如何求液滴的表面积

    4 帖子
    1k 浏览

    是的,你说的非常正确,我也考虑好久了,但一直没精力搞呢..

  • 2 帖子
    1k 浏览

    @Dingcy 我再推荐几本书哈,一本Patankar的Numerical Heat Transfer and Fluid Flow,印象中前半本针对finite difference,后半本针对finite volume(这本特别适合初学理论又不想看特别难的,相当平实的语言);还有一本Tannehill, Anderson, Pletcher的Computational Fluid Mechanics and Heat Transfer,这本可以当工具书用,大而全,倒不适合使劲的啃。当然还有Ferziger, Peric的那本Computational Methods for Fluid Dynamics,这本我个人感觉挺好的,就是需要你对张量符号、运算之类的比较熟悉,不然看起来经常会纠结于细节上的推导而忽略了物理和数学过程。

    你用了两年半OpenFOAM了,应该是想让它实现什么功能都能很快做到(或者至少知道怎么去找相关的资料),不如在数值计算的理论方面多下下功夫。个人建议仅供参考。

  • 周期边界的pressure gradient如何确定?

    1 帖子
    714 浏览

    想要用周期边界获得想要的雷诺数,pressure gradient应该怎么获取呢?请高手解惑,谢谢。 一个简单管道流,进出口设置的周期性边界,模拟充分发展

  • 21 帖子
    7k 浏览

    @youmengtian 您好!我完整的格式是这样的:laile:

    /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org \\ / A nd | Version: 6 \\/ M anipulation | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // fluxScheme Tadmor;// Kurganov; ddtSchemes { default Euler; } gradSchemes { default cellMDLimited Gauss linear 1.0; } divSchemes { default none; div(tauMC) Gauss linear; div(phi,nuTilda) Gauss linearUpwind limited; } laplacianSchemes { default Gauss linear corrected; } interpolationSchemes { default linear; } snGradSchemes { default corrected; } wallDist { method meshWave; }
  • 关于piso循环的二次修正的一个疑问

    25 帖子
    16k 浏览

    @wwzhao关于piso循环的二次修正的一个疑问 中说:

    OpenFOAM认为在低库朗数情况下,动量方程中的非线性项 ∇⋅(uu)∇⋅(uu)\nabla \cdot (\textbf u \textbf u) 对系统的影响远比速度压力耦合对系统的影响小,因此在循环时不更新速度。

    请问,这样是不是意味着:
    PISO算法中,每一时间步最终迭代后所满足动量方程的对流项 fvm::div(phi,U),其中phi为上一时间步的值,U为该时间步的值。

  • LHS and RHS of + have different dimensions

    16 帖子
    12k 浏览

    @Foamer24

    你回贴的这俩位我还有点印象,2016年的时候他们俩研究的还很深刻,后来就没怎么来过。不知道最近怎么样了,有没有在CFD。我有种预感他俩是不是转行了...

  • 关于vof计算气层减阻的创新点探讨

    10 帖子
    3k 浏览

    各位气泡减阻的专家们,有几个问题咨询:

    Mohanarangam2009这篇文章中,指出kEpsilon模型会预测比较大的壁面相分数,kOmegaSST模型会更好,是否有专家见过用kEpsilon模拟气泡减阻的SCI?

    同样在这篇文章中,只用了曳力来模拟,是否有专家见过附加湍流分散力来模拟的SCI?

    是否有专家见过讨论网格分辨率和结果关系的SCI?

    谢谢各位教授!
    :xiexie:

  • 7 帖子
    6k 浏览

    您好!厉害厉害,没想到openfoam还可以集成DG。请问这个求解器还暂时只适用于二维吗?

  • 有没有外推边界条件

    5 帖子
    2k 浏览

    @adcpk有没有外推边界条件 中说:

    extrapolated from the flow in the interior

    看起来像ze'roGradient,不太确定哈

  • fluent的压力出口边界条件

    1 帖子
    951 浏览

    在openfoam中有没有和fluent压力出口对应的边界条件,压力温度速度分别对应什么

  • 72 帖子
    59k 浏览
  • Openfoam输出文件

    2 帖子
    1k 浏览

    @liailei0627Openfoam输出文件 中说:

    有没有办法直接编程非常简单的,ASCII,没有括号,和上面的字头等,只是单纯的数字。

    太简单了。你把openfoam当成C或者C++,在C里面怎么写代码就怎么写啊。

    只要你不用openfoam语言输出(例如auto_write这种),完全可行。

  • OpenFOAM残差监控的疑问

    4 帖子
    2k 浏览

    @D-Benjamin :ok: 谢谢 明白啦

  • converge cfd 理论手册

    6 帖子
    3k 浏览

    感谢,好人一生平安

  • 改写interFoam中的ghf

    3 帖子
    1k 浏览

    @东岳 万分感谢!

  • rhoCentralFoam版本更替的交流

    3 帖子
    1k 浏览

    @sibo :ok: 厉害厉害,第一个问题理解啦

  • 如何在每个时间步更新边界条件

    5 帖子
    2k 浏览

    @Foamer24 感谢回答,您觉得Groovy可以解决我的问题, 一是添加扰动,二是基于流场状态反馈得到入口条件,并在每个时间步上添加。 对Swak4Foam没用过,还请赐教

  • 自定义函数求助

    2 帖子
    920 浏览

    问题 稍微解决,,将symmetry边界换成wall边界,使用zeroGradient 可以算了,,先算 再看

  • openfoam中bounded和unbounded的区别

    7 帖子
    2k 浏览

    代码中的描述的作用是为了使求解稳定,在原有格式的基础上减去了 fvm::Sp(fvc::surfaceIntegrate(faceFlux), vf) ,而计算收敛的时候该项为0,所以理论上应该不会影响精度。

  • [菜鳥求救] K-omega SST 头几秒就崩溃了

    18 帖子
    6k 浏览

    @jinjolee openFOam里的湍流模型有些时候确实不好用。(1)用你现在的条件计算出k、omega和nut的值,保证初始场initialValue也等于计算出的值;(2)检查壁面函数是否合适;(3)检查空间离散格式fvSchemes。

  • twoPhaseEulerFoam 热传递

    21 帖子
    12k 浏览

    @王孟飞 这个问题我也遇到了,不知道怎么解决

  • 7 帖子
    3k 浏览

    @东岳 我非定常计算也出现pseudoTime:not converged within 20 iterations:zoule: 每迭代一步,都要内迭代20次。不知道放宽收敛标准会不会容易发散

  • 一个有毒的算例……

    10 帖子
    4k 浏览

    @东岳 后来就只用snappyHexMesh画的网格做了一些简单的模拟……:zoule:

  • overPimpleDyMFoam计算中出现报错

    1 帖子
    1k 浏览

    在使用overPimpleDyMFoam计算旋转机械 时,出现了如下报错:

    Create time Create mesh for time = 0 Selecting dynamicFvMesh dynamicOversetFvMesh Selecting motion solver: rigidBodyMotion Selecting rigidBodySolver Newmark PIMPLE: Operating solver in PISO mode Reading field p Reading field U Reading/calculating face flux field phi Creating cellMask field to block out hole cells inverseDistance : detected 2 mesh regions zone:0 nCells:29272 voxels:(193 193 1) bb:(-300.001077033 -200.001077033 1.99892296657) (700.001077033 200.001077033 3.00107703343) zone:1 nCells:8145 voxels:(193 193 1) bb:(-50.0001414007 -49.9939730307 1.99985859933) (50.0001414007 49.9720506607 3.00014140067) --> FOAM Warning : From function bool Foam::oversetPolyPatch::master() const in file oversetPolyPatch/oversetPolyPatch.C at line 149 The master overset patch is not the first patch. Generally the first patch should be an overset patch to guarantee consistent operation. Overset analysis : nCells : 37417 calculated : 37186 interpolated : 204 (interpolated from local:204 mixed local/remote:0 remote:0) hole : 27 Creating interpolatedCells field Selecting incompressible transport model Newtonian Selecting turbulence model type RAS Selecting RAS turbulence model kOmegaSST Selecting patchDistMethod meshWave RAS { RASModel kOmegaSST; turbulence on; printCoeffs on; alphaK1 0.85; alphaK2 1; alphaOmega1 0.5; alphaOmega2 0.856; gamma1 0.555555555556; gamma2 0.44; beta1 0.075; beta2 0.0828; betaStar 0.09; a1 0.31; b1 1; c1 10; F3 false; decayControl false; kInf 0; omegaInf 0; } Reading/calculating face velocity Uf No MRF models present No finite volume options present Courant Number mean: 0.0195783147649 max: 21.9831544632 Starting time loop Courant Number mean: 0.0195783147649 max: 21.9831544632 Time = 0.005 forces forces: Not including porosity effects --> FOAM FATAL ERROR: Could not find rho:rho From function void Foam::functionObjects::forces::initialise() in file forces/forces.C at line 204. FOAM exiting

    使用的动网格文件如下:

    motionSolverLibs ("librigidBodyMeshMotion.so"); dynamicFvMesh dynamicOversetFvMesh; motionSolver rigidBodyMotion; // rigidBodyMotionCoeffs - not needed any more // { report on; solver { type Newmark; gamma 0.1; // Velocity integration coefficient beta 0.1; // Position integration coefficient } accelerationRelaxation 1.0; //- prescribedRotation requires some sub-iterations to converge faster // to desired value. nIter 3; bodies { rotor { type rigidBody; parent root; centreOfMass (-0.265 0 0); mass 1; rho 1; inertia (0.001 0 0 0.001 0 0.001); transform (1 0 0 0 1 0 0 0 1) (-0.265 0 0); patches (BLADE1); innerDistance 1000; outerDistance 2000; joint { type Rz; } } } restraints { rotorRotation { type prescribedRotation; body rudder; referenceOrientation (1 0 0 0 1 0 0 0 1); axis (0 0 1); // Axis of rotation omega sine; // Function1 entry omegaCoeffs { frequency 4; amplitude 0.2; scale (0 1 0); level (0 1 0); } } }

    但是如果把动网格文件改为:

    dynamicFvMesh dynamicOversetFvMesh; dynamicOversetFvMeshCoeffs { // layerRelax 0.3; } solver multiSolidBodyMotionSolver; multiSolidBodyMotionSolverCoeffs { rotor { solidBodyMotionFunction rotatingMotion; rotatingMotionCoeffs { origin (0 0 0); axis (0 0 1); omega 1.08; } } }

    就可以正常计算了。请问这是哪里出现错误了,跪求各位大神解答。

  • 单个气泡传热理论解

    6 帖子
    2k 浏览

    @CYW 谢谢。在interFoam里加入过能量方程,但是在加物理量比如普康特数啥的出现了点问题。。。我对照着compressibleInterFoam研究研究,,有问题再向你请教。不好意思没帮到你什么忙

  • 2 帖子
    1k 浏览

    @夏雨天小白新人请教流固耦合是否适合使用OpenFOAM处理? 中说:

    immersed-boundary method

    openfoam-extend了解一下,immersed-boundary也有拓展包可以单独安装;

    https://sourceforge.net/p/openfoam-e...leaseNotes.txt
    https://openfoamwiki.net/index.php/Extend-bazaar

  • Openfoam如何高阶计算?

    5 帖子
    2k 浏览

    上面的算法都有试过,差别不是很大,和实验数据还是有一些区别。现在在调试fvSolution里面的设置,希望有效果。

  • LamBremhorstKE模型

    9 帖子
    4k 浏览

    @lambs 这个算例后来验证的如何了?

  • 关于散度格式的问题?

    5 帖子
    4k 浏览

    迎风格式都不是二阶的啊

  • 网格加密后运算一段时间后停止但没有报错

    4 帖子
    1k 浏览

    @东岳 我把保存文件的时间间隔从5s变成1s,目前来看是好用的,已经算了四秒多了

  • OF6可以用funkySetField吗?

    7 帖子
    2k 浏览

    @danao谢谢!我去看看

  • 1 帖子
    777 浏览

    相方程和压力方程的源相均是类似interPhaseChangeFoam的源相添加方式添加,能量方程是按照质量传递乘以相应的焓,但是在求解过程中,一旦发生相变,焓方程或者迭代求温度就会发散。(我并没有按照本求解器原有的蒸发模型添加,因为相变原理不同)要以什么样的数值方式处理才能解决这个问题呢?有经验的专家能给些建议吗?@东岳
    代码如下:

    E1Eqn = ( E1Eqn == *heatTransfer[phase1.name()] +(fluid.mDotAlphal()[0]*limitedAlpha2+fluid.mDotAlphal()[1]*limitedAlpha1)*phase2.thermo().he() + alpha1*rho1*(U1&g) + fvOptions(alpha1, rho1, phase1.thermo().he()) ); E1Eqn->relax(); fvOptions.constrain(E1Eqn.ref()); E1Eqn->solve(); } } { tmp<fvScalarMatrix> E2Eqn(phase2.heEqn()); if (E2Eqn.valid()) { E2Eqn = ( E2Eqn == *heatTransfer[phase2.name()] -fvm::Sp((fluid.mDotAlphal()[0]*limitedAlpha2+fluid.mDotAlphal()[1]*limitedAlpha1)*2, phase2.thermo().he()) +(fluid.mDotAlphal()[0]*limitedAlpha2+fluid.mDotAlphal()[1]*limitedAlpha1) * phase1.thermo().he() + alpha2*rho2*(U2&g) + fvOptions(alpha2, rho2, phase2.thermo().he()) ); E2Eqn->relax();elax();
  • 关于入口湍流边界条件

    3 帖子
    2k 浏览

    @东岳 嗯嗯,谢谢李老师,昨天周老师帮我向您请教了一些,我目前研究大气湍流流动,所以希望入口能满足真实环境的条件;我再研究一下相关文献,谢谢。

  • 模化的量与直接求解的量

    1 帖子
    655 浏览

    关于OpenFOAM中模化的量与直接求解的量有一些疑问。在OpenFOAM后处理中会有UPrimeMean和R的出现,这两个量分别代表的是什么的意思?在CFDonline中提到,R给出的是模化的雷诺应力,UPrime2Mean给出的是直接求解的雷诺应力,这种说法正确吗?如果是正确的,那总的雷诺应力就是R+UPrime2Mean?

    R gives the modelled Reynolds stress tensor and that Uprime2Mean gives the resolved Reynolds stress tensor.

    附上CFDonline链接链接文本

  • OpenFOAM中的binaryblock如何读取?

    7 帖子
    2k 浏览

    @Jacobian 换了操作系统貌似可以啦