24小时热门版块排行榜    

查看: 1734  |  回复: 12

scwillwin

新虫 (初入文坛)

[求助] DEFINE_ADJUST计算出的变量值为什么不能直接在DEFINE_PROFILE内读取呢? 已有2人参与

代码如下,请朋友们帮我看看到底是什么问题。
第一步是要用DEFINE_ADJUST计算边界上的平均温度avg_temp,然后用平均温度来计算边界上的对流换热系数,可是我在模拟的时候发现,在DEFINE_PROFILE宏中,avg_temp的值并没有读取上面的结果,而一直是0.这是为什么呢?毕业论文的关键步骤,拜托啦!!!
#include "udf.h"
#include"math.h"
real avg_temp;
real NV_VEC(A);     
real sum_T_A=0.0;
real sum_A=0.0;
real T;
Thread *thread_out;
face_t f;
Domain *domain;
DEFINE_ADJUST(adjust,d)                        
{
  domain=Get_Domain(1);
  thread_out=Lookup_Thread(domain,13);
  begin_f_loop(f,thread_out)   
    {
      F_AREA(A,f,thread_out);         
      sum_A+=NV_MAG(A);               
      sum_T_A+=NV_MAG(A)*F_T(f,thread_out);
     }
   end_f_loop(f,thread_out)
   avg_temp=sum_T_A/sum_A;
}
DEFINE_PROFILE(new,t,i)
{
  begin_f_loop(f,t)
    {
      T=avg_temp;
      F_PROFILE(f,t,i)=0.0346*(T-295)+5.8969;
    }
   end_f_loop(f,t)
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

shirui石蕊

新虫 (初入文坛)

你的代码中,上文的real的是NV_VEC(A)函数,下文是NV_MAG(A)函数,不知道您是否 注意到。还有,您的PROFILE函数少了一个大括号。我对函数编写不太懂,可能说的是废话。

发自小木虫Android客户端
2楼2018-01-15 23:45:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

匿名

用户注销 (正式写手)

本帖仅楼主可见
3楼2018-01-16 16:13:51
已阅   申请仿真EPI   回复此楼   编辑   查看我的主页

scwillwin

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by shirui石蕊 at 2018-01-15 23:45:23
你的代码中,上文的real的是NV_VEC(A)函数,下文是NV_MAG(A)函数,不知道您是否 注意到。还有,您的PROFILE函数少了一个大括号。我对函数编写不太懂,可能说的是废话。
...

谢谢您,括号是刚才粘贴的时候漏了,NV_VEC(A)这个应该是没有问题,我看好多地方都是这么写的。
4楼2018-01-16 21:33:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

scwillwin

新虫 (初入文坛)

引用回帖:
3楼: Originally posted by soriyoshi at 2018-01-16 16:13:51
你在算之前设定的时候有个菜单上选了这个define adjust 没有

您这么一说还真是,我在解释运行后,在选择UDF时,可以选择adjust和new,但是这个好像只能选一个吧,如果我选了adjust,是不是new就不起作用了呢?
5楼2018-01-16 21:35:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qwehanwei

新虫 (初入文坛)

【答案】应助回帖

楼主你好,我也在做这方面的东西,temp也是没有读取上面的结果,一直是0,可以一块儿讨论一下
6楼2018-01-23 15:34:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

风卷尘沙起

铜虫 (初入文坛)

楼主问题解决了吗
7楼2018-01-30 11:23:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

邓兰SWPU

新虫 (初入文坛)

楼主您好,想问下你的问题解决了吗。

发自小木虫IOS客户端
8楼2018-01-31 20:03:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fff皮皮虾

新虫 (初入文坛)

两个宏没有交互,后面那个读不到前面那个宏的计算结果,我现在也遇到这样的问题,但不知道该怎么解决

发自小木虫Android客户端
9楼2018-03-16 09:35:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

scwillwin

新虫 (初入文坛)

引用回帖:
9楼: Originally posted by fff皮皮虾 at 2018-03-16 09:35:56
两个宏没有交互,后面那个读不到前面那个宏的计算结果,我现在也遇到这样的问题,但不知道该怎么解决

我把adjust宏去掉之后,只保留了profile,但是读出来的值与模拟中边界的平均温度不一样,还是不知道怎么回事
10楼2018-03-18 11:06:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 scwillwin 的主题更新
信息提示
请填处理意见