24小时热门版块排行榜    

CyRhmU.jpeg
查看: 7332  |  回复: 14
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

曾经的学渣

新虫 (初入文坛)

[求助] fluent udf 和udm 的使用问题,这个问题有点绕。已有1人参与

fluent udf中的一些问题:
   
     本人需要用到源项   DEFINE_SOURCE(en_source, cell, t, dS, eqn)  这个函数,但是源项里面有数据需要通过龙格库塔方法来解微分方程组来计算,我就在udf中写了龙格库塔算法。用龙格库塔解微分方程组时候需要上一个时间步长计算出来的结果作为初值。 现在的问题是如何将上一个时间步长的udf中龙格库塔计算出的值带入到下一个时间步长的udf中去。 矛盾点是udf 只有一套,每次迭代都跑一遍,,,,,,,,,,,,,,,,,,,,,,,,,  我想过用udm   将上一个时间步长计算结果保存到udm中,然后在下一个时间步长的udf中再调用,可是我始终无法实现这个想法。

    我不知道我这个想法靠不靠谱,或者说udm能不能实现这个功能。如果能实现的话,请大神给予指导。





总共就这一点金币全给上了,多谢了。   不知道我描述的清不清楚,有问题请留言给我我再细说。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

keeep0394

新虫 (正式写手)

你的计算域是只有一个还是分成了2个?两个C文件完全可以放在一个C文件中编译。
11楼2017-10-16 16:07:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 15 个回答

gyctju

金虫 (正式写手)

给你个思路,用uds加c_udsi_m1, 当然也有其他方法,自己慢慢试

发自小木虫Android客户端
2楼2017-10-11 22:51:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

曾经的学渣

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by gyctju at 2017-10-11 22:51:53
给你个思路,用uds加c_udsi_m1, 当然也有其他方法,自己慢慢试

能不能说的稍微详细点?
3楼2017-10-12 14:36:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

keeep0394

新虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
曾经的学渣: 金币+5, ★★★很有帮助 2017-10-16 15:12:59
要实现调用上一时间步的计算结果,仅仅靠DEFINE_SOUCE宏不行,还得用到DEFINE_EXECUTE_AT_END宏,每个时间步计算结束后这个宏会运行一次。定义两个UDM,第一个UDM存储上个时间步的结果,第二个UDF存储当前时间步的计算结果,在DEFINE_EXECUTE_AT_END中进行计算,将值赋予UDM,再在DEFINE_SOUCE中将UDM作为源项。建议查查UDF MANUAL。
5楼2017-10-13 18:35:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见