| 1 | 1/1 | 返回列表 |
| 查看: 2013 | 回復(fù): 0 | ||
[求助]
并行計算udf
|
|
昨天下午開始著手并行計算,遇到很多問題,從64位系統(tǒng)編譯udf,到單機多核計算的設(shè)置,晚上終于能算了。但是上午一看結(jié)果,動網(wǎng)格在動了一個周期之后就沒有運動了。這個udf是單核計算的udf,并行計算下需要修改嗎?udf如下: #include <stdio.h> #include "udf.h" //調(diào)用fluent udf頭文件 //udf.h中的運動控制子程序 DEFINE_CG_MOTION(finright, dt, vel, omega, time, dtime) // finright在udf里的名字 { //# define PI 3.1415926 real freq=0.3; real T = 1.0/freq; //定義上下?lián)u翼前后平均值(初值) real faiLC=0.0*M_PI/180; real faiFEC=0.0*M_PI/180; real faiFLC=0.0*M_PI/180; //定義上下?lián)u翼前后幅值 real faiLA=20.0*M_PI/180; real faiFEA=32.4406*M_PI/180; real faiFLA=0.0*M_PI/180; //上下相對搖翼的相位差 real dfaiL=0.0*M_PI/180; //前后相對搖翼的相位差 real dfaiFL=0.0*M_PI/180; //前后相對搖翼的相位差 real dfaiFE=90.0*M_PI/180; //35度的角fai,翼型初始時y*軸與固定坐標系y軸的夾角 real fai=0.0*M_PI/180; //faiL=faiLC-faiLAcos(w*t+dfaiL)當t=0時的faiL用faiLini表示 real faiLini; //faiFL=faiFLC-faiFLAcos(w*t+dfaiFL)當t=0時的faiFL用faiFLini表示 real faiFLini; //搖翼角速度 real omegaFE; //上下拍翼角速度 real omegaL; //前后拍翼角速度 real omegaFL; //上下拍翼角度 // real faiL; //搖翼角度 real faiFE; //前后拍翼角度 real faiFL; /* reset velocities */ //初始化速度和角速度 NV_S (vel, =, 0.0); NV_S (omega, =, 0.0); // 定義 /*faiFE=faiFEC-faiFEA*cos(2*M_PI*freq*time+dfaiFE); omegaFE=faiFEA*2*M_PI*freq*cos(2*M_PI*freq*time+dfaiFE); omegaL=faiLA*2*M_PI*freq*cos(2*M_PI*freq*time+ dfaiL);*/ // //faiLini=faiLC-faiLA*cos(dfaiL); if (!Data_Valid_P ()) return; // 在0~T/4時間內(nèi)將faiL轉(zhuǎn)到faiLini,即先將翼轉(zhuǎn)到初始的位置 // 這里實際就是繞x星轉(zhuǎn)faiLini角,下面的程序就是要找出在固定坐標系下怎么轉(zhuǎn)得到這個結(jié)果 // x星=cosfai*x+sinfai*y // x星的單位矢量=cosfai*i+sinfai*j // w=wx星*x星的單位矢量 // 現(xiàn)在未知的是wx星,需要wx星在0~T/4內(nèi)積分=faiLini // 試湊出wx星=faiLini*w*coswt // 所以w=faiLini*w*coswt*cosfai*i+faiLini*w*coswt*sinfai*j // 實際上認為t=0時,faiL=faiLini,但模型初始不是的 // T周期w=2pi/T if (time >=0 && time<0.25*T) { //x軸omega[0],y軸omega[1],z軸omega[2] faiFEini= faiFEC+faiFEA*sin(dfaiFE); faiFLini=faiFLC+faiFLA*sin(dfaiFL); omega[0]= faiFLini*2.0*M_PI*freq*cos(2.0*M_PI*freq*time)*sin(faiFEini); omega[1]= faiFEini*2.0*M_PI*freq*cos(2.0*M_PI*freq*time); omega[2]= faiFLini*2.0*M_PI*freq*cos(2.0*M_PI*freq*time)*cos(faiFEini); } // 運動控制 if (time >=0.25*T) { faiFE=faiFEC+faiFEA*sin(2*M_PI*freq*(time-0.25*T)+ dfaiFE); faiFL=faiFLC-faiFLA*sin(2*M_PI*freq*(time-0.25*T)+dfaiFL); omegaFE=faiFEA*2*M_PI*freq*cos(2*M_PI*freq*(time-0.25*T) + dfaiFE); omegaFL=faiFLA*2*M_PI*freq*cos(2*M_PI*freq*(time-0.25*T)+dfaiFL); omegaL=faiLA*2*M_PI*freq*cos(2*M_PI*freq*(time-0.25*T)); omega[0]=-omegaFE*sin(fai)+omegaFL*cos(fai)*sin(faiFE)+omegaL*cos(faiFL)*cos(faiFE)*cos(fai)-omegaL*sin(faiFL)*sin(fai); omega[1]=omegaFE*cos(fai)+omegaFL*sin(faiFE)*sin(fai)+omegaL*cos(faiFL)*cos(faiFE)*sin(fai)+omegaL*sin(faiFL)*cos(fai); omega[2]=omegaFL*cos(faiFE)-omegaL*cos(faiFL)*sin(faiFE); } } |
找到一些相關(guān)的精華帖子,希望有用哦~
| 1 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 291求調(diào)劑 +7 | Y-cap 2026-03-29 | 8/400 |
|
|---|---|---|---|---|
|
[考研] 化學(xué)工程085602 305分求調(diào)劑 +22 | RichLi_ 2026-03-25 | 22/1100 |
|
|
[考研] 一志愿211,335分,0856,求調(diào)劑院校和導(dǎo)師 +5 | 傾____蕭 2026-03-27 | 6/300 |
|
|
[考研] 330分求調(diào)劑 +5 | qzenlc 2026-03-29 | 5/250 |
|
|
[考研] 生物學(xué)學(xué)碩,一志愿湖南大學(xué),初試成績338 +6 | YYYYYNNNNN 2026-03-26 | 7/350 |
|
|
[考研] 一志愿華理,數(shù)一英一285求A區(qū)調(diào)劑 +8 | AZMK 2026-03-25 | 12/600 |
|
|
[考研] 085602 化工專碩 338分 求調(diào)劑 +12 | 路癡小琪 2026-03-27 | 12/600 |
|
|
[考研] 347求調(diào)劑 +3 | 山頂見α 2026-03-25 | 3/150 |
|
|
[考研] 346求調(diào)劑 一志愿070303有機化學(xué) +3 | 蘿卜燉青菜 2026-03-28 | 3/150 |
|
|
[考研] 317求調(diào)劑 +6 | 十閑wx 2026-03-24 | 6/300 |
|
|
[考研] 285求調(diào)劑 +4 | AZMK 2026-03-27 | 7/350 |
|
|
[考研] 324求調(diào)劑 +5 | hanamiko 2026-03-26 | 5/250 |
|
|
[考研] 081200-11408-276學(xué)碩求調(diào)劑 +3 | 崔wj 2026-03-26 | 3/150 |
|
|
[考研] 生物學(xué) 296 求調(diào)劑 +4 | 朵朵- 2026-03-26 | 6/300 |
|
|
[考研] 281求調(diào)劑 +6 | Koxui 2026-03-24 | 7/350 |
|
|
[考研] 各位老師您好:本人初試372分 +5 | jj涌77 2026-03-25 | 6/300 |
|
|
[考研] 0854人工智能方向招收調(diào)劑 +4 | 章小魚567 2026-03-24 | 4/200 |
|
|
[有機交流]
20+3
|
FENGSHUJEI 2026-03-23 | 5/250 |
|
|
[考研]
|
13659058978 2026-03-24 | 4/200 |
|
|
[考研] 328求調(diào)劑 +4 | LHHL66 2026-03-23 | 4/200 |
|