You are on page 1of 13

SIMULACIN NUMRICA

DE YACIMIENTOS
PROYECTO FINAL
ECUACIN DE BALANCE DE MATERIA
Prof: Daniel Eduardo Carballo Ayala

EQUIPOS DE 5 PERSONAS

LINEAMIENTO
S DEL
PROYECTO

TRABAJO ESCRITO
CODIGO EN MATLAB

El proyecto se deber entregar el da Lunes 12 de


Diciembre a ms tardar las 22:00 hrs.

El reporte final deber contener la


siguiente estructura:
Cartula
Resumen
ndice
Lista de tablas
Lista de figuras
Introduccin
Desarrollo del tema(EBM)
Anlisis de Resultados
Conclusiones
Recomendaciones
Nomenclatura
Apndices

NOTA 1: Se prohibe copiar o tomar trabajos de otras


personas.
NOTA 2: Todo el equipo es responsable por lo que
entregen o dejen de entregar.

A) Obtener una grca de Rp vs Fr=Np/N para 3


diferentes presiones nalescon las siguientes
simplicaciones:
1. Presin inicial del yacimiento arriba de la presin de
saturacin.
2. El yacimiento es volumtrico, es decir, We = 0

INSTRUCCION
ES

3. No existe capa de gas, m = 0. (Yacimiento sobresaturado


inicialmente)
4. No existe inyeccin de fluidos.
5.Considere los siguientes dos casos para todas las presiones
finales en su cdigo:
Considerar Cw=0 y Cf=0
Considerar Swi=0.2, Cw=3 x 10-6psi-1y Cf= 1 x10-6 psi-1

Considere el PVT de la tabla 1 con los siguientes datos:


6. Presin inicial 320 bar
Caso (a) Presin final 100 bars
Caso (b) Presin final 150 bars
Caso (c) Presin final 200 bars
Suponga valores de Rp desde el Rsi hasta valores de
5*Rsi (ud. decida). Responda porque se deben de
considera valores mayores a Rsi? Por que no suponer
valores menores?

Para yacimiento saturado


P<Pb

Para yacimiento sobresaturado


P>Pb

Tabla 1

PVT

B) ndices de empuje

A partir de la definicin de los ndices de empuje


realizar un cdigo en MatLab para calcularlos.
1. Considere en sucdigoel clculo de losndicespara
todos los puntos. Es decir, calcule losndicespara
cada tiempo. Use los datos PVT y de produccin
2.Implemente una forma grfica para representar la
variacin de los ndices de empuje con respecto al
tiempo.
Datos:
N=312 MMBLS
cf = 3 x10-6 psi-1
cw = 4 x 10-6 psi-1
Swi = 0.05.
m=0

C) EBM como Lnea Recta


Datos:
Sw=20.8 %
28%
Cf=26x10-5 psi-1
Cw= 2.28x10-5 psi-1
Pb= 2648 psia
Bti= Boi
Bw=1.02
Pi= P (1) en tabla de
produccin
Para Pi>Pb suponga:
m=0
Bgi=0

1. Supongamos que N y We son incgnitas. Demuestre que la ec.


puede expresarse como una ec. de una lnea recta.
2. Considerando su procedimiento descrito por el equipo, los
datos proporcionados enel PVT y con ayuda de un cdigo en
MATLAB, solucione el siguiente problema:
(a) Para los puntos de tiempo de 0 a 700das, con la tcnica de la
EBM expresada como lnea recta,determine N.Asuma que NO
existe acufero.
(b) Para los puntos de tiempo de 0 a 1285 das, con la tcnica de
la EBM expresada como lnea recta, determine N. Asuma que NO
existe acufero.

(c) Para los puntos de tiempo de 0 a 3595 das, con la tcnica de la EBM expresada como
lnea recta, determine N. Asuma que NO existe acufero.
(d) Que concluye, con los valores de N que obtiene?
(e) Realice unagrficade F vs F/Et como se muestrea en lafigura1. Esta es conocida
comogrficade Campbell. Comprela con lagrficaporporcionada.

Tabla 4
Produccin

Tabla 3
PVT

Grafica
de
Campbell

Investigar linspace para generacin de valores para Rp.


Investigar Stacked Bar Chart para ndices de empuje.
Utilicen la instruccin de mnimos cuadrados deMatLab para
lnea recta. Determinar un ajuste pasando por el origen.
Revisar sistemas mtricos.

Funcin linterp, investigar como llamar a una funcin:


TIPS

Funcin linterp
function [yStar,slope] = linterp(x,y,xStar);
% linterp Piecewise linear interpolation in a
table of (x,y) data
% Synposis: yi = linterp(x,y,xi)
% Input: x,y = vectors containing the tabulated
data
% xi = value of x at which function y = f(x)
is desired
% Output: yi = value of y at xi obtained by
linear interpolation
% slope = Slope at xi
i = binSearch(x,xStar); % Find
appropriate data pair
slope=(y(i+1)-y(i))/(x(i+1)-x(i));
yStar = y(i)+ slope*(xStar-x(i)); % Evaluate
interpolant

Funcin binsearch
function ia = binSearch(x,xhat);
% binSearch Binary search to find index i such that x(i)<=
xhat <= x(i+1)
% Synopsis: i = binSearch(x,xhat)
% Input: x = vector of monotonic data
% xhat = test value
% Output: i = index in x vector such that x(i)<= xhat <=
x(i+1)
n = length(x);
if xhat<x(1) | xhat>x(n)
error(sprintf('Test value of %g is not in range of x',xhat));
end
ia = 1; ib = n; % Initialize lower and upper limits
while ib-ia>1
im = fix((ia+ib)/2); % Integer value of midpoint
if x(im) < xhat
ia = im; % Replace lower bracket
else
ib = im; % Replace upper bracket

You might also like