24小时热门版块排行榜    

查看: 1152  |  回复: 4

jiangge2585

铜虫 (小有名气)

[求助] udf 热源 初始化

求大神帮我看看我的程序哪里出问题了?这是一个激光高斯面热源程序,我的意图是:激光脉宽0.008s,频率是10Hz,就是1秒激光打10次,每次持续0.008s。但是
模拟的结果却是不能初始化,初始化时就卡主了,一直停在那。求大神救我!
这是程序:
DEFINE_PROFILE(heat_flux,t,i)
{
  real xx[ND_ND];
  real y,x,r,a,time_step;
  int n;
  face_t f;
  begin_f_loop(f,t)
  {
    F_CENTROID(xx,f,t);
    y=xx[1];
    x=xx[0];
    r=0.001;
    a=0;
    n=0;
    if(a<=1)
    {
      if(a>=0.108*n&&a<=0.108*n+0.08)
      {
        if(sqrt(x*x+y*y)<=0.001)
        {
          F_PROFILE(f,t,i)=1160*0.7/(3.1415926*r*r)*exp(-(x*x+y*y)/(r*r));
        }
        else
        {
          F_PROFILE(f,t,i)=0;
        }
      RP_Get_Real("flow-time";
      a=RP_Get_Real("flow-time";
      n=(int)a/0.108;
      }
      else
      {
        F_PROFILE(f,t,i)=0;
      }
    }
    else
    {
      Error("error reading file";
    }
  }
  end_f_loop(f,t)
}
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

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

jiangge2585

铜虫 (小有名气)

这些天想了想,好像是begin_f_loop(f,t)
和循环程序冲突了,所以才会卡主,begin_f_loop(f,t)
扫描出一个面网格中心P,然后把符合(sqrt(x*x+y*y)<=0.001)
的P丢进循环语句执行,执行过一次之后,a和n的值就已经超出了循环条件所规定的范围,不能再进行循环了。
我就改了一下,但下面这个程序却没有发热,不知道哪有问题了?求大神救我!
#include "udf.h"
DEFINE_PROFILE(heat_flux,t,i)
{
  real xx[ND_ND];
  real y,x,r,a;
  int n;
  face_t f;
  begin_f_loop(f,t)
  {
    F_CENTROID(xx,f,t);
    y=xx[1];
    x=xx[0];
    r=0.001;
     if(sqrt(x*x+y*y)<=0.001)
      for(a=n=0;a>=0.1*n&&a<=0.1*n+0.008&&a<=1;n=(int)a/0.1)
      {
        F_PROFILE(f,t,i)=1160*0.7/(3.1415926*r*r)*exp(-(x*x+y*y)/(r*r));
        a=RP_Get_Real("flow-time";
      }
  }
  end_f_loop(f,t)
}
2楼2013-06-25 15:14:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

CFD项目承接

新虫 (初入文坛)

本帖内容被屏蔽

3楼2013-06-25 15:24:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

CFD项目承接

新虫 (初入文坛)


1592203609: 金币+1, 谢谢回帖,建议给出更为详细的答案 2013-06-25 17:58:02
本帖内容被屏蔽

4楼2013-06-25 15:27:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

perfectgem

新虫 (小有名气)

引用回帖:
2楼: Originally posted by jiangge2585 at 2013-06-25 15:14:35
这些天想了想,好像是begin_f_loop(f,t)
和循环程序冲突了,所以才会卡主,begin_f_loop(f,t)
扫描出一个面网格中心P,然后把符合(sqrt(x*x+y*y)<=0.001)
的P丢进循环语句执行,执行过一次之后,a和n的值就已经 ...

我只看出了一点就是,你用 F_CENTROID(xx,f,t),,是将网格质点中心给了xx值,,就是已经确定具体的位置了,,然后后面 a=RP_Get_Real("flow-time"。。这个的含义是获得流动时间,就是要移动,位置会发生改变,,,这两个好像同时用,会冲突吧?
5楼2014-01-06 15:49:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 jiangge2585 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 279求调剂 +3 dua1 2026-03-01 4/200 2026-03-02 00:23 by 大脸蛋子
[考研] 求调剂 +5 yunziaaaaa 2026-03-01 6/300 2026-03-01 23:57 by ccp273206157
[考研] 材料化工调剂 +12 今夏不夏 2026-03-01 13/650 2026-03-01 23:32 by L135790
[考研] 材料学硕318求调剂 +5 February_Feb 2026-03-01 5/250 2026-03-01 23:31 by L135790
[考研] 0856材料与化工,270求调剂 +6 YXCT 2026-03-01 6/300 2026-03-01 23:21 by 向上的胖东
[考研] 265分求调剂不调专业和学校有行学上就 +6 礼堂丁真258 2026-02-28 8/400 2026-03-01 22:50 by jian_
[考研] 0856调剂 +5 刘梦微 2026-02-28 5/250 2026-03-01 22:30 by wang_dand
[硕博家园] 博士自荐 +7 科研狗111 2026-02-26 11/550 2026-03-01 22:24 by 哲平L
[考研] 化工299分求调剂 一志愿985落榜 +5 嘻嘻(*^ω^*) 2026-03-01 5/250 2026-03-01 19:47 by 无际的草原
[考博] 26申博 +4 想申博! 2026-02-26 6/300 2026-03-01 17:32 by 想申博!
[考研] 328求调剂 +3 aaadim 2026-03-01 5/250 2026-03-01 17:29 by njzyff
[考研] 化工专硕342,一志愿大连理工大学,求调剂 +3 kyf化工 2026-02-28 4/200 2026-03-01 16:49 by yywzz
[考研] 313求调剂 +3 水流年lc 2026-02-28 3/150 2026-03-01 16:01 by 新能源达人
[考研] 307求调剂 +5 wyyyqx 2026-03-01 5/250 2026-03-01 15:21 by Fff-1
[考研] 课题组接收材料类调剂研究生 +3 gaoxiaoniuma 2026-02-28 4/200 2026-03-01 14:30 by jjj三跨
[考研] 302材料工程求调剂 +4 Doleres 2026-03-01 5/250 2026-03-01 11:52 by liqiongjy
[考研] 317一志愿华南理工电气工程求调剂 +6 Soliloquy_Q 2026-02-28 11/550 2026-03-01 11:14 by 歌liekkas
[考研] 311求调剂 +9 南迦720 2026-02-28 10/500 2026-03-01 10:55 by sunny81
[考博] 博士自荐 +4 kkluvs 2026-02-28 4/200 2026-03-01 10:19 by 馥安馥安
[硕博家园] 【博士招生】太原理工大学2026化工博士 +4 N1ce_try 2026-02-24 8/400 2026-02-26 08:40 by N1ce_try
信息提示
请填处理意见