Tugas Simres 2

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

TM6011

SIMULASI RESERVOIR LANJUT


PR # 2

NAMA : Billal Maydika Aslam 22216008

DOSEN : Zuher Syihab, S.T. , Ph.D.

TANGGAL PENYERAHAN: 22 Februari 2017

PROGRAM STUDI TEKNIK PERMINYAKAN


FAKULTAS TEKNIK PERTAMBANGAN DAN PERMINYAKAN
INSTITUT TEKNOLOGI BANDUNG
2017
%Finite Difference Implicit Solver
%1-D 1-Phase flow, slightly compressible fluid
clc;
clear all;
%properties input
Lres = 2500;
Lgrid = 50;
ngrid = Lres/Lgrid;
mat = ngrid-2;
poro = 0.25;
perm = 10;
miu = 0.25;
ct = 1E-5;
%constant pressure boundary (flow left to right)
Pleft = 2000;
Pright = 500;
%timestep size
dt=0.2;
trun=30;
step=(trun/dt)+1;
%transmissibility (constant) calculation
Trans=poro*miu*ct/(perm*0.000264);
Betha=Trans*(ngrid^2)/dt;

P=zeros(ngrid,step);
r=zeros(ngrid,step);
%initial condition
Pinit = 2000;
P(:,1)=Pinit;

%matrix to be solved
matsolve=zeros(mat,mat);
rhs=zeros(mat,1);
Psolve=zeros(mat,1);
for t=2:step
for x=1:mat
if x==1
rhs(x)=-(Betha*P(x+1,t-1)+Pleft);
elseif x==mat
rhs(x)=-(Betha*P(x+1,t-1)+Pright);
else
rhs(x)=-(Betha*P(x+1,t-1));
end
for y=1:mat
if x==y
matsolve(x,y)=-(2+Betha);
elseif x==y-1 || x==y+1
matsolve(x,y)=1;
end
end
end
Psolve=(inv(matsolve))*rhs;
for n=2:ngrid-1
P(1,t)=Pleft;
P(ngrid,t)=Pright;
P(n,t)=Psolve(n-1,1);
end
end

for x=1:step
for y=1:ngrid
r(y,x)=Lres-(Lgrid*y);
end;
end;

plot(r,P);
xlabel('distance from well (ft)');
ylabel('pressure (psi)');
grid on;

Figure 1. Pressure(Distance) Profile from t=0 to t=30 in linear slab (implicit solution)

Published with MATLAB R2016b


%Finite Difference Explicit Solver
%1-D 1-Phase flow, slightly compressible fluid
clc;
clear all;
%properties input
Lres = 2500;
Lgrid = 50;
ngrid = Lres/Lgrid;
poro = 0.25;
perm = 10;
miu = 0.25;
ct = 1E-5;
%constant pressure boundary (flow left to right)
Pleft = 2000;
Pright = 500;
%timestep size
dt=0.2;
trun=30;
step=(trun/dt)+1;
%transmissibility (constant) calculation
Trans=poro*miu*ct/(perm*0.000264);
Betha=dt/(Trans*(ngrid)^2);

P=zeros(ngrid,step);
r=zeros(ngrid,step);
%initial condition
Pinit = 2000;
P(:,1)=Pinit;

for t=2:step
for x=2:ngrid-1
P(1,t)=Pleft;
P(ngrid,t)=Pright;
P(x,t)=P(x,t-1)+Betha*(P(x+1,t-1)-(2*P(x,t-1))+P(x-1,t-1));
end;
end;

for x=1:step
for y=1:ngrid
r(y,x)=Lres-(Lgrid*y);
end;
end;

plot(r,P);
xlabel('distance from well (ft)');
ylabel('pressure (psi)');
grid on;
Figure 2.Pressure(Distance) Profile from t=0 to t=30 in linear slab (explicit solution)

Published with MATLAB R2016b


Figure 3. P(#grid,timestep) for explicit solution Figure 4. P(#grid,timestep) for implicit solution

Perbandingan hasil perhitungan profil tekanan metode implisit dan metode eksplisit (timestep size = 0.2,
grid size 50) at end timestep

Pada kondisi konvergen, hasil perhitungan dari metode implisit dan eksplisit tidak berbeda jauh.
Efek Variasi Ukuran Timestep

Figure 5. Pressure Profile with Varying Timestep Size (t=30) [Explicit]

Terlihat bahwa pada metode eksplisit, semakin besar ukuran timestep, solusi menjadi tidak stabil.

Figure 6. Pressure Profile with Varying Timestep Size (t=30)[Implicit]

Pada metode implisit, solusi tidak terlalu terpengaruh ukuran timestep bahkan meski digunakan ukuran
timestep yang sangat besar (dt=15)
Efek Variasi Ukuran Grid

Hasil perhitungan profil tekanan menggunakan metode implisit dengan variasi ukuran grid pada akhir
run (t=30) diberikan sebagai berikut

Decreasing grid size

Figure 7. Pressure Profile with Varying Grid Size

Terlihat bahwa semakin kecil ukuran grid, semakin lambat perambatan tekanan dalam reservoir. Hal
ini bisa diasosiasikan dengan galat dari pemotongan deret taylor, dimana semakin kecil x seharusnya
akan semakin kecil pula galat yang dihasilkan.

You might also like