Skip to content

OpenFOAM

OpenFOAM交流区

4.5k 主题 26.5k 帖子
  • 2 帖子
    288 浏览
    S

    您好,您解决了吗

  • openfoam监测某个面上的涡量数据

    2
    2 帖子
    356 浏览
    S

    您好,您解决了吗

  • 15 帖子
    7k 浏览
    S

    @BznW 您好。打扰一下,您解决了吗

  • 1 帖子
    84 浏览
    L

    前一段时间搭建了流化床求解器(燃烧、密相颗粒流动求解器,下称newSolver),目前需要对这个求解器进行冷态颗粒流动的验证(常温,关闭化学反应、燃烧和传热)。通过验证发现颗粒轴向速度和实验吻合较好,但是气相压降差距很大,而使用MPPICFoam计算相同的case可以得到准确的压降(稳定时newSolver比MPPICFoam压降高两倍多)。

    为了找到问题所在,于是关闭颗粒计算纯气体流动的速度和压降,发现newSolver和MPPICFoam计算得到的气相速度相同但是压降有一定差距。因此猜测是气相压力方程计算的问题。

    由于newSolver是基于coalChemistryFoam流体方程加入alpha的修改的,纯气体流动情况下alpha=1。为了排除我修改方程所导致的错误,因此用coalChemistryFoam(关闭化学反应、燃烧和传热)计算纯气体流动看能否得到准确的结果。结果发现压降仍然有差距。

    难道coalChemisryFoam变密度的求解器无法计算常密度的情况吗?coalChemistryFoam是反应所导致的密度变化,关闭化学反应按理说密度应该是不变的,为何计算结果与实际差距大?常温纯气体流动压降都不准,加上化学反应燃烧后压降会准吗?

    MPPICFoam压力方程

    fvScalarMatrix pEqn ( fvm::laplacian(alphacf*rAUcf, p) == fvc::ddt(alphac) + fvc::div(alphacf*phiHbyA) );

    coalChemistryFoam压力方程

    fvScalarMatrix pEqn ( fvm::ddt(psi, p) + fvc::div(phiHbyA) - fvm::laplacian(rhorAUf, p) == coalParcels.Srho() + fvOptions(psi, p, rho.name()) );

    纯气体流动验证的几何模型和网格如下图所示
    图片1.png

    请各位大佬指教!

  • 粒子与网格归属问题

    27
    27 帖子
    5k 浏览
    T

    这段用来统计网格单元内粒子个数的代码,编译的路径是什么,求东岳老师指导

  • 使用swak4foam中的funkySetFields

    1
    1 帖子
    100 浏览
    Z

    基于interFoam求解器,添加了标量场S,在模拟了一段时间后,得到了两相流体分布,再使用swak4foam中的funkySetFields,把标量赋值到alpha1流体中,另一相不考虑,设置如下:
    b8c93503-efa8-4a6d-9b18-7852dcb2d072-image.png
    运行后报错:
    15a01aae-36ee-42e4-8223-4fc9eba68dd9-image.png
    请问各位大神该如何解决呢?

  • 有关OpenFOAM中的双流体模型

    39
    39 帖子
    32k 浏览
    WeakFormW

    @liuyf 我在求解时候也遇到了这个问题,导致鼓泡塔的液面比实验高很多,因为上边部分存在液体速度导致求解一开始液体会一下子冲上去,最后液面高度就会变得非物理,您解决这个问题了吗

  • 介绍一种新的大气边界层入口生成方法DFSR

    21
    21 帖子
    5k 浏览
    L

    g++ -std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 -DNoRepository -ftemplate-depth-100 -I/usr/local/include -I./windProfile/lnInclude -I./extrudedPatch/lnInclude -I/home/windlab_lzx/openfoam8/OpenFOAM-8/src/finiteVolume/lnInclude -I/home/windlab_lzx/openfoam8/OpenFOAM-8/src/meshTools/lnInclude -I/home/windlab_lzx/openfoam8/OpenFOAM-8/src/sampling/lnInclude -I/home/windlab_lzx/openfoam8/OpenFOAM-8/src/surfMesh/lnInclude -I/opt/intel/oneapi/mkl/2024.1/include -IlnInclude -I. -I/home/windlab_lzx/openfoam8/OpenFOAM-8/src/OpenFOAM/lnInclude -I/home/windlab_lzx/openfoam8/OpenFOAM-8/src/OSspecific/POSIX/lnInclude -fPIC -fuse-ld=bfd -Xlinker --add-needed -Xlinker --no-as-needed /home/windlab_lzx/openfoam8/OpenFOAM-8/platforms/linux64GccDPInt32Opt/applications/utilities/preProcessing/DFSRTurb/DFSRTurb.o -L/home/windlab_lzx/openfoam8/OpenFOAM-8/platforms/linux64GccDPInt32Opt/lib \ -L/usr/local/include -lwindProfile -lextrudedPatch -lmeshTools -lsampling -lsurfMesh -lfiniteVolume -lfftw3 -L/opt/intel/oneapi/mkl/2024.1/lib/intel64 -lmkl_intel_lp64 -L/opt/intel/oneapi/mkl/2024.1/lib/intel64 -lmkl_core -L/opt/intel/oneapi/mkl/2024.1/lib/intel64 -lmkl_sequential -lm -ldl -lOpenFOAM -ldl \ -lm -o /home/windlab_lzx/OpenFOAM/windlab_lzx-8/platforms/linux64GccDPInt32Opt/bin/DFSRTurb /usr/bin/ld.bfd: 找不到 -lwindProfile /usr/bin/ld.bfd: 找不到 -lextrudedPatch collect2: error: ld returned 1 exit status /home/windlab_lzx/openfoam8/OpenFOAM-8/wmake/makefiles/general:140: recipe for target '/home/windlab_lzx/OpenFOAM/windlab_lzx-8/platforms/linux64GccDPInt32Opt/bin/DFSRTurb' failed make: *** [/home/windlab_lzx/OpenFOAM/windlab_lzx-8/platforms/lDFSRinux64GccDPInt32Opt/bin/DFSRTurb] Error 1在编译DFSR方法最后一步wmake时候报错,为什么呀,找了很久没解决

  • 3 帖子
    218 浏览
    S

    @shirouchen 谢谢,我暂时是用matlab排列的

  • 1 帖子
    92 浏览

    大家好!想请教各位在tecplot中对三维模型进行Mirror操作后,使用slices提取出一个面,可以观察到提取出来的面云图都还是对称的,但画出来的流线为什么不是对称的了?原计算案例对称轴所在的面本身使用的也是symmetryPlane型边界条件。
    QQ图片20240407133422.png
    $DR1%SP2~_Y1_A{0ZO8ZND8.png
    TUG[A$3E@2}8%R85`77T]3K.png

  • openfoam9安装失败

    4
    4 帖子
    249 浏览
    学流体的小明

    那我不知道咋办了,要不你用apt删了重装一下,或者编译源代码安装。
    或者你电脑提前改变了apt的安装路径,安装到了其它地方?
    下面这个里面安装的openfoam9就是在/opt目录下面。
    https://blog.csdn.net/sagjhdj/article/details/123435344

  • 如何在流场中加入体积力场

    7
    7 帖子
    379 浏览
    C

    @学流体的小明
    1、谢谢大佬!就是这个原因,mesh.Cf()改成mesh.C()就没问题了!
    2、当时注释这个是因为我发现有问题后用Info输出坐标和mesh的size想看看问题出在哪,但是只输出了processer0的网格信息,所以有了这个疑问。后来我查到了是Info只会输出master processor的信息,我改成Pout就可以输出所有processor的信息。

  • OpenFOAM边界可以设置既旋转又射流吗

    1
    1 帖子
    96 浏览
    1

    最近在做一个模型,有一个面既按照一定的角速度旋转,同时又有流体射出,但是不知道该怎么设置这个面的边界条件,有大佬知道吗

  • 自适应时间步长统一输出精度问题

    5
    5 帖子
    292 浏览
    S

    @尚善若水 问题解决了,多谢多谢

  • 如何布置正弦内部场?

    2
    2 帖子
    169 浏览

    已解决。

  • 关于ICEM尖角网格

    1
    1 帖子
    123 浏览
    C

    这么做尖角网格是不是看起来不太对呀,这类尖角网格有没有什么好一点的做法呢?
    虽然看着网格质量还行,但总感觉不太对
    Snipaste_2024-04-03_21-48-45.png

  • OpenFOAM中二维轴对称模型的一些问题

    1
    1 帖子
    107 浏览
    L

    在轴对称模型中,可以只计算两个方向(轴向和径向)的量吗,在写方程时,如何不计算第三个方向的偏导数,可以像volTensorField一样定义一个Tensor2D的体积场吗

  • Smagorinsky模型系数问题

    43
    43 帖子
    5k 浏览
    L

    @coolhhh 太细致了!!!

  • 关于在求解器中使用热物理库中的函数

    4
    4 帖子
    317 浏览
    W

    @huangyuhui723 我明白你的意思了。

    @huangyuhui723 在 关于在求解器中使用热物理库中的函数 中说:

    通过其它计算更新了T之后想对he赋值

    如果是求解TEqn,可以是得到温度T后更新he。OpenFOAM里的求解器一般都是求解EEqn,得到he后通过thermo.correct()更新T。

    如果已知边界温度T后要对he赋值,应该在求解EEqn之前对he边界赋值,然后求解EEqn。大致代码是这样:

    volScalarField& he = thermo.he(); //****************************************//加这一段 forAll(p.boundaryField(), patchi) { forAll(p.boundaryField()[patchi], facei) { he.boundaryFieldRef()[patchi][facei] = function(p.boundaryField()[patchi][facei], T.boundaryField()[patchi][facei]); } } //****************************************// fvScalarMatrix EEqn ( ...... );

    这个function函数就是T与he的关系,类似上面,混合物的he通过各组分的显焓的质量分数加权得到,显焓用janaf里的关系确定。

    供参考。

  • 关于编译动态库后在求解器中使用报错

    6
    6 帖子
    402 浏览
    H

    @学流体的小明 感谢老师,我找时间试试看