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中文网

Q

QuietCheng

@QuietCheng
关于
帖子
6
主题
2
群组
0
粉丝
0
关注
0

帖子

最新

  • 关于超声速双压缩拐角流动分离问题
    Q QuietCheng

    更新下计算对比结果,目前能算出分离,不过分离位置跟文献还有差异
    dc9bfdff-92bf-4721-b316-a0314fff3edc-image.png


  • 关于超声速双压缩拐角流动分离问题
    Q QuietCheng

    @dzw05 感谢回复!:xinxin: 网格按照文献的,他提供的y+范围是0.01-0.5,我取得的是0.3;流向网格倒没有怎么关注,流向最小长度取的跟法向一样的;格式也是照着文献的,应该是FLUENT密度基默认的方法,Roe-FDS方法,空间离散是二阶迎风。最新的计算结果能算出分离(可能之前没有算收敛:zoule: ),不过位置还是有点差异。


  • 关于超声速双压缩拐角流动分离问题
    Q QuietCheng

    @东岳 感谢回复,A Numerical Research on a Compressibility-correlated Langtry’s
    Transition Model for Double Wedge Boundary Layer Flows,https://doi.org/10.1016/S1000-9361(11)60030-7。
    昨晚上延长了计算时间(courant number0.5,迭代了大概2万多步阻力系数基本收敛;文献里面是8000步,CFL数最大6)居然就出现了分离了:zoule:(结果另附) 。难道是因为之前没收敛么?但是按照文献中,监测摩阻系数已经出现了好几步迭代数值不变的情况了,这个时候还不能判断为收敛吗?:mihu:


  • 关于超声速双压缩拐角流动分离问题
    Q QuietCheng

    本人在利用FLUENT做超声速双压缩拐角流动分离算例,按照文献给的条件求解时,居然没算出来拐角处的分离
    无论是层流模拟还是转捩模型,都没有分离出现,壁面压力和文献完全不一样。如下图1为文献壁面压力分布,2为自己计算的压力分布。
    be7ca0d9-3e96-4714-aedf-1e95ba2e1649-image.png
    f14c55f0-ae97-4692-aabd-c278e8eb347a-image.png
    不知各位知道是什么原因么?谢谢大家:xinxin:
    再贴上网格
    a41681f4-f32a-4d7d-8de6-f3048735905a-image.png


  • 请问如何在FLUENT中如何使用UDF修正tansiton SST模型
    Q QuietCheng

    自己顶一下这个帖子
    这段时间又重复看了文献,发现暂时能够写其中一个DEFINE_TRANS_RETHETA的UDF,源代码如下:

    #include "udf.h"
    #include "mem.h"
    
    DEFINE_TRANS_RETHETA_T(user_Re_thetat, c, t)
    {
    	/*变量定义(通过变量宏文件获取具体流场参数)*/
    	
    	real Re_thetat;          //当地转捩雷诺数(迭代求解)Rethetat = F(Tu)*F(lamda_theta)
    	//当地湍流度定义
    	real FTu;                 //F(Tu)
    	real Tu;                 //当地湍流度
    	real TKE = C_K(c,t);       //湍动能  C_K(c,t)
    	real U = C_VMAG2(c,t);   //当地速率   
    //  real U = sqrt(C_U(c,t)*C_U(c,t)+C_V(c,t)*C_V(c,t)+C_W(c,t)*C_W(c,t));
    	 
    
    	//当地压力因子定义
    	real Flamda_theta;        //F(lamda_theta)
    	real lamda_theta0;        //压力梯度因子
    	real lamda_theta1;        //压力梯度因子
    	real K;                 //加速因子
    //  real theta;              //当地动量厚度(迭代求解)
    	real miu;               //运动学粘性系数 v = u/rou
    	
    	
    	real dUdx;              //速率沿不同方向导数(dUds,dUdx,dUdy,dUdz)
    	real dUdy;
    	real dUdz;
    	real dUds;	
    	
    	//变量求解
    	
    	//首先获取基本流体参数比如速度、湍动能、倒数等,再计算相关参数
    
    	dUdx = 0.5*pow(U*U,-0.5)*(2.0*C_U(c,t)*C_DUDX(c,t)+2.0*C_V(c,t)*C_DUDX(c,t)+2.0*C_W(c,t)*C_DUDX(c,t));
    	dUdy = 0.5*pow(U*U,-0.5)*(2.0*C_U(c,t)*C_DUDY(c,t)+2.0*C_V(c,t)*C_DUDY(c,t)+2.0*C_W(c,t)*C_DUDY(c,t));
    	dUdz = 0.5*pow(U*U,-0.5)*(2.0*C_U(c,t)*C_DUDZ(c,t)+2.0*C_V(c,t)*C_DUDZ(c,t)+2.0*C_W(c,t)*C_DUDZ(c,t));
    	dUds = (C_U(c,t)/U)*dUdx+(C_V(c,t)/U)*dUdy+(C_W(c,t)/U)*dUdz;
    	
    	miu = pow(C_T(c,t)/288.15,1.5)*(288.15+110.4)/(C_T(c,t)+110.4)*1.4607*pow(10.0,-5.0)/C_R(c,t);   //计算运动学粘性系数
    	K = miu/(U*U)*dUds;	                                                                             //计算加速因子
    	Tu = 100.0*sqrt(2.0*TKE/3.0)/U;                                                                  //计算湍流度
    	
    	
    	//迭代求解theta
    	lamda_theta0 = 0;
    	lamda_theta1 = 0;
    	do
    	{
    		lamda_theta0 = lamda_theta1; 
    		/***********************求Re_thetat********/
    		if(Tu > 1.3) 
    		{
    			FTu = 331.5*pow((Tu-0.5658),-0.671);
    		}
               else 
    		{
    			FTu = 1173.51-589.428*Tu+0.2196/(Tu*Tu);
    		}
    		if(lamda_theta0 > 0) 
    		{
    			Flamda_theta = (1.0+0.275*(1.0-exp(-35.0*lamda_theta0))*exp(-2.0*Tu));
    		}
    		else 
    		{
    			Flamda_theta = (1.0+(12.986*lamda_theta0+123.66*(lamda_theta0*lamda_theta0)+405.689*pow(lamda_theta0,3.0))*exp(-pow((Tu/1.5),1.5)));
    		}
    		Re_thetat = FTu*Flamda_theta;
    		/******************************************/
    		
    	    lamda_theta1 = (Re_thetat*Re_thetat)*K; 
    		
    	} while(fabs(lamda_theta1-lamda_theta0) < 0.01)
    		
        return Re_thetat;	
    }
    

    但是在FLUENT里面interpreted的时候报错
    a4c326d7-09fe-4d62-b316-79f687a754c0-image.png
    这里75、76就是最后两行,返回值和右括号。
    请教一下大家:chouchou:


  • 请问如何在FLUENT中如何使用UDF修正tansiton SST模型
    Q QuietCheng

    在FLUENT中使用tansiton SST转捩模型时,可以对Re_theta, Flength 和 Re_theta_c三个参数使用UDF进行修改,1.FLUENT在这个转捩模型的UDF接口中只提供了这三个参数对应的接口,如下图
    adfa9fbc-1de4-4c15-a83f-d058e6b69c2a-image.png
    UDF manual中也对这一部分设置了对应的例子,如下:

    #include "udf.h"
    
    DEFINE_TRANS_FLENGTH(user_Flength, c, t)
    {
      real Flength = 31.468;
    
      return Flength;
    }
    
    DEFINE_TRANS_RETHETA_C(user_Re_thetac, c, t)
    {
      real Re_thetac = 176.396;
    
      return Re_thetac;
    }
    
    DEFINE_TRANS_RETHETA_T(user_Re_thetat, c, t)
    {
      real Re_thetat = 210;
    
      return Re_thetat;
    }
    

    但是在实际文献中,这三个参数是和另一个参数Re_thetat_ba相关。比如:
    57349002-97e0-4dfb-b2a0-93531e1cba06-image.png
    而这个参数是通过一个输运方程求解(转捩模型内嵌)。
    所以需要在上述UDF代码中求解参数应该是要调用Re_thetat_ba,这个参数具体信息我又不知道,因此不知道怎么写这个UDF。
    求教一下有做过的或者类似经历的大神,不甚感激:xinxin:

  • 登录

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