|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
各位前辈、师兄弟,我在UDF帮助里看到这样一个例子:求一计算区域温度的最大值和最小值。大体程序如下:
#include "udf.h"
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 > tmax || tmax == 0.) tmax = temp;这句话的意思不是很了解,为什么如果网格温度大于tmax或者tmax=0,就认为这个网格的温度是计算区域温度的最大值呢?
请求您的解惑,因为在做的一个模拟会用到类似的概念(想求一个满足一定条件的坐标的最大值),应该也是同样的原理。
谢谢~
[ 本帖最后由 wangxw0315 于 2013-1-14 18:06 编辑 ] |
|