CFD中文网

    CFD中文网

    • 登录
    • 搜索
    • 最新

    加热封闭空间的空气后能量守恒的问题

    OpenFOAM
    2
    4
    341
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • M
      minecraftgp 最后由 编辑

      算例是一个封闭的空间有一个热流恒定为80W的热源加热空气。

      遇到的问题是验证能量守恒时发现房间内所有空气每秒增加的总焓为75J,与80W之间有6-7%的误差。

      我的求解器是buoyantPimpleFoam,考虑到空气的温度变化较小,故采用了boussinesq作为状态方程

      热源的设置是将房间中一部分的空气作为一个cellset当做热源,具体设置如下

      heat1
          {
              type            scalarSemiImplicitSource;
              enabled         true;
              active          true;
              scalarSemiImplicitSourceCoeffs
              {
              selectionMode   cellSet;
              cellSet        heat1;
              volumeMode      absolute;
              injectionRateSuSp
                  {
                          h
                          {
                              Su table
                              (
                                  (0 80)
                              );
                              Sp      0.0;
                          }
                  }
              }
          }
      

      检测房间内焓增的方法如下,用到了swak4Foam,其中公式里的298.15是T0参考温度,1000是Cp质量比热容,vol()代表每个网格的体积

      T_volSum_room
          {
              name        T_volSum_room;
              type        swakExpression;
              valueType   cellSet;
              libs        ("libsimpleSwakFunctionObjects.so" );
              outputControlMode  timeStep;
              outputInterval     10;
              writeStartTime  no;
              setName    room;
              expression  "(T-298.15)*1000*vol()*rho"; 
              autoInterpolate   true;
              accumulations   (sum);
              verbose     true;
          }
      

      请问大家到底是哪里出了问题?我考虑了三种情况

      1. boussinesq状态方程导致:这个情况我否定了,因为换了状态方程perfect gas之后该现象依然存在
      2. 热源设置问题:即以上的设置方法产生的热流本身就小于80W
      3. 检测方法问题: 用以下公式后在求和并不能准确测出房间内总的焓增
       (T-298.15)*1000*vol()*rho
      

      希望大家指点下到底会是什么原因呢
      感谢感谢

      1 条回复 最后回复 回复 引用
      • Z
        zhouxu 最后由 编辑

        我猜可能是(3):在数值计算中,空气的比热是随温度变化的,也就是大于1000,这个要看你的算例设置了。而后处理计算,比热假设为常数了。两者之间会有误差。

        M 1 条回复 最后回复 回复 引用
        • M
          minecraftgp @zhouxu 最后由 编辑

          @zhouxu
          感谢回复!
          但是关于质量比热容Cp在我的算例里应该是不变的,原因是我使用了hConstThermo的热力模型,该模型假设Cp不变
          屏幕截图 2022-02-20 231014.jpg
          是否还会有别的原因呢?

          Z 1 条回复 最后回复 回复 引用
          • Z
            zhouxu @minecraftgp 最后由 编辑

            @minecraftgp 嗯,那cp的值是1000J/kg/K吗?计算初始空气温度是298.15K吗?

            1 条回复 最后回复 回复 引用
            • First post
              Last post