ÀÚµ¿·Î±×ÀÎ
ÄÁÅÙÃ÷ | contents
ÀϹݰԽÃÆÇ
Q&A°Ô½ÃÆÇ
°øÇÐ S/W
½ºÅ͵ð | study
´ÜÀ§È¯»ê
³óµµ°è»ê
ÀϹÝÈ­ÇÐ
È­°øÀϹÝ
È­°ø½Ç¹«

   
  BS5500 Vessel Thickness calcuationÁß C factor °è»ê ¾Ë°í¸®Áò
  ±Û¾´ÀÌ : ¿î¿µÀÚ   °íÀ¯ID : ¿î¿µÀÚ     ³¯Â¥ : 00-00-00 00:00     Á¶È¸ : 10730    
BS5500 code¸¦ ÀÌ¿ëÇÑ Flat Endplates ºÎºÐ Vessel sizing½Ã ÇÊ¿äÇÑ
C factor °è»ê ¾Ë°í¸®ÁòÀÔ´Ï´Ù. ÇÊ¿äÇϽŠºÐÀº ÂüÁ¶ÇϽñ⠹ٶø´Ï´Ù.

* pow(x,y) ÇÔ¼ö´Â x^y ÀÔ´Ï´Ù.


#define Accuracy 0.999


/*******************************************************************
*
* BS5500: 1991
*
* Appendix R basis for calculation of C factor for Flat Endplates
* as per clause 3.5.5.2.1, from Fig 3.5.5(3)
*
* (C) I. W. Bird 17th August 1991
*
*******************************************************************/

double pow(double,double);
double sqrt(double);

double ApdxR_I(double a, double b)
{
double c1, c2;
double a3, ar, sqb;

a3 = a * a * a;
ar = 1.0 / a;
sqb = sqrt(b);

c1 = 2.943 * a3- 3.74 * a + pow(b,1.5) + 0.909 * a * b + 0.385 * b * ar;
c2 = 1.907 * a3 + 4.848 * a + 1.027 * ar +
2.667 * sqb + 5.875 * a * a / sqb;

return 0.5 + c1 / c2;

}

/********************************************************************
*
* This function returns a value of C from graph of Fig 3.5.5.3(c)
* given values of
* ecyl      p
*                  ----  and  -
* ecylo      f    Graphs have been plotted
* to check all possible values
*
********************************************************************/

double Fig3_5_5_3_C(double pf, double EcylEcylo)
{
double c1, c2;
double a2, a3, ar, sqb ,sqbrecip;

double e, Sr, q;
double emin, emax;

double Decyl,Decyl909, Decyl385, De15;
double SrA;

if(EcylEcylo > 5.0) /* Fig 3.5.5.3(c) limits EcylEcylo */
EcylEcylo = 5.0; /* to a maximum value of 5 */

else if(EcylEcylo < 1.0)
return -1.0; /* Error - Cylinder is too thin */
/* for internal pressure */

if(pf <= 0.0)
return -1.0;
else if(pf <1e-5) /* Small No., (insoluble for zero) */
pf = 1e-5;

Decyl = 2/(EcylEcylo * pf); /* Some factors taken out of */
Decyl909 = Decyl * 0.909; /* the loop to speed things up  */
Decyl385 = Decyl * 0.385; /* */

sqb = sqrt(Decyl);
sqbrecip = 1.0 / sqb;
sqb *= 2.667;

De15 = pow(Decyl, 1.5);
SrA = Decyl * pf * 0.5 / 2.7; /* Figure limits stress to */
/* 2.7f (see Appdx R) */

/* emax will always be  */
emax = 0.9 * sqrt(pf) * Decyl; /* less than this guess */
emin = 0.0;

e = (emax + emin) * 0.5; /* First guess of e */

while(1)
{
a2 = e * e;
a3 = e * a2;
ar = 1.0 / e;

c1 = 2.943*a3 - 3.74*e + De15 + e * Decyl909 + Decyl385 * ar;
c2 = 1.907*a3 + 4.848*e + 1.027*ar + sqb + 5.875 * a2 * sqbrecip;

Sr = (0.5 + c1 / c2) * SrA;

if(Sr <= 1.0 && Sr > Accuracy )
{
q = e  * EcylEcylo * sqrt(pf) * 0.5;
if( q < 0.41)
q = 0.41;

return q;
}

if(Sr > 1.0)
emin = e;
else
{
emax = e;
if(emax <= 2 )
return 0.41;
}
e = (emin + emax) * 0.5;
}
}

   

Copyright 1999.07.10-Now ChemEng.co.kr & 3D System Engineering. (mail : ykjang@naver.com, call 010-4456-8090)