|
用等离子体激励增强升力
在壁面分别施加40组激励
壁面升力随激励位置的变化曲线如下图。
完全没有规律!!!
特别是第9、10、35组,有点离谱
其中第9组的压力分布如下,影响有点太大了。壁面压力分布看得更清楚
而第1组的压力分布如下。可见影响不太大。
正常理解的话,
第9号位置是有问题的。
后来测试了很多参数,
例如网格质量,来流条件,库郎数,计算格式。
都没有用。
结果在UDF中看到了问题。
原始片段如下:
DEFINE_SOURCE(energy_source,c,t,dS,eqn) { float theta; real temp1,temp2,temp3; real source,px,py,pz,zmax; real x[ND_ND]; C_CENTROID(x,c,t); px=x[0]; py=x[1]; theta=angle*pie/180.0; temp1=((px-xx)*cos(theta) + (py-yy)*sin(theta))*((px-xx)*cos(theta) + (py-yy)*sin(theta)); temp2=((px-xx)*sin(theta) - (py-yy)*cos(theta))*((px-xx)*sin(theta) - (py-yy)*cos(theta)); temp3=temp1/(AA*AA) + temp2/(BB*BB); if (temp3 <=1.0) { source=e_max; C_UDMI(c,t,0)=source; } dS[eqn]=0.0; return source; } | 定义椭圆区域 如果单元中心落在椭圆区域内 令source=e_max |
问题出在标黄位置
if 完了之后,没有else!!
在椭圆区域外的source应该等于零
正确的应该是
DEFINE_SOURCE(energy_source,c,t,dS,eqn) { float theta; real temp1,temp2,temp3; real source,px,py,pz,zmax; real x[ND_ND]; C_CENTROID(x,c,t); px=x[0]; py=x[1]; theta=angle*pie/180.0; temp1=((px-xx)*cos(theta) + (py-yy)*sin(theta))*((px-xx)*cos(theta) + (py-yy)*sin(theta)); temp2=((px-xx)*sin(theta) - (py-yy)*cos(theta))*((px-xx)*sin(theta) - (py-yy)*cos(theta)); temp3=temp1/(AA*AA) + temp2/(BB*BB); if (temp3 <=1.0) source=e_max; else source=0.; C_UDMI(c,t,0)=source; dS[eqn]=0.0; return source; } |
修改之后,升力随激励位置的变化,看起正常些,如下图所示。
在第9和第10位置没有出现特别奇特的情况。
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-12-14 16:00
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社