24小时热门版块排行榜    

查看: 3318  |  回复: 7

苦逼小电弧

铜虫 (小有名气)

[求助] 如何用UDF获取某个温度值下的坐标

有个问题请教一下各位:
首先要获得某个区域内最大和最小的温度值,并得到最大温度和最小温度所在cell的坐标值再进行处理;
1:看帮助文件中:
DEFINE_ON_DEMAND(on_demand_calc)
Domain *d;
{
real tmax = 0.;
real tmin = 0.;
real temp,volume,vol_tot;
Thread *t;
cell_t c;
d = Get_Domain(1);
thread_loop_c(t,d)
{
  begin_c_loop(c,t)
   {
    temp = C_T(c,t);
    if (temp < tmin || tmin == 0.) tmin = temp;
    if (temp > tmax || tmax == 0.) tmax = temp;
    }
  end_c_loop(c,t)
printf("\n Tmin = %g Tmax = %g\n",tmin,tmax);
}
通过上述程序来求得最大和最小温度,不太懂 if (temp < tmin || tmin == 0.) tmin = temp;
    if (temp > tmax || tmax == 0.) tmax = temp;这两个语句的意思。tmin的初值为0.为什么temp小于tmin就是最小温度值呢???:

2:假如获得了最大温度和最小温度,那么又如何获得他们所在cell的坐标值呢??这个十分困惑。
回复此楼

» 收录本帖的淘帖专辑推荐

等离子体相关

» 猜你喜欢

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

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

fangdian

木虫 (正式写手)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+2, 谢谢参与! 2013-05-17 21:18:26
tmin变量里面存储的是最小温度值,如果某个单元温度低于此温度,就将该单元的温度赋值给tmin,这样才能保证tmin中一直是最小温度值。tmax一样理解。
   单元中心的坐标值可采用C_CENTROID该宏获得,具体需要查看下help
2楼2013-05-17 11:29:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

苦逼小电弧

铜虫 (小有名气)

引用回帖:
2楼: Originally posted by fangdian at 2013-05-17 11:29:55
tmin变量里面存储的是最小温度值,如果某个单元温度低于此温度,就将该单元的温度赋值给tmin,这样才能保证tmin中一直是最小温度值。tmax一样理解。
   单元中心的坐标值可采用C_CENTROID该宏获得,具体需要查看下 ...

嗯   谢谢~
不过有个问题就是用C_CENTROID(x,c,t)如何让指针t指的就是最大温度cell呢???
~~
3楼2013-05-17 14:00:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fangdian

木虫 (正式写手)


xiegangmai: 金币+1, 谢谢参与! 2013-05-26 12:38:29
引用回帖:
3楼: Originally posted by 苦逼小电弧 at 2013-05-17 14:00:33
嗯   谢谢~
不过有个问题就是用C_CENTROID(x,c,t)如何让指针t指的就是最大温度cell呢???
~~...

不用指向最大温度的cell,直接记录该单元中心坐标,这样也能达到目的。当然,我不是很清楚怎么指向最大温度的cell
4楼2013-05-18 14:28:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

苦逼小电弧

铜虫 (小有名气)

引用回帖:
4楼: Originally posted by fangdian at 2013-05-18 14:28:38
不用指向最大温度的cell,直接记录该单元中心坐标,这样也能达到目的。当然,我不是很清楚怎么指向最大温度的cell...

主要是不知道最大温度的cell在哪。。因为在UDF要用到最大温度单元所在单元的坐标。。。
5楼2013-05-18 19:40:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

stryhood

至尊木虫 (著名写手)

★ ★
xiegangmai: 金币+2, 谢谢参与! 2013-05-26 12:38:35
引用回帖:
5楼: Originally posted by 苦逼小电弧 at 2013-05-18 19:40:52
主要是不知道最大温度的cell在哪。。因为在UDF要用到最大温度单元所在单元的坐标。。。...

就上面的程序改一改,loop循环内求出的最大的温度,那么在同一个loop内最大温度cell的左标也就得到了啊;上面不是有童鞋说可以用C_CENTROID(x,c,t)么,仔细看看帮助吧。
6楼2013-05-20 17:46:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wz9533

木虫 (正式写手)

【答案】应助回帖


1592203609: 金币+1, 谢谢回帖 2013-06-18 23:15:33
DEFINE_ON_DEMAND(on_demand_calc)
Domain *d;
{
real tmax = -1.;
real tmin = 99999.;
real temp,volume,vol_tot,maxX,maxY,minX,minY;
real x[ND_ND];
Thread *t;
cell_t c;
d = Get_Domain(1);
thread_loop_c(t,d)
{
  begin_c_loop(c,t)
   {
    temp = C_T(c,t);
    if (temp < tmin )
      {
      tmin = temp;
      C_CENTROID(x,c,t)
      minX=x[0];
      minY=x[1];
      }
    if (temp > tmax)
      {
       tmax = temp;
       C_CENTROID(x,c,t)
       maxX=x[0];
       maxY=x[1];
      }
  }
  end_c_loop(c,t)
}

这样应该可以
7楼2013-06-18 13:07:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wz9533

木虫 (正式写手)

引用回帖:
7楼: Originally posted by wz9533 at 2013-06-18 13:07:30
DEFINE_ON_DEMAND(on_demand_calc)
Domain *d;
{
real tmax = -1.;
real tmin = 99999.;
real temp,volume,vol_tot,maxX,maxY,minX,minY;
real x;
Thread *t;
cell_t c;
d = Get_Domain(1);
thread_loo ...

C_CENTROID(x,c,t)这里忘了加分号;
8楼2013-06-18 13:08:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 苦逼小电弧 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 321求调剂 +8 何润采123 2026-03-18 10/500 2026-03-19 16:46 by 何润采123
[考研] 一志愿北京化工大学0703化学318分,有科研经历,求调剂 +3 一瓶苯甲酸 2026-03-14 3/150 2026-03-19 15:17 by 尽舜尧1
[考研] 本人考085602 化学工程 专硕 +17 不知道叫什么! 2026-03-15 19/950 2026-03-19 15:06 by 尽舜尧1
[考研] 286求调剂 +6 lemonzzn 2026-03-16 10/500 2026-03-19 14:31 by lemonzzn
[考研] 344求调剂 +6 knight344 2026-03-16 7/350 2026-03-18 20:13 by walc
[考研] 【同济软件】软件(085405)考研求调剂 +3 2026eternal 2026-03-18 3/150 2026-03-18 19:09 by 搏击518
[考研] 一志愿中国海洋大学,生物学,301分,求调剂 +4 1孙悟空 2026-03-17 4/200 2026-03-18 17:59 by fivewind
[考研] 材料与化工一志愿南昌大学327求调剂推荐 +8 Ncdx123456 2026-03-13 9/450 2026-03-18 14:40 by haxia
[考研] 环境工程调剂 +8 大可digkids 2026-03-16 8/400 2026-03-18 09:36 by zhukairuo
[考研] 265求调剂 +3 梁梁校校 2026-03-17 3/150 2026-03-18 09:12 by zhukairuo
[考研] 293求调剂 +11 zjl的号 2026-03-16 16/800 2026-03-18 08:10 by zhukairuo
[考研] 277调剂 +5 自由煎饼果子 2026-03-16 6/300 2026-03-17 19:26 by 李leezz
[考研] 材料专硕326求调剂 +6 墨煜姒莘 2026-03-15 7/350 2026-03-17 17:10 by ruiyingmiao
[考研] 材料与化工专硕调剂 +5 heming3743 2026-03-16 5/250 2026-03-17 14:03 by 勇敢太监王公公
[考研] 机械专硕325,寻找调剂院校 +3 y9999 2026-03-15 5/250 2026-03-16 19:58 by y9999
[考研] 一志愿华中师范071000,325求调剂 +6 RuitingC 2026-03-12 6/300 2026-03-16 14:50 by 可淡不可忘
[基金申请] 现在如何回避去年的某一个专家,不知道名字 +3 zk200107 2026-03-12 6/300 2026-03-14 17:13 by zk200107
[考研] 328求调剂 +3 5201314Lsy! 2026-03-13 6/300 2026-03-14 15:31 by hyswxzs
[考研] 学硕285求调剂 +13 Wisjxn 2026-03-12 46/2300 2026-03-14 10:33 by JourneyLucky
[考研] 070303一志愿西北大学学硕310找调剂 +3 d如愿上岸 2026-03-13 3/150 2026-03-13 10:43 by houyaoxu
信息提示
请填处理意见