24小时热门版块排行榜    

查看: 9288  |  回复: 36

duandiancqu

金虫 (初入文坛)

[求助] UDF中DEFINE_ADJUST宏中使用C_UDSI_G 已有5人参与

我在用DEFINE_ADJUST宏时,只要加上C_UDSI_G(c,t,0),就提示错误,
Error:
FLUENT received fatal signal (ACCESS_VIOLATION)
1. Note exact events leading to error.
2. Save case/data under new name.
3. Exit program and restart to continue.
4. Report error to your distributor.

将C_UDSI_G()替换成常数时,程序能够执行,是不是在这种情况下有什么要求啊,那位大神给我解释下,很纠结。
程序代码如下:
DEFINE_ADJUST(mhd_adjust,d)
{
        Thread *t;
        cell_t c;

        if (! Data_Valid_P())
        return;

        thread_loop_c(t,d)
        {
                begin_c_loop(c,t)
                {
                                               
                        C_UDMI(c,t,0)=-1*C_UDSI_DIFF(c,t,0)*C_UDSI_G(c,t,0)[0];
                        C_UDMI(c,t,1)=-1*C_UDSI_DIFF(c,t,0)*C_UDSI_G(c,t,0)[1];
                        C_UDMI(c,t,2)=-1*C_UDSI_DIFF(c,t,0)*C_UDSI_G(c,t,0)[2];
                }
                end_c_loop(c,t)
        }
}
回复此楼

» 收录本帖的淘帖专辑推荐

等离子体相关

» 猜你喜欢

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

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

759599290

银虫 (小有名气)

【答案】应助回帖

最近我也测试了使用DEFINE_ADJUST宏来获得某一变量的二阶导数。心得如下:
1、梯度变量在FLUENT计算过程中是暂存变量,计算完成后将自动释放。如果要获取,需使用如下方法强制求解器保存梯度变量已供后用:
在FLUENT主窗中输入:solve--set--expert,出现的是否保存梯度变量询问语句回答为yes
2、梯度变量在首次计算中是不存在的。即使在计算之前,UDS已经使用一定方法进行过初始化,UDS_G仍将是空值,在第一步计算时内存中不存在这一变量,因此无论如何设置,第一步计算都不能调用C_UDSI_G宏。计算进行了一步或更多步之后才可以。
3、C_UDSI_G调出的变量并不一定是内部计算使用的梯度值。在某些复杂边界处,Fluent内部有其他未公开的处理函数,C_UDSI_G只在计算区域中的绝大部分里非常接近内部计算使用的梯度值。
仅个人看法,未必正确,盼有所助。
中国热管理协会特约专家,中国热设计网高级顾问,东莞鸿艺电子技术总监
23楼2014-01-13 08:50:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

759599290

银虫 (小有名气)

【答案】应助回帖

★ ★
xiegangmai: 金币+2, 谢谢参与! 2013-03-30 22:27:23
建议使用NNULL函数判断线程中是否存有C_UDSI_G(c,t,i)数据。data_valid_p和NNULL函数判断的侧重点可能并不一致。
中国热管理协会特约专家,中国热设计网高级顾问,东莞鸿艺电子技术总监
18楼2013-03-30 16:57:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tommyan

新虫 (初入文坛)

这个代码貌似是非法访问。
C_UDSI_G(c,t,0) 返回的是一个矢量,不能直接用在乘法表达式。
可以尝试:
求矢量模:NV_MAG(C_UDSI_G(c,t,0))再乘,
或者
real g[ND_ND];
g=C_UDSI_G(c,t,0);
使用g[0],g[1] g[2]
25楼2014-01-30 18:25:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

gyctju

金虫 (正式写手)

【答案】应助回帖


感谢参与,应助指数 +1
臭水沟: 金币+1, 谢谢交流~~ 2012-07-04 20:39:50
可以尝试在不链接udf的情况下先计算几步,使得uds0的值合理。
2楼2012-07-04 12:31:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duandiancqu

金虫 (初入文坛)

引用回帖:
2楼: Originally posted by gyctju at 2012-07-04 12:31:48
可以尝试在不链接udf的情况下先计算几步,使得uds0的值合理。

我试过了,不行。。。
3楼2012-07-04 14:45:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lucklhz

木虫 (正式写手)

【答案】应助回帖


感谢参与,应助指数 +1
臭水沟: 金币+1, 谢谢交流~~ 2012-07-04 20:40:06
楼主,看你程序,你是想取你的UDS自定义标量uds0在空间个三个方向的梯度吗?还有,这种表达方式C_UDSI_G(c,t,0)[1],是不是有问题?C_UDSI_G(c,t,i)默认的在三个方向上的梯度是一样的
4楼2012-07-04 19:43:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duandiancqu

金虫 (初入文坛)

引用回帖:
4楼: Originally posted by lucklhz at 2012-07-04 19:43:32
楼主,看你程序,你是想取你的UDS自定义标量uds0在空间个三个方向的梯度吗?还有,这种表达方式C_UDSI_G(c,t,0),是不是有问题?C_UDSI_G(c,t,i)默认的在三个方向上的梯度是一样的

我是想取载个方向上的梯度,而且C_UDSI_G(c,t,0)[1]没有问题吧,帮助上就有这个啊,C_UDSI_G(c,t,0),i=1,2,3的
5楼2012-07-04 22:42:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yulinjun1986

新虫 (小有名气)

