| 查看: 5239 | 回復(fù): 116 | |||
[交流]
激光反射吸收熱源模型。。。〈a重量爆料。。。。∏蠼獯穑。。。。。。。。
|
|||
|
代碼有點錯誤,我現(xiàn)在是想用最小二乘法擬合自由表面的曲線,首先輪循所有自由表面網(wǎng)格,計算自由表面網(wǎng)格數(shù)量N,開辟數(shù)值存儲自由表面上網(wǎng)格的重心(優(yōu)良擬合三次曲線方程),gt,GS,max三個函數(shù)是用來求三次曲線方程y=a+bx+cx2+dx*x*x四個系數(shù)。然后把求出的四個系數(shù)保存到C_UDMI中,用于與離散的激光光線求交。代碼編譯之后有錯誤,可能思路上都已經(jīng)與udf編程思想向偏離了,求各路大神指點,重謝!。。。。。。。。。≈辽400金幣。。。『呛 #include "udf.h" #include "sg.h" #include "sg_mphase.h" #include "flow.h" #include <math.h> double gt(double x[],double y[]); double GS(double a[4][4],double b[4],double x[4]); double max(double array[4]); DEFINE_ADJUST(store_gradient,domain) { int phase_domain_index = 0; real xc[ND_ND],xd[ND_ND],x[4],n1,n2,thita_l,thita_g; Thread *t; Thread **pt; cell_t c; Domain *pDomain = DOMAIN_SUB_DOMAIN(domain,phase_domain_index); { Alloc_Storage_Vars(pDomain,SV_VOF_RG,SV_VOF_G,SV_NULL); Scalar_Reconstruction(pDomain, SV_VOF,-1,SV_VOF_RG,NULL); Scalar_Derivatives(pDomain,SV_VOF,-1,SV_VOF_G,SV_VOF_RG,Vof_Deriv_Accumulate); } mp_thread_loop_c(t,domain,pt) { if (FLUID_THREAD_P(t)) { int N=0; Thread *ppt = pt[phase_domain_index]; begin_c_loop (c,t) { C_CENTROID(xd,c,t); if(C_VOF(c, ppt)>0.1&&C_VOF(c, ppt)<0.9&&fabs(xd[0]-0)>0.0005) N++; } end_c_loop (c,t) double a[N],b[N],c[N],d[N],e[N],f[N],g[N]; int i; for(i=0; i<N; i++) { a=1; } int j=0; begin_c_loop (c,t) { C_CENTROID(xc,c,t); if(C_VOF(c, ppt)>0.1&&C_VOF(c, ppt)<0.9&&fabs(xc[0]-0)>0.0005) { b[j]=xc[0]; e[j]=xc[1]; c[j]=b[j]*b[j]; d[j]=b[j]*b[j]*b[j]; j++; } } end_c_loop (c,t) f[0]=gt(a,a);f[1]=gt(a,b);f[2]=gt(a,c);f[3]=gt(a,d);f[4]=gt(b,b);f[5]=gt(b,c);f[6]=gt(b,d); f[7]=gt(c,c);f[8]=gt(c,d);f[9]=gt(d,d);g[0]=gt(a,e);g[1]=gt(b,e);g[2]=gt(c,e);g[3]=gt(d,e); double array[4][4]={{f[0],f[1],f[2],f[3]},{f[1],f[4],f[5],f[6]},{f[2],f[5],f[7],f[8]},{f[3],f[6],f[8],f[9]}}; GS(array,g,x); C_UDMI(c,t,0) = x[0]; C_UDMI(c,t,1) = x[1]; C_UDMI(c,t,2) = x[2]; C_UDMI(c,t,3) = x[3]; } } Free_Storage_Vars(pDomain,SV_VOF_RG,SV_VOF_G,SV_NULL); } double gt(double x[],double y[]) { double sum=0; int i; for(i=0;i<N;i++) sum=x*y+sum; return sum; } double GS(double a[4][4],double b[4],double x[4]) { double c[4]={0}; double x0[4]={0}; int i,j,k; double sum=0; for(k=1;;k++) { for(i=0;i<4;i++) { for(j=0;j<4;j++) { sum=a[j]*x0[j]+sum; } x=x0+(b-sum)/a; c=fabs(x-x0); x0=x; sum=0; } r=max(c); if(r<0.0001) { break; } } return 0; } double max(double array[4]) { double a=array[0]; int i; for(i=0;i<4;i++) { if(a<array) a=array; } return a; } |
» 搶金幣啦!回帖就可以得到:
+2/408
+1/84
+1/60
+1/40
+1/35
+1/33
+1/32
+1/30
+1/29
+1/19
+1/15
+1/10
+1/7
+1/7
+1/7
+1/6
+1/6
+1/5
+1/5
+1/5
















| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 0854電子信息求調(diào)劑 +3 | α____ 2026-03-22 | 3/150 |
|
|---|---|---|---|---|
|
[考研] 284求調(diào)劑 +5 | Zhao anqi 2026-03-22 | 5/250 |
|
|
[考研] 293求調(diào)劑 +12 | zjl的號 2026-03-16 | 17/850 |
|
|
[考研] 求調(diào)劑院校信息 +6 | CX 330 2026-03-21 | 6/300 |
|
|
[考研] 一志愿北京化工大學070300 學碩336求調(diào)劑 +5 | vv迷 2026-03-21 | 8/400 |
|
|
[考研] 318求調(diào)劑 +4 | plum李子 2026-03-21 | 7/350 |
|
|
[考研] 一志愿深大,0703化學,總分302,求調(diào)劑 +4 | 七月-七七 2026-03-21 | 4/200 |
|
|
[基金申請]
學校已經(jīng)提交到NSFC,還能修改嗎?
40+4
|
babangida 2026-03-19 | 9/450 |
|
|
[考研] 083200學碩321分一志愿暨南大學求調(diào)劑 +3 | innocenceF 2026-03-17 | 3/150 |
|
|
[考研] 南京大學化學376求調(diào)劑 +3 | hisfailed 2026-03-19 | 6/300 |
|
|
[考研] 294求調(diào)劑材料與化工專碩 +15 | 陌の森林 2026-03-18 | 15/750 |
|
|
[考研] 一志愿中海洋材料工程專碩330分求調(diào)劑 +8 | 小材化本科 2026-03-18 | 8/400 |
|
|
[考研] 一志愿武漢理工材料工程專碩調(diào)劑 +9 | Doleres 2026-03-19 | 9/450 |
|
|
[考研] 求調(diào)劑一志愿南京航空航天大學289分 +3 | @taotao 2026-03-19 | 3/150 |
|
|
[考研] 085410人工智能專碩317求調(diào)劑(0854都可以) +4 | xbxudjdn 2026-03-18 | 4/200 |
|
|
[論文投稿]
申請回稿延期一個月,編輯同意了。但系統(tǒng)上的時間沒變,給編輯又寫郵件了,沒回復(fù)
10+3
|
wangf9518 2026-03-17 | 4/200 |
|
|
[考研] 材料與化工求調(diào)劑 +7 | 為學666 2026-03-16 | 7/350 |
|
|
[考研] 085600材料與化工求調(diào)劑 +6 | 緒幸與子 2026-03-17 | 6/300 |
|
|
[考研] 308求調(diào)劑 +4 | 是Lupa啊 2026-03-16 | 4/200 |
|
|
[考研] 275求調(diào)劑 +4 | 太陽花天天開心 2026-03-16 | 4/200 |
|