Skip to content

OpenFOAM

OpenFOAM交流区

5.4k 主题 31.9k 帖子
  • output value vs paraFoam?

    1
    1 帖子
    971 浏览
    K

    I am checking that the variables outbut from source code in solver and I found the differences between output and paraFoam. I cannot understand why it happened? The follow is my codes in simpleFoam.C:
    **const dimensionedScalar myZero("myZero", dimensionSet(0,0,0,0,0,0,0),scalar(0) );

    volScalarField k0=myZeroturbulence->k();
    volScalarField nut0=myZeroturbulence->nut();
    volScalarField nu0=myZero*turbulence->nu();

    const label patchID = mesh.boundaryMesh().findPatchID("wall");
    const tmp<scalarField> tnuw = turbulence->nu(patchID);
    const scalarField& nuw = tnuw();

    const tmp<scalarField> tnutw = turbulence->nut(patchID);
    const scalarField& nutw = tnutw();

    const fvPatchVectorField& Uw = turbulence->U().boundaryField()[patchID];

    const scalarField magGradUw(mag(Uw.snGrad()));

    for (int j=0; j<nut0.size(); j++)
    {
    if (j<=(nutw.size()/2-1)) {nut0[j]=nutw[j]; nu0[j]=nuw[j];}
    if (j>=(mesh.cells().size()-nutw.size()/2)&&j<=mesh.cells().size()-1) {nut0[j]=nutw[j-(mesh.cells().size()-nutw.size())];nu0[j]=nuw[j-(mesh.cells().size()-nutw.size())];}
    }

    volVectorField Uww=U*myZero;
    const fvPatchList& patches = mesh.boundary();
    labelList wallList;
    wallList.clear();

    forAll(patches, patchi)
    {
    const fvPatch& curPatch = patches[patchi];
    if (isType<wallFvPatch>(curPatch))
    {
    forAll(curPatch, facei)
    {
    label faceCelli = curPatch.faceCells()[facei];
    wallList.resize(wallList.size()+1);
    wallList[wallList.size()-1]=faceCelli;
    }
    }
    }

    forAll(wallList,i)
    {

    Uww[wallList[i]] = U[wallList[i]];

    }

    volScalarField uz = Uww.component(vector::Z);
    volVectorField SG = uz*vector(0,0,1);
    volScalarField magGradUww=mag(SG)/myY;

    k0=((nut0+nu0)*magGradUww/0.3);

    Info<<"k0="<<k0<<endl;
    Info<<"nut0="<<nut0<<endl;
    Info<<"nutw="<<nutw<<endl;
    Info<<"magGradUww="<<magGradUww<<endl;
    Info<<"magGradUw="<<magGradUw<<endl;
    Info<<"tauw="<<(nut0+nu0)magGradUww<<endl;
    Info<<"Uw="<<Uw<<endl;*

    nutw and magGradUw are copied from nutkwallfunction. In the end, wallshearstress in the paraFoam is not the same as (nut0+nu0)*magGradUww.

  • change the k at first grid?

    11
    11 帖子
    8k 浏览
    李东岳

    Thats a tmp, not a regular volScalarField, try turbulence->k().ref().boundaryFieldRef()[patchID] = 0;

  • Re100层流VIV涡激振动振幅不对

    2
    2 帖子
    2k 浏览

    朋友,这篇论文的标题能贴一下嘛

  • 关于时变边界条件设置的问题

    18
    18 帖子
    16k 浏览
    D

    @东岳

    scalar t = this->db().time().value();

    老师好,请教二个小问题:

    this->在本帖中应该是指代该边界,但我不太清楚其具体意义和在OpenFOAM中的使用方法,老师可以给一点说明吗? db()是一个什么函数呢?

    望不吝赐教,谢谢!

  • Asynchronous Parallelization

    4
    4 帖子
    3k 浏览
    O

    @东岳 感谢东岳老师回复,望更多的大哥能关注此贴,救救小弟:xinlei:

  • 对网格进行聚合操作,并生成polymesh文件?

    5
    5 帖子
    5k 浏览
    李东岳

    对,不过从矩阵系数反推成离散网格感觉不可能。从网格到矩阵倒是可以,又是有限体积法离散过程。反过来好像方程不封闭。:136: 你确认下

  • 二维数值波槽的雷诺数如何求

    5
    5 帖子
    5k 浏览
    DY大世界D

    @cccrrryyy 好的好的,十分感谢老师的解答!

  • 有关openfoam中阿伦尼乌斯方程的疑问

    4
    4 帖子
    3k 浏览

    @浪迹天大 谢谢老师指点,我决定相信自己一次

  • 如何返回边界上网格的底面面积

    3
    3 帖子
    3k 浏览
    H

    @东岳 谢谢东岳老师~
    在cfdonline上面也找到了类似的问题 https://www.cfd-online.com/Forums/openfoam-post-processing/125782-how-find-face-area-each-cell-boundary-patch.html
    非常感谢

  • 对旋转机械进行计算时的错误提示

    18
    18 帖子
    18k 浏览

    @lllwonderliquid 请问你的问题目前解决了吗?
    我目前也在使用MRF以及AMI边界条件进行计算,但是碰到了与你类似的问题

  • 交界面处拓扑结构不同,如何定义边界条件

    6
    6 帖子
    6k 浏览

    @sjlouie91
    请教一下您,应该怎样定义AMI边界条件呢?可以直接在boundary中定义吗?替代文字

  • 在OpenFOAM7上编译IAPWS-IF97-OF报错

    3
    3 帖子
    3k 浏览
    J

    好的,谢谢您了!

  • 组分输运方程出错

    12
    12 帖子
    11k 浏览

    @zwl 谢谢您回复,关于初始各组分质量分数场,我看鼓泡蒸发器那个算例好像是每一相的各组分分别算的,就是每一相各组分的质量分数之和分别是1

  • 颗粒初始化 MPICCInterFoam

    2
    2 帖子
    2k 浏览
    李东岳

    positionfiles可以用matlab或者python处理

  • 13 帖子
    16k 浏览

    老师们好,关于janaf我发现教程里的算例中对于同一气体它的a1到a7的值取得不一样(hotBoxes和simplifiedSiwek),如果都是查表得出的数据的话那为什么不一样,是因为不同的压力温度下需要查不同的表吗?还是表一直在不断更新?希望老师们能指点迷津,非常感谢!

  • waveDyMFoam编译出现问题

    2
    2 帖子
    2k 浏览
    李东岳

    你确认一下这种非官方版本的waveDyMFoam是否适用于openfoam-4.0,不适用的话需要在适用的版本下编译

  • 安装OpenFOAM3.0.0问题的请教

    2
    2 帖子
    2k 浏览

    https://www.cfd-online.com/Forums/openfoam-installation/204155-undefined-reference-yyflexlexer-yywrap.html
    把系统语言改成英文,你就更加容易搜到答案了

  • 4 帖子
    4k 浏览
    李东岳

    应该在头文件中包含

    #include "fvOptions.H"

    不过拉格朗日求解器不能处理cyclic边界,因此你这么做 :135:

  • 水下微孔注汽模拟问题

    1
    1 帖子
    1k 浏览
    F

    alpha.water.1.png
    想请教做过相似模拟的老师,模拟结果气泡形成脱离的时间是实验的好几倍,并且气泡是一开始就开始生长,气泡和气泡之间也没有延迟时间,是哪儿出了问题呢?进口速度边界条件不用fixedValue,还可以用其他的什么边界条件呢?

  • 单相耦合dpm求解器疑问?

    1
    1 帖子
    2k 浏览
    羽之下

    icoUncoupledKinematicParcelFoam中的“ico”作何理解?
    icoUncoupledKinematicParcelFoam与uncoupledKinematicParcelFoam的区别?知道前者包含了颗粒间的碰撞,还有就是后者似乎考虑了传热,可用于压缩气体的计算?
    当有多个injections时,后处理如何得到某个patch上stick了多少个各自injection的颗粒,计算过程只会输出某patch上stick的颗粒总数。一般怎么对离散相求解器进行后处理。目前刚接触这块求解器。