24小时热门版块排行榜    

查看: 1375  |  回复: 2
【悬赏金币】回答本帖问题,作者QiaoPengyu将赠送您 5 个金币
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

QiaoPengyu

新虫 (初入文坛)

[求助] fluent加载udf后初始化闪退

fluent不加载udf的时候可以计算,一加入udf就会报错闪退(udf编译和加载都可以成功)。udf如下 大佬们看看udf是不是存在问题。
#include "udf.h"
#include "flow.h"
#include"unsteady.h"
#include"stdio.h"
#define M0 0.032
#define M1 0.028
#define k10 7.87e-9
#define k11 9.86e-9
#define k20 1541.211
#define k21 2010.908
#define k30 6.79e-10
#define k31 1.67e-9
#define k40 1968.24
#define k41 2250
#define K0 62
#define K1 19.7
#define D 0.08
#define d 1.6e-3
#define h0 12000
#define h1 18000
#define L 1035
#define hf 0.2
#define hw 3.84e-3
#define Tw 288
#define e 0.4
#define cp_s 1010     /*specific heat of solid                        [cp_s]=j/(kg.K)*/
/* Define which user-defined scalars to use.*/
enum
{
  q0,q1,Q0,Q1,OM,TM,TE,T_S
};
DEFINE_ADJUST(adjust_fcn, domain)
{
    Thread* t;
    cell_t c;
    /*solve the q0.*/
    thread_loop_c(t, domain)
    {
        if (NULL != THREAD_STORAGE(t, SV_UDS_I(q0)) && NULL != T_STORAGE_R_NV(t, SV_UDSI_M1(q0)))
        {
            begin_c_loop(c, t)
            {
                real p_0, p_1, x0, x1, b0, b1;
                p_0 = 7 * C_YI(c, t, 0) * ABS_P(C_P(c, t), op_pres) / (8 - C_YI(c, t, O));
                p_1 = 8 * C_YI(c, t, 1) * ABS_P(C_P(c, t), op_pres) / (7 + C_YI(c, t, 1));
                x0 = k10 * exp(k20 / C_T(c, t));
                b0 = k30 * exp(k40 / C_T(c, t));
                b1 = k31 * exp(k41 / C_T(c, t));
                C_UDSI(c, t, q0) = x0 * p_0 / (1 + b0 * p_0 + b1 * p_1);
            }
            end_c_loop(c, t)
        }
    }
    /* solve the q1.*/
    thread_loop_c(t, domain)
    {
        if (NULL != THREAD_STORAGE(t, SV_UDS_I(q1)) && NULL != T_STORAGE_R_NV(t, SV_UDSI_M1(q1)))
        {
            begin_c_loop(c, t)
            {
                real p_0, p_1, x0, x1, b0, b1;
                x1 = k11 * exp(k21 / C_T(c, t));
                b0 = k30 * exp(k40 / C_T(c, t));
                b1 = k31 * exp(k41 / C_T(c, t));
                C_UDSI(c, t, q1) = x1 * p_1 / (1 + b0 * p_0 + b1 * p_1);
            }
            end_c_loop(c, t)
        }
    }
    /* solve the Q0.*/
    thread_loop_c(t, domain)
    {
        if (NULL != THREAD_STORAGE(t, SV_UDS_I(Q0)) && NULL != T_STORAGE_R_NV(t, SV_UDSI_M1(Q0)))
        {
            begin_c_loop(c, t)
            {
                real physical_dt;
                physical_dt = RP_Get_Real("physical-time-step";
                C_UDSI(c, t, Q0) = C_UDSI_M1(c, t, Q0) + K0 * physical_dt * (C_UDSI(c, t, q0) - C_UDSI_M1(c, t, Q0));
            }
            end_c_loop(c, t)
        }
    }
    /* solve the Q1.*/
    thread_loop_c(t, domain)
    {
        if (NULL != THREAD_STORAGE(t, SV_UDS_I(Q1)) && NULL != T_STORAGE_R_NV(t, SV_UDSI_M1(Q1)))
        {
            begin_c_loop(c, t)
            {
                real physical_dt;
                physical_dt = RP_Get_Real("physical-time-step";
                C_UDSI(c, t, Q1) = C_UDSI_M1(c, t, Q1) + K1 * physical_dt * (C_UDSI(c, t, q1) - C_UDSI_M1(c, t, Q1));
            }
            end_c_loop(c, t)
        }
    }
    /*  solve the OM.*/
    thread_loop_c(t, domain)
    {
        if (NULL != THREAD_STORAGE(t, SV_UDS_I(OM)) && NULL != T_STORAGE_R_NV(t, SV_UDSI_M1(OM)))
        {
            begin_c_loop(c, t)
            {
                C_UDSI(c, t, OM) = -(1.0 - e) * M0 * L * K0 * (C_UDSI(c, t, q0) - C_UDSI_M1(c, t, Q0));
            }
            end_c_loop(c, t)
        }
    }
    /* solve the TM.*/
    thread_loop_c(t, domain)
    {
        if (NULL != THREAD_STORAGE(t, SV_UDS_I(TM)) && NULL != T_STORAGE_R_NV(t, SV_UDSI_M1(TM)))
        {
            begin_c_loop(c, t)
            {
                C_UDSI(c, t, TM) = C_UDSI(c, t, OM) - (1.0 - e) * M1 * L * K1 * (C_UDSI(c, t, q1) - C_UDSI_M1(c, t, Q1));
            }
            end_c_loop(c, t)
        }
    }

    /* solve the TE.*/
    thread_loop_c(t, domain)
    {
        if (NULL != THREAD_STORAGE(t, SV_UDS_I(TE)) && NULL != T_STORAGE_R_NV(t, SV_UDSI_M1(TE)))
        {
            begin_c_loop(c, t)
            {
                C_UDSI(c, t, TE) = (1.0 - e) * L * (K0 * h0 * (C_UDSI(c, t, q0) - C_UDSI_M1(c, t, Q0)) + K1 * h1 * (C_UDSI(c, t, q1) - C_UDSI_M1(c, t, Q1)));
            }
            end_c_loop(c, t)
        }
    }
}
        DEFINE_UDS_UNSTEADY(uns_time, c, t, i, apu, su)
        {
            real  physical_dt, vol, rho, phi_old;
            physical_dt = RP_Get_Real("physical-time-step";
            vol = C_VOLUME(c, t);
            rho = L;
            *apu = -rho * cp_s * vol / physical_dt;              /*implicit  part*/
            phi_old = C_STORAGE_R(c, t, SV_UDSI_M1(T_S));
            *su = rho * cp_s * vol * phi_old / physical_dt;      /*explicit  part*/
        }
        DEFINE_SOURCE(O2mass_source, c, t, dS, eqn)
        {
            real source;
            source = C_UDSI(c, t, OM);
            dS[eqn] = 0;
            return source;
        }
DEFINE_SOURCE(total_mass_source, c, t, dS, eqn)
{
    real mass_source;
    mass_source = C_UDSI(c, t, TM);
    dS[eqn] = 0;
return  mass_source;
}
DEFINE_SOURCE(energy_source_fluid, c, t, dS, eqn)
{
    real  e_source;
    e_source = C_UDSI(c, t, TE);
    dS[eqn] = 0;
return   e_source;
}
DEFINE_SOURCE(energy_source_solid, c, t, dS, eqn)
{
    real e_source;
    e_source = 1.0 * C_UDSI(c, t, TE) / (1.0 - e) + 6 * hf * (C_T(c, t) - C_UDSI(c, t, T_S)) / d;
    dS[eqn] = 0;
    return  e_source;
}
DEFINE_DIFFUSIVITY(m_diff, c, t, i)
{
    real diff;
  diff = 6.324e-5 * pow(C_T(c, t), 1.83) / ABS_P(C_P(c, t), op_pres);
return  diff;
}@wuming524
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

QiaoPengyu

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by amandahan93 at 2023-11-06 10:11:15
你的udf是用来算什么的呀?

计算气体吸附的
3楼2023-11-06 10:47:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 3 个回答

sallywhe1

金虫 (小有名气)

你的udf是用来算什么的呀?
2楼2023-11-06 10:11:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
不应助 确定回帖应助 (注意:应助才可能被奖励,但不允许灌水,必须填写15个字符以上)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料调剂,307分 +12 张泳铭1 2026-03-09 13/650 2026-03-11 08:42 by 学员8dgXkO
[基金申请] 提交后的基金本子,已让学校撤回了,可否换口子提交 +3 dut_pfx 2026-03-10 3/150 2026-03-11 08:38 by kudofaye
[考研] 332材料求调剂 +6 zjy101327 2026-03-05 8/400 2026-03-10 17:55 by zjy101327
[考研] 2026考研求调剂-材料类-本科211一志愿985-初试301分 +10 虫友233 2026-03-07 10/500 2026-03-10 17:10 by Demonsssss
[考研] A区一本交叉课题组,低分调剂,招收机械电子信息通信等交叉方向 +56 lisimayy 2026-03-04 73/3650 2026-03-10 15:27 by lisimayy
[考研] 08工科 +5 li李乐成 2026-03-06 5/250 2026-03-10 14:51 by 在风落中
[考研] 一志愿天大化工(085600)调剂总分338 +5 蔡大美女 2026-03-09 5/250 2026-03-10 14:44 by ruiyingmiao
[考研] 材料与化工求调剂 +11 与冬清宁 2026-03-07 14/700 2026-03-10 14:23 by Linda Hu
[考研] 化工284求调剂 +12 小黑想变白 2026-03-07 12/600 2026-03-10 09:17 by Wahxp
[考研] 数二英二309分请求调剂 +3 dtdxzxx 2026-03-09 4/200 2026-03-09 19:56 by yuningshan
[考博] 申博 +5 添菜了哈 2026-03-04 8/400 2026-03-09 10:52 by jamesqi
[考研] 0817找调剂 +6 kk扛 2026-03-08 6/300 2026-03-09 06:38 by houyaoxu
[考研] 081700学硕一志愿北京化工大学数二英一过六级有竞赛求调剂 +5 galaxary 2026-03-07 7/350 2026-03-08 04:37 by wang_dand
[考研] 求调剂,不管什么专业,我是可塑造的人才一枚,希望遇到知己老师捞捞我 +4 13102137290 2026-03-06 5/250 2026-03-07 21:21 by lissomchan
[考研] 哈尔滨理工大学2026年研究生调剂,材料科学与化学工程学院研究生调剂 +3 xinliu866 2026-03-06 3/150 2026-03-06 19:42 by 祁东原神
[考研] 材料277分求调剂 +13 饭饭星球 2026-03-04 14/700 2026-03-06 16:10 by @飒飒飒飒
[考研] 复试调剂 +7 呼呼?~+123456 2026-03-05 10/500 2026-03-06 16:07 by @飒飒飒飒
[考研] 085600,一志愿郑州大学,280分求调剂 +7 Wuqi725 2026-03-05 7/350 2026-03-06 08:12 by 杨杨杨紫
[考研] 334求调剂 +6 Trying] 2026-03-05 8/400 2026-03-06 00:16 by wutongshun
[考研] 求调剂,学校研究所都可以,材料与化工267分 +6 wmx1 2026-03-05 6/300 2026-03-05 20:01 by houyaoxu
信息提示
请填处理意见