Skip to content

OpenFOAM

OpenFOAM交流区

5.2k 主题 30.9k 帖子
  • 代码实现?

    15
    15 帖子
    14k 浏览
    I

    @程迪
    rhoE应该是$\frac{\partial \rho e}{\partial t} + \frac{\partial \rho K}{\partial t}$
    phiEp应该是$\nabla \cdot (\rho \mathbf{U} e)+\nabla \cdot (\rho \mathbf{U} K)+\nabla\cdot(p\mathbf{U})$
    sigmaDotU应该是$\nabla \cdot(\tau \cdot \mathbf{U})$
    感觉拆不了。

    另外,请问对定常的求解器也有时间步限制吗?如果没有的话,是不是定常的求解器中,比如buoyanySimpleFoam,就不用管隐式还是显式了?

  • 对于Open FOAM 模拟波浪的一些思考

    17
    17 帖子
    19k 浏览
    winsway_zeroW

    @lxjcfd
    同求第三篇文献,在网上确实找不到。

  • jumpCyclic边界条件的问题

    3
    3 帖子
    4k 浏览

    @liuyf
    截面jump是 p(x=0) == p(x=1) + dp
    截面两侧单位jump 是 p(x=0+dx/2) == p(x=1-dx/2) + dp

    边界网格越粗,这个差异应该会越大吧。

  • LES模型中delta的选择

    3
    3 帖子
    4k 浏览
    J

    楼主现在有没有做过delta的测试?

  • 6 帖子
    6k 浏览
    J

    @李东岳 谢谢东岳老师,明天再试一下

  • cavitatingFoam的方程

    2
    2 帖子
    3k 浏览

    @搬运工不好当 您好,请问您对cavitatingFoam研究的怎么样?可以指教一下吗?

  • 如何用Paraview显示face label?

    3
    3 帖子
    4k 浏览
    L

    你可以先用topoSet的nearestToPoint生成pointSet,再由pointSet生成faceSet,在生成的若干面里面剔除无关的面即可。

  • OpenFOAM不同类型网格的计算速度

    6
    6 帖子
    6k 浏览

    @李东岳
    工程上有意义的是达到指定误差的计算代价,一般理论上认为误差可以从某种定义的残差推算出的不确定来衡量,时间以taubench用25000网格迭代10步作为1个时间单位来衡量。

    这样的假设下做横向比较是可能的。但是,具体情况嘛,呵呵。湍流模型的不确定度就说不清楚。

  • OpenFOAM中的空化模拟?

    6
    6 帖子
    7k 浏览

    @yhdthu 好的,多谢您的回答

  • source pack在unbuntu安装问题

    2
    2 帖子
    3k 浏览
    李东岳

    我猜测你这个是源代码没写对,或者拷贝复制的时候丢了代码,undefined reference这种错误只是在编译类后捆绑到求解器的时候函数没定义导致。可能你代码里面有些函数代码块丢失了。

    以上只是猜测,因为不清楚你安装的详细过程不能确诊。

  • MULES, CMULES and IMULES 测试

    13
    13 帖子
    13k 浏览
    李东岳

    @金石为开
    等回德国我回复你。MULES这个2018年应该可以写个解析出来。2016年就在计划中,但是有别的事情要搞。

  • 算例初始条件设置求助!

    10
    10 帖子
    10k 浏览
    tidedrinkerT

    @txwwbz 建议你把错误信息贴上来,你的图片我只能看见一张,另外C指的是什么?

  • solveSegragated的问题?

    2
    2 帖子
    3k 浏览

    哦,

    diag() = saveDiag;//恢复diag

    是在括号之前的,所以每次的修改不会叠加。

    之前理解错误的一点是所有的边界有关的系数都是放在internalCoeffs和boundaryCoeffs中的,不仅仅是coupled BC。从初始化时候的size可以看出来。

    template<class Type> Foam::fvMatrix<Type>::fvMatrix ( const GeometricField<Type, fvPatchField, volMesh>& psi, const dimensionSet& ds ) : lduMatrix(psi.mesh()), psi_(psi), dimensions_(ds), source_(psi.size(), Zero), internalCoeffs_(psi.mesh().boundary().size()), //和边界的face数大小一样。 boundaryCoeffs_(psi.mesh().boundary().size()), faceFluxCorrectionPtr_(nullptr) { //...

    不过非耦合的应该是internalCoeffs放比例系数,boundaryCoeffs放源项,而耦合的BC是internalCoeffs放owner的系数,boundaryCoeffs放的另一侧单元的系数。从addBoundarySource()的源代码可以看出。

    template<class Type> void Foam::fvMatrix<Type>::addBoundarySource ( Field<Type>& source, const bool couples ) const { forAll(psi_.boundaryField(), patchi) { const fvPatchField<Type>& ptf = psi_.boundaryField()[patchi]; const Field<Type>& pbc = boundaryCoeffs_[patchi]; if (!ptf.coupled())//非耦合边界,只有owner,另一侧没有单元,pbc存的是边界源项。 { addToInternalField(lduAddr().patchAddr(patchi), pbc, source); } else if (couples)//耦合边界,如果couples==true, 另一侧有单元,pbc存的是另一侧单元的系数。 { const tmp<Field<Type>> tpnf = ptf.patchNeighbourField(); const Field<Type>& pnf = tpnf(); const labelUList& addr = lduAddr().patchAddr(patchi); forAll(addr, facei) { source[addr[facei]] += cmptMultiply(pbc[facei], pnf[facei]); } } } }
  • Lagrangian怎么求得面上的粒子速度?

    2
    2 帖子
    3k 浏览
    O

    好吧,既然没有人回答,我就把我的笨办法贴出来
    foamToVTK-->paraview-->打开算例文件和粒子Cloud文件-->File/Save Data-->得到每个时间步每个粒子信息.csv-->用python提取有用信息

  • reactingEulerfoam的组分输运方程

    2
    2 帖子
    3k 浏览
    李东岳

    18年我会搞这个...

    在输运方程里加源相

    在传输方程里面加源相?不就是加个字符么?还是怎么了

    fvm::ddt(T) == S
  • ESI openfoam 安装问题

    2
    2 帖子
    3k 浏览
    李东岳

    并没有尝试过这个安装包。我推荐你采用bash自己装。http://dyfluid.com/install.html 在windows10中安装OpenFOAM

  • sampleDict 提取圆柱边界速度啊

    1
    1 帖子
    2k 浏览

    sampleDict 如何提取一个圆柱固壁上的所有速度啊

  • interPhaseFoam中物性参数设置?

    2
    2 帖子
    3k 浏览
    李东岳

    sigma是表面张力

  • OF中的绝对压力和相对压力?

    4
    4 帖子
    5k 浏览
    李东岳

    需要给真实的压力,可以从单位判别出来,如果是压力/密度的,就不需要,如果是压力的单位,建议给真实的压力。

  • 相对通量和通量的区别?

    2
    2 帖子
    3k 浏览
    李东岳

    请问下这两者是不是同一种东西两个写法呢?

    fvc::flux(U)可以选定各种格式,如果你指定他的格式是linear,那么fvc::flux(U)=linearInterpolate(U) & mesh.Sf()