Skip to content

OpenFOAM

OpenFOAM交流区

5.3k 主题 31.4k 帖子
  • paraview绘图

    9
    9 帖子
    6k 浏览
    H

    @卡洛 谢谢朋友,在师兄的指导下,大概搞出来一个了。
    77748ac1-a841-434a-942e-ff170e040404-image.png

  • OpenFOAM9计算的uprimn2Mean异常

    6
    6 帖子
    4k 浏览
    thegameT

    @李东岳 好嘞,谢谢老师解惑

  • 后处理内存消耗过大

    8
    8 帖子
    5k 浏览
    C

    @bestucan 风场计算,没到气象那个级别,网格量在千万上下,多的能到五千万的样子。我研究下您说的swap这个思路。

  • OF计算域中设置圆形相区域时出错

    8
    8 帖子
    4k 浏览
    A

    @李东岳 再次感谢李老师回复,我后续按照您的指导试一下,另外再查阅一下其他资料学习学习

  • 关于multiphaseEulerFoam运算分散相体积分数问题

    6
    6 帖子
    4k 浏览
    C

    @bestucan 谢谢老师,这个问题我再去认真了解一下并尝试尝试。

  • 多孔介质多区域网格划分

    11
    11 帖子
    7k 浏览
    Jack QQJ

    @李东岳 收到,谢谢东岳老师,我来试一波:146:

  • 3 帖子
    2k 浏览
    J

    @星星星星晴 感谢回复😊 回头我研究研究这个mpirundebug

  • tecplot如何提取一条曲线上的数据

    11
    11 帖子
    15k 浏览

    @yu_tian 微信图片_20220617092117.jpg
    这个气泡轮廓怎么在paraview里提取和怎么导入tecplot,就是这个图怎么画出来的呀!

  • 天河 2 号超算安装 OpenFOAM 7 (不含CGAL)

    8
    8 帖子
    6k 浏览
    李东岳

    另外,天河2号那个加速比数据你们看过没有。

    对于此算例,在2048 的并行规模时,计算效率比256 时提高了2倍。

    2个节点无论是对OpenFOAM 还是 FLUENT 都是最优的计算规模,继续扩大计算规模难以继续获得加速效果

    很不可思议。感觉天河2号使用2个节点就行了。。

  • 修改湍流模型,定义表达式的问题

    19
    19 帖子
    13k 浏览
    李东岳

    @chen_hao

    linearViscousStress.C

    UEqn不用动

  • 输出最大值最小值

    4
    4 帖子
    3k 浏览
    李东岳

    @vbcwl 感谢感谢!

  • 15 帖子
    11k 浏览
    zhanghanZ

    fvSolution中修改每一项的tolerance,我的case是bubbleColumnEvaporatingReacting,自带的tolerance是1e-20,我修改为1e-10后计算的非常快,而且计算结果几乎相同。

    FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { "alpha.*" { nAlphaCorr 1; nAlphaSubCycles 3; } p_rgh { solver GAMG; smoother DIC; tolerance 1e-10; relTol 0.001; } p_rghFinal { $p_rgh; relTol 0; } "U.*" { solver smoothSolver; smoother symGaussSeidel; tolerance 1e-10; relTol 0; minIter 1; } "(e|h).*" { solver smoothSolver; smoother symGaussSeidel; tolerance 1e-10; relTol 0; minIter 1; } "(k|epsilon|Theta).*" { solver smoothSolver; smoother symGaussSeidel; tolerance 1e-10; relTol 0; minIter 1; } Yi { solver smoothSolver; smoother symGaussSeidel; tolerance 1e-10; relTol 0; minIter 1; residualAlpha 1e-8; } } PIMPLE { nOuterCorrectors 1; nCorrectors 1; nNonOrthogonalCorrectors 0; } relaxationFactors { equations { ".*" 0.3; } } // ************************************************************************* //
  • 请问一下如何设定初始内部场的函数关系值

    3
    3 帖子
    2k 浏览
    W

    @tens 好的谢谢,昨天用funkySetFields做出来了

  • LES与RANS的结果不相同

    37
    37 帖子
    23k 浏览
    李东岳

    @星星星星晴 在 LES与RANS的结果不相同 中说:

    大佬求下面链接的文档啊。。
    http://www.dyfluid.com/LES.html

    http://www.dyfluid.com/theory.pdf 我最近更新在这里了 你可以看下 51页

    我整个进口是开放的,不是东岳大佬说的有壁面的情况。

    如果你不是这个边界条件,是开放的,那存在卷吸的情况,会很不一样

  • 利用codeStream设置温度边界初始场

    5
    5 帖子
    4k 浏览
    L

    @tens问题已经解决了,非常感谢指点

  • linearSpring能否传递力给予边界?

    3
    3 帖子
    2k 浏览
    A

    @李东岳 感谢李老师回复。目前边界是静止的,弹簧一端连接静止边界,一端连接运动物块。从了解到的资料看,目前OF中的弹簧应该也只支持一端连接动物体,一端连接静物体。因为OF通过坐标确定连接点,我想知道如果连接点坐标在边界上,那么这个弹簧是否真的连在了边界上,能否和边界传递力?感觉也想不到什么能够验证的办法。

  • 并行报错

    3
    3 帖子
    2k 浏览
    bestucanB

    工作中常做好备份工作,否则很容易:添加新功能成没成功且不说,旧功能无法实现了。

    如果有备份拉出来,用 diff 对比不同就很容易排查了

  • twoPhaseEulerFoam中怎么加入PBM模型

    2
    2 帖子
    2k 浏览
    bestucanB

    搜 openQBMM

  • 气固颗粒反应组分输运方程问题

    1
    1 帖子
    1k 浏览
    书生kao

    计算气固颗粒反应流动,稠密颗粒流动的基础上添加了气固反应,组分输运方程的代码如下:

    { combustion->correct(); Qdot = combustion->Qdot(); volScalarField Yt(0.0*Y[0]); const volScalarField muEff(turbulence->muEff()); forAll(Y, i) { if (i != inertIndex && composition.active(i)) { volScalarField& Yi = Y[i]; fvScalarMatrix YiEqn ( fvm::ddt(alphac, rhoc, Yi) + mvConvection->fvmDiv(alphaRhoPhic, Yi) - fvm::laplacian ( fvc::interpolate(alphac) *fvc::interpolate(muEff), Yi ) == vanadiumParcels.SYi(i, Yi) + combustion->R(Yi) + fvOptions(rhoc, Yi) ); YiEqn.relax(); fvOptions.constrain(YiEqn); YiEqn.solve("Yi"); fvOptions.correct(Yi); Yi.max(0.0); Yt += Yi; } } Y[inertIndex] = scalar(1) - Yt; Y[inertIndex].max(0.0); }

    编译是没有问题的,目前遇到的问题是各组分的质量分数不对。
    反应是生成Cl2,消耗O2,inertSpecie为N2,计算过程氯气的质量分数不断增加(未越界),而N2的质量分数减少。实际上即便完全反应,N2的质量分数下降应该不大,计算结果不符合实际现象。
    个人理解问题应该是vanadiumParcels.SYi(i, Yi),可以理解为组分输运方程的源项,其代码为

    template<class CloudType> inline Foam::tmp<Foam::fvScalarMatrix> Foam::ReactingCloud<CloudType>::SYi ( const label i, volScalarField& Yi ) const { if (this->solution().coupled()) { if (this->solution().semiImplicit("Yi")) { tmp<volScalarField> trhoTrans ( volScalarField::New ( this->name() + ":rhoTrans", this->mesh(), dimensionedScalar(dimMass/dimTime/dimVolume, 0) ) ); volScalarField& sourceField = trhoTrans.ref(); sourceField.primitiveFieldRef() = rhoTrans_[i]/(this->db().time().deltaTValue()*this->mesh().V()); const dimensionedScalar Yismall("Yismall", dimless, small); return fvm::Sp(neg(sourceField)*sourceField/(Yi + Yismall), Yi) + pos0(sourceField)*sourceField; } else { tmp<fvScalarMatrix> tfvm(new fvScalarMatrix(Yi, dimMass/dimTime)); fvScalarMatrix& fvm = tfvm.ref(); fvm.source() = -rhoTrans_[i]/this->db().time().deltaTValue(); return tfvm; } } return tmp<fvScalarMatrix>(new fvScalarMatrix(Yi, dimMass/dimTime)); }

    到目前为止,我也没看出来有啥问题。所以,想请教一下吧里的大佬,能否帮我解答一下疑惑?如何解决这个问题,请各位大佬不吝赐教!!!

  • 拉格朗日粒子浓度与网格大小的关系

    9
    9 帖子
    6k 浏览

    @jasper-0 在 拉格朗日粒子浓度与网格大小的关系 中说:

    各位大佬好,
    本人最近在想是不是拉格朗日粒子的浓度是与网格大小相关的?因为在openfoam中浓度定义为:

    theta[celli] += p.nParticle()*p.volume(); theta.primitiveFieldRef() /= mesh_.V();

    当网格变小的时候,浓度不就自然而然变大了吗?如果是这样的话,该如何跟实验进行验证呢?

    有关,但是个人理解是没法与实验验证,

    volume fraction的作用的个人理解:

    确定拉格朗日是用什么coupling 确定当前的模拟是否physically成立,因为of中lagrangian 都是point-mass。所以有的时候DPM会出现问题,这也算是EL法的固有缺陷吧,我记得上线好像是65%,具体忘了在哪看到的(有可能类似摩尔定律的故事)。 如果你的parcel很多,(不然为什么用EL不是VOF),达到一个统计学上的匹配就行,比如说velocity profile, velocity RMS/Std, local size distribution,等,你要相信,茫茫parcel海中,只要统计学上会发生,总有一个parcel会发生某些表现,只是概率问题而已。

    @李东岳 大佬 气泡可以用拉格朗日,就是流场别太复杂,而且还需要引入bubble induced turbulence还有不同的drag模型,dispersion模型,还有 eccentricity, wall effect,etc~