program correlaciones pvt

31
program PROYECTO implicit none integer::seleccion1 character::reg call system ("cls") write(*,*)' UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO' write(*,*) write(*,*)' FACULTAD DE INGENIERIA' write(*,*) write(*,*)' FLUJO MULTIFASICO EN TUBERIAS' write(*,*) write(*,*)'CALCULO DE LAS PROPIEDADES DEL ACEITE Y GAS' Write(*,*) Write(*,*)' Andres Montealegre Arturo' Write(*,*)' Bravo Rivera Luis Cesar' Write(*,*)' Jimenez Ulloa Jose Miguel' Write(*,*)' Mantufar Barrera Iszael' Write(*,*)' Morales Sanchez Alberto Ivan' Write(*,*) write(*,*) 1000 write(*,*)'ESCOGA LA CORRELACION QUE QUIERE CALCULAR' write(*,*) write(*,*)'1-STANDING'

Upload: ivancho-morales

Post on 19-Nov-2015

35 views

Category:

Documents


1 download

DESCRIPTION

Codigo de programacion en fortran de las correlaciones PVT de flujo multifasico.

TRANSCRIPT

program PROYECTOimplicit noneinteger::seleccion1character::reg call system ("cls")

write(*,*)' UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO'write(*,*)write(*,*)' FACULTAD DE INGENIERIA'

write(*,*)write(*,*)' FLUJO MULTIFASICO EN TUBERIAS'write(*,*)write(*,*)'CALCULO DE LAS PROPIEDADES DEL ACEITE Y GAS'Write(*,*)Write(*,*)' Andres Montealegre Arturo' Write(*,*)' Bravo Rivera Luis Cesar'Write(*,*)' Jimenez Ulloa Jose Miguel'Write(*,*)' Mantufar Barrera Iszael'Write(*,*)' Morales Sanchez Alberto Ivan'Write(*,*) write(*,*)1000 write(*,*)'ESCOGA LA CORRELACION QUE QUIERE CALCULAR' write(*,*) write(*,*)'1-STANDING' write(*,*) write(*,*)'2-VAZQUEZ' write(*,*) write(*,*)'3-GLASO' write(*,*) write(*,*)'4-AL-MOUNHORN' write(*,*) write(*,*)'5-PROPIEDADES DEL AGUA' write(*,*) write(*,*)'6-SALIR' write(*,*) read(*,*)seleccion1 call system ("cls")

select case (seleccion1)case(1) write(*,*)'SELECCIONASTE LA CORRELACION DE STANDING' call STANDING write(*,*)'Para volver al menu, presione s' read(*,*)reg call system ("cls") if(reg=='s')goto 1000

case(2) write(*,*)'SELECCIONASTE LA CORRELACION DE VAZQUEZ' call VAZQUEZ write(*,*)'Para volver al menu, presione s' read(*,*)reg call system ("cls") if(reg=='s')goto 1000

case(3) write(*,*)'SELECCIONASTE LA CORRELACION DE GLASO' call GLASO write(*,*)'Para volver al menu, presione s' read(*,*)reg call system ("cls") if(reg=='s')goto 1000

case(4) write(*,*)'SELECCIONASTE LA CORRELACION DE ALMORHOUND' call ALMORHOUND write(*,*)'Para volver al menu, presione s' read(*,*)reg call system ("cls") if(reg=='s')goto 1000

case(5) write(*,*)'SELECCIONASTE PROPIEDADES DEL AGUA ' call PROPAGUA write(*,*)'Para volver al menu, presione s' read(*,*)reg call system ("cls") if(reg=='s')goto 1000 case(6) write(*,*)'Cerrando programa'

case default write(*,*)'ESCOGE UNA OPCION QUE EXISTA' goto 1000 end select

end program PROYECTO

!--------------------------------------------------------subroutine STANDINGimplicit nonereal::rga,api,gamag,tin,pin,tsep,psep!Datos de entradareal::pb,gamagd,gamao,gamagc,gamagf,bob,bo,co,denob,deno,muo,mu,rs,bg,deng !Datos resultadoreal::c1,c2,c3,c4,c5,m,z,y,x,mom,b,a,error,rsup,f,tinr,tsepr,mug,K,Y,X !Datos calculos real::difz,dr,tpr,ppr,tpc,ppc,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,zsup,tol,parte1,parte2,parte3,parte4,zcal

open(unit=1,file="C:\Users\mI\Desktop\programas\BUENO\datos.txt",status="old")

