| 查看: 7460 | 回复: 14 | ||
[求助]
fluent udf 和udm 的使用问题,这个问题有点绕。 已有1人参与
|
||
|
fluent udf中的一些问题: 本人需要用到源项 DEFINE_SOURCE(en_source, cell, t, dS, eqn) 这个函数,但是源项里面有数据需要通过龙格库塔方法来解微分方程组来计算,我就在udf中写了龙格库塔算法。用龙格库塔解微分方程组时候需要上一个时间步长计算出来的结果作为初值。 现在的问题是如何将上一个时间步长的udf中龙格库塔计算出的值带入到下一个时间步长的udf中去。 矛盾点是udf 只有一套,每次迭代都跑一遍,,,,,,,,,,,,,,,,,,,,,,,,, 我想过用udm 将上一个时间步长计算结果保存到udm中,然后在下一个时间步长的udf中再调用,可是我始终无法实现这个想法。 我不知道我这个想法靠不靠谱,或者说udm能不能实现这个功能。如果能实现的话,请大神给予指导。 总共就这一点金币全给上了,多谢了。 不知道我描述的清不清楚,有问题请留言给我我再细说。 |
» 猜你喜欢
计算机、0854电子信息(085401-058412)调剂
已经有5人回复
国自然申请面上模板最新2026版出了吗?
已经有13人回复
基金委咋了?2026年的指南还没有出来?
已经有3人回复
Materials Today Chemistry审稿周期
已经有5人回复
溴的反应液脱色
已经有7人回复
推荐一本书
已经有12人回复
基金申报
已经有4人回复
纳米粒子粒径的测量
已经有7人回复
常年博士招收(双一流,工科)
已经有4人回复
有没有人能给点建议
已经有5人回复
2楼2017-10-11 22:51:53
5楼2017-10-13 18:35:30
3楼2017-10-12 14:36:06
4楼2017-10-13 15:54:36
6楼2017-10-15 12:31:46
|
我的想法是 DEFINE_INIT 在开始时候执行一遍用来给udm初值,然后 define source 然后时间步结束,更新udm ,然后循环下去。这是我的代码,请帮我看下哪里有问题,我也在fluent 里打开了12个udm 。还是报错 |
» 本帖附件资源列表
-
欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com - 附件 1 : execute_at_end_.c
2017-10-15 14:39:30, 5.02 K
7楼2017-10-15 14:41:57
8楼2017-10-15 18:58:01
|
我又改了下,不用udf初始化udm了,在初始化的patch里可以定义udm初值,我就只用了 DEFINE_EXECUTE_AT_END 和 DEFINE_SOUCE 两个宏来, udm的计算和修改放在 DEFINE_EXECUTE_AT_END 里 , DEFINE_SOUCE 仅仅用来调用udm 计算源项,现在udf 可以通过compiled 放进fluent 但是运行时候报错Error: received a fatal signal (Segmentation fault). 请你帮我看看我的代码哪里出问题了。 多谢了。 |
» 本帖附件资源列表
-
欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com - 附件 1 : execute_at_end.c
- 附件 2 : source.c
2017-10-16 15:12:18, 3.3 K
2017-10-16 15:12:18, 970 bytes
9楼2017-10-16 15:12:24
10楼2017-10-16 15:30:25











回复此楼
人工顶