Fluent

868 主题 4.1k 帖子
  • 16 帖子
    5k 浏览

    @一只大萌橙 您好,能分享下udf文件吗,我的邮箱是xsjyrn@163.com,万分感谢!

  • 1 帖子
    153 浏览

    510c9b90-10d2-4e21-b5db-0881bbb269e0-image.png
    雷诺正应力是通过上图所示方法计算得到,u'u'的时均。但是雷诺剪应力u'v'的时均该怎么计算呢?向各位大佬求助。

  • 球形颗粒接触点的处理方法求助

    8 帖子
    2k 浏览

    各位好,我最近用OpenFOAM也在做这方面的模拟,现在使用SHM划分网格遇到了一些问题,主要是网格质量、非正交性、凹度和负体积网格方面的,能否交流一下

  • 2 帖子
    198 浏览

    高雷诺数低雷诺数模型不是看流场的雷诺数,而是看壁面附近。

    你2000用kEpsilon模型+壁面函数就可以。 如果壁面网格不好弄,那就需要高解析壁面网格+低雷诺数湍流模型。
  • 1 帖子
    149 浏览

    想要计算的物理问题是跨临界流体(二氧化碳,或者是氟利昂制冷剂)在大范围压降条件下的相变过程,说人话就是比如入口是超临界的CO2,经过Laval nozzle膨胀到亚临界;
    对于这种情况必须考虑真实流体热力学方程了,目前我用的实现方法是通过调用NIST REFPROP生成的real gas property lookup table的办法来计算气液相流体的热物性,这个方法在计算亚临界范围内,大压降的工况也可以计算,收敛情况相对满意,但是一旦计算跨临界状态就发散了,在外国的CFD论坛上找过,类似的答复是NIST流体数据库使用的方程在临界点附近似乎存在不收敛的问题,如图所示:

    1c5761fa-95be-44a0-a527-4e2f418b4098-9bacb2a3045cb6950be3e5620394144.png
    现在很苦恼,一直卡在这个问题上面,请教一下各位大神,在fluent里面计算跨临界流体热物性还有什么别的实现方法吗

  • 稳定的残差变化疑问

    2 帖子
    223 浏览

    估计网格质量不太好

  • VOF中的PLIC方法

    6 帖子
    412 浏览

    :baobao: :baobao:

  • fluent速度入口

    3 帖子
    423 浏览

    @LYHua 太感谢了,解决了,给力

  • fluent xy plot

    1 帖子
    130 浏览

    请问在fluent里怎么增加x,yplot的数据点,现在是每隔1微米一个点,怎么每0.1微米一个点?或者在别的后处理软件能实现吗?现在的网格也是1微米的。
    0b602e26-be9f-406e-bbae-aa49086f601a-image.png

  • 圆柱绕流 Re=3900 cl升力系数计算不准

    3 帖子
    259 浏览

    算不准大概率是网格问题,不仅仅是数量,还有质量,另外,系数值的获取是如何计算,自己手动计算还是直接通过软件监测?若通过软件监测,则需注意参考值的设定。

  • 5 帖子
    342 浏览

    @tyloryu 明白了,感谢!!!

  • 液滴凝固体积膨胀

    1 帖子
    111 浏览

    通过VOF和solidification模型仿真液滴结冰,有没有大佬实现过体积膨胀?

  • 6 帖子
    330 浏览

    就是这个扩散通量的正负。一般扩散项到等号左边是付的。

  • 仿真小白笔记本CPU选择

    5 帖子
    858 浏览
  • 8 帖子
    2k 浏览

    @Yan 您好,请问您是用的什么后处理软件,在导出速度的时候可以把笛卡尔坐标系改成柱坐标系

  • Fluent延长出口计算时出现了如下问题

    1 帖子
    195 浏览

    求助各位老师,在扩展出口计算域计算时,发现了如下问题,具体细节如下图,不同方案中红色截面处的总压大小不同,是什么原因造成的。(尤其是方案2和方案3总压的不同是因为什么原因)
    问.png

  • 老师们求帮助

    1 帖子
    193 浏览

    有没有大佬做过电解碱水制氢的算例模拟啊,帮助文档里的电解水制氢复现了,点解碱水大佬们有没有做成功的case文件

  • 1 帖子
    138 浏览

    请问一下各位大佬,欧拉-欧拉气固两相流模拟,设置流体域旋转后,wall可以设置成不旋转吗,对结果有没有影响,因为wall设置成旋转之后,就无法设置镜面反射系数了

  • 基于Fluent 中的UDF做双向流固耦合。

    7 帖子
    2k 浏览

    @吴优 现在的问题是如何将我的我的结构求解模块和fluent联立起来。是如何获取wall的表面力用于插值到固体域网格。

  • 4 帖子
    360 浏览

    @hehaohao2013 兄弟,我用的欧拉法模拟的气固两相流,目前还没和实验作对比

  • RANS在Kolmogorov scale的能谱分析?

    3 帖子
    400 浏览

    我觉得不能。RANS大部分都抹掉了。
    有大佬看到系统的论述么?

  • 1 帖子
    274 浏览

    各位CFD大佬,小弟最近在用fluent做模拟时遇到一个问题,物理背景就是管内的热水以射流的方式喷出然后被周围的环境冷水稀释,在做小模型模拟(x=40m y=2m z=13.3cm)的时候,模拟结果尚可,对称性很完美,但在做大模型的时候(x=4000m y=2000m z=10m),模拟结果很不好。
    用的稳态模拟,大模型网格数量大概七百多万,用的reliazable k-e湍流模型,进口的湍流参数设置用CFD计算器估算过了,另外在模拟的时候fluent一直有湍流粘度比超限的提示,但小模型就不会有,不知道最后的不对称结果和这个是不是有关系。
    1564dc71-8ed2-4905-ba1b-67fbca1936e3-图片.png
    热水从圆的四周均匀喷射出来,然后被流动的冷水稀释,冷水流动方向从左至右,可以看到图中并没有达到一个对称效果,等值线都没有对称。
    21f863e0-2b3c-4e9f-994a-ae3797889acf-图片.png
    热水进口在上图的最底部,垂直向上喷射,中间比较黑的那一块有一块顶盖,作用是让热水向周围扩散开来而不是垂直向上冲,图中看到网格有些瑕疵的地方是tecplot的显示问题,可以忽略。
    a652dbd8-6ce0-4c30-9c4a-97e6fee8e965-892fea64760b5fcdfe9299ba371783e.png
    从这张图可以看出热水向上喷射,被顶盖挡住,最后向四周扩散上浮的过程。

    总结一下几点疑问:
    1.模拟时fluent的湍流粘度比超限警告是否和最后模拟结果的不对称有关系?
    2.小模型模拟结果对称,而大模型就不行,和网格的大小有关系吗?小模型的最大网格大概也就在厘米级别,而大模型的最大网格一般在米级别(最大有五米左右)。
    其实最核心的诉求还是想解决对称性的问题,最好不要用对称边界条件,能用整个模型就用整个模型。

  • 8 帖子
    1k 浏览

    对称几何对称网格对称边界条件,但最后模拟出来的结果不对称的问题。

    这个问题是会有发生,就类似圆柱扰流,注定是不对称的。不过如果是一个可以对称的物理,加上一个完全对称的数值设置。发生不对称的结果。就不太好说了。

  • 1 帖子
    206 浏览

    采用overset重叠网格和UDF函数模拟串列三圆柱的涡激振动,其中UDF分别尝试了Newmark-Beta方法和4阶Runge Kutta法获取圆柱的振动响应,通过DEFINE_CG_MOTION宏赋予三个圆柱及component cells的运动速度,算例的雷诺数约200,采用k-omega sst模型,考虑水作为来流介质,计算过程中尝试了时间步长从1.0e-3缩小到1.0e-5等多个量级,但是求解过程总是出现升力和升力矩突然骤增,继而导致圆柱运动速度过大,最终计算发散。

    请各位大佬帮忙看看是哪里出问题?

    具体的UDF和部分设置如下:

    #include "udf.h" #include "sg_mem.h" #include "dynamesh_tools.h" #define PI 3.141592654 #define zoneID_1 4 #define zoneID_2 16 #define zoneID_3 20 FILE *outNB,*outRK; static real y = 0.0; static real yRK = 0.0; static real dy = 0.0; static real vy = 0.0; static real vyRK = 0.0; static real vyRK2 = 0.0; static real ay = 0.0; static real current_time = 5; static real y2 = 0.0; static real y2RK = 0.0; static real dy2 = 0.0; static real vy2 = 0.0; static real vy2RK = 0.0; static real vy2RK2 = 0.0; static real ay2 = 0.0; static real current_time2 = 5; static real y3 = 0.0; static real y3RK = 0.0; static real dy3 = 0.0; static real vy3 = 0.0; static real vy3RK = 0.0; static real vy3RK2 = 0.0; static real ay3 = 0.0; static real current_time3 = 5; DEFINE_CG_MOTION(cylinder_1,dt,vel,omega,time,dtime) { real ctime = RP_Get_Real("flow-time"); real ctimestep = RP_Get_Integer("time-step"); real niter = N_ITER; if (current_time < ctimestep) { current_time = ctimestep; /*Define variables*/ /*Mesh variables*/ real cg[3],vcg[3]; /*Cylinder variables*/ real diameter = 0.063; real fn = 1.0892; real density = 998.2; real length = 1; real water_depth = 1; real mass_ratio = 0.3937; real damping_ratio = 0.01; real mass = mass_ratio*density*pow((0.5*diameter),2)*PI*length; real ad_mass = mass*(0); /*density*pow((0.5*diameter),2)*PI*water_depth;*/ real total_mass = mass + ad_mass; real k = 4*pow((PI*fn),2)*total_mass; real c = 2 * damping_ratio * sqrt(k*total_mass); /*Force calculation. Force = F_pressure + F_viscous*/ real fy = 0.0; real fvy = 0.0; int i; #if !RP_HOST Thread *tc,*thread; Domain *d = Get_Domain(1); face_t f; tc = Lookup_Thread(d,zoneID_1); thread = DT_THREAD(dt); NV_S(vel, =, 0.0); NV_S(omega, =, 0.0); real NV_VEC(A); begin_f_loop(f,tc) { if (PRINCIPAL_FACE_P(f,tc)) { fvy = F_STORAGE_R_N3V(f,tc,SV_WALL_SHEAR)[1]*-1; /*“*-1”表示方向*/ F_AREA(A,f,tc); /*Force calculation with a depth of 1m*/ fy += F_P(f,tc)*A[1] + fvy; } } end_f_loop(f,tc) #endif #if RP_NODE fy = PRF_GRSUM1(fy); #endif /*Dynamic mesh position*/ #if!RP_HOST for (i=0;i<3;i++) { cg[i]=DT_CG(dt)[i]; vcg[i] = DT_VEL_CG(dt)[i]; } Message("Position CG: %f \n",cg[1]); #endif node_to_host_real_2(fy,cg[1]); /*Numerical methods*/ /*Numark-beta*/ real beta = 0.25; real gamma = 0.5; real term0 = (1/(beta*dtime*dtime))*(mass+ad_mass) + (gamma/(beta*dtime))*c; real term1 = (1/(beta*dtime))*(mass+ad_mass) + ((gamma/beta)-1)*c; real term2 = ((1/(2*beta))-1)*(mass+ad_mass) + dtime*((gamma/(2*beta))-1)*c; real Keff = k + term0; real Reff = fy*water_depth + term0*cg[1] + term1*vy + term2*ay; Message("Velocity: %f \n",vy); dy = Reff/Keff - cg[1]; y += dy; real vprev = vy; vy = (gamma/(beta*dtime))*dy + (1-(gamma/beta))*vy + dtime*(1-(gamma/(2*beta)))*ay; ay = (1/(beta*dtime*dtime))*dy - (1/(beta*dtime))*vprev - ((1/(2*beta))-1)*ay; /*Runge-kutta 4th order*/ real K1 = (fy*water_depth - c*vyRK - k*yRK) / total_mass; real K2 = (fy*water_depth - c*(vyRK+dtime*0.5*K1) - k*(yRK+dtime*0.5*vyRK)) / total_mass; real K3 = (fy*water_depth - c*(vyRK+dtime*0.5*K2) - k*(yRK+dtime*0.5*vyRK+dtime*dtime*K1/4)) / total_mass; real K4 = (fy*water_depth - c*(vyRK+dtime*K3) - k*(yRK+dtime*vyRK+dtime*dtime*K1/2)) / total_mass; yRK = yRK + vyRK*dtime + dtime*dtime*(K1 + K2 + K3 + K4)/6; vyRK = vyRK + dtime*(K1 + K2 + K3 + K4)/6; /*Transfer result to the dynamic mesh*/ vel[0] = 0.0; vel[1] = vyRK; /*Save files*/ #if !RP_NODE /*Message ("Force = %f, pos = %f, vel = %f, acc = %f\n", fy, cg[1], y, vy);*/ if(NULL == (outNB = fopen("dataNB1.txt","a"))) { Error("Could not open file for append!\n"); } fprintf(outNB,"%16.4e %12.1f %16.3e %16.7f %16.7f %16.7f \n", ctime,niter, fy , cg[1], y, vy); fclose(outNB); if(NULL == (outRK = fopen("dataRK1.txt","a"))) { Error("Could not open file for append!\n"); } fprintf(outRK,"%16.4e %12.1f %16.3e %16.7f %16.7f %16.7f \n", ctime,niter, fy , cg[1], yRK, vyRK); fclose(outRK); #endif } /*Transfer result to the dynamic mesh*/ vel[0] = 0.0; vel[1] = vyRK; } DEFINE_CG_MOTION(cylinder_1_frontgrid_1,dt,vel,omega,time,dtime) { NV_S(vel, =, 0.0); NV_S(omega, =, 0.0); vel[0]=0.0; vel[1]=vyRK; } DEFINE_CG_MOTION(cylinder_1_overset_2,dt,vel,omega,time,dtime) { NV_S(vel, =, 0.0); NV_S(omega, =, 0.0); vel[0]=0.0; vel[1]=vyRK; } DEFINE_ZONE_MOTION(cylinder_1_zone,omega,axis,origin,velocity,time,dtime) { N3V_D(velocity, =, 0, 0, 0); N3V_S(origin, =, -0.32); N3V_D(axis, =, 0.0, 0.0, 1.0); velocity[1]=vyRK; } DEFINE_CG_MOTION(cylinder_2,dt,vel,omega,time,dtime) { real ctime = RP_Get_Real("flow-time"); real ctimestep = RP_Get_Integer("time-step"); real niter = N_ITER; if (current_time2 < ctimestep) { current_time2 = ctimestep; /*Define variables*/ /*Mesh variables*/ real cg[3],vcg[3]; /*Cylinder variables*/ real diameter = 0.063; real fn = 1.0892; real density = 998.2; real length = 1; real water_depth = 1; real mass_ratio = 0.3937; real damping_ratio = 0.01; real mass = mass_ratio*density*pow((0.5*diameter),2)*PI*length; real ad_mass = mass*(0); /*density*pow((0.5*diameter),2)*PI*water_depth;*/ real total_mass = mass + ad_mass; real k = 4*pow((PI*fn),2)*total_mass; real c = 2 * damping_ratio * sqrt(k*total_mass); /*Force calculation. Force = F_pressure + F_viscous*/ real fy = 0.0; real fvy = 0.0; int i; #if !RP_HOST Thread *tc,*thread; Domain *d = Get_Domain(1); face_t f; tc = Lookup_Thread(d,zoneID_2); thread = DT_THREAD(dt); NV_S(vel, =, 0.0); NV_S(omega, =, 0.0); real NV_VEC(A); begin_f_loop(f,tc) { if (PRINCIPAL_FACE_P(f,tc)) { fvy = F_STORAGE_R_N3V(f,tc,SV_WALL_SHEAR)[1]*-1; /*“*-1”表示方向*/ F_AREA(A,f,tc); /*Force calculation with a depth of 1m*/ fy += F_P(f,tc)*A[1] + fvy; } } end_f_loop(f,tc) #endif #if RP_NODE fy = PRF_GRSUM1(fy); #endif /*Dynamic mesh position*/ #if!RP_HOST for (i=0;i<3;i++) { cg[i]=DT_CG(dt)[i]; vcg[i] = DT_VEL_CG(dt)[i]; } Message("Position CG: %f \n",cg[1]); #endif node_to_host_real_2(fy,cg[1]); /*Numerical methods*/ /*Numark-beta*/ real beta = 0.25; real gamma = 0.5; real term0 = (1/(beta*dtime*dtime))*(mass+ad_mass) + (gamma/(beta*dtime))*c; real term1 = (1/(beta*dtime))*(mass+ad_mass) + ((gamma/beta)-1)*c; real term2 = ((1/(2*beta))-1)*(mass+ad_mass) + dtime*((gamma/(2*beta))-1)*c; real Keff = k + term0; real Reff = fy*water_depth + term0*cg[1] + term1*vy2 + term2*ay2; Message("Velocity: %f \n",vy2); dy2 = Reff/Keff - cg[1]; y2 += dy2; real vprev = vy2; vy2 = (gamma/(beta*dtime))*dy2 + (1-(gamma/beta))*vy2 + dtime*(1-(gamma/(2*beta)))*ay2; ay2 = (1/(beta*dtime*dtime))*dy2 - (1/(beta*dtime))*vprev - ((1/(2*beta))-1)*ay2; /*Runge-kutta 4th order*/ real K1 = (fy*water_depth - c*vy2RK - k*yRK) / total_mass; real K2 = (fy*water_depth - c*(vy2RK+dtime*0.5*K1) - k*(y2RK+dtime*0.5*vy2RK)) / total_mass; real K3 = (fy*water_depth - c*(vy2RK+dtime*0.5*K2) - k*(y2RK+dtime*0.5*vy2RK+dtime*dtime*K1/4)) / total_mass; real K4 = (fy*water_depth - c*(vy2RK+dtime*K3) - k*(y2RK+dtime*vy2RK+dtime*dtime*K1/2)) / total_mass; y2RK = y2RK + vy2RK*dtime + dtime*dtime*(K1 + K2 + K3 + K4)/6; vy2RK = vy2RK + dtime*(K1 + K2 + K3 + K4)/6; /*Transfer result to the dynamic mesh*/ vel[0] = 0.0; vel[1] = vy2RK; /*Save files*/ #if !RP_NODE /*Message ("Force = %f, pos = %f, vel = %f, acc = %f\n", fy, cg[1], y, vy);*/ if(NULL == (outNB = fopen("dataNB2.txt","a"))) { Error("Could not open file for append!\n"); } fprintf(outNB,"%16.4e %12.1f %16.3e %16.7f %16.7f %16.7f \n", ctime,niter, fy , cg[1], y2, vy2); fclose(outNB); if(NULL == (outRK = fopen("dataRK2.txt","a"))) { Error("Could not open file for append!\n"); } fprintf(outRK,"%16.4e %12.1f %16.3e %16.7f %16.7f %16.7f \n", ctime,niter, fy , cg[1], y2RK, vy2RK); fclose(outRK); #endif } /*Transfer result to the dynamic mesh*/ vel[0] = 0.0; vel[1] = vy2RK; } DEFINE_CG_MOTION(cylinder_2_frontgrid_1,dt,vel,omega,time,dtime) { NV_S(vel, =, 0.0); NV_S(omega, =, 0.0); vel[0]=0.0; vel[1]=vy2RK; } DEFINE_CG_MOTION(cylinder_2_overset_2,dt,vel,omega,time,dtime) { NV_S(vel, =, 0.0); NV_S(omega, =, 0.0); vel[0]=0.0; vel[1]=vy2RK; } DEFINE_ZONE_MOTION(cylinder_2_zone,omega,axis,origin,velocity,time,dtime) { N3V_D(velocity, =, 0, 0, 0); N3V_S(origin, =, 0.0); N3V_D(axis, =, 0.0, 0.0, 1.0); velocity[1]=vy2RK; } DEFINE_CG_MOTION(cylinder_3,dt,vel,omega,time,dtime) { real ctime = RP_Get_Real("flow-time"); real ctimestep = RP_Get_Integer("time-step"); real niter = N_ITER; if (current_time3 < ctimestep) { current_time3 = ctimestep; /*Define variables*/ /*Mesh variables*/ real cg[3],vcg[3]; /*Cylinder variables*/ real diameter = 0.063; real fn = 1.0892; real density = 998.2; real length = 1; real water_depth = 1; real mass_ratio = 0.3937; real damping_ratio = 0.01; real mass = mass_ratio*density*pow((0.5*diameter),2)*PI*length; real ad_mass = mass*(0); /*density*pow((0.5*diameter),2)*PI*water_depth;*/ real total_mass = mass + ad_mass; real k = 4*pow((PI*fn),2)*total_mass; real c = 2 * damping_ratio * sqrt(k*total_mass); /*Force calculation. Force = F_pressure + F_viscous*/ real fy = 0.0; real fvy = 0.0; int i; #if !RP_HOST Thread *tc,*thread; Domain *d = Get_Domain(1); face_t f; tc = Lookup_Thread(d,zoneID_3); thread = DT_THREAD(dt); NV_S(vel, =, 0.0); NV_S(omega, =, 0.0); real NV_VEC(A); begin_f_loop(f,tc) { if (PRINCIPAL_FACE_P(f,tc)) { fvy = F_STORAGE_R_N3V(f,tc,SV_WALL_SHEAR)[1]*-1; /*“*-1”表示方向*/ F_AREA(A,f,tc); /*Force calculation with a depth of 1m*/ fy += F_P(f,tc)*A[1] + fvy; } } end_f_loop(f,tc) #endif #if RP_NODE fy = PRF_GRSUM1(fy); #endif /*Dynamic mesh position*/ #if!RP_HOST for (i=0;i<3;i++) { cg[i]=DT_CG(dt)[i]; vcg[i] = DT_VEL_CG(dt)[i]; } Message("Position CG: %f \n",cg[1]); #endif node_to_host_real_2(fy,cg[1]); /*Numerical methods*/ /*Numark-beta*/ real beta = 0.25; real gamma = 0.5; real term0 = (1/(beta*dtime*dtime))*(mass+ad_mass) + (gamma/(beta*dtime))*c; real term1 = (1/(beta*dtime))*(mass+ad_mass) + ((gamma/beta)-1)*c; real term2 = ((1/(2*beta))-1)*(mass+ad_mass) + dtime*((gamma/(2*beta))-1)*c; real Keff = k + term0; real Reff = fy*water_depth + term0*cg[1] + term1*vy3 + term2*ay3; Message("Velocity: %f \n",vy3); dy3 = Reff/Keff - cg[1]; y3 += dy3; real vprev = vy3; vy3 = (gamma/(beta*dtime))*dy3 + (1-(gamma/beta))*vy3 + dtime*(1-(gamma/(2*beta)))*ay3; ay3 = (1/(beta*dtime*dtime))*dy3 - (1/(beta*dtime))*vprev - ((1/(2*beta))-1)*ay3; /*Runge-kutta 4th order*/ real K1 = (fy*water_depth - c*vy3RK - k*y3RK) / total_mass; real K2 = (fy*water_depth - c*(vy3RK+dtime*0.5*K1) - k*(y3RK+dtime*0.5*vy3RK)) / total_mass; real K3 = (fy*water_depth - c*(vy3RK+dtime*0.5*K2) - k*(y3RK+dtime*0.5*vy3RK+dtime*dtime*K1/4)) / total_mass; real K4 = (fy*water_depth - c*(vy3RK+dtime*K3) - k*(y3RK+dtime*vy3RK+dtime*dtime*K1/2)) / total_mass; y3RK = y3RK + vy3RK*dtime + dtime*dtime*(K1 + K2 + K3 + K4)/6; vy3RK = vy3RK + dtime*(K1 + K2 + K3 + K4)/6; /*Transfer result to the dynamic mesh*/ vel[0] = 0.0; vel[1] = vy3RK; /*Save files*/ #if !RP_NODE /*Message ("Force = %f, pos = %f, vel = %f, acc = %f\n", fy, cg[1], y, vy);*/ if(NULL == (outNB = fopen("dataNB3.txt","a"))) { Error("Could not open file for append!\n"); } fprintf(outNB,"%16.4e %12.1f %16.3e %16.7f %16.7f %16.7f \n", ctime,niter, fy , cg[1], y3, vy3); fclose(outNB); if(NULL == (outRK = fopen("dataRK3.txt","a"))) { Error("Could not open file for append!\n"); } fprintf(outRK,"%16.4e %12.1f %16.3e %16.7f %16.7f %16.7f \n", ctime,niter, fy , cg[1], y3RK, vy3RK); fclose(outRK); #endif } /*Transfer result to the dynamic mesh*/ vel[0] = 0.0; vel[1] = vy3RK; } DEFINE_CG_MOTION(cylinder_3_frontgrid_1,dt,vel,omega,time,dtime) { NV_S(vel, =, 0.0); NV_S(omega, =, 0.0); vel[0]=0.0; vel[1]=vy3RK; } DEFINE_CG_MOTION(cylinder_3_overset_2,dt,vel,omega,time,dtime) { NV_S(vel, =, 0.0); NV_S(omega, =, 0.0); vel[0]=0.0; vel[1]=vy3RK; } DEFINE_ZONE_MOTION(cylinder_3_zone,omega,axis,origin,velocity,time,dtime) { N3V_D(velocity, =, 0, 0, 0); N3V_S(origin, =, 0.32); N3V_D(axis, =, 0.0, 0.0, 1.0); velocity[1]=vy3RK; }

    运动速度.png
    运动速度

    运动位移.png
    运动位移

    压力系数.png
    压力系数

    动网格设置.png
    动网格设置

  • Fluent S2S辐射模型一步收敛且残差为0

    2 帖子
    310 浏览

    请问解决了吗?也遇到了同样的问题。

  • 流向周期性能量不守恒

    1 帖子
    127 浏览

    各位大佬好,模型是一个0.125x0.5x0.6m的光滑通道,上下壁面均为无滑移的300K恒温壁面,进口温度320K,进出口及左右壁面均采用周期性边界条件,模拟步骤是先用RANS模拟,之后使用TUI指令添加扰动然后切换到LES模拟。按理说流体温度应该小于等于320K而且随时间逐渐减小,但是云图画出来最高温度有323K,又模拟了0.5s后最高温度没什么变化其他地方的温度似乎也没什么变化。周期性设置如图(压力梯度最开始为0)搜狗截图20230903172308.png
    我想知道是为啥 :136:

  • 1 帖子
    139 浏览

    我采用的稳态MRF模型进行模拟,如果桨距角改变,同一来流速度下给旋转域设置的旋转速度需要改变吗

  • 1 帖子
    182 浏览

    81a56a41-f2c6-4e5c-8504-2cb7df0a1f28-image.png ,我看帮助文档中DPM对droplet的描述是换热、蒸发和沸腾,这都是液滴材料从液相传质到气相,请问能不能实现从气相到液相的传质(就是吸收)?

  • 1 帖子
    155 浏览

    81a56a41-f2c6-4e5c-8504-2cb7df0a1f28-image.png ,我看帮助文档中DPM对droplet的描述是换热、蒸发和沸腾,这都是液滴材料从液相传质到气相,请问能不能实现从气相到液相的传质(就是吸收)?

  • Fluent的计算结果与理论公式值不匹配

    20 帖子
    1k 浏览

    @李东岳 这点我清楚,实际上这么多参数里也就总摩擦系数对不上,其他的基本上全对上了。LES的话得在文献里是说在入口用vortex method施加扰动,而且模拟的是有肋的,所以基本上不担心涡的问题。流向周期性的模型也可以在RANS模拟之后用TUI命令施加扰动,之前试过了涡能长期存在,不过那个case没算完结果对不对就不清楚了。

  • fluent燃料电池电流不稳定

    7 帖子
    494 浏览

    @羽之下 谢谢

  • 1 帖子
    145 浏览

    小白初学fluent,对凝固过程有了解,也做过连铸凝固模型案例,但是组分输送模型和多相流VOF要怎么开启还不清楚,有没有大神教一下怎么设置

  • dpm模型模拟闪蒸

    1 帖子
    165 浏览

    请问一下各位大佬,在使用dpm模拟液滴闪蒸时,液滴沸点设置为373k,液滴温度设置为400k,连续相温度为300k,连续相介质为空气,采用双向耦合进行计算,当液滴颗粒射入连续相中时,连续相喷嘴处的温度就迅速上升,可达上千度,甚至报温度超限的错误,请问一下这是为什么呀![QQ图片20230818084454.jpg

  • 多孔介质双温度方程UDF中固体温度

    5 帖子
    492 浏览

    @ibelief 谢谢,在气体和固体能量方程中,需要知道气体和固体温度,以便计算两者之间的热量传递,用于源项。
    我试了试之前提到的判断压力,然后再赋值给气体或固体,这个方法是行不通的。在fluent中若不打开双能量方程,在多孔介质区域没有压力为0的固体温度,估计fluent就是加入个孔隙率参数。
    这个udf就是想把化学反应吸热加入到源项中
    udf1.png
    udf2.png

  • 5 帖子
    1k 浏览

    @gsky0809 老哥,物质传输方程在哪里设置啊,我刚开始学宏观偏析,还不太懂,能指导一下吗

  • 1 帖子
    141 浏览

    个人觉得这个功能特别实用,特别是对于边界很多的案例,能直观看到边界在哪个位置。但是2020以后的版本都没有找到此功能,想问一下是阉割掉了还是被别的功能替代了?谢谢!微信图片_20230818185948.png

  • 3 帖子
    396 浏览

    弧度制角度制的问题?

  • 进行cfd计算时对进出口进行延长是必要的吗

    6 帖子
    978 浏览

    @Yan 你出全部的图,然后只看你感兴趣的地方就可以了

  • 使用UDS的时候怎么确定单位啊?

    1 帖子
    183 浏览

    使用UDS计算电势和流体所受到的电场力,但是在边界定义标量数值的时候默认单位是1吗?怎么弄成电势单位?

  • 2 帖子
    525 浏览

    没有了。fluent那个指南有近1000页,后来翻译出来的水平残次不齐,发布出去之后影响名声,后来就没发布

  • 3 帖子
    715 浏览

    @hxy970122 您好,请问这个问题您解决了吗?

  • 如何使用UDF修改LES模型中的滤波尺度?

    10 帖子
    3k 浏览

    @西湖冷月 您好请问您这篇工作完成了吗,想要拜读一下

  • 3 帖子
    394 浏览

    @李东岳
    李老师好
    公司领导论文, 来不及实验测了。用fluent,做的是喷淋冷却,主要之前没开固液黏附选项。实在不行我再统一取一个角度吧。

  • 关于PBM模型的聚合核UDF问题

    1 帖子
    200 浏览

    欧拉欧拉模型的群体平衡方程,如果有多相参与计算那么聚合核的UDF需要额外改吗?比如气固的聚合核UDF在气固固能直接用吗? 因为我使用的FLUENT的DQMOM模型,里面必须有三相参与计算,需要编聚合核的UDF。

  • 关于置换通风室内气流模拟不收敛问题

    13 帖子
    3k 浏览

    @深蓝 感谢感谢!

  • 关于用fluent UDF 编写风力机致动线模型

    8 帖子
    3k 浏览

    @Darry6682 好呀,我的邮箱是 maguolin1234@126.com

  • 利用Tosca Fluid做流道优化

    1 帖子
    230 浏览

    打扰大家,有用Tosca Fluid做流道优化的吗,或者用别的软件也行,加个好友,一起讨论学习。

  • 液滴模拟边缘粗糙

    3 帖子
    376 浏览

    不太好说。感觉就是设置没设置好。。

  • 鼓泡塔液位模拟

    16 帖子
    7k 浏览

    @dongsc 感觉是速度过大的原因,可以设置小点试试看。另外,你的这个折算是按照Re相同折算的表观气速?

  • 求助~Fluent PBM UDF-Luo聚并模型

    7 帖子
    2k 浏览

    请问luo破碎核的UDF怎么编写呢?