| 查看: 2158 | 回复: 21 | ||
[求助]
一个入口速度函数的UDF编程,新手实在无力,望大神不吝赐教!已有2人参与
|
|
入口速度是V=80*丨sin((pi*x)/0.6)丨, “丨”表示绝对值,“pi”表示圆周率。 fluent新手,对宏命令知之甚少,希望大神能帮我编写一个函数。深表感激! ![]() |
» 猜你喜欢
AI论文写作工具:是科研加速器还是学术作弊器?
已经有4人回复
寻求一种能扛住强氧化性腐蚀性的容器密封件
已经有7人回复
到新单位后,换了新的研究方向,没有团队,持续积累2区以上论文,能申请到面上吗
已经有8人回复
申请2026年博士
已经有6人回复
请问哪里可以有青B申请的本子可以借鉴一下。
已经有5人回复
天津工业大学郑柳春团队欢迎化学化工、高分子化学或有机合成方向的博士生和硕士生加入
已经有5人回复
2025冷门绝学什么时候出结果
已经有7人回复
请问有评职称,把科研教学业绩算分排序的高校吗
已经有6人回复
Bioresource Technology期刊,第一次返修的时候被退回好几次了
已经有7人回复
请问下大家为什么这个铃木偶联几乎不反应呢
已经有5人回复
» 本主题相关价值贴推荐,对您同样有帮助:
fluent udf请教
已经有16人回复
【答案】应助回帖
感谢参与,应助指数 +1
|
#include "udf.h" DEFINE_PROFILE(velocity1,t,i) /* 定义属性宏 三个参数 第一是名称 第二个是线程指针 第三个是变量标号 */ { real x[ND_ND]; /* 存放2D或者3D位置参数 */ real y; /* y值为模型中的y坐标值 */ cell_t f; /* 创建网格体指针 */ begin_c_loop(f,t) /* 体线程t中所有网格体指针f的遍历循环 */ { C_CENTROID(x,f,t); /* 把体线程t中所有指针f中的网格体的中心点的坐标值赋给数组x[ND_ND] */ y = x[1]; /* 把x[ND_ND]中的第二个元素集合赋给变量y */ if ( y > 0.5 ) /* 条件判断,当y值大于0.5时,执行下列语句 */ { C_PROFILE(f, t, i) = y^2; /* y^2是表示入口速度等于y坐标值的平方,这里可以改成你要的关系式 */ } else /* 条件判断 */ { C_PROFILE(f, t, i) = 1; /* 条件判断,当y值小于0.5时,执行语句 */ } } end_c_loop(f,t) /* 遍历循环结束 */ } 最后要解释方法导入到fluent里 再在速度入口条件下导入 |

2楼2015-05-18 17:59:19

3楼2015-05-18 18:00:18
4楼2015-05-18 19:28:21

5楼2015-05-18 20:09:53
6楼2015-05-18 20:40:15

7楼2015-05-18 21:01:22
8楼2015-05-18 23:42:23
moons2
金虫 (正式写手)
- 应助: 144 (高中生)
- 金币: 1440.5
- 红花: 8
- 帖子: 431
- 在线: 239.4小时
- 虫号: 3784607
- 注册: 2015-04-03
- 性别: GG
- 专业: 流体力学
【答案】应助回帖
★ ★ ★ ★
感谢参与,应助指数 +1
opporoppor: 金币+4, ★★★很有帮助 2015-05-19 18:53:02
感谢参与,应助指数 +1
opporoppor: 金币+4, ★★★很有帮助 2015-05-19 18:53:02
|
#include "udf.h" #include "math.h" #define pi 3.14159 DEFINE_PROFILE(inlet_x_velocity, thread, position) { real x[ND_ND]; /* this will hold the position vector */ real y; face_t f; begin_f_loop(f, thread) { F_CENTROID(x,f,thread); y = x[0]; F_PROFILE(f, thread, position) =80.*abs(sin(pi*y/.6)); } end_f_loop(f, thread) } 不保证对,自己多想多试。 |
9楼2015-05-19 09:44:46
10楼2015-05-19 10:37:40














回复此楼