| 5 | 1/1 | 返回列表 |
| 查看: 1561 | 回復: 15 | |||
| 當前只顯示滿足指定條件的回帖,點擊這里查看本話題的所有回帖 | |||
[求助]
幫忙看下這個udf有問題嗎?初始化沒問題,點計算出錯
|
|||
|
幫忙看下這個udf有問題嗎?初始化沒問題,點計算出錯 #include "udf.h" /*包括常規(guī)宏*/ #include "sg_mphase.h" /*包括體積分數(shù)宏*/ #define LAT_HT 2260000 /*定義水蒸汽潛熱*/ #define pi 3.1415 /*圓周率常數(shù)*/ #define R 8314 /*gas constant 8.314j/mol.K*/ #define moleweight 0.018 /*SI unit water mole weight 0.018kg/mol */ #define A 7.19621 #define B 1730.63 #define C 233.426 DEFINE_SOURCE(liq_src, cell, pri_th, dS, eqn) /*定義液相源項*/ { Thread *mix_th, *sec_th; /*混合相、第二相 定義計算區(qū)域指針*/ real m_dot_l; /*蒸發(fā)冷凝速率 定義液相質(zhì)量轉(zhuǎn)移*/ real P_SAT ; mix_th = THREAD_SUPER_THREAD(pri_th); /*指向混合區(qū)的主相即液相的指針*/ sec_th = THREAD_SUB_THREAD(mix_th, 1); /* 指向單相控制區(qū)的氣相的指針*/ P_SAT=exp(A-B/(C_T(cell,pri_th)+C-273.15))*1e3; /*定義飽和蒸汽壓與液相溫度的關(guān)系式,即antoine公式*/ if(C_P(cell, sec_th)< P_SAT) {m_dot_l = -(P_SAT-C_P(cell,sec_th))*sqrt(moleweight)*(2*pi*R*C_T(cell,pri_th)); /*定義液相向氣相轉(zhuǎn)移的速率,如果氣相的壓力小于一定溫度下的飽和蒸汽壓,液相向氣相發(fā)生質(zhì)量轉(zhuǎn)移*/ dS[eqn]= -2*pi*R*sqrt(moleweight)*(P_SAT-P_SAT*C_T(cell,pri_th)*B/pow((C_T(cell,pri_th)+C-273.15),2)-C_P(cell, sec_th)); /*定義源項對質(zhì)量轉(zhuǎn)移偏導,fabs為取絕對值*/ } else {m_dot_l = (P_SAT-C_P(cell,sec_th))*sqrt(moleweight)*(2*pi*R*C_T(cell,pri_th)); /*定義液相向氣相轉(zhuǎn)移的速率,如果氣相壓力大于一定溫度下的飽和蒸汽壓,氣相向液相發(fā)生質(zhì)量轉(zhuǎn)移*/ dS[eqn] = 0; /*由于氣相向液相轉(zhuǎn)移,所以液相的質(zhì)量源項對質(zhì)量轉(zhuǎn)移的偏導為零*/ } return m_dot_l; } DEFINE_SOURCE(vap_src, cell, sec_th, dS, eqn) { Thread *mix_th, *pri_th; real m_dot_v; real P_SAT ; mix_th = THREAD_SUPER_THREAD(sec_th); pri_th = THREAD_SUB_THREAD(mix_th, 0); P_SAT=exp(A-B/(C_T(cell,pri_th)+C-273.15))*1e3; if(C_P(cell, sec_th)< P_SAT) { m_dot_v = (P_SAT-C_P(cell,sec_th))*sqrt(moleweight)*(2*pi*R*C_T(cell,pri_th)); dS[eqn] =0; } else {m_dot_v = -(P_SAT-C_P(cell,sec_th))*sqrt(moleweight)*(2*pi*R*C_T(cell,pri_th)); dS[eqn]=-2*pi*R*sqrt(moleweight)*(P_SAT-P_SAT*C_T(cell,pri_th)*B/pow((C_T(cell,pri_th)+C-273.15),2)-C_P(cell, sec_th)); } return m_dot_v; } DEFINE_SOURCE(enrg_src, cell, mix_th, dS, eqn) { Thread *pri_th,*sec_th; real m_dot; real P_SAT; pri_th=THREAD_SUB_THREAD(mix_th,0); sec_th=THREAD_SUB_THREAD(mix_th,1); P_SAT=exp(A-B/(C_T(cell,pri_th)+C-273.15))*1e3; if(C_P(cell, sec_th)< P_SAT) { m_dot =- (P_SAT-C_P(cell,sec_th))*sqrt(moleweight)*(2*pi*R*C_T(cell,pri_th)); dS[eqn]=-2*pi*R*sqrt(moleweight)*(P_SAT-P_SAT*C_T(cell,pri_th)*B/pow((C_T(cell,pri_th)+C-273.15),2)-C_P(cell, sec_th)); } else { m_dot = (P_SAT-C_P(cell,sec_th))*sqrt(moleweight)*(2*pi*R*C_T(cell,pri_th)); dS[eqn]=2*pi*R*sqrt(moleweight)*(P_SAT-P_SAT*C_T(cell,pri_th)*B/pow((C_T(cell,pri_th)+C-273.15),2)-C_P(cell, sec_th)); } return LAT_HT*m_dot; } |
金蟲 (正式寫手)
擊破長空
|
這種情況下,建議你對計算的數(shù)據(jù)進行檢查。 你可以采用程序截斷的形式,用Message插入可能出問題的位置前后,看是否能輸出語言與數(shù)據(jù),這樣可以檢測你的程序運行到哪里出現(xiàn)了浮點錯誤。 你還可以用Error語句來控制程序的停止,你可以讓程序運行到任意位置停止,以便不讓程序在每一個控制容積里運行。 出現(xiàn)浮點錯誤的原因,是你計算出現(xiàn)極大或極小值,比0等等。 調(diào)試程序需要耐心與經(jīng)驗,祝你好運! |

