OpenFOAM如何进行数据转换以便进行比大小



  • 在求解器其中需要使用<=、>=、<、>等比较操作符来对一个double型变量和一个体标量场类型的数据进行比较大小。本想着用强制类型转换来操作,但是行不通。具体代码如下:

     b=mesh.C().coponent(vector::Y)/0.01;//b被定义为了一个体标量场,来表示距离壁面的无量纲距离;
     if(b<=1.25)
     {
     Prt=0.45;
     }
     else
     {
     Prt=4.75
     }
    

    如上,我查看其他代码发现scale 变量能够用到比较操作符中, 具体有了解的同学解答嘛,,,


  • 管理员

    @一颗鸭蛋OpenFOAM如何进行数据转换以便进行比大小 中说:

    对一个double型变量和一个体标量场类型的数据进行比较大小

    这个如何比较?



  • @李东岳 我明年上班去了,哈哈哈哈哈



  • 刚刚尝试了下将double型变量赋值给一个新的体标量场,然后比较两个体标量场的大小就可以通过编译了:chitang:

    b =mesn.C().component(vector::Y)/a;//b被声明为一个体标量场记录距离壁面的无量纲距离,a为特征长度
    Prt = 1.25;//Prt也是被声明为一个体标量场,这里先把Prt当做了一个中间变量,Prt为我研究中的湍流普朗特数,其对流体温度梯度影响很大,应当是一个函数而非常数。
    if( b <= Prt )
    {
      Prt = 0.45;
    }
    else
    {
      Prt=4.75;
    }
    

    今晚先算用编译好的求解器算一遍对不对,结果好的话,明后天再放上来。


Log in to reply
 


CFD中文网 | 东岳流体学术 | 东岳流体商业 | 吉ICP备20003622号-1