Anda di halaman 1dari 10

KEMENTERIAN RISET TEKNOLOGI DAN PENDIDIKAN TINGGI

PROGRAM STUDI GEOFISIKA JURUSAN FISIKA


FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS GADJAH MADA

TUGAS METODE ANALISA DATA GEOFISIKA I

DISUSUN OLEH:

LUTHFAN KIN GUMANDAR


14/365862/PA/16159
PENGAMPU:

Drs. Sudiartono, M.Si.

YOGYAKARTA
DESEMBER
2016

METODE ANALISIS GEOFISIKA I

Tugas 1 : Modifikasi main program untuk membaca data format ASCII dari file
dalam harddisk dibawah menjadi main program dan subprogram.

10
100

100
101

DIMENSION X(2000,24)
CHARACTER(LEN=60) :: NMFILE
NMFILE='D:/MAG1/MULTI_TRACE.TXT'
NJ=2000
ND=24
NJ=500
ND=5
OPEN(UNIT=2,FILE=NMFILE)
DO 10 J=1,NJ
READ(2,100)(X(J,I),I=1,ND)
CONTINUE
FORMAT(32F6.2)
CALL SIMPAN_DATA(DAT,NT,ND,NMFL)
STOP
END
SUBROUTINE SIMPAN_DATA(DAT,NT,ND,NMFL)
DIMENSION DAT(2500,500)
CHARACTER(LEN=60) :: NMFILE
OPEN(UNIT=2,FILE=NMFILE)
DO 100 J=1,NT
WRITE(2,101)(DAT(J,I),I=1,2*ND)
CONTINUE
FORMAT(50F6.2)
CLOSE(2)
RETURN
END

Tugas 2 : Membuat flowchart subprogram konvolusi yang diberikan di bawah


ini

10

20
30

SUBROUTINE KONVO(LX,X,LY,Y,LZ,Z)
DIMENSION X(1000),Y(1000),Z(1000)
LZ=LX+LY-1
DO 10 I=1,LZ
Z(I)=0.0
CONTINUE
DO 30 I=1,LX
DO 20 J=1,LY
K=I+J-1
Z(K)=Z(K)+X(I)*Y(J)
CONTINUE
CONTINUE
RETURN
END

Berikut adalah bentuk flowchartnya:

START

Baca LX, X, LY, Y, LZ, Z


Baca dimensi X, Y, Z

LZ=LX+LY-1
DO 10 I=1,LZ
Z(I) = 0.0
DO 30 I=1,LX
DO 20 J=1,LY
K=I+J-1
Z(K)=Z(K)+X(I)*Y(J)

END

Tugas 3 : Membuat flowchart subprogram ricker yang diberikan di bawah ini

10

30

SUBROUTINE RICKER(N,FR,DT,R)
DIMENSION RICK(100),R(100)
PHI=3.14
N1=(N+1)/2
DO 10 I=1,N1
B=(PHI*FR*(I-1)*DT)**2
RICK(I)=(1-2*B)*EXP(-B)
CONTINUE
DO 30 I=1,N1
R(N1+I)=RICK(I)
R(I)=RICK(N1-I+1)
CONTINUE
RETURN
END

Berikut adalah bentuk flowchartnya:

START

Baca N,FR,DT,R
Baca dimensi RICK, R
PHI = 3.14

N1=(N+1)/2
DO 10 I=1,N1
B=(PHI*FR*(I-1)*DT)**2
RICK(I)=(1-2*B)*EXP(-B)
DO 30 I=1, N1
R(N1+I)=RICK(I)
R(I)=RICK(N1-I+I)

END

Tugas 4 : Melihat dari subprogram yang telah diberikan di atas, runninglah


ketiga program tersebut dengan menggunakan compiler Fortran 77
DIMENSION R(100),TR(1500),D(1000),IT(100),TM(1000,100)

11

13
12

22

23
21
20
100
111

10

20

CHARACTER(LEN=50)::NMFL
NMFL='D:/MAG/Lapisan_Miring_Negatif.TXT'
OPEN(UNIT=2,FILE=NMFL)
DT=0.001
N=55
F=40
CALL RICKER(N,F,DT,R)
V=1250
D0=250
DX=15
L=1500
M=32
ALP=-5.0
ALP=ALP*(3.14/180)
DO 11 I=1,M
D(I)=D0+FLOAT(I-1)*DX*SIN(ALP)
IT(I)=IFIX((2*D(I)/V)/DT)
CONTINUE
DO 12 I=1,M
DO 13 J=1,L
TM(J,I)=0.0
IF(J.EQ.IT(I))TM(IT(I),I)=1.0
CONTINUE
CONTINUE
L=1000
K=N+L-1
DO 21 I=1,M
DO 22 J=1,L
D(J)=TM(J,I)
CONTINUE
CALL KONVO(N,R,L,D,K,TR)
DO 23 J=1,K
TM(J,I)=TR(J)
CONTINUE
CONTINUE
DO 20 J=1,K
WRITE(2,100)(TM(J,I),I=1,M)
CONTINUE
FORMAT(40F10.2)
CONTINUE
STOP
END
SUBROUTINE KONVO(LX,X,LY,Y,LZ,Z)
DIMENSION X(1000),Y(1000),Z(1000)
LZ=LX+LY-1
DO 10 I=1,LZ
Z(I)=0.0
CONTINUE
DO 30 I=1,LX
DO 20 J=1,LY
K=I+J-1
Z(K)=Z(K)+X(I)*Y(J)
CONTINUE

