| ²é¿´: 2253 | »Ø¸´: 0 | ||
ÈÕÔÂÐÇ¿ÕÌú³æ (³õÈëÎÄ̳)
|
[ÇóÖú]
fluentÔËÐйý³ÌÖгöÏÖ´íÎó£ºDivergence detected in AMG solver
|
|
ÎÒ×öµÄÊÇÃÜÏàÊäÔË´²ÌáÉý¹ÜÄÚÃºÆø»¯µÄÊýֵģÄâ¡£·¢ÉúµÄ¶à¸ö»¯Ñ§·´Ó¦ÐèҪдUDF¼ÓÈë½øÈ¥£¬Ã»µ¼ÈëUDF֮ǰ·´Ó¦»¹ÄܽøÐУ¬¿ÉÊÇÒ»µ¼ÈëUDF¾Í²»ÐÐÁË¡£ ËùÒÔÎÒÅжÏÓ¦¸ÃÊÇUDFдµÄÓÐÎÊÌ⣬¿Éµ¼ÈëµÄʱºòÏÔʾÓ﷨ʲôµÄû´íÎ󣬾ßÌåÄÄÀï²»ºÏÀí£¬ÎÒ̽¾¿Á˺ܾÃҲûÕÒ³ö벡¡£»¹Ï£Íû´óÉñÃÇÄܹ»¸øÓèÖ¸µ¼¡£ fluentÌáʾµÄ´íÎóÈçÏ£º # Divergence detected in AMG solver: mp-x-momentum -> Decreasing coarsening group size! # Divergence detected in AMG solver: mp-x-momentum -> Increasing relaxation sweeps! # Divergence detected in AMG solver: pressure correction -> Turning off correction scaling! # Divergence detected in AMG solver: pressure correction -> Increasing relaxation sweeps! Error ivergence detected in AMG solver:pressure correctionError ivergence detected in AMG solver:pressure correction.ÆäÖÐÒ»¸öUDFÈçÏ£º #include "udf.h" #include "stdio.h" #include "time.h" DEFINE_HET_RXN_RATE(c_arr,c,t,hr,mw,yi,rr,rr_t) { Domain **domain_reactant = hr->domain_reactant; real *stoich_reactant = hr->stoich_reactant; int *reactant = hr->reactant; int i; int sp_id; int dindex; Thread *t_reactant; real pp; real T,C; real p1,p3,p4,p5,mi,msum,m0,m1,m2,m3,m4,m5,m6,m7,m8,m9,ci; /* instead of compute rr directly, compute log(rr) and then take exp */ *rr = 0; i=0; sp_id = reactant; /* species ID to access mw and yi */ if (sp_id == -1) sp_id = 0; /* if phase does not have species, mw, etc. will be stored at index 0 */ dindex = DOMAIN_INDEX(domain_reactant); /* domain index to access mw & yi */ t_reactant = THREAD_SUB_THREAD(t,dindex); /* get conc. */ pp = 6*C_P(c,t_reactant)/101325; m0 = yi[dindex][0]/mw[dindex][0]; m1 = yi[dindex][1]/mw[dindex][1]; m2 = yi[dindex][2]/mw[dindex][2]; m3 = yi[dindex][3]/mw[dindex][3]; m4 = yi[dindex][4]/mw[dindex][4]; m5 = yi[dindex][5]/mw[dindex][5]; m6 = yi[dindex][6]/mw[dindex][6]; m7 = yi[dindex][7]/mw[dindex][7]; m8 = yi[dindex][8]/mw[dindex][8]; m9 = yi[dindex][9]/mw[dindex][9]; msum=m0+m1+m2+m3+m4+m5+m6+m7+m8+m9; p3=pp*yi[0][3]/mw[0][3]/msum; p4=pp*yi[0][4]/mw[0][4]/msum; p5=pp*yi[0][5]/mw[0][5]/msum; ci = MAX(p3,0); *rr+= log(ci); ci = MAX(p4,0); *rr+= log(ci); ci = MAX(p5,0); *rr+= log(ci); i=1; sp_id = reactant; /* species ID to access mw and yi */ if (sp_id == -1) sp_id = 0; /* if phase does not have species, mw, etc. will be stored at index 0 */ dindex = DOMAIN_INDEX(domain_reactant); /* domain index to access mw & yi */ t_reactant = THREAD_SUB_THREAD(t,dindex); /* get conc. */ ci = yi[1][5]*C_R(c,t_reactant)/mw[1][5];/*»ñµÃµÚ¶þÏàÖз´Ó¦Îï̼µÄÖÊÁ¿·ÖÊý*/ ci = MAX(ci,0); *rr+= log(ci); T =C_T(c,t_reactant); if (T>1117) T=1117; *rr+= log(2250)-42000/(8.314*T)-(17.29-16326/T); /* 1.e-40 < rr < 1.e40 */ *rr = MAX(*rr,-40); *rr = MIN(*rr,40); *rr = exp(*rr); } Ï£Íû´óÉñ¿´µ½ºóÄܹ»¸øÓèÖ¸µ¼£¬¶àлÁË¡£ |
» ²ÂÄãϲ»¶
081700»¯Ñ§¹¤³ÌÓë¼¼Êõ Ò»Ö¾Ô¸Öк£Ñó 323 Çóµ÷¼ÁѧУ
ÒѾÓÐ12È˻ظ´
385·Ö ÉúÎïѧ£¨071000£©Çóµ÷¼Á
ÒѾÓÐ7È˻ظ´
²ÄÁÏר˶283Çóµ÷¼Á
ÒѾÓÐ3È˻ظ´
0703Çóµ÷¼Á383·Ö
ÒѾÓÐ5È˻ظ´
323Çóµ÷¼Á
ÒѾÓÐ3È˻ظ´
26¿¼Ñе÷¼Á0710 0860
ÒѾÓÐ8È˻ظ´
081700ѧ˶£¬323·Ö£¬Ò»Ö¾Ô¸Öйúº£Ñó´óѧÇóµ÷¼ÁѧУ
ÒѾÓÐ3È˻ظ´
Ò»Ö¾Ô¸±±¾©»¯¹¤´óѧ£¬³õÊԳɼ¨350Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
Ò»Ö¾Ô¸0817»¯Ñ§¹¤³ÌÓë¼¼Êõ£¬Çóµ÷¼Á
ÒѾÓÐ22È˻ظ´
085600£¬×¨Òµ¿Î»¯¹¤ÔÀí£¬321·ÖÇóµ÷¼Á
ÒѾÓÐ10È˻ظ´














ivergence detected in AMG solver:pressure correction
»Ø¸´´ËÂ¥
120