24小时热门版块排行榜    

查看: 2641  |  回复: 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 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 XlxB7q11Bc3x 2026-09-01 3/150 2026-09-01 21:52 by Y3OMSsg8u9zj
[基金申请] 面上合作单位盖章 +6 ssyjh 2026-08-27 9/450 2026-09-01 20:01 by huagongfeihu
[基金申请] 学科评审组评审是指会评吗? +4 瞬息宇宙 2026-08-31 4/200 2026-09-01 14:58 by jiaoxg
[基金申请] 为什么资助数各大高校都创新高,自己申请怎么就这么难 +13 Kittylucky 2026-08-27 14/700 2026-09-01 11:06 by feng6531
[基金申请] 麻烦专家们看看评委们的意见(F口面上) +7 gdd2018 2026-08-28 12/600 2026-09-01 08:32 by 尼古拉斯小虫
[基金申请] 怎么看青基中了没有啊 +6 叶九微 2026-08-26 6/300 2026-08-31 23:54 by yudaoqian88
[基金申请] 基金未中,这种答复是模板吗? +6 zhaosm1982 2026-08-27 7/350 2026-08-31 21:18 by qdxxmc
[基金申请] 能否申诉? +7 echo8914667 2026-08-30 8/400 2026-08-31 17:00 by yihongxu
[基金申请] 中青基了要发朋友圈吗? +7 349506619 2026-08-28 7/350 2026-08-31 13:39 by 冼亮淀粉酶
[基金申请] 基金不中,共勉 +12 eulota 2026-08-26 12/600 2026-08-31 08:42 by ZJTJZ
[基金申请] 有没有仍没收到信息的 +7 德尚中行 2026-08-27 8/400 2026-08-30 20:52 by purplejack
[基金申请] 国自然面上复盘~欢迎讨论 (金币+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
[基金申请] 2026年叶企孙基金 +4 bud_bud 2026-08-27 7/350 2026-08-29 07:23 by foolishmani
[基金申请] 怎么查啊 +6 huang1991js 2026-08-26 6/300 2026-08-28 08:42 by winsaint
[基金申请] 我不理解! +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[基金申请] 国际合作可查了,中了面上 (EPI+1)(金币+50) +18 Ldrop2023 2026-08-26 18/900 2026-08-26 11:15 by cmrandy
[基金申请] 项目信息和经费信息在系统里都可以看到了 +6 wittyboy 2026-08-26 14/700 2026-08-26 10:55 by wittyboy
[基金申请] 国合可查了 +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
信息提示
请填处理意见