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. 求解过程中出现的错误

求解过程中出现的错误

已定时 已固定 已锁定 已移动 OpenFOAM
12 帖子 3 发布者 10.0k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 史 离线
    史 离线
    史浩 神
    在 中回复了 danao 最后由 编辑
    #3

    @danao 这个是显示源项,是个常数,用Su函数应该没有问题。如果是函数的问题,应该一开始就会报错,应该算一会儿才报错

    让我们随波逐流

    1 条回复 最后回复
  • 史 离线
    史 离线
    史浩 神
    写于 最后由 编辑
    #4

    有的时候报错报的不完整,完整的错误如下:

    #0  Foam::error::printStack(Foam::Ostream&) at ??:?
    #1  Foam::sigFpe::sigHandler(int) at ??:?
    #2  ? in "/lib/x86_64-linux-gnu/libc.so.6"
    #3  double Foam::sumProd<double>(Foam::UList<double> const&, Foam::UList<double> const&) at ??:?
    #4  Foam::PBiCGStab::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const at ??:?
    #5  Foam::fvMatrix<double>::solveSegregated(Foam::dictionary const&) at ??:?
    #6  Foam::fvMatrix<double>::solve(Foam::dictionary const&) at ??:?
    #7  Foam::fvMatrix<double>::solve() at ??:?
    #8  ? at ??:?
    #9  __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
    #10  ? at ??:?
    Floating point exception (core dumped)
    

    让我们随波逐流

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

    T不与任何变量耦合?

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

    史 1 条回复 最后回复
  • 史 离线
    史 离线
    史浩 神
    在 中回复了 李东岳 最后由 编辑
    #6

    @东岳 在速度场中有一个浮升力项包含了T,其他的没有了,不知道这算不算耦合

    让我们随波逐流

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

    把速度方程中这一项去掉试试?

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

    史 1 条回复 最后回复
  • 史 离线
    史 离线
    史浩 神
    在 中回复了 李东岳 最后由 编辑
    #8

    @东岳 多谢东岳。经过一天半的追踪,我发现错误出在了边界条件上。一个边界条件是我重写的边界条件,这个边界条件和mixed很类似。问题应该是在这个函数上:

    const scalarField& k_ = 
        patch().lookupPatchField<volScalarField, scalar>("alphat");
    

    因为我的边界条件和另外一个场量alphat有关,在边界条件设置的时候,需要获得这个变量的边界上的场值。我再fvPatch.H下找到了这个函数,写在了程序中。这个函数在非动网格算例中运行很稳定,没有出现错误,但是在拓扑变化的网格中就不太稳定,时不时的会出错,但是出错的地方并不是网格拓扑变化的时候,而是随时都有可能出错。当我把这个函数去掉,程序就可以稳定运行了。
    请问东岳老师,还有没有其他的方式获得边界上的场变量?

    让我们随波逐流

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

    @史浩 在 求解过程中出现的错误 中说:

    当我把这个函数去掉,程序就可以稳定运行了。

    你之前只是声明,没调用?

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

    史 1 条回复 最后回复
  • 史 离线
    史 离线
    史浩 神
    在 中回复了 李东岳 最后由 编辑
    #10

    @东岳 有调用。我说的去掉是指不用这个函数,随便给这个k_赋值,他就没有问题。但是这样明显不符合物理意义,只是单纯的程序能运行而已

    void Foam::robinTemperatureFvPatchScalarField::evaluate(const Pstream::commsTypes)
    {
        if (!this->updated())
        {
            updateCoeffs();
        }
    
        scalarField k_ = //patch().deltaCoeffs();  //随便给个值
            patch().lookupPatchField<volScalarField, scalar>("alphat");
    
        valueFraction() =
            1.0/
            (
                1.0
              + k_*patch().deltaCoeffs()/(h_ + 1e-10)
            );
    
        mixedFvPatchScalarField::evaluate();
    }
    

    robinTemperatureFvPatchScalarField是mixedFvPatchScalarField的子类

    让我们随波逐流

    1 条回复 最后回复
  • 史 离线
    史 离线
    史浩 神
    写于 最后由 编辑
    #11

    顺便补充一下,这个函数的执行没什么问题,而是在solve的时候出现的错误。但是把这个去掉,求解就不会有问题。

    让我们随波逐流

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

    @史浩 在 求解过程中出现的错误 中说:

    函数的执行没什么问题,而是在solve的时候出现的错

    valueFraction() =
            1.0/
            (
                1.0
              + k_*patch().deltaCoeffs()/(h_ + 1e-10)
            );
    

    会不会是这个的问题呢?

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

    1 条回复 最后回复

  • 登录

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