24小时热门版块排行榜    

查看: 1213  |  回复: 2

akqinmian

金虫 (小有名气)

[求助] fluent单机多核并行版本变化物性参数UDF求助

求教各位大侠,小弟写的随温度变化的材料参数和发热源项的UDF ,由于远程使用别人的工作站(没有装VC),单机单核用解释的方式导入没有问题,单机多核情况下总是报错,要不就是迭代开始就卡死,没反应。

求教各位,如果如何改写为并行版本? 小弟计算机底子不行,用户说明关于这部分的内容反复读也不太理解,帮助里也没有这样的例子。

#include "udf.h"
DEFINE_PROPERTY(vis, cell, thread)
{
real temperature, nd;
temperature = C_T(cell, thread);
{
if (temperature >=553.15 && temperature<=618.15)
nd=-0.0000000000116472*pow(temperature,3)+0.0000000203453*pow(temperature,2)-0.0000122063*temperature+0.00259719;
else if (temperature >618.15 && temperature<=632.15)
nd=-0.000000000069519*pow(temperature,3)+0.000000127294*pow(temperature,2)-0.0000780956*temperature+0.0161298;
else if (temperature >632.15 && temperature<=648.15)
nd=-0.000000000454378*pow(temperature,3)+0.000000861208*pow(temperature,2)-0.00054462*temperature+0.114982;
else if (temperature>648.15 && temperature<=656.55)
nd=-0.0000000130651*pow(temperature,3)+0.0000254502*pow(temperature,2)-0.0165263*temperature+3.57745;
else if (temperature>656.55 && temperature<=662.55)
nd=-0.0000000110287*pow(temperature,3)+0.0000221444*pow(temperature,2)-0.01482*temperature+3.30587;
else if (temperature>662.55 && temperature<=667.95)
nd=-0.0000000039237*pow(temperature,3)+0.00000786908*pow(temperature,2)-0.00526079*temperature+1.17243;
else if (temperature>667.95 && temperature<=674.35)
nd=-0.000000000571417*pow(temperature,3)+0.00000116031*pow(temperature,2)-0.000785453*temperature+0.177281;
else if (temperature>674.35 && temperature<=683.15)
nd=-0.000000000132212*pow(temperature,3)+0.0000002727*pow(temperature,2)-0.000187513*temperature+0.0430127;
else if (temperature>683.15 && temperature<=693.15)
nd=-0.0000000000362821*pow(temperature,3)+0.0000000763507*pow(temperature,2)-0.0000535492*temperature+0.0125458;
else if (temperature>693.15 && temperature<=765.15)
nd=-0.00000000000256198*pow(temperature,3)+0.00000000579822*pow(temperature,2)-0.00000433921*temperature+0.00110355;
else if (temperature>765.15 && temperature<=823.15)
nd=-0.000000000000214632*pow(temperature,3)+0.000000000530378*pow(temperature,2)-0.000000398162*temperature+0.000120633;
else
nd=0.0;
}
return nd;
#include "udf.h"
DEFINE_SOURCE(cell_y_source1,c, t, dS, eqn)
{
real source;
real x[ND_ND];
real z;
C_CENTROID(x, c, t);
z=x[2];
if(z>=0 && z<0.08)
source = 1.96617E+08;
else if(z>=0.08 && z<0.24)
source = 1.94500E+08;
else if(z>=0.24 && z<0.40)
source = 1.89151E+08;
else if(z>=0.40 && z<0.56)
source = 2.10398E+08;
else if(z>=0.56 && z<0.72)
source = 2.43178E+08;
else if(z>=0.72 && z<0.88)
source = 3.19465E+08;
else if(z>=0.88 && z<1.04)
source = 3.93218E+08;
else if(z>=1.04 && z<1.20)
source = 4.65868E+08;
else if(z>=1.20 && z<1.36)
source = 5.30883E+08;
else if(z>=1.36 && z<1.52)
source = 5.63514E+08;
else if(z>=1.52 && z<1.68)
source = 5.75473E+08;
else if(z>=1.68 && z<1.84)
source = 5.54165E+08;
else if(z>=1.84 && z<2.00)
source = 5.08562E+08;
else if(z>=2.00 && z<2.16)
source = 4.70529E+08;
else if(z>=2.16 && z<2.32)
source = 4.20242E+08;
else if(z>=2.32 && z<2.48)
source = 3.56882E+08;
else if(z>=2.48 && z<2.64)
source = 3.11648E+08;
else if(z>=2.64 && z<2.80)
source = 2.77573E+08;
else if(z>=2.80 && z<2.96)
source = 2.51141E+08;
else if(z>=2.96 && z<3.12)
source = 2.29009E+08;
else if(z>=3.12 && z<3.28)
source = 2.16346E+08;
else if(z>=3.28 && z<3.44)
source = 2.07810E+08;
else if(z>=3.44 && z<3.60)
source = 2.13757E+08;
else if(z>=3.60 && z<3.68)
source = 2.23299E+08;
else source =0.0;
dS[eqn] = 0.0;
return source;
}
回复此楼

» 猜你喜欢

» 本主题相关商家推荐: (我也要在这里推广)

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

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

kylafree

至尊木虫 (知名作家)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+2, 谢谢应助! 2012-05-23 22:57:05
}
return nd;
#include "udf.h"
这三行,第二行应该写在第二行前面吧。第三行不需要吧。
2楼2012-05-23 22:28:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kylafree

至尊木虫 (知名作家)

引用回帖:
2楼: Originally posted by kylafree at 2012-05-23 22:28:54:
}
return nd;
#include "udf.h"
这三行,第二行应该写在第二行前面吧。第三行不需要吧。

}
return nd;
#include "udf.h"
这三行,第二行应该写在第一行前面吧。第三行不需要吧。
3楼2012-05-23 22:29:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 akqinmian 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 澳大利亚 Murdoch University 全奖博士招生(3个名额)地质化工冶金领域 +61 AI8RaGaPaSCR 2026-08-07 64/3200 2026-08-14 05:45 by yNk0cTSDcreS
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +11 医学老男孩 2026-08-13 29/1450 2026-08-14 00:04 by 大快人心啦
[基金申请] 关于Filecode分析方法 +9 majunge000 2026-08-10 12/600 2026-08-13 23:20 by iwuli
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +3 启萌科技 2026-08-12 11/550 2026-08-13 22:57 by 启萌科技
[文学芳草园] 阿姨 +4 汪汪锅 2026-08-09 4/200 2026-08-13 19:43 by arzu_hma
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +4 majunge000 2026-08-11 6/300 2026-08-13 16:50 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
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +22 Lanmanbaby 2026-08-09 36/1800 2026-08-12 22:50 by sdfapple719
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +7 布布和一二 2026-08-10 10/500 2026-08-12 09:12 by 布布和一二
[基金申请] 是这周出结果还是下周出结果? +3 yuleib84 2026-08-11 3/150 2026-08-11 21:53 by jnhyjjm
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] filecode与中标关系的预测 +5 布布和一二 2026-08-07 5/250 2026-08-09 16:15 by 袁向阳007
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
信息提示
请填处理意见