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. 有关calculatedFvPatchField

有关calculatedFvPatchField

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

    某同学来信的错误代码如下:

    Starting time loop
    
    Courant Number mean: 0 max: 0
    Time = 0.01
    
    time:0.01 curMotionVel_:(0.001 0 0) curLeft:0.099 curRight:0.1
    No topology change
    Executing mesh motion
    GAMG:  Solving for pcorr, Initial residual = 0, Final residual = 0, No Iterations 0
    time step continuity errors : sum local = 0, global = 0, cumulative = 0
    PIMPLE: iteration 1
    DILUPBiCGStab:  Solving for Ux, Initial residual = 0, Final residual = 0, No Iterations 0
    DILUPBiCGStab:  Solving for Uy, Initial residual = 0, Final residual = 0, No Iterations 0
    
    
    --> FOAM FATAL ERROR: 
    cannot be called for a calculatedFvPatchField
        on patch bottom of field p in file "/home/sh/OpenFOAM/sh-5.0/run/171109DyM/HH/0/p"
        You are probably trying to solve for a field with a default boundary condition.
    
        From function Foam::tmp<Foam::Field<Type> > Foam::calculatedFvPatchField<Type>::gradientInternalCoeffs() const [with Type = double]
        in file fields/fvPatchFields/basic/calculated/calculatedFvPatchField.C at line 187.
    
    FOAM aborting
    
    #0  Foam::error::printStack(Foam::Ostream&) at ??:?
    #1  Foam::error::abort() at ??:?
    #2  Foam::calculatedFvPatchField<double>::gradientInternalCoeffs() const at ??:?
    #3  Foam::fv::gaussLaplacianScheme<double, Foam::SymmTensor<double> >::fvmLaplacianUncorrected(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) at ??:?
    #4  Foam::fv::gaussLaplacianScheme<double, double>::fvmLaplacian(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) at ??:?
    #5  Foam::fv::laplacianScheme<double, double>::fvmLaplacian(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) at ??:?
    #6  Foam::tmp<Foam::fvMatrix<double> > Foam::fvm::laplacian<double, double>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::word const&) at ??:?
    #7  Foam::tmp<Foam::fvMatrix<double> > Foam::fvm::laplacian<double, double>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) at ??:?
    #8  ? at ??:?
    #9  __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
    #10  ? at ??:?
    已放弃 (核心已转储)
    
    

    原因在于你在求解p压力场,因此你不能给定calculatedFvPatchField边界条件。

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

    1 条回复 最后回复
  • 北 离线
    北 离线
    北山木鱼
    写于 最后由 编辑
    #2

    东岳老师您好:
    上述问题您能再展开说一下嘛?我再求解rho1时遇到了相同的问题。

    李东岳李 1 条回复 最后回复
  • 李东岳李 离线
    李东岳李 离线
    李东岳 管理员
    在 中回复了 北山木鱼 最后由 编辑
    #3

    @北山木鱼 如果存在变量的Eqn需要solve,就不能调用calculated边界条件。不好意思刚看到:136:

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

    北 1 条回复 最后回复
  • 马乔马 离线
    马乔马 离线
    马乔 大神
    写于 最后由 编辑
    #4

    valueInternalCoeffs, valueBoundaryCoeffs, gradientInternalCoeffs, gradientBoundaryCoeffs are all key coeffs for boundary correct.

    In calculatedFvPatchField, those are all:

    tmp<Field<Type> > calculatedFvPatchField<Type>::valueInternalCoeffs
    (
        const tmp<scalarField>&
    ) const
    {
        FatalErrorIn
        (
            "calculatedFvPatchField<Type>::"
            "valueInternalCoeffs(const tmp<scalarField>&) const"
        )   << "\n    "
    ...
    

    when construct convection tern

    fvm.internalCoeffs()[patchI] = patchFlux*psf.valueInternalCoeffs(pw);
    fvm.boundaryCoeffs()[patchI] = -patchFlux*psf.valueBoundaryCoeffs(pw);
    

    and laplacian term

    fvm.internalCoeffs()[patchI] = patchGamma*psf.gradientInternalCoeffs();
    fvm.boundaryCoeffs()[patchI] = -patchGamma*psf.gradientBoundaryCoeffs();
    

    so...

    装逼没输过,吵架没赢过!

    1 条回复 最后回复
  • 李东岳李 离线
    李东岳李 离线
    李东岳 管理员
    写于 最后由 编辑
    #5

    Thanks for sharing

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

    1 条回复 最后回复
  • 北 离线
    北 离线
    北山木鱼
    在 中回复了 李东岳 最后由 编辑
    #6

    @东岳 好的东岳老师,谢谢东岳老师,实在不好意思,上次断网没发出去刚发现。

    1 条回复 最后回复

  • 登录

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