24小时热门版块排行榜    

查看: 3642  |  回复: 14

songxp03

木虫 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
你们导师负责任,我导师根本不管我,自己糊弄自己毕业。
Bird
11楼2019-03-02 19:10:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liqijiecharp

新虫 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
真辛苦啊,不过在这个论坛上志同道合的人还是很多的
12楼2019-03-20 23:10:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

日月星空

铁虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
送红花一朵
做一个密相输运床煤气化的模拟,尝试用dpm模型耦合欧拉双流体模型来做,准备用udf定义颗粒我表面反应,对气固非均相反应进行描述。可是每当载入此udf,fluent就提示 the f1 process could not be started。不知道到底是哪里出了问题。麻烦大神们帮我看一下我的udf,麻烦指出是哪里出了错误,十分感谢!

#include "udf.h"
#include "dpm.h"

#define o2 1
#define h2o 3
#define co2 2
#define h2 5
#define co 4
#define ch4 6
#define tmax 2500

define_pr_rate(particle_surface_rate, c, t, r, mw, pp, p, sf, dif_i, cat_i, rr)
{
        double t_1 = max(450, c_t(c, t));/* 连续相温度 */
        double t_2 = max(450, p_t(p));
        double t = min(3000, t_1);
        double t_s = min(3000, t_2);

        double k_e_q, p_e;
       

        double k_f, k_a, k_r, diff;
    double pt = max(0.1, (op_pres+c_p(c,t))/101325);
        double rd;
        double d_p = p_diam(p);
        double ash_ar = 10.68;
        double ash;
        double conv;
        double ep_a, f_ep_a;
        ash = p_init_mass(p)*0.1068;
        /* 灰的空隙率,void fraction of ash layer */

                ep_a = 0.9199;/*0.25 + 0.75*(1-ash_ar/100.)*/
                f_ep_a = pow(ep_a, 2.5);
                conv = (p_mass(p)/ash)-1+(1.e-8);
                conv = max(0,conv);
        rd = pow(conv,(1./3.));
       
        if(!strcmp(r->name, "reaction-10") /* c+0.9o2=0.2co+0.8co2 */
        {
                if(sf[0]>0&&c_yi(c,t,1)>0)
        {
                diff = 0.584 * (4.26/t) * pow((t/1800.), 1.75) / pt;
        diff = max(diff, 1.e-10);
        k_f = diff / (d_p * 100 );
    k_r = 8710. * exp( -149400./(t * 8.314 )) * rd * rd;
                 if(rd >= 1.)
                 {
                         *rr = 1./(1./k_f + 1./k_r);
                 }
                 else
                 {
                        k_a = rd * k_f * f_ep_a / (1.0-rd) ;
                         *rr = ( 1.0/(1.0/k_f + 1.0/k_r + 1.0/k_a));
                 }
                }
                else
                {
                        *rr = 0.;
                }

                 *rr = -10 * (*rr * sf[0] * pp[1] * 3.14 * d_p * d_p / 101325.);
        }
        else if(!strcmp(r->name, "reaction-7") /* c+h2o=co+h2 */                                                                                                                                         
        {
                if(sf[0]>0&&c_yi(c,t,3)>0)
                {
                k_e_q = exp(17.644-30260/(1.8*t));
                p_e = pp[3] - ((pp[5]-pp[4])/k_e_q);
                p_e = max(p_e, 0);
                diff =0.001 * pow((t/2000.), 0.75) / pt;
                diff = max(diff, 1.e-10);
                 k_f = diff / (d_p * 100.);
                 k_r = 247. * exp( -175100./(8.314 * t)) * rd * rd;
                 if(rd >= 1.)
                 {
                         *rr = 1./(1./k_f + 1./k_r);
                 }
                 else
                 {
                        k_a = rd * k_f * f_ep_a / (1.-rd);
                         *rr = (( 1. / (1./k_f + 1./k_r + 1./k_a))+(1.e-8));
                 }
                }
                else
                {
                        *rr = 0.;
                }
                 *rr = -10 * (*rr * pp[3] * 3.14 * d_p * d_p * sf[0] / 101325.);  
        }
        else if(!strcmp(r->name, "reaction-8") /* c+co2=2co */
        {
        if(sf[0]>0.&&c_yi(c,t,2)>0.)
        {
        diff = (7.45e-4) * pow((t/2000.), 0.75) / pt;
        diff = max(diff, 1.e-10);
                 k_f = diff / (d_p * 100.);
                k_r = 247. * exp( -175100./(8.314 * t)) * rd * rd;
                 if(rd >= 1.)
                 {
                         *rr = 1./(1./k_f + 1./k_r);
                 }
                 else
                 {
                 k_a = rd * k_f * f_ep_a / (1.-rd) ;
                         *rr = ( 1. / (1./k_f + 1./k_r + 1./k_a))+(1.e-8);
                 }
        }
        else
        {
                *rr = 0.;
        }
                 *rr = - 10 * (*rr * pp[2] * 3.14 * d_p * d_p * sf[0] / 101325.);
        }
        else if(!strcmp(r->name, "reaction-9") /* c+h2=ch4 */
        {
                if(sf[0]>0.&&c_yi(c,t,5)>0.)
                {
                k_e_q = (5.041e-6) * exp(18400./(1.8 * t));
                p_e = (pp[5]/101325) - sqrt(pp[6] / k_e_q/101325);
                p_e = max(p_e, 0);
        diff = (1.33e-3) * pow((t/2000.), 0.75) / pt;
        diff = max(diff, 1.e-10);
                 k_f = diff / (d_p * 100.);
                 k_r = 0.12 * exp( -149000./(8.314 * t )) * rd * rd;
                 if(rd >= 1.)
                 {
                         *rr = 1./(1./k_f + 1./k_r);
                 }
                 else
                 {
                         k_a = rd * k_f * f_ep_a / (1.-rd) ;
                         *rr = ( 1. / (1./k_f + 1./k_r + 1./k_a));
                 }
                }
                else
                {
                        *rr = 0.;
                }
                *rr = -10 * (*rr * p_e * 3.14 * d_p * d_p * sf[0]);
                 
                 
        }
}
13楼2019-04-12 10:45:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yx0918yogurt

新虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
13楼: Originally posted by 日月星空 at 2019-04-12 10:45:46
做一个密相输运床煤气化的模拟,尝试用dpm模型耦合欧拉双流体模型来做,准备用udf定义颗粒我表面反应,对气固非均相反应进行描述。可是每当载入此udf,fluent就提示 the f1 process could not be started。不知道到 ...

楼主请问你的问题解决了吗?我是用DPM模型来计算的,导入编译时遇到了相同的问题
14楼2019-12-18 16:56:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yx0918yogurt

新虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
13楼: Originally posted by 日月星空 at 2019-04-12 10:45:46
做一个密相输运床煤气化的模拟,尝试用dpm模型耦合欧拉双流体模型来做,准备用udf定义颗粒我表面反应,对气固非均相反应进行描述。可是每当载入此udf,fluent就提示 the f1 process could not be started。不知道到 ...

您好,我也是做CFD煤气化方面工作的,主要是编程这一块,方便交流一下吗?
15楼2019-12-18 17:14:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 chixiufang 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见