Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

  1. CFD中文网
  2. OpenFOAM
  3. LHS and RHS of + have different dimensions

LHS and RHS of + have different dimensions

已定时 已固定 已锁定 已移动 OpenFOAM
16 帖子 4 发布者 20.8k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • A 离线
    A 离线
    Aeronastro
    写于 最后由 编辑
    #6

    你这个是为了避免分母除0是吧,VSMALL=1.0e-37,是一个scalar的量,从代码上看rho1(),rho2()应该是两个volScalarField类型,有一种办法就是构造一个同样的volScalarField场,比如

    volScalarField zeroField
    (
         IOobject
         (
              "ZERO",
              runTime.timeName(),
              mesh
         ),
         mesh,
         dimesionedScalar("vsmall", dimensionSet(1,-3,0,0,0,0,0), VSMALL)
    )
    

    名字嘛,如果不lookup的话,随便起吧。

    F 1 条回复 最后回复
  • M 离线
    M 离线
    mark
    写于 最后由 编辑
    #7

    很感谢!

    1 条回复 最后回复
  • M 离线
    M 离线
    mark
    写于 最后由 编辑
    #8

    @Aeronastro @administrators 试了一下,好像不行哦

    A 1 条回复 最后回复
  • A 离线
    A 离线
    Aeronastro
    在 中回复了 mark 最后由 编辑
    #9

    @mark 什么错误?可以附图吗?

    1 条回复 最后回复
  • M 离线
    M 离线
    mark
    写于 最后由 李东岳 编辑
    #10
    Create time
    
    Create mesh for time = 0
    
    
    Reading g
    
    PIMPLE: Operating solver in PISO mode
    
    Reading field p_rgh
    
    Reading field U
    
    Reading/calculating face flux field phi
    
    Constructing twoPhaseMixtureThermo
    
    Selecting thermodynamics package 
    {
        type            heRhoThermo;
        mixture         pureMixture;
        transport       sutherland;
        thermo          hConst;
        equationOfState PengRobinsonGas;
        specie          specie;
        energy          sensibleEnthalpy;
    }
    
    Selecting thermodynamics package 
    {
        type            heRhoThermo;
        mixture         pureMixture;
        transport       sutherland;
        thermo          hConst;
        equationOfState PengRobinsonGas;
        specie          specie;
        energy          sensibleEnthalpy;
    }
    
    Reading thermophysical properties
    
    --> FOAM Warning : 
        From function GeometricField<Type, PatchField, GeoMesh>::readIfPresent()
        in file /opt/openfoam240/src/OpenFOAM/lnInclude/GeometricField.C at line 108
        read option IOobject::MUST_READ or MUST_READ_IF_MODIFIED suggests that a read constructor for field rho1 would be more appropriate.
    --> FOAM Warning : 
        From function GeometricField<Type, PatchField, GeoMesh>::readIfPresent()
        in file /opt/openfoam240/src/OpenFOAM/lnInclude/GeometricField.C at line 108
        read option IOobject::MUST_READ or MUST_READ_IF_MODIFIED suggests that a read constructor for field rho2 would be more appropriate.
    Creating phaseChangeTwoPhaseMixture
    
    Selecting phaseChange model SchnerrSauer
    Calculating field g.h
    
    Selecting turbulence model type LESModel
    Selecting LES turbulence model oneEqEddy
    Selecting LES delta type smooth
    Selecting LES delta type cubeRootVol
    oneEqEddyCoeffs
    {
        ce              1.048;
        Prt             1;
        ck              0.094;
    }
    
    Creating field kinetic energy K
    
    No finite volume options present
    
    Courant Number mean: 4.9504176e-07 max: 1.9500023e-05
    
    Starting time loop
    
    Courant Number mean: 4.9014036e-07 max: 1.9306953e-05
    deltaT = 9.9009901e-09
    Time = 9.90099e-09
    
    PIMPLE: iteration 1
    
    
    --> FOAM FATAL ERROR: 
    LHS and RHS of + have different dimensions
         dimensions : [1 -3 0 0 0 0 0] + [0 0 0 0 0 0 0]
    
    
        From function operator+(const dimensionSet&, const dimensionSet&)
        in file dimensionSet/dimensionSet.C at line 478.
    
    FOAM aborting
    
    #0  Foam::error::printStack(Foam::Ostream&) at ??:?
    #1  Foam::error::abort() at ??:?
    #2  Foam::operator+(Foam::dimensionSet const&, Foam::dimensionSet const&) at ??:?
    #3  Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::operator+<Foam::fvPatchField, Foam::volMesh>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::dimensioned<double> const&) at ??:?
    #4  Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::operator+<Foam::fvPatchField, Foam::volMesh>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, double const&) at ??:?
    #5  Foam::phaseChangeTwoPhaseMixture::vDotAlphal() const at ??:?
    #6  ? at ??:?
    #7  __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
    #8  ? at ??:?
    已放弃 (核心已转储)
    zhubin@zhubin-System-Product-Name:~/OpenFOAM/zhubin-2.4.0/run/tutorials/myFoam$
    
    A 1 条回复 最后回复
  • A 离线
    A 离线
    Aeronastro
    在 中回复了 mark 最后由 编辑
    #11

    @mark 还是dimension不匹配,你在代码里把rho2()+VSMALL改成rho2()+zeroField了吗?

    1 条回复 最后回复
  • M 离线
    M 离线
    mark
    写于 最后由 编辑
    #12

    @Aeronastro
    防止分母为0 ,我设置一个dimensionedScalar small_ ,
    small = 1.0e-36 这样一个非常小的数可以吗?
    volScalarField alphalCoeff(1.0/rho1() - alpha1_*(1.0/rho1() - 1.0/(rho2() + small())));
    这样就可以算了:sunglasses: 请指教..

    A 1 条回复 最后回复
  • A 离线
    A 离线
    Aeronastro
    在 中回复了 mark 最后由 编辑
    #13

    @mark 嗯嗯,只要给定量纲就可以了,dimensionedScalar设置了量纲,而且operator+可以使volscalarField和dimensionedScalar可以相加就没问题了

    我不明白,为什么设置新的volScalarField这样的场不行呢?你试过不行是吗?

    1 条回复 最后回复
  • M 离线
    M 离线
    mark
    写于 最后由 编辑
    #14

    @Aeronastro 应该也可以的,刚才我忘记wmake那个库文件,直接wmake求解器了,先这样算着,我改天再试一下

    1 条回复 最后回复
  • F 离线
    F 离线
    Foamer24
    在 中回复了 Aeronastro 最后由 编辑
    #15

    @Aeronastro dimesionedScalar拼写错了,是dimensionedScalar;结尾还有分号“;”。

    李东岳李 1 条回复 最后回复
  • 李东岳李 离线
    李东岳李 离线
    李东岳 管理员
    在 中回复了 Foamer24 最后由 编辑
    #16

    @Foamer24

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

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    1 条回复 最后回复

  • 登录

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]