【答案】应助回帖


感谢参与,应助指数 +1
臭水沟: 金币+1, 谢谢交流~~ 2012-07-05 17:20:16
我想问的是,你之前编写uds了吗?是不是编写的不对呀?如果没有编写的话,那可能就是需要编写uds了……
6楼2012-07-05 16:26:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duandiancqu

金虫 (初入文坛)

引用回帖:
6楼: Originally posted by yulinjun1986 at 2012-07-05 16:26:29
我想问的是,你之前编写uds了吗?是不是编写的不对呀?如果没有编写的话,那可能就是需要编写uds了……

写了的,就是一个电势方程,求出电势,再利用欧姆定律求出电流密度
7楼2012-07-05 21:21:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duandiancqu

金虫 (初入文坛)

引用回帖:
6楼: Originally posted by yulinjun1986 at 2012-07-05 16:26:29
我想问的是,你之前编写uds了吗?是不是编写的不对呀?如果没有编写的话,那可能就是需要编写uds了……

我现在把那个去掉了,可以计算,能量方程就是不收敛。。。。
8楼2012-07-05 21:25:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yulinjun1986

新虫 (小有名气)

【答案】应助回帖

★ ★
xiegangmai: 金币+2, 谢谢参与! 2012-07-06 22:25:11
引用回帖:
8楼: Originally posted by duandiancqu at 2012-07-05 21:25:21
我现在把那个去掉了,可以计算,能量方程就是不收敛。。。。...

你用的是非稳还是稳态?要是非稳的话,试试把时间步长调小些。另外就是要调整松弛因子了。你试试吧,如果不加uds的话,应该没问题才对。我的udf也遇到了你的问题,一加入和质量相关的源相就提示这个错误,我也相当无奈,正在求解中…希望大家相互帮助吧。
9楼2012-07-06 09:12:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duandiancqu

金虫 (初入文坛)

引用回帖:
9楼: Originally posted by yulinjun1986 at 2012-07-06 09:12:43
你用的是非稳还是稳态?要是非稳的话,试试把时间步长调小些。另外就是要调整松弛因子了。你试试吧,如果不加uds的话,应该没问题才对。我的udf也遇到了你的问题,一加入和质量相关的源相就提示这个错误,我也相当 ...

谢谢楼上了,我算的是稳态的
10楼2012-07-06 09:17:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 duandiancqu 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 化学调剂0703 +7 啊我我的 2026-03-11 7/350 2026-03-15 23:03 by 凌千颂111
[考研] 中科院材料273求调剂 +3 yzydy 2026-03-15 3/150 2026-03-15 21:15 by ms629
[考研] 材料工程专硕274一志愿211求调剂 +5 薛云鹏 2026-03-15 5/250 2026-03-15 20:38 by Logic2024
[考研] 0703化学调剂 290分有科研经历,论文在投 +3 腻腻gk 2026-03-14 3/150 2026-03-15 17:28 by 小物理化学
[考研] 267一志愿南京工业大学0817化工求调剂 +5 SUICHILD 2026-03-12 5/250 2026-03-14 14:53 by jean5056
[考研] 材料与化工(0856)304求B区调剂 +7 邱gl 2026-03-10 11/550 2026-03-14 12:18 by 邱gl
[考研] 331求调剂(0703有机化学 +5 ZY-05 2026-03-13 6/300 2026-03-14 10:51 by Jy?
[考研] 材料工程专硕,一志愿中国矿业大学,总分314,求调剂 +5 无懈可击的巨人 2026-03-10 5/250 2026-03-14 00:37 by JourneyLucky
[考研] 341求调剂 +4 番茄头--- 2026-03-10 4/200 2026-03-13 23:12 by JourneyLucky
[考研] 332求调剂 +3 Zz版 2026-03-13 3/150 2026-03-13 20:36 by 18595523086
[考研] 材料与化工085600调剂求老师收留 +9 jiaanl 2026-03-11 9/450 2026-03-13 20:22 by JourneyLucky
[考研] 【考研调剂求收留】 +3 Ceciilia 2026-03-11 3/150 2026-03-13 20:18 by JourneyLucky
[硕博家园] 深圳大学硕士招生(2026秋,传感器方向,仅录取第一志愿) +4 xujiaoszu 2026-03-11 7/350 2026-03-13 17:28 by xujiaoszu
[考研] 302求调剂 +6 负心者当诛 2026-03-11 6/300 2026-03-13 16:11 by JourneyLucky
[考研] 274求调剂 +3 S.H1 2026-03-12 3/150 2026-03-13 15:15 by JourneyLucky
[考研] 282分材料专业求调剂院校 +18 枫桥ZL 2026-03-09 25/1250 2026-03-13 10:47 by 白夜悠长
[考研] 0856化工原理 +6 z2839474511 2026-03-10 6/300 2026-03-13 10:41 by houyaoxu
[考研] 求调剂 资源与环境 285 +3 未名考生 2026-03-10 3/150 2026-03-13 10:31 by houyaoxu
[考博] 福州大学杨黄浩课题组招收2026年专业学位博士研究生,2026.03.20截止 +3 Xiangyu_ou 2026-03-12 3/150 2026-03-13 09:36 by duanwu655
[考研] 294 英二数二物化 求调剂 +6 米饭团不好吃 2026-03-09 6/300 2026-03-09 23:55 by barlinike
信息提示
请填处理意见