24小时热门版块排行榜    

查看: 2636  |  回复: 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 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 为什么国自然不能直接公布 +5 bjdxyxy 2026-08-26 5/250 2026-09-01 17:54 by 小伟大博士
[文学芳草园] 梦想 +5 myrtle 2026-08-26 7/350 2026-09-01 15:18 by myrtle
[基金申请] 为什么资助数各大高校都创新高,自己申请怎么就这么难 +13 Kittylucky 2026-08-27 14/700 2026-09-01 11:06 by feng6531
[基金申请] 怎么看青基中了没有啊 +6 叶九微 2026-08-26 6/300 2026-08-31 23:54 by yudaoqian88
[基金申请] 国社科又开始会评了,不知道这次命运如何 +7 雨打竹帘 2026-08-30 11/550 2026-08-31 23:16 by hittle2008
[基金申请] 哪位高人中了,把查询到的截图贴出来让我看看,让我长长见识 +6 yuleib84 2026-08-26 7/350 2026-08-31 19:46 by 鱼翔浅底1
[基金申请] 面上意见出来了 +12 黄鸟于飞Chao 2026-08-29 23/1150 2026-08-31 18:57 by 黄鸟于飞Chao
[基金申请] 能否申诉? +7 echo8914667 2026-08-30 8/400 2026-08-31 17:00 by yihongxu
[基金申请] 29号明天会评吗 +4 笨笨唐 2026-08-28 4/200 2026-08-31 09:30 by huixian257
[考博] 找导师 +6 yuanjiabao 2026-08-29 7/350 2026-08-30 14:40 by 生科新手
[基金申请] 国自然面上复盘~欢迎讨论 (金币+15) +15 晴天加油 2026-08-26 16/800 2026-08-29 18:28 by symmetry
[基金申请] 国自然评审意见 +13 wangmingqi 2026-08-28 19/950 2026-08-29 10:22 by Poppy1104
[基金申请] 看板上这么多中的,有点像50人群里49个人都是骗子的那种感觉…… +5 a089 2026-08-26 6/300 2026-08-27 14:05 by jonewore
[基金申请] 为什么 国际(地区)合作与交流项目 没有放榜? 10+3 majunge000 2026-08-26 11/550 2026-08-27 08:42 by 北京莱茵编辑
[基金申请] 2026年8月25日国自然放榜前突然收到列入评审专家邮件,有关系吗? +25 木水思豆 2026-08-25 28/1400 2026-08-26 14:53 by draco1987
[基金申请] 出来了 +9 trojank 2026-08-26 9/450 2026-08-26 14:25 by 宝贝虫子
[基金申请] 国合里面能看到了 +7 一怀馨秋 2026-08-26 7/350 2026-08-26 11:23 by zhaosm1982
[基金申请] 国际合作可查了,中了面上 (EPI+1)(金币+50) +18 Ldrop2023 2026-08-26 18/900 2026-08-26 11:15 by cmrandy
[基金申请] 国合可查了 +3 paperzjh 2026-08-26 3/150 2026-08-26 10:41 by LemmonTr
[基金申请] 牛来!米来!面来! +8 beefly 2026-08-26 8/400 2026-08-26 08:37 by xuzhipiao
信息提示
请填处理意见