امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
سوال udf
#1
سلام وقت همگی بخیر میبخشید کسی میتونه بهم کمک کنه udf چگالش میخام.تبدیل بخار آب به مایع و بخار
اگ زودتر جواب بدید ممنون میشم



پاسخ


#2
چرا اینجا کسی راهنمایی نمیکنه؟
منم تو این مورد نیاز به کمک دارم
لطفا راهنمایی کنید و یا در صورت امکان برای انجامش و هزینش بهم پیغام بدین

ممنون



پاسخ


#3
فک کنم این بشه
DEFINE_DPM_LAW(Boiling_sree, p, ci)
{
double cp_gas, vap_rate_const, latent_heat;
double temp_diff,term,dia_ratio;
double fv = DPM_VOLATILE_FRACTION(p);
double diam_dry = 0;
cphase_state_t *c = &(p->cphase);
double qrad = 0.0;
Material *m = p->injection->material;
double min_liquid_mass = P_INIT_MASS(p)*(1.0 - DPM_VOLATILE_FRACTION(p));
double liq_mass = PI*(pow(P_INIT_DIAM(p),3)/6.0)*(1.0 - P_INIT_LF(p))*MATERIAL_PROP(p->injection->material,PROP_rho);

law = 3;

vapor_on = FALSE;
boil_on = TRUE;
/* Message (" ****Control is in Boiling: %16.8g, liquid mass:%16.8g, law: %i\n",liq_mass,min_liquid_mass,law); */
if (P_MASS(p) <= liq_mass)
{
if (ci) AddSources(p);
p->current_law_index++;
HeatMassUpdate(p,ci);
vapor_on = FALSE;
return;
}

if (DPM_WET_COMBUSTION(p))
{
m = p->injection->evaporating_material;
diam_dry = P_INIT_DIAM(p) * pow(1.-P_INIT_LF(p),1./3.);
}
else
{
if (fv < 1.)
diam_dry = P_INIT_DIAM(p) * pow(1.-fv,1./3.);
}
/* Message (" ****diam dry: %16.8g, org dia:%16.8g\n",diam_dry,P_DIAM(p)); */
latent_heat = MAX(1.e-20,MATERIAL_PROP(m,PROP_latent_heat));
if (ABS(latent_heat) < 1.e-20)
latent_heat = 1.e-20;
cp_gas = c->sHeat;
/*Message (" ****Cp gas: %16.8g\n",cp_gas); */
if (cp_gas < DPM_SMALL) cp_gas = DPM_SMALL;

temp_diff = c->temp-P_T(p);
if (temp_diff < 0.) temp_diff = 0.;
/* Message (" ****temp_diff: %16.8g, c->temp:%16.8g\n",temp_diff,c->temp); */

if (dpm_par.radiation_p)
{
qrad = DPM_EMISSIVITY(p,P_MATERIAL(p))*(.25*c->G - SIGMA_SBC*pow(P_T(p),4.));
}

/*Message (" ****q_rad_default: %16.8g, q_rad: %16.8g, time_step: %16.8fl \n",qrad, qrad1,p->time_step); */

if (qrad < 1.e-9)
{
/*Message("it is true\n");*/
vap_rate_const = 8. * c->tCond / (P_RHO(p)*cp_gas)* log(1. + cp_gas*temp_diff/latent_heat);
term = P_DIAM(p)*P_DIAM(p) - vap_rate_const*(1. + 0.23*sqrt(p->Re)) * p->time_step;
P_DIAM(p) = (term > 0.) ? sqrt(term) : diam_dry;
}
else
{
/*Message("it is false\n");*/
real ku = 2.0 + 0.46*sqrt(p->Re);
real alpha = 2.*qrad/(P_RHO(p)*latent_heat);
vap_rate_const = c->tCond * temp_diff * ku;
term = P_DIAM(p) - (vap_rate_const + qrad*P_DIAM(p))*alpha*p->time_step / MAX(qrad*P_DIAM(p),DPM_SMALL);
P_DIAM(p) = (term > 0.) ? term : diam_dry;
/*Message("term: %16.8g, diam: %16.8g\n", term, P_DIAM(p));*/
}

if (DPM_WET_COMBUSTION(p))
{
P_DIAM(p) = MAX(P_DIAM(p), diam_dry);
P_LF(p) = MAX(0., 1.0 - diam_dry*diam_dry*diam_dry /(P_DIAM(p)*P_DIAM(p)*P_DIAM(p)));
P_RHO(p) = P_LF(p) * MATERIAL_PROP(p->injection->evaporating_material,PROP_rho) +
(1.-P_LF(p)) * MATERIAL_PROP(p->injection->material,PROP_rho);
P_MASS(p) = P_RHO(p) * PI * P_DIAM(p)*P_DIAM(p)*P_DIAM(p) / 6.;
}
else
{
dia_ratio = P_DIAM(p)/P_INIT_DIAM(p);
P_MASS(p) = P_INIT_MASS(p) * dia_ratio*dia_ratio*dia_ratio;
}

/*Message (" P_Mass:%16.8g, Liquid_fraction:%16.8g \n",P_MASS(p),P_LF(p));*/
}



پاسخ




پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

فیلم های آموزشی مهندسی مکانیک - به زبان فارسی

بر روی موضوع مورد نظر خود کلیک کنید

آموزش پنیوماتیک آموزش نرم افزار Fluidsim آموزش ریخته گری با ProCast
آموزش کنترل صنعتی آموزش نرم افزار PDMS آموزش نرم افزار کامسول Comsol
آموزش شکل دادن فلزات آموزش نرم افزار Moldflow آموزش ماشین کاری با EdgeCAM
آموزش طراحی کنترل مقاوم آموزش Working Model آموزش پدیده انتقال در کامسول
آموزش حل معادلات دینامیکی آموزش نرم افزار LogoPress آموزش کنترل فعال با رویکرد فازی
آموزش تحلیل المان محدود آموزش‌های رایگان آموزش ریخته گری با ProCast