金蟲 (正式寫手)
擊破長空

| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 269求調(diào)劑 +4 | 我想讀研11 2026-03-23 | 4/200 |
|
|---|---|---|---|---|
|
[考研] 一志愿華東理工大學081700,初試分數(shù)271 +3 | kotoko_ik 2026-03-23 | 4/200 |
|
|
[考研] 一志愿武理材料工程348求調(diào)劑 +6 |  ̄^ ̄゜汗 2026-03-19 | 9/450 |
|
|
[考研] 336化工調(diào)劑 +4 | 王大坦1 2026-03-23 | 5/250 |
|
|
[考研] 316求調(diào)劑 +7 | 梁茜雯 2026-03-19 | 7/350 |
|
|
[考研]
|
孅華 2026-03-22 | 4/200 |
|
|
[考研] 北科281學碩材料求調(diào)劑 +8 | tcxiaoxx 2026-03-20 | 9/450 |
|
|
[考研] 298求調(diào)劑 +8 | 上岸6666@ 2026-03-20 | 8/400 |
|
|
[考研] 311求調(diào)劑 +6 | 冬十三 2026-03-18 | 6/300 |
|
|
[考研] 308求調(diào)劑 +3 | 墨墨漠 2026-03-21 | 3/150 |
|
|
[考研] 生物學071000 329分求調(diào)劑 +5 | 我愛生物生物愛?/a> 2026-03-17 | 5/250 |
|
|
[考研] 318求調(diào)劑 +4 | plum李子 2026-03-21 | 7/350 |
|
|
[考研] 求調(diào)劑 +7 | Auroracx 2026-03-22 | 7/350 |
|
|
[考研] 278求調(diào)劑 +9 | 煙火先于春 2026-03-17 | 9/450 |
|
|
[考研] 22 350 本科985求調(diào)劑,求老登收留 +3 | 李軼男003 2026-03-20 | 3/150 |
|
|
[考研] 求調(diào)劑 +3 | 白QF 2026-03-21 | 3/150 |
|
|
[考研] 085601調(diào)劑 358分 +3 | zzzzggh 2026-03-20 | 4/200 |
|
|
[考研] 346求調(diào)劑[0856] +4 | WayneLim327 2026-03-16 | 7/350 |
|
|
[考研] 329求調(diào)劑 +9 | 想上學吖吖 2026-03-19 | 9/450 |
|
|
[論文投稿] 有沒有大佬發(fā)小論文能帶我個二作 +3 | 增銳漏人 2026-03-17 | 4/200 |
|