30

10

30

CONTINUE
RETURN
END
SUBROUTINE RICKER(N,FR,DT,R)
DIMENSION RICK(100),R(100)
PHI=3.14
N1=(N+1)/2
DO 10 I=1,N1
B=(PHI*FR*(I-1)*DT)**2
RICK(I)=(1-2*B)*EXP(-B)
CONTINUE
DO 30 I=1,N1
R(N1+I)=RICK(I)
R(I)=RICK(N1-I+1)
CONTINUE
RETURN
END

Untuk menampilkan data pada tugas 4 tersebut, digunakan script MatLab seperti di
bawah ini:
ph = importdata('D:/MAG/Lapisan_Miring_Negatif.txt');
dx=0.0;
tt=0:0.001:3.0;
n=1000;
figure;
for i=1:32
for j=1:n
y(j)=ph(j,i);
end;
hold on;
axis ij;
plot(y(1:n)+dx,tt(1:n));
dx=dx+0.75;
end;

Gambar 1. Model Lapisan Miring dengan ( = 5.0)

Gambar 2. Model Lapisan Miring dengan ( =


-5.0)

Tugas 5 : Cari dan tulis rumus perhitungan two way time untuk down dip
survey

x 2 +4 ho2
vo

Tugas 6 : Running main program dengan menggabungkan subprogram


konvolusi dan subprogramricker, dan hasil rekaman dalam format ASCII dan
tampilkan dalam bentuk MatLab

80

10

31
21
20

50

60
40

100

DIMENSION Y(2500,200),NX(500),TX(200),Z(2500)
DIMENSION RC(200),TR(2500),AM(200)
CHARACTER(LEN=60) :: NMFILE
NMFILE='D:/MAG/End_Off_Split.TXT'
DT=0.001
NR=75
FR=40
NJ=2000
ND=24
A=1.0
ALP=10*(3.14/180)
DO 80 I=1,ND
AM(I)=A
A=A-0.025
CONTINUE
V=5000
DX=30
DZ=300
TE=(2*DZ)/V
CALL RICKER(NR,FR,DT,RC)
C DOWN DIP
TX(1)=2*TE
NX(1)=IFIX(TX(1)/DT)
X=0.0
DO 10 I=2,ND
X=X+DX
TX(I)=2*SQRT(TE**2-(TE*X*SIN(ALP)/V)+(X**2/V**2))
NX(I)=IFIX(TX(I)/DT)
CONTINUE
DO 21 I=1,50
DO 31 J=1,NJ
Y(J,I)=0.0
CONTINUE
CONTINUE
DO 20 I=25,2*ND
Y(NX(I-24),I)=AM(I-24)
CONTINUE
DO 40 I=1,2*ND
DO 50 J=1,NJ
Z(J)=Y(J,I)
CONTINUE
CALL KONVO(NJ,Z,NR,RC,JR,TR)
DO 60 J=1,NJ
Y(J,I)=TR(J)
CONTINUE
CONTINUE
OPEN(UNIT=2,FILE=NMFILE)
DO J=1,NJ
WRITE(2,100)(Y(J,I),I=1,2*ND)
FORMAT(50F6.2)
ENDDO

CLOSE(2)
STOP
END

10

20
30

10

30

SUBROUTINE KONVO(LX,X,LY,Y,LZ,Z)
DIMENSION X(1000),Y(1000),Z(1000)
LZ=LX+LY-1
DO 10 I=1,LZ
Z(I)=0.0
CONTINUE
DO 30 I=1,LX
DO 20 J=1,LY
K=I+J-1
Z(K)=Z(K)+X(I)*Y(J)
CONTINUE
CONTINUE
RETURN
END
SUBROUTINE RICKER(N,FR,DT,R)
DIMENSION RICK(100),R(100)
PHI=3.14
N1=(N+1)/2
DO 10 I=1,N1
B=(PHI*FR*(I-1)*DT)**2
RICK(I)=(1-2*B)*EXP(-B)
CONTINUE
DO 30 I=1,N1
R(N1+I)=RICK(I)
R(I)=RICK(N1-I+1)
CONTINUE
RETURN
END

Gambar 3. Model End-Off Split Spread

Tugas 7 : Cari
rumus
perhitungan
time untuk up
survey

dan tulis
two way
dip

Anda mungkin juga menyukai