24小时热门版块排行榜    

查看: 2384  |  回复: 21

opporoppor

新虫 (初入文坛)

[求助] 一个入口速度函数的UDF编程,新手实在无力,望大神不吝赐教! 已有2人参与

入口速度是V=80*丨sin((pi*x)/0.6)丨,       “丨”表示绝对值,“pi”表示圆周率。
fluent新手,对宏命令知之甚少,希望大神能帮我编写一个函数。深表感激!
回复此楼

» 猜你喜欢

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

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

liukan12

银虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +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里 再在速度入口条件下导入
ANSYSFluent流体仿真研究人员。
2楼2015-05-18 17:59:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liukan12

银虫 (小有名气)

如果只要对面遍历的话 把上程序的C改成F  Cell 改成Face
ANSYSFluent流体仿真研究人员。
3楼2015-05-18 18:00:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

opporoppor

新虫 (初入文坛)

引用回帖:
3楼: Originally posted by liukan12 at 2015-05-18 18:00:18
如果只要对面遍历的话 把上程序的C改成F  Cell 改成Face

老师您好,我这个是3D建模分析,您发的程序里面的解释语句,我只能理解一小部分,比如“/* 条件判断,当y值大于0.5时,执行下列语句 */”我就理解不了,另外一个,这个程序涉及绝对值和sin()函数,我不会呀。恳请老师能辛苦一下,帮我编一个不需要改的函数,需要什么参数,您说。
我的金币都可以给您!orz
4楼2015-05-18 19:28:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liukan12

银虫 (小有名气)

【答案】应助回帖

fluent udf 是采用c++编写的
如果是一个整数的话 那么他的绝对是 abs() 长整型式 labs() 双精度数是fabs()
正弦函数是 sin()
所以你的可以是labs(sin(f(x))) f(x)就是你的表达式
自己多试试吧
y>0.5 就是当y轴坐标大于0.5时 让你的速度等于那个等式
y<0.5 执行另外一个表达式 就是分段函数 你这里是单一区间 不用这个条件判断 直接写就行了
ANSYSFluent流体仿真研究人员。
5楼2015-05-18 20:09:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

opporoppor

新虫 (初入文坛)

引用回帖:
5楼: Originally posted by liukan12 at 2015-05-18 20:09:53
fluent udf 是采用c++编写的
如果是一个整数的话 那么他的绝对是 abs() 长整型式 labs() 双精度数是fabs()
正弦函数是 sin()
所以你的可以是labs(sin(f(x))) f(x)就是你的表达式
自己多试试吧
y>0.5 就 ...

感谢老师的帮助,这个“real x[ND_ND];    /* 存放2D或者3D位置参数 */”,我是3D模型,这个应该怎么写呢?我的模型很简单,就是一个直管,请问这个“模型中y的坐标值”怎么写呢。。。老师,我其实懂的真的不多,我也不好意思一会儿问您一个问题,真的希望您能帮我写一个详细的orz,感激不尽!
6楼2015-05-18 20:40:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liukan12

银虫 (小有名气)

ND 就是No dimension 就是说如果你是2维 你申明的就是一个二维数组 x[0]放的是x坐标 x[1]是y坐标 如果你是3维 那么就是一个三维数组 x[0]放的是x坐标 x[1]是y坐标 x[2]是z坐标
ANSYSFluent流体仿真研究人员。
7楼2015-05-18 21:01:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

opporoppor

新虫 (初入文坛)

老师,帮帮忙吧,给我写一个orz

[ 发自手机版 http://muchong.com/3g ]
8楼2015-05-18 23:42:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

moons2

金虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★
感谢参与,应助指数 +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
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

opporoppor

新虫 (初入文坛)

引用回帖:
9楼: Originally posted by moons2 at 2015-05-19 09:44:46
#include "udf.h"
#include "math.h"
#define pi 3.14159
DEFINE_PROFILE(inlet_x_velocity, thread, position)
{
   real x;                /* this will hold the position vector */ ...

非常感谢老师!请问这个程序对应的我的模型,是不是管道轴向必须是X向呢

[ 发自手机版 http://muchong.com/3g ]
10楼2015-05-19 10:37:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 opporoppor 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 求材料调剂 +8 隔壁陈先生 2026-03-12 8/400 2026-03-18 22:19 by li123456789.
[考研] 085410人工智能专硕317求调剂(0854都可以) +3 xbxudjdn 2026-03-18 3/150 2026-03-18 22:14 by zhq0425
[考研] 330求调剂 +3 小材化本科 2026-03-18 3/150 2026-03-18 21:55 by 无懈可击111
[考研] 一志愿中海洋材料工程专硕330分求调剂 +5 小材化本科 2026-03-18 5/250 2026-03-18 21:53 by 无懈可击111
[考研] 321求调剂 +3 何润采123 2026-03-18 3/150 2026-03-18 21:27 by li123456789.
[考研] 26调剂/材料/英一数二/总分289/已过A区线 +7 步川酷紫123 2026-03-13 7/350 2026-03-18 17:12 by 尽舜尧1
[考研] 0854可跨调剂,一作一项核心论文五项专利,省、国级证书40+数一英一287 +8 小李0854 2026-03-16 8/400 2026-03-18 14:35 by 搏击518
[考研] 0817 化学工程 299分求调剂 有科研经历 有二区文章 +7 rare12345 2026-03-18 7/350 2026-03-18 14:31 by laoshidan
[考研] 331求调剂(0703有机化学 +7 ZY-05 2026-03-13 8/400 2026-03-18 14:13 by 007_lilei
[考研] 299求调剂 +5 △小透明* 2026-03-17 5/250 2026-03-18 11:49 by 尽舜尧1
[考研] 工科材料085601 279求调剂 +6 困于星晨 2026-03-17 6/300 2026-03-18 10:21 by kkcoco25
[考研] 278求调剂 +3 Yy7400 2026-03-13 3/150 2026-03-17 08:24 by laoshidan
[基金申请] 国自科面上基金字体 +6 iwuli 2026-03-12 7/350 2026-03-16 21:18 by sculhf
[基金申请] 今年的国基金是打分制吗? 50+3 zhanghaozhu 2026-03-14 3/150 2026-03-16 17:07 by 北京莱茵润色
[考研] 机械专硕调剂 +3 笨笨兔子 2026-03-12 3/150 2026-03-15 20:02 by 栗子粥?
[考研] 中科大材料与化工319求调剂 +3 孟鑫材料 2026-03-14 3/150 2026-03-14 20:10 by ms629
[考研] 复试调剂 +3 呼呼?~+123456 2026-03-14 3/150 2026-03-14 16:53 by WTUChen
[考研] 求材料调剂 085600英一数二总分302 前三科235 精通机器学习 一志愿哈工大 +4 林yaxin 2026-03-12 4/200 2026-03-13 22:04 by 星空星月
[考研] 281求调剂 +9 Koxui 2026-03-12 11/550 2026-03-13 20:50 by Koxui
[考研] 求调剂 +5 一定有学上- 2026-03-12 5/250 2026-03-13 18:31 by ms629
信息提示
请填处理意见