read(1,*)gamagread(1,*)pinread(1,*)tinread(1,*)rgaread(1,*)apiread(1,*)tsepread(1,*)psepclose(1)

if(api.LE.30.d0)then c1=.0362d0 c2=1.0937d0 c3=25.724d0else c1=.0178 c2=1.1870 c3=23.931end if pb=18*(((rga/gamag)**0.83)*10**(0.00091*tin-0.0125*api)-1.4)write(*,*)'Pb=',pb if (pb.LT.pin)then!------------------------------------------------------------------------------------ !PARA ACEITE BAJOSATURADO----------------------------------------------------------------!------------------------------------------------------------------------------------ rs=rga write(*,*) write(*,*)'Pint>Pb, ES ACEITE BAJOSATURADO, RS=RGA' write(*,*) gamagd=0.25+0.02*api+rga*.000001*(0.6874-3.5864*api) gamao=141.5/(131.5+api) gamagc=gamagd*(1+0.00005912*api*tsep*log10(psep/114.7)) f=rga*((gamagd/gamao)**0.5)+1.25*tin c1=-1433 c2=5 c3=17.2 c4=-1180 c5=12.61 co=(c1+(c2*rga)+(c3*tin)+(c4*gamagc)+(c5*api))/(pin*10**(5)) bob=0.9759+.00012*((f)**1.2) bo=bob*exp(-co*(pin-pb)) denob=(62.4*gamao+.01362*rga*gamagd)/bob deno=denob*exp(co*(pin-pb)) m=2.6*(pin**(1.187))*exp(-11.513d0-(8.98d0*.00001)*(pin)) z=3.0324-(.02023*api) y=10**(z) x=y*tin**(-1.163d0) mom=10.d0**(x)-1.d0 b=5.44d0*(rga+150.d0)**(-.338d0) a=10.715d0*(rga+100.d0)**(-.515d0) muo=a*(mom**(b)) mu=muo*((pin/pb)**(m))

open(unit=2,file="C:\Users\mI\Desktop\programas\BUENO\Resultados.txt",status="unknow") write(*,*) write(*,*)'Pb= ',pb write(*,*)'Pint>Pb, ES ACEITE BAJOSATURADO, RS=RGA' write(*,*)'Gamagd= ',gamagd write(*,*) write(*,*)'Gamao= ',gamao write(*,*) write(*,*)'Gamagc= ',gamagc write(*,*) write(*,*)'Bob = ',bob write(*,*) write(*,*)'Bo = ',bo write(*,*) write(*,*)'Co= ',co write(*,*) write(*,*)'Denob= ',denob write(*,*) write(*,*)'Deno= ',deno write(*,*) write(*,*)'Mob= ',muo write(*,*) write(*,*)'Mo= ',mu

close(2) else!------------------------------------------------------------------------------------ !PARA ACEITE SATURADO----------------------------------------------------------------!------------------------------------------------------------------------------------ rsup=rga-100 write(*,*) write(*,*)'PintPb, ES ACEITE BAJOSATURADO, RS=RGA' write(*,*) c1=-1433 c2=5 c3=17.2 c4=-1180.d0 c5=12.61d0 tinr=tin+460.d0 co=(c1+(c2*rga)+(c3*tin)+(c4*gamagc)+(c5*api))/(pin*10**(5)) if(api.LE.30)then c1=.000466d0 c2=.00001751d0 c3=-.00000001811d0 else c1=.0004670d0 c2=.000011d0 c3=.000000001337d0 end if bob=1+(.0004667d0*rga)+(tinr-60.d0)*(api/gamagc)*(c2+(c3*rga)) bo=bob*exp(-co*(pin-pb)) gamao=141.5d0/(api+131.5d0) denob=(62.4d0*gamao+.01362d0*rga*gamag)/bo deno=denob*exp(co*(pin-pb)) m=2.6*(pin**(1.187))*exp(-11.513d0-(8.98d0*.00001)*(pin)) z=3.0324-(.02023*api) y=10**(z) x=y*tin**(-1.163d0) mom=10.d0**(x)-1.d0 b=5.44d0*(rga+150.d0)**(-.338d0) a=10.715d0*(rga+100.d0)**(-.515d0) muo=a*(mom**(b)) mu=muo*((pin/pb)**(m))

open(unit=2,file="C:\Users\mI\Desktop\programas\BUENO\Resultados.txt",status="unknow") write(*,*) write(*,*)'Pb= ',pb write(*,*)'Pint>Pb, ES ACEITE BAJOSATURADO, RS=RGA' write(*,*)'Gamao =',gamao write(*,*) write(*,*)'Gamagc =',gamagc write(*,*) write(*,*)'Bob =',bob write(*,*) write(*,*)'Bo =',bo write(*,*) write(*,*)'Co =',co write(*,*) write(*,*)'Denob =',denob write(*,*) write(*,*)'Deno =',deno write(*,*) write(*,*)'Mob =',muo write(*,*) write(*,*)'Mo =',muclose(2) else!------------------------------------------------------------------------------------ !PARA ACEITE SATURADO----------------------------------------------------------------!------------------------------------------------------------------------------------ write(*,*) write(*,*)'PintPb, ES ACEITE BAJOSATURADO, RS=RGA' write(*,*)gamao=141.5/(api+131.5)gamagc=gamag*(1+0.00005912*api*tsep*log10(psep/114.7))c1=-1433c2=5c3=17.2c4=-1180c5=12.61c6=10**5co=(c1+(c2*rga)+(c3*tin)+(c4*gamagc)+(c5*api))/(pin*c6)bosup=rga*((gamag/gamao)**.526d0)+(.9687d0*tin)A=-6.58511d0+2.91329d0*log10(bosup)-.27863d0*(log10(bosup))**2bob=1.d0+10.d0**Abo=bob*exp(-co*(pin-pb))gamagd=0.25d0+0.02d0*api+rga*.000001d0*(0.6874d0-3.5864d0*api)denob=(62.4d0*gamao+.01362d0*rga*gamagd)/bobdeno=denob*exp(co*(pin-pb))m=2.6*(pin**(1.187))*exp(-11.513d0-(8.98d0*.00001)*(pin)) z=3.0324-(.02023*api) y=10**(z) x=y*tin**(-1.163d0) mom=10.d0**(x)-1.d0 b=5.44d0*(rga+150.d0)**(-.338d0) a=10.715d0*(rga+100.d0)**(-.515d0) muo=a*(mom**(b)) mu=muo*((pin/pb)**(m))

open(unit=2,file="C:\Users\mI\Desktop\programas\BUENO\Resultados.txt",status="unknow") write(*,*)write(*,*)'Pb= ',pbwrite(*,*)'Pint>Pb, ES ACEITE BAJOSATURADO, RS=RGA' write(*,*)'Gamao =',gamaowrite(*,*)write(*,*)'Bob =',bob write(*,*)write(*,*)'Bo =',bowrite(*,*)write(*,*)'Denob =',denobwrite(*,*)write(*,*)'Deno =',denowrite(*,*)write(*,*)'Mob =',muowrite(*,*)write(*,*)'Mo =',muclose(2) else!------------------------------------------------------------------------------------ !PARA ACEITE SATURADO----------------------------------------------------------------!------------------------------------------------------------------------------------ write(*,*) write(*,*)'PintPb, ES ACEITE SATURADO' write(*,*)'Bw =',Bwwrite(*,*)write(*,*)'denW =',denW write(*,*)write(*,*)'Mw =',Mw

close(2)

else !------------------------------------------------------------------------------------ !PARA ACEITE BAJOSATURADO----------------------------------------------------------------!------------------------------------------------------------------------------------ write(*,*) write(*,*)'Pint>Pb' write(*,*)

deltVwt=((5.50654*10**(-7))* tin**2)+((1.33391*10**(-4))*tin)+(-1.0001*10**(-2))deltwp=-(1.95302*10**(-9)*pb*tin)-(1.72834*10**(-13)*tin*pb**2)-(3.58922*10**(-7)*pb)-(2.25341*10**(-10)*pb**2) Bwb=(1+deltVwt)*(1+deltVwp)

A=1.8546-1.34*10**(-4)*pinB=-0.01052+4.77*10**(-7)*pinC=3.9267*10**(-5)-8.8*10**(-10)*pinCw=(A+B*tin+C*tin**2)/(10**6)

Bw=Bwb*exp(Cw*(pb-pin))denW=62.4(1000)/Bw

open(unit=2,file="C:\Users\mI\Desktop\programas\BUENO\Resultados.txt",status="unknow") write(*,*)write(*,*)'Pb= ',pbwrite(*,*)'Pint>Pb, ES ACEITE BAJOSATURADO' write(*,*)'Bw =',Bwwrite(*,*)write(*,*)'denW =',denWwrite(*,*)write(*,*)'Cw =',Cw write(*,*)write(*,*)'Mw =',Mw

end if end subroutine PROPAGUA