Navigation

    CFD中文网

    CFD中文网

    • Login
    • Search
    • 最新
    1. Home
    2. hongjiewang
    H
    • Profile
    • Following 1
    • Followers 0
    • Topics 26
    • Posts 105
    • Groups 0

    hongjiewang

    @hongjiewang

    34
    Profile views
    105
    Posts
    0
    Followers
    1
    Following
    Joined Last Online
    Location 上海交通大学 Age 25

    hongjiewang Unfollow Follow

    Latest posts made by hongjiewang

    • RE: Openfoam中的ExecutionTime 和ClockTime有何区别?

      @李东岳 老师,我看了一下我的z盘是网络驱动器,所以读取相比固态硬盘会慢很多~也就是说如果我直接放在Ubuntu根目录下运行算例的话,用时相对会少~
      但是就有另外的问题:在根目录下运行时,对电脑内存是否有要求(实际占用的是哪里的内存?);后期后处理时,安装的win版本的paraview,好像打开不到wsl下~
      1640918395(1).png
      1640918235(1).png

      posted in OpenFOAM
      H
      hongjiewang
    • RE: Openfoam中的ExecutionTime 和ClockTime有何区别?

      @李东岳 老师,我使用的是wsl系统,算例挂载在z盘计算,使用16个核并行计算。发现运行的时候clockTime远大于实际计算时间executionTime,几乎是它的五六倍
      这种问题有办法解决嘛~

      Solving for solid region SOLID
      smoothSolver:  Solving for T, Initial residual = 0.00013333, Final residual = 1.48053e-09, No Iterations 15
      min/max(T) = 372.689, 375.942
      ExecutionTime = 12245.5 s  ClockTime = 60719 s
      
      posted in OpenFOAM
      H
      hongjiewang
    • 气液两相 没有纯气体

      DZ44GBIONA}7`WR})4VI(2V.png
      GU0962NTFA1OXF5XX{B5.png
      上面是加热壁面,下面全都是多孔区域(孔隙率0.73),然后我产生的液相分布是这样的~ 几乎没有纯气体区域~甚至在固液界面处的液相含量反而高~我已经调过不同的毛细力模型,发现不是毛细力的影响~
      现在还可以做的是增大相变系数~但是我相变系数一增大,就会在开始相变的时候发散~

      有没有老师可以分析一下 可能是哪里导致的问题~

      solvers
      {
          "alpha.liquid.*"
          {         
              cAlpha          1;
              nAlphaCorr      2;
              nAlphaSubCycles 2;
              MULESCorr       yes;
              nLimiterIter    5;       
              solver          smoothSolver;
              smoother        symGaussSeidel;
              tolerance       1e-7;
              relTol          0;
          }
          rho
          {
              solver           diagonal;
              tolerance        1e-7;
              relTol           0.1;
          }
          rhoFinal
          {
              $rho;
              tolerance        1e-7;
              relTol           0;
          }
          mDotSmearFinal
          {
              solver           PCG;
              tolerance        1e-7;
              preconditioner   DIC;
              relTol           0.00;
              smoother         DIC;
          }
          "(U|T)"
          {
              solver           smoothSolver;
              smoother         symGaussSeidel;
              tolerance        1e-7;
              relTol           0.;
              minIter          15;
              maxIter          50;
          };  
          "(U|T)Final"
          {
              $U;
              tolerance        1e-7;
              relTol           0;
              maxIter          50;
          }
          p
          {
              tolerance        1e-8;
              solver           PCG;
              preconditioner   DIC;
              relTol           0.001;
              smoother         DIC;
          }
          pFinal
          {
              $p;
              tolerance       1e-07;
              relTol          0;
          }    
          "pcorr.*"
          {
              $p_rgh;
              tolerance        1e-9;
              relTol           0;
          };
      }
      PIMPLE
      {
          momentumPredictor   yes;
          nCorrectors         5;
          nNonOrthogonalCorrectors 0;
          pRefCell            0;
          pRefValue           1e5;
      }
      relaxationFactors
      {
          alpha.liquid   0.2;
          U              0.5;
          p              0.5;
      }
      
      ddtSchemes
      {
          default         Euler;
      }
      gradSchemes
      {
          default         Gauss linear;
      }
      divSchemes
      {
          div(phi,alpha)  Gauss vanLeer01;
          div(phirb,alpha) Gauss vanLeer01;
          //div(phirb,alpha) Gauss interfaceCompression;
          //div(rhoPhi,U)      Gauss vanLeerV;
          //div(rhoPhi,U)      Gauss limitedLinearV 1;
          div(rhoPhi,U)      Gauss linearUpwind;
          div(rhoPhiByEps,U)  Gauss linearUpwind;
          div((mu*dev2(grad(U).T()))) Gauss linear;
          div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
          div(((rho*nu)*dev2(T(grad(U))))) Gauss linear;
          div(rhoCpPhi,T) Gauss vanLeer;
          div((interpolate(cp)*rhoPhi),T) Gauss vanLeer;
      }
      laplacianSchemes
      {
          default         Gauss linear corrected;
      }
      interpolationSchemes
      {
          default         linear;
      }
      snGradSchemes
      {
          default         corrected;
      }
      
      posted in OpenFOAM
      H
      hongjiewang
    • RE: 类型转化

      @李东岳 嗯嗯好的~所以我上面的采用的其实是老师提到的第一种方法,但是需要把x分量表示出来,这样就不是vector量了~
      第二种方法我也尝试一下 谢谢老师~

      posted in OpenFOAM
      H
      hongjiewang
    • RE: 类型转化

      @李东岳 老师,我想要vol场~

      posted in OpenFOAM
      H
      hongjiewang
    • 类型转化

      0dd86172b816ae62cb1c7ea91d127f4.jpg
      我现在需要表示出dpc/da(volScalarField),一种方法是在界面处定义为无穷大的数(可以实现);另一种方法是我想转化为和x的关系,但是涉及到dx,就会变成volVector(当然可以用mag把vector转化为scalar,再相除是可以得到scalar类型的,但是好像物理意义不对了,在运行算例的时候会报错~),想问一下应该怎么处理~
      volScalarField dpcdx = mag(fvc::grad(pc_));
      volScalarField dSedx = mag(fvc::grad(Se_));
      volScalarField dpcdS_= dpcdx/dSedx;

      posted in OpenFOAM
      H
      hongjiewang
    • RE: 速度残差

      @李东岳 谢谢老师回复~
      老师可以帮我看一下这个错误怎么修改吗,按照您之前的一个帖子,定义了一个随时间变化的热流边界~

          HEATED
          {
              type       externalWallHeatFluxTemperature;
              mode     flux;
              q            coded;       // Heat flux
              code
              #{
                   scalar q=*this;
                   scalar t = this->db().time().value();       
                   if(t >= 0 && t<=1.5)
                   {
                        q = 180000;
                   }             
                   else if(t<=3)
      	     {
      	          q = 200000;
      	     }	     
      	     else if(t<=4.5)
      	     {
      	          q = 250000;
      	     }	     
      	     else if(t<=6)
      	     {
      	          q = 300000;
      	     }	     
      	     else
      	     {
      	          q = 0;
      	     }
      	     q.writeEntry("", os);	     
              #}; 
              value           uniform 300;
              kappaMethod     lookup;
              kappa           "K";
          }
      
      /home/dyfluid/OpenFOAM/dyfluid-v2006/run/bianhuaQ/0/SOLID/T.boundaryField.HEATED:32:23: error: cannot convert ‘const Foam::PatchFunction1Types::qPatchFunction1ScalarField’ to ‘Foam::scalar’ {aka ‘double’} in initialization
      /home/dyfluid/OpenFOAM/dyfluid-v2006/run/bianhuaQ/0/SOLID/T.boundaryField.HEATED:33:31: error: ‘const class Foam::PatchFunction1Types::qPatchFunction1ScalarField’ has no member named ‘db’
      /home/dyfluid/OpenFOAM/dyfluid-v2006/run/bianhuaQ/0/SOLID/T.boundaryField.HEATED:55:9: error: request for member ‘writeEntry’ in ‘q’, which is of non-class type ‘Foam::scalar’ {aka ‘double’}
      /home/dyfluid/OpenFOAM/dyfluid-v2006/run/bianhuaQ/0/SOLID/T.boundaryField.HEATED:55:24: error: ‘os’ was not declared in this scope; did you mean ‘cos’?
      
      posted in OpenFOAM
      H
      hongjiewang
    • 速度残差
      smoothSolver:  Solving for Ux, Initial residual = 1, Final residual = 1.00985e-16, No Iterations 15
      smoothSolver:  Solving for Uy, Initial residual = 1, Final residual = 1.07542e-16, No Iterations 15
      

      请问我求解算例的时候,发现速度的第一次迭代残差都是1。
      我用相同的求解器跑了其他的算例,速度的第一次残差也是0.1的量级。
      请问如何优化这种问题~

      posted in OpenFOAM
      H
      hongjiewang
    • RE: OpenFOAM小代码

      @hongjiewang 在 OpenFOAM小代码 中说:

      @李东岳 目前我需要将温度边界和压力边界定义为随相含量变化的一个场。我只可以做到变化之后的也是同一类边界条件,但是像下图中的气相区压力是第一类边界条件,液相区温度是第二类边界条件。请问这种变边界类型的边界应该怎么定义~1632279639(1).png

      已解决压力的~但是温度的第二类和第三类的转换还没有解决~

      posted in OpenFOAM
      H
      hongjiewang
    • RE: OpenFOAM小代码

      @李东岳 目前我需要将温度边界和压力边界定义为随相含量变化的一个场。我只可以做到变化之后的也是同一类边界条件,但是像下图中的气相区压力是第一类边界条件,液相区温度是第二类边界条件。请问这种变边界类型的边界应该怎么定义~1632279639(1).png

      posted in OpenFOAM
      H
      hongjiewang