Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INGENIERA PETROLERA
JUSTIFICACIN.-
La razn por la cual se realiza este programa para el clculo de la temperatura del
reservorio en un yacimiento o reservorio de gas, es debido a que con los datos
conocidos como el peso molecular del gas del reservorio, la densidad del gas y la
viscosidad del mismo, Lee-Gonzales-Aekin, desarrolla una relacin para poder
calcular la viscosidad de los gases naturales, para lo cual este expresa dicha
relacin en trminos de temperatura, de donde si se tiene como dato la
viscosidad de dicho gas, es posible resolver dicha ecuacin no lineal, para poder
determinar la temperatura del reservorio. Pero debemos hacer notar que dicha
ecuacin no es fcil de resolver manualmente, debido a que demandara mucho
tiempo en poder resolver dicha ecuacin.
Este programa est diseado para que el usuario pueda introducir los datos que
se dan y as poder encontrar la solucin a esta ecuacin mediante iteraciones que
se realiza, por ello el programa realizar todas las iteraciones necesarias para
poder encontrar la solucin, de manar ,ms rpida que si se lo hara
manualmente.
OBJETIVOS.-
MARCO TERICO.-
Gravedad especfica, g
Factor de compresibilidad, z
Densidad, g
Volumen especfico, v
Viscosidad, g
g = f(p,T,yi)
donde g = viscosidad de la fase gas.
Mtodo de Carr-Kobayashi-Burrows
Mtodo de Standing-Dempsey
PROGRAMACIN APLICADA (PET - 230)
JSV
UNIVERSIDAD MAYOR DE SAN ANDRS
INGENIERA PETROLERA
Mtodo de Lee-Gonzalez-Eakin
Mtodo de Lee-Gonzalez-Eakin
g
Y
X
62.4
g 10 Ke4
Donde
X 5.3518
3
Y 2 .4 0 .2 X
4
Donde
X 5.3518
3
Y 2.4 0.2 X
4
2 . 4 0 .2 X
g
5.3518
(9.4 0.02M a )T
1.5
62.4
g 10 * 4
*e
209 19 M a T
g
1.32 96
5.3518
62.4
(9.4 0.02 M a )T
1.5
g 10 *
4
*e
209 19 M a T
MTODO NUMRICO.-
Para este caso realizaremos iteraciones, para resolver esta ecuacin no lineal, en
donde el mtodo numrico a ser utilizado ser el de Newton-Raphson. Este
mtodo, que es un mtodo iterativo, es uno de los ms usados y efectivos.
Trazamos la recta tangente a la curva en el punto (xi, f(xi)); sta cruza al eje x en
un punto xi+1 que ser nuestra siguiente aproximacin a la raz xr.
m = f(xi)
Hacemos y = 0:
Y despejamos x:
f ( xi )
x xi
f ' ( xi )
f (Ti )
Por lo tanto =0 ser de la siguiente manera:
g
1.32 9 6
5.3518
62.4
(9.4 0.02 M a )T 1.5
f (Ti ) 0 10 * 4
*e
g
209 19M a T
f ' (Ti )
Y para poder calcular , ser necesario derivar la anterior ecuacin:
g
1.3296
5.3518
62.4
(9.4 0.02 M a )T 0.5 (9.4 0.02 M a )T 1.5
4
f ' (Ti ) 10 * e
* 1.5 2
209 19 M a T 209 19 M a T
Ordenando:
g
1.3296
5.3518
(9.4 0.02 M a )T 0. 5
T 1
62.4
f ' (Ti ) 10 4 * * 1.5 * e
209 19 M a T 209 19 M a T
f (Ti )
Ti 1 Ti
f ' (Ti )
209 19M a T
209 19M a T
Dim m, d, u As Double
Dim A, B, C As Double
Function f(x)
'f = ((10 ^ (-4)) * (9.4 + (0.002 * m)) * (x ^ (1.5)) * Exp(5.3518 * (((8.3) / 62.4) ^
(1.3296))) / ((209 + (19 * m)) + x)) - u
'f = 0.0001 * (9.4 + (0.02 * m)) * (x ^ 1.5) * Exp(5.3518 * ((d / 62.4) ^ 1.3296)) /
(209 + (19 * m) + x) - u
End Function
Function df(x)
'df = ((10 ^ (-4)) * (9.4 + (0.002 * m)) * (x ^ (0.5)) * Exp(5.3518 * (((8.3) / 62.4) ^
(1.3296))) / ((209 + (19 * m)) + x)) * (1.5 - (x / (209 + (19 * m) + x)))
'df = 0.0001 * (9.4 + (0.02 * m)) * (x ^ 0.5) * Exp(5.3518 * ((d / 62.4) ^ 1.3296)) *
(1.5 - (x / (209 + (19 * m) + x))) / (209 + (19 * m) + x)
End Function
m = Val(mtex.Text)
d = Val(dtex.Text)
u = Val(utex.Text)
mat.TextMatrix(1, 2) = xo
mat.TextMatrix(1, 0) = "--"
mat.TextMatrix(1, 1) = "--"
sw = 0
For i = 1 To 100
PROGRAMACIN APLICADA (PET - 230)
JSV
UNIVERSIDAD MAYOR DE SAN ANDRS
INGENIERA PETROLERA
x = xo - (f(xo) / df(xo))
dif = Abs(x - xo)
If Abs(dif) <= tol Then
sw = 1
i = 100
Else
xo = x
mat.CellAlignment = flexAlignRightCenter
mat.TextMatrix(i + 1, 2) = Format(xo, "######,######0.00000")
mat.TextMatrix(i + 1, 1) = Format(dif, "######,######0.00000")
mat.TextMatrix(i + 1, 0) = i
End If
Next i
If sw = 1 Then
Label6.Caption = Format(x, "########,########0.00000000")
Else
Label6.Caption = "Error"
End If
End Sub
utex.SetFocus
End If
End Sub
Private Sub Form_Load()
Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 2
End Sub
KeyAscii = 0
End If
If KeyAscii = 13 Then
Command1.SetFocus
End If
End Sub
Para el uso del programa nicamente debemos tener como datos los siguientes
parmetros que se obtienen de laboratorio:
Luego de haber ingresado los datos debemos ingresar la tolerancia o error que se
desea en la iteracin, y luego seleccionar un T inicial, el cual para facilitar el
clculo tomaremos como parmetro a T inicial como Ti=100 [R]:
Si todos los datos ingresados son correctos, solo quedar realizar la iteracin;
para ello hacemos click en el comando Calcular. Y el programa automticamente
calcular y mostrar las iteraciones realizadas, adems del valor de T calculado
para la tolerancia dada.
Ejemplo
Calcular la Temperatura de la formacin del un gas que cuenta con los siguientes
datos, usando el mtodo de Lee-Gonzalez-Eakin:
g 8 .3
lb/f3
g 0.0173
cp
Ma 20.85
lb/lb-mol
Solucin:
BIBLIOGRAFA UTILIZADA.-