24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 2482  |  回复: 7
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

dqyzgyttro

金虫 (小有名气)

[求助] 求助利用uds求解方程组,uds发散 已有2人参与

在收敛的流场中设置四个uds,求解四个方程,算的是稳态问题,不计算流场,只计算四个标量。
现在我按照uds的格式写好各项,其中对流项和源项都有利用C_UDSI引用其他三个标量,同时还用ON_DEMAND给各标量赋了初值。
代码可以通过编译,问题是开始计算就会显示uds发散,不知道问题出在哪里,向各位高手求助。
谢谢解答!@wuming524
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dqyzgyttro

金虫 (小有名气)

引用回帖:
4楼: Originally posted by xpxp1991 at 2016-11-04 07:14:56
初值用define-init

用了,似乎问题没解决呢

发自小木虫Android客户端
5楼2016-11-04 10:28:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 8 个回答

qc12345

至尊木虫 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
??UDS?????????????н??!
聽海
2楼2016-11-03 22:06:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dqyzgyttro

金虫 (小有名气)

程序如下
#include "udf.h"
#include "mem.h"
#include "math.h"




DEFINE_ON_DEMAND(demandbeginning)
{

Thread *t;
cell_t c;
face_t f;

Domain *d;
d=Get_Domain(1);
thread_loop_c(t,d)
{

begin_c_loop(c,t)
{

        C_UDSI(c,t,0)=0.000001;
        C_UDSI(c,t,1)=C_U(c,t);
        C_UDSI(c,t,2)=C_V(c,t);
        C_UDSI(c,t,3)=C_W(c,t);
       
}
end_c_loop(c,t);

}


}

DEFINE_UDS_FLUX(flux0, f, t, i)
{
  Thread *t0,*t1=NULL;
  cell_t c0,c1=-1;
real NV_VEC(psi_vec),NV_VEC(A),flux;
NV_D(psi_vec,=,0,0,0);
c0=F_C0(f,t);
t0=F_C0_THREAD(f,t);
F_AREA(A,f,t);
if(NULL==F_C1_THREAD(f,t))
{

NV_DS(psi_vec,=,C_UDSI(c0,t0,1),C_UDSI(c0,t0,2),C_UDSI(c0,t0,3),*,998);
flux=NV_DOT(psi_vec,A);
}
else
{
c1=F_C1(f,t);
t1=F_C1_THREAD(f,t);
NV_DS(psi_vec,=,C_UDSI(c0,t0,1),C_UDSI(c0,t0,2),C_UDSI(c0,t0,3),*,988);
NV_DS(psi_vec,+=,C_UDSI(c1,t1,1),C_UDSI(c1,t1,2),C_UDSI(c1,t1,3),*,0.5);
flux=NV_DOT(psi_vec,A);

}


return flux;
}

DEFINE_UDS_FLUX(flux1, f, t, i)
{
  Thread *t0,*t1=NULL;
  cell_t c0,c1=-1;
real NV_VEC(psi_vec),NV_VEC(A),flux1;
NV_D(psi_vec,=,0,0,0);
c0=F_C0(f,t);
t0=F_C0_THREAD(f,t);
F_AREA(A,f,t);
if(NULL==F_C1_THREAD(f,t))
{

NV_DS(psi_vec,=,C_UDSI(c0,t0,1),C_UDSI(c0,t0,2),C_UDSI(c0,t0,3),*,998);
flux1=C_UDSI(c0,t0,0)*NV_DOT(psi_vec,A);
}
else
{
c1=F_C1(f,t);
t1=F_C1_THREAD(f,t);
NV_DS(psi_vec,=,C_UDSI(c0,t0,1),C_UDSI(c0,t0,2),C_UDSI(c0,t0,3),*,988);
NV_DS(psi_vec,+=,C_UDSI(c1,t1,1),C_UDSI(c1,t1,2),C_UDSI(c1,t1,3),*,0.5);
flux1=(C_UDSI(c0,t0,0)+C_UDSI(c1,t1,0))*0.5*NV_DOT(psi_vec,A);

}


return flux1;
}

DEFINE_SOURCE(myudssourceu,c,t,dS,eqn)      
{
  real x[ND_ND];
  real CD,Re,force,k,source,a,b;
  Domain *d;
  d=Get_Domain(1);

  C_CENTROID(x,c,t);
  a=pow((C_U(c,t)*C_U(c,t)+C_V(c,t)*C_V(c,t)+C_W(c,t)*C_W(c,t)),0.5);
  b=pow((C_UDSI(c,t,1)*C_UDSI(c,t,1)+C_UDSI(c,t,2)*C_UDSI(c,t,2)+C_UDSI(c,t,3)*C_UDSI(c,t,3)),0.5);
  Re=998*pow((a*a-2*a*b+b*b),0.5)*0.00002/0.0000179;
  if (Re<=1000.0)
{
  CD=24*(1+0.15*pow(Re,0.687))/Re;
   }
  else
{
   CD=0.44;
   }
  force=CD*Re/24;
  k=18*0.0000179*force/998/0.00002/0.00002;
  source=998*C_UDSI(c,t,0)*k*(C_U(c,t)-C_UDSI(c,t,1));  
  dS[eqn]=-998*C_UDSI(c,t,0)*k;        

  return source;
}

DEFINE_SOURCE(myudssourcev,c,t,dS,eqn)      
{
  real x[ND_ND];
  real CD,Re,force,k,source,a,b;
  Domain *d;
  d=Get_Domain(1);

  C_CENTROID(x,c,t);
  a=pow((C_U(c,t)*C_U(c,t)+C_V(c,t)*C_V(c,t)+C_W(c,t)*C_W(c,t)),0.5);
  b=pow((C_UDSI(c,t,1)*C_UDSI(c,t,1)+C_UDSI(c,t,2)*C_UDSI(c,t,2)+C_UDSI(c,t,3)*C_UDSI(c,t,3)),0.5);
  Re=998*pow((a*a-2*a*b+b*b),0.5)*0.00002/0.0000179;
  if (Re<=1000.0)
{
  CD=24*(1+0.15*pow(Re,0.687))/Re;
   }
  else
{
   CD=0.44;
   }
  force=CD*Re/24;
  k=18*0.0000179*force/998/0.00002/0.00002;
  source=998*C_UDSI(c,t,0)*k*(C_V(c,t)-C_UDSI(c,t,1));
  dS[eqn]=-998*C_UDSI(c,t,0)*k;        

  return source;
}

DEFINE_SOURCE(myudssourcew,c,t,dS,eqn)      
{
  real x[ND_ND];
  real CD,Re,force,k,source,a,b;
  Domain *d;
  d=Get_Domain(1);

  C_CENTROID(x,c,t);
  a=pow((C_U(c,t)*C_U(c,t)+C_V(c,t)*C_V(c,t)+C_W(c,t)*C_W(c,t)),0.5);
  b=pow((C_UDSI(c,t,1)*C_UDSI(c,t,1)+C_UDSI(c,t,2)*C_UDSI(c,t,2)+C_UDSI(c,t,3)*C_UDSI(c,t,3)),0.5);
  Re=998*pow((a*a-2*a*b+b*b),0.5)*0.00002/0.0000179;
  if (Re<=1000.0)
{
  CD=24*(1+0.15*pow(Re,0.687))/Re;
   }
  else
{
   CD=0.44;
   }
  force=CD*Re/24;
  k=18*0.0000179*force/998/0.00002/0.00002;
  source=998*C_UDSI(c,t,0)*k*(C_W(c,t)-C_UDSI(c,t,3));  
  dS[eqn]=-998*C_UDSI(c,t,0)*k;        

  return source;
}
3楼2016-11-03 22:18:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (小有名气)

感谢参与,应助指数 +1
本帖仅楼主可见
4楼2016-11-04 07:14:56
已阅   申请仿真EPI   回复此楼   编辑   查看我的主页
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 调剂推荐 +5 清酒714 2026-03-26 6/300 2026-03-27 11:12 by 不吃魚的貓
[考研] 一志愿哈尔滨工业大学材料与化工方向336分 +3 辰沐5211314 2026-03-26 3/150 2026-03-27 10:24 by 尽舜尧1
[考研] 304求调剂 +3 曼殊2266 2026-03-27 3/150 2026-03-27 10:17 by guoweigw
[考研] 324求调剂 +8 hanamiko 2026-03-26 10/500 2026-03-27 08:06 by hypershenger
[硕博家园] 招收生物学/细胞生物学调剂 +3 IceGuo 2026-03-26 4/200 2026-03-27 05:35 by user003
[考研] 284求调剂 +11 junqihahaha 2026-03-26 12/600 2026-03-27 04:37 by wxiongid
[考研] 341求调剂 +7 青柠檬1 2026-03-26 7/350 2026-03-27 00:19 by wxiongid
[考研] 求调剂 一志愿 本科 北科大 化学 343 +6 13831862839 2026-03-24 7/350 2026-03-26 22:57 by 不吃魚的貓
[考研] 286求调剂 +13 Faune 2026-03-21 13/650 2026-03-26 19:52 by peike
[考研] 085601求调剂总分293英一数二 +4 钢铁大炮 2026-03-24 4/200 2026-03-26 16:28 by dick_runner
[考研] 一志愿北京化工大学材料与化工(085600)296求调剂 +9 稻妻小编 2026-03-26 9/450 2026-03-26 16:16 by 不吃魚的貓
[考研] 寻找调剂 +5 倔强芒? 2026-03-21 8/400 2026-03-26 13:25 by 0906ljy
[考研] 303求调剂 +6 蓝山月 2026-03-25 6/300 2026-03-25 22:47 by 418490947
[考研] 材料与化工328分调剂 +6 。,。,。,。i 2026-03-23 6/300 2026-03-25 22:30 by 418490947
[考研] 材料与化工304求B区调剂 +3 邱gl 2026-03-25 3/150 2026-03-25 19:03 by Ainin_
[考研] 考研一志愿苏州大学初始315(英一)求调剂 +3 sbdksD 2026-03-24 4/200 2026-03-25 18:16 by xcjcqu
[考研] 307求调剂 +3 余意卿 2026-03-21 6/300 2026-03-24 15:03 by 余意卿
[考研] 336求调剂 +4 收到VS 2026-03-20 4/200 2026-03-23 19:02 by macy2011
[考研] 一志愿华中科技大学071000,求调剂 +4 沿岸有贝壳6 2026-03-21 4/200 2026-03-22 07:21 by ilovexiaobin
[考研] 求调剂 +3 .m.. 2026-03-21 4/200 2026-03-21 16:25 by barlinike
信息提示
请填处理意见