24小时热门版块排行榜    

查看: 2666  |  回复: 7
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

dqyzgyttro

金虫 (小有名气)

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

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

蔡荣需努力

新虫 (初入文坛)

楼主,解决了么,我碰到相同的问题了。希望可以交流指点!
8楼2020-10-05 15:13:32
已阅   回复此楼   关注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   回复此楼   编辑   查看我的主页
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 P4JhWrbJGjSe 2026-08-14 5/250 2026-08-15 15:46 by QXtWNz7PI7wZ
[基金申请] 时间戳又变了8-15 +7 archvillain 2026-08-15 11/550 2026-08-15 15:06 by Yeuchan
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 7lpolszZVXgi 2026-08-14 3/150 2026-08-15 14:53 by QXtWNz7PI7wZ
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +26 医学老男孩 2026-08-13 57/2850 2026-08-15 14:25 by JChen2024
[博后之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 k0dTPqJtl0jt 2026-08-14 3/150 2026-08-15 12:41 by KxMI1BYBxWX1
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 k0dTPqJtl0jt 2026-08-14 3/150 2026-08-15 12:33 by KxMI1BYBxWX1
[基金申请] 关于Filecode分析方法 +10 majunge000 2026-08-10 13/650 2026-08-15 12:26 by hanpeng972
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +5 HFw0lei2R37i 2026-08-14 9/450 2026-08-15 11:33 by KxMI1BYBxWX1
[教师之家] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +5 7lpolszZVXgi 2026-08-14 6/300 2026-08-15 09:28 by sunzitan
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 k0dTPqJtl0jt 2026-08-14 5/250 2026-08-15 07:09 by 4wMiSEwB6436
[公派出国] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 7lpolszZVXgi 2026-08-14 5/250 2026-08-15 04:41 by 4wMiSEwB6436
[论文投稿] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 HFw0lei2R37i 2026-08-14 5/250 2026-08-15 00:16 by 4wMiSEwB6436
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 HFw0lei2R37i 2026-08-14 5/250 2026-08-14 22:32 by 4wMiSEwB6436
[硕博家园] 请教兼职经验 +3 是阿文鸭 2026-08-09 3/150 2026-08-14 12:07 by HER12025
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[硕博家园] 一作与独作在应聘高校教师时区别大吗 +3 mbygzh 2026-08-08 4/200 2026-08-13 19:31 by 龙-樱
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
信息提示
请填处理意见