| 24小時(shí)熱門(mén)版塊排行榜 |
| 5 | 1/1 | 返回列表 |
| 查看: 1166 | 回復(fù): 4 | |||
jiangge2585銅蟲(chóng) (小有名氣)
|
[求助]
udf 熱源 初始化
|
|
求大神幫我看看我的程序哪里出問(wèn)題了?這是一個(gè)激光高斯面熱源程序,我的意圖是:激光脈寬0.008s,頻率是10Hz,就是1秒激光打10次,每次持續(xù)0.008s。但是 模擬的結(jié)果卻是不能初始化,初始化時(shí)就卡主了,一直停在那。求大神救我! 這是程序: DEFINE_PROFILE(heat_flux,t,i) { real xx[ND_ND]; real y,x,r,a,time_step; int n; face_t f; begin_f_loop(f,t) { F_CENTROID(xx,f,t); y=xx[1]; x=xx[0]; r=0.001; a=0; n=0; if(a<=1) { if(a>=0.108*n&&a<=0.108*n+0.08) { if(sqrt(x*x+y*y)<=0.001) { F_PROFILE(f,t,i)=1160*0.7/(3.1415926*r*r)*exp(-(x*x+y*y)/(r*r)); } else { F_PROFILE(f,t,i)=0; } RP_Get_Real("flow-time" ;a=RP_Get_Real("flow-time" ;n=(int)a/0.108; } else { F_PROFILE(f,t,i)=0; } } else { Error("error reading file" ;} } end_f_loop(f,t) } |
銅蟲(chóng) (小有名氣)
|
這些天想了想,好像是begin_f_loop(f,t) 和循環(huán)程序沖突了,所以才會(huì)卡主,begin_f_loop(f,t) 掃描出一個(gè)面網(wǎng)格中心P,然后把符合(sqrt(x*x+y*y)<=0.001) 的P丟進(jìn)循環(huán)語(yǔ)句執(zhí)行,執(zhí)行過(guò)一次之后,a和n的值就已經(jīng)超出了循環(huán)條件所規(guī)定的范圍,不能再進(jìn)行循環(huán)了。 我就改了一下,但下面這個(gè)程序卻沒(méi)有發(fā)熱,不知道哪有問(wèn)題了?求大神救我! #include "udf.h" DEFINE_PROFILE(heat_flux,t,i) { real xx[ND_ND]; real y,x,r,a; int n; face_t f; begin_f_loop(f,t) { F_CENTROID(xx,f,t); y=xx[1]; x=xx[0]; r=0.001; if(sqrt(x*x+y*y)<=0.001) for(a=n=0;a>=0.1*n&&a<=0.1*n+0.008&&a<=1;n=(int)a/0.1) { F_PROFILE(f,t,i)=1160*0.7/(3.1415926*r*r)*exp(-(x*x+y*y)/(r*r)); a=RP_Get_Real("flow-time" ;} } end_f_loop(f,t) } |

新蟲(chóng) (初入文壇)
|
本帖內(nèi)容被屏蔽 |

新蟲(chóng) (初入文壇)
|
本帖內(nèi)容被屏蔽 |
新蟲(chóng) (小有名氣)
| 5 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|