Anda di halaman 1dari 50

Fisika Komputasi

FISIKA KOMPUTASI

Oleh :
1. Faury Hidayati (8166175005)
2. Irpan Afandi (8166175011)
3. Syarief Saadillah Lubis (8166175021)
4. Zahra Tazkia (8166175022)

PENDIDIKAN FISIKA PASCASARJANA


UNIMED
2017
UJIAN FORMATIF 2 FISIKA KOMPUTASI

Nama : Zahra Tazkia


NIM : 8166175022
M.Kuliah : Fisika Komputasi
Kelas : Fisika Regular A Pasca Sarjana
Dosen : Dr. Makmur Sirait, M.Si

SOAL
1. Jelaskan penyelesaian Persamaan Tak Linear dengan Metode Belah Dua (Bisection), Metode
Newton-Raphson dan Metode Secant
2. Carilah menggunakan metode travezoid dan metode simpson 1/3

dengan jumlah pias N = 8 dengan Matlab


3. Carilah solusi persamaan linier berikut dengan metode Gauss-Jordan ;
X + Y + 4Z = 11
3X + 2Y Z = - 4
5X + 3Y + 2Z = 5
4. Tentukan nilai eigen dan eigen vektor dari matriks berikut:
PENYELESAIAN

1. Penjelasan Persamaan Tak Linear dengan Metode Belah Dua (Bisection), Metode Newton-
Raphson dan Metode Secant.
a) Metode Belah Dua (Bisection)
Metode biseksi merupakan salah satu metode tertutup untuk mentukan solusi akar dari
persamaan non linear atau disebut juga metode pembagian Interval atau metode yang digunakan
untuk mencari akar-akar persamaan nonlinear melalui proses iterasi, dengan prinsip utama
sebagai berikut:
Menggunakan dua buah nilai awal untuk mengurung salah satu atau lebih akar persamaan
non linear.
Nilai akarnya diduga melalui nilai tengah antara dua nilai awal yang ada.
Dimana nilai f(a) dan nilai f(b) memiliki tanda yang berlawanan atau harus memenuhi
persyaratan f(xa) * f(xb) < 0.

Contoh Soal
Tentukan akar persamaan fungsi : f(x) = x2 11x + 24 secara analitis dan numerik.
Cara I : Analitis
Dik. x2 11x + 24
Dit. x1 dan x2?
Dij. Pemfaktoran
f(x) = 0
x2 11x + 24 = 0
(x 8 )(x 3) = 0
x1 =8
x2 =3
Jadi secara analitis diperoleh akar-akar permasaaan fungsi adalah 3 dan 8.
Cara II : Dengan Menggunakan MatLab
Langkah algoritma metode Bisection
Langkah 1
Pilih taksiran nilai a sebagai batas bawah interval dan taksiran nilai b sebagai batas atas interval.
Jika terpenuhi kondisi :
Jika f(a) f(b) < 0 maka interval [a; b] mengandung akar fungsi.
Jika f(a) f(b) > 0 ; maka tidak ada akar dalam interval [a; b], maka geser posisi interval.
Jika f(a) f(b) = 0 ; maka a dan b, salah satu merupakan akar.

Langkah 2
Taksiran akar yang pertama c dimana, c = (a + b )/2

Langkah 3
Evaluasi keberadaan akar, apakah dalam subinterval pertama (antara a dan c ) atau dalam
subinterval kedua (antara c dan b).
Jika diperoleh : f(a) f(c) < 0 ; akar berada dalam subinterval pertama, maka b = c.
selanjutnya ke langkah 4
Jika f(a) f(c) > 0 ; akar berada dalam subinterval ke dua, maka a = c. selanjutnya ke
langkah 4
Jika f(a) f(c) = 0 ; c adalah akar.

Langkah 4
Kembali ke langkah 2 dan proses hingga langkah 3.

Cooding untuk metode belah dua (Bisection)


%METODE BELAH DUA (BISECTION)
%untuk mencari akar persamaan tak linear
clc;clear;
disp ('________________________________________________________');
disp ( ' MENGHITUNG AKAR-AKAR PERSAMAAN DENGAN METODE BISECTION ' );
disp ('NAMA : ZAHRA TAZKIA');
disp ('NIM : 8166175022');
disp ('KELAS : FISIKA REGULAR A 2016 PASCA SARJANA');
disp ('M. KULIAH : FISIKA KOMPUTASI');
disp ('DOSEN : Dr. MAKMUR SIRAIT, M.Si');
disp ('________________________________________________________');
disp (' ')
syms x;
f=input('Masukkan persamaan = ');
a=input('Masukkan batas bawah a = ');
b=input('Masukkan batas atas b = ');
fa=subs(f,x,a);
fb=subs(f,x,b);
if (fa * fb) > 0;
a = input (['Masukkan batas bawah a lain = ']);
b = input (['Masukkan batas atas b lain = ']);
fa =subs(f,x,a);
fb =subs(f,x,b);
else
c = (a + b) / 2 ;
fc = subs(f,x,c);
end
disp ('----------------------------------------------------------------------------------------');
disp (' a b c fa fb fc ');
disp ('----------------------------------------------------------------------------------------');
disp ([a' b' c' fa' fb' fc' ]);
while abs(fc) > 1e-6
if (fa*fc)<0
b=c;
fb = fc ;
else
a=c;
fa = fc ;
end
c = (a + b) / 2;
fc = subs(f,x,c);
disp ([ a' b' c' fa' fb' fc' ]);
end

Langkah-Langkah Menjalankan Program


1. Buka aplikasi matlab dengan menekan double click pada dekstop MatLab

2. Sehingga akan muncul tampilan seperti gambar di bawah


3. Kemudian klik kanan menu File New - M-file
4. Selanjutnya masukkan coding yang telah disediakan ke dalam file yang baru di buka
seperti pada gambar berikut;
5. Kemudian menyimpan file pada work MatLab. Setelah data tersimpan, langkah
selanjutnya adalah menjalankan program.

6. Setelah kita mengklik Debug Run, maka akan muncul tampilan seperti pada gambar di
bawah ini pada MatLab output.
7. Langkah selanjutnya memasukkan persamaan dengan syarat memberikan tanda kutip
pada awal dan akhir persamaan, kemudian memasukkan batas atas dan bawah.
Testing I
Pada testing I, kita belum mengetahui akar persamaan dari fungsi f(x), untuk menetukan
akar persamaan, kita harus memasukkan batas bawah dan batas atas dengan ketentuan
f(a) f(b) < 0 supaya akar fungsi berada pada interval [a; b]. Hal lain yang mesti
diperhatikan adalah, interval [a; b] yang kita masukkan tidak boleh terlalu lebar.
Dari hasil testing I, hanya diperoleh satu akar persamaan dari fungsi f(x) adalah 3.

Testing II
Pada testing II kita sudah mengetahui salah satu akar persamaan dari fungsi f(x), jadi
untuk mencari satu akar lagi, kita dapat memasukkan akar yang sudah diperoleh ke salah
satu batas. Untuk soal ini, kita memasukkan ke batas bawah karena pada saat interval [-1,
4], akar persamaan adalah 3, otomatis, akar yang lainnya di atas 3.
Dari hasil testing II diperoleh akar persamaan lain yaitu 8.
Jadi dengan menggunakan metode belah dua (Bisection) yang berbantuan MatLab, diperoleh
akar persamaan 3 dan 8. Hal ini sama dengan penyelesaian secara analitis.

Beberapa hal yang harus diperhatikan dalam menyelesaikan metode belah dua (Bisection)
dengan MatLab
1. Pada saat testing awal, batas-batas yang dimasukkan harus memenuhi ketentuan f(a) f(b)
< 0 supaya akar fungsi berada pada interval [a; b].
2. Setelah ditentukan batas yang cocok untuk ketentuan f(a) f(b) < 0, kita harus
mempertimbangkan interval batas tersebut, jika batas yang kita gunakan cukup besar,
maka kita harus memasukkan nilai batas yang lain.
3. Jika batas yang kita masukkan masih cukup besar, padahal sudah memasukkan batas
bawah dan atas yang lain maka akan muncul tanda error, jika terjadi hal seperti ini, kita
harus mengulang menjalankan program.
4. Jika sudah diperoleh salah satu akar persamaan, untuk mencari akar persamaan yang lain,
kita harus memasukkan salah satu akar ke dalam batas yang kita gunakan.

Kelebihan metode belah dua (Bisection) dengan MatLab


Mampu menemukan solusi akar persamaan tak linear dengan kata lain selalu konvergen.

Kelemahan metode belah dua (Bisection) dengan MatLab


Metode biseksi hanya dapat dilakukan apabila ada akar persamaan pada interval yang
diberikan.
Jika ada beberapa akar pada interval yang diberikan maka hanya satu akar saja yang dapat
ditemukan.
Memiliki proses iterasi yang banyak sehingga memperlama proses penyelesaian. Tidak
memandang bahwa sebenarnya akar atau solusi yang dicari dekat sekali dengan batas
interval yang digunakan.
Pada saat satu kali menjalankan program, hanya diperoleh satu akar persamaan fungsi.

b) Metode Newton-Raphson
Metode ini berasal dari nama isaac newton dan joseph raphson. Metode ini merupakan
salah satu metode terbuka untuk solusi akar dari persamaan tidak linear, kerja metode ini yaitu
melakukan perhitungan secara berulang-ulang (iterasi) sampai diperoleh nilai akhir yang akurat;
yang tidak lain adalah nilai akar itu sendiri. Adapun prinsip utama metode ini sebagai berikut :
1. Metode ini melakukan pendekatan terhadap kurva f(x) dengan garis singgung (gradient)
pada suatu titik nilai awal.
2. Nilai taksiran selanjutnya adalah titik potong antara garis singgung (gradient) kurva
dengan sumbu x.
Metode Newton Rapshon sering digunakan karena kesederhanaannya dan mempunyai
konvergensi yang cepat terutama bila iterasi dimulai "cukup dekat" dengan akar yang diinginkan.
Namun bila iterasi dimulai jauh dari akar yang dicari, metode ini dapat meleset tanpa peringatan.
Implementasi metode ini biasanya mendeteksi dan mengatasi kegagalan konvergensi.

Contoh Soal
Menentukan akar persamaan fungsi : f(x) = x2 11x + 24 secara analitis dan numerik.
a. Analitis
Dik. x2 11x + 24
Dit. x1 dan x2?
Dij. Pemfaktoran
f(x) = 0
x2 11x + 24 = 0
(x 8 )(x 3) = 0
x1 =8
x2 =3
Jadi secara analitis diperoleh akar-akar permasaaan fungsi adalah 3 dan 8.

b. Dengan menggunakan MatLab


Algoritma
1. Mulai
2. Menentukan nilai Toleransi. TOL = 0.000001
3. Menentukan maksimum iterasi. maxstep = 50
4. Input nilai awal x
5. Proses iterasi
for i = 1 : maxstep
[fx f1x] fnr(x);
dfx/f1x;
x0x;
xx-d;
Cetak i, x0, x, d
if (abs (d)<TOL)
Cetak Akar telah diperoleh
break;
end
end
if(i>=maxstep)
Cetak gagal memperoleh akar
end
6. Stop

Cooding untuk metode Newton Raphson


% PROGRAM METODE NEWTON - RAPHSON
%untuk mencari akar persamaan tak linear
clc;clear;
disp ('________________________________________________________');
disp ('MENGHITUNG AKAR-AKAR PERSAMAAN DENGAN METODE NEWTON- RAPHSON ' );
disp ('NAMA : ZAHRA TAZKIA');
disp ('NIM : 8166175022');
disp ('KELAS : FISIKA REGULAR A 2016 PASCA SARJANA');
disp ('M. KULIAH : FISIKA KOMPUTASI');
disp ('DOSEN : Dr. MAKMUR SIRAIT, M.Si');
disp ('________________________________________________________');

format long
fx = input('Isikan persamaan tak linearnya (string) : ');
x0 = input('Isikan nilai awal : ');
maks = input('Isikan maksimum iterasinya : ');
tol = input('Isikan toleransinya : ');
iter=0;
h=0.5;

fprintf('======================================================\n');
fprintf('iter x f(x) df(x) galat\n');
fprintf('======================================================\n');
while iter<maks
f=inline(fx);
fun=f(x0);
fak = (f(x0+h)-f(x0-h))/(2*h);
Es=abs((x0-fun/fak)-x0)/abs(x0-fun/fak);
if fak==0
break
elseif Es<tol
akar=x0-fun/fak;
break
else
x0=x0-fun/fak;
end
fprintf('%3d %3.6f %3.6f %3.6f %3.6f\n',iter+1,x0,fun,fak,Es);
iter=iter+1;
end
akar=x0;
func=f(akar);
%grafik fungsi (x0)
t=-10:10;
z=f(t);
plot(t,z),title('Grafik fungsi (x)');
grid on;
fprintf('======================================================\n');
fprintf(1,' Akarnya : %10.5f \n',akar) ;
fprintf(1,' dengan toleransi : %10.5f \n',tol) ;
fprintf(1,' dan pada iterasi ke : %10g \n',iter) ;

Langkah-Langkah Menjalankan Program


1. Buka aplikasi matlab dengan menekan double click pada dekstop MatLab

2. Sehingga akan muncul tampilan seperti gambar di bawah

3. Kemudian klik kanan menu File New - M-file


4. Selanjutnya masukkan coding yang telah disediakan ke dalam file yang baru di buka
seperti pada gambar berikut;
5. Kemudian menyimpan file pada work MatLab. Setelah data tersimpan, langkah
selanjutnya adalah menjalankan program.
6. Setelah kita mengklik Debug Run, maka akan muncul tampilan seperti pada gambar di
bawah ini pada MatLab output.

7. Langkah selanjutnya adalah memasukkan data input untuk persamaan tak linear f(x) = x 2
11x + 24, kemudian memasukkan nilai awal, iterasi maksimum dan toleransinya,
kemudian di klik enter sehingga akan muncul dua output, output pertama dalam bentuk
iterasi dan output kedua dalam bentuk grafik.

Testing I
Pada testing I, nilai awal yang dimasukkan bebas atau titik sembarang, begitu juga
dengan iterasi maksimum dan toleransi.
Pada testing 1, diperoleh satu akar persamaan yaitu 3 pada iterasi ke 4.

Dari grafik terlihat akar persamaan dari f(x) = x2 11x + 24 adalah 3 dan 8.

Testing II
Pada testing II, dimasukkan nilai awal yang berbeda, hal ini supaya kita memperoleh akar
persamaan yang lain dalam bentuk iterasi.
Pada testing II diperoleh akan persamaan yang lain yaitu 8 pada iterasi ke 4.

Grafik yang dihasilkan pada testing 1 dan testing 2 sama


.
Jadi dengan menggunakan metode Newton-Raphson yang berbantuan MatLab, diperoleh akar
persamaan 3 dan 8. Hal ini sama dengan penyelesaian secara analitis.
Beberapa hal yang harus diperhatikan dalam menyelesaikan metode Newton-Raphson
dengan MatLab
1. Nilai awal yang dimasukkan pada testing 1 dengan testing kedua sebaiknya berlawanan
dengan maksud salah satu nilai awal pada salah satu testing dimasukkan nilai awal yang
kecil dan salah satu testing lagi masukkan nilai awal yang besar atau sebaliknya. Hal ini
mempermudah menemukan akar persamaan fungsi.

Kelebihan metode Newton-Raphson dengan MatLab


Mampu menemukan solusi akar persamaan tak linear dengan kata lain selalu konvergen.
Dengan satu kali testing, kita dapat mengetahui kedua akar persamaan fungsi yang dilihat
pada output grafik.
Hasil akar persamaan dalam bentuk iterasi dan mendekati dengan nilai awal yang
dimasukkan.

Kelemahan metode Newton-Raphson dengan MatLab


Pada saat satu kali menjalankan program, hanya diperoleh satu akar persamaan fungsi
pada output iterasi.

c) Metode Secant
Metode Secant adalah metode pencarian akar yang merupakan modifikasi dari metode
Newton-Raphson. Metode Secant merupakan salah satu metode terbuka untuk menentukan
solusi akar persamaan non linear, dengan prinsip utama sebagai berikut;
Metode ini melakukan pendekatan terhadap kurva f(x) dengan garis Secant yang
ditentukan oleh 2 titik terakhir.
Nilai taksiran akar selanjutnya adalah titik potong antara garis Secant dengan sumbu x

Contoh Soal
Menentukan akar persamaan fungsi : f(x) = x2 11x + 24 dengan menggunakan MatLab.
Dengan Menggunakan MatLab
Algoritma
Adapun langkah langkah penyelesaian persamaan tak linear dengan menggunakan
metode secant dalam aplikasi Matlab, yaitu :
1. Input f(x), nilai tebakan awal x0 dan x1, serta galat atau iterasi maks.
2. Cek, jika nilai f(x0) atau f(x1) < 0 atau f(x0) atau f(x1) = 0 maka salah satu dari nilai
tebakan awal merupakan nilai akar atau akar hampiran. Jika tidak lanjutkan ke langkah
berikutnya.
3. Tentukan nilai xi+1 = xi - [ (f(xi)*(xi - xi-1 )) / (f(xi) - f(xi-1)) ].
4. Cek konvergensi, jika iterasi = iterasi maksimum (soal), atau galat < galat soal (mutlak
maupun relatif).

Cooding untuk metode Secant


% PROGRAM METODE SECANT
%untuk mencari akar persamaan tak linear
clc;clear;

disp ('________________________________________________________');
disp ( ' MENGHITUNG AKAR-AKAR PERSAMAAN DENGAN SECANT ' );
disp ('NAMA : ZAHRA TAZKIA');
disp ('NIM : 8166175022');
disp ('KELAS : FISIKA REGULAR A 2016 PASCA SARJANA');
disp ('M. KULIAH : FISIKA KOMPUTASI');
disp ('DOSEN : Dr. MAKMUR SIRAIT, M.Si');
disp ('________________________________________________________');
%Metode Secant
%Dipakai jika fungsi sulit derivatifnya
%Memerlukan dua nilai x sebagai nilai awal
%output
xa=input('Masukkan nilai awal x ke 1=');
xb=input('Masukkan nilai awal x ke 2=');
TOL=0.00001;
maxstep=50;
disp(' Loop x1 x2 x3 d');
for i=1:maxstep
fx=fn(xa);
fx1=fn(xb);
d=fx1*(xb-xa)/(fx1-fx);
x=xa;
xa=xb;
xb=xa-d;
fprintf('\n %3d %10.6f %10.6f %10.6f %13.6f',i,x,xa,xb,d);
if(abs(d)<TOL)
fprintf('\Akar pada iterasi ke %d adalah %g',i,xb);
break;
end
end
if (i >= maxstep)
fprintf('gagal mencapai akar hingga iterasi ke -%g',i);
end
%kurve
fplot('fn',[0,11]);grid on;
xlabel('x');ylabel('y');
title ('Kurve fungsi kuadrat');
Langkah-Langkah Menjalankan Program
1. Buka aplikasi matlab dengan menekan double click pada dekstop MatLab

2. Sehingga akan muncul tampilan seperti gambar di bawah

3. Kemudian klik kanan menu File New - M-file


4. Selanjutnya masukkan coding yang telah disediakan ke dalam file yang baru di buka
seperti pada gambar berikut;
5. Kemudian menyimpan file pada work MatLab. Kemudian di file baru masukkan
persamaan fungsinya dan menyimpan tanpa mengubah nama file
6. Setelah data tersimpan, langkah selanjutnya adalah menjalankan program.

7. Setelah kita mengklik Debug Run, maka akan muncul tampilan seperti pada gambar di
bawah ini pada MatLab output.

8. Langkah selanjutnya adalah memasukkan data input untuk persamaan tak linear f(x) = x 2
11x + 24, kemudian memasukkan nilai awal ke x1 dan nilai awal ke x2, kemudian di
klik enter sehingga akan muncul dua output, output pertama dalam bentuk iterasi dan
output kedua dalam bentuk grafik.
Kelebihan metode Secant dengan MatLab
Mampu menemukan solusi akar persamaan tak linear.
Dengan metode Secant dalam satu kali testing langsung diperoleh iterasi dan bentuk
kurvanya.
Kelemahan metode Newton-Raphson dengan MatLab
Tidak terlihat secara jelas akar persamaan fungsi.
2. Solusi untuk menyelesaikan persamaan dengan menggunakan

metode travezoid dan metode simpson 1/3 dengan jumlah pias N = 8 dengan Matlab

a. Metode Travezoid
b. Metode Simpson 1/3
Analitis
2 2
1 4 2 3
( x 2 x 5 )dx
3 2
x x 5x
1
4 3 1

2
1 2 1 2
(x
3
2 x 2 5 )dx ( 2) 4 (2) 3 5( 2) (1) 4 (1) 3 5(1)
1 4 3 4 3

2
16 1 2
(x
3
2 x 2 5 )dx 4 10 5
1 3 4 3
2

(x
3
2 x 2 5 )dx 13.3
1

Menggunakan MatLab
Algoritma
Algoritma Metode Integrasi Simpson adalah:
1) Definisikan y=f(x)
2) Tentukan batas bawah (a) dan batas atas integrasi (b)
3) Tentukan jumlah pembagi m
4) Hitung h=(b-a)/2m
n n
h
5) Hitung L 2 ( f 0 4 f i 2 f i f n )
i ganjil i genap

Flowchart
Mulai

Definisikan f(x) batas


integrasi (a,b) nilai sub
interval (m)

Hitung nilai h

Hitung nilai x1 dan s1

Hitung nilai x2 dan s2

Hitung nilai Integrasi s

Selesai

Cooding untuk metode Simpson


%Menghitung intergral dari persamaan f(x) dengan metode simpson
clc;
clear

disp ('________________________________________________________');
disp ( ' MENENTUKAN INTEGRAL DENGAN METODE SIMPSON ' );
disp ('NAMA : ZAHRA TAZKIA');
disp ('NIM : 8166175022');
disp ('KELAS : FISIKA REGULAR A 2016 PASCA SARJANA');
disp ('M. KULIAH : FISIKA KOMPUTASI');
disp ('DOSEN : Dr. MAKMUR SIRAIT, M.Si');
disp ('________________________________________________________');
disp (' ')

%input
syms x;
f=input('masukkan fungsi persamaan f(x)= ');
a=input('Batas bawah= ');
b=input('Batas atas= ');
n=input('Banyaknya segmen/interval= ');
analitik=input('Hasil penghitungan analitik= ');

%proses
h=(b-a)/n;
t=a;
fa=subs(f,x,a);
fb=subs(f,x,b);
sum1=0;
sum2=0;
for i=1:(n-1)
t=t+h;
if mod(i,2)~=0
ganjil=subs(f,x,t);
genap=0;
else
genap=subs(f,x,t);
ganjil=0;
end
sum1=sum1+ganjil;
sum2=sum2+genap;
end

%output
disp('Luas hasil penghitungan metode simpson 1/3=')
disp(h/3*(fa+4*sum1+2*sum2+fb))
disp(' ');
disp('Error antara penghitungan analitik dengan metode simpson 1/3=')

Langkah-Langkah Menjalankan Program


1. Buka aplikasi matlab dengan menekan double click pada dekstop MatLab

2. Sehingga akan muncul tampilan seperti gambar di bawah


3. Kemudian klik kanan menu File New - M-file
4. Selanjutnya masukkan coding yang telah disediakan ke dalam file yang baru di buka
seperti pada gambar berikut;
5. Kemudian menyimpan file pada work MatLab. Setelah data tersimpan, langkah
selanjutnya adalah menjalankan program.
6. Setelah kita mengklik Debug Run, maka akan muncul tampilan seperti pada gambar di
bawah ini pada MatLab output.

9. Langkah selanjutnya adalah memasukkan persamaan, batas bawah, batas atas, jumlah
segmen dan hasil analitis integral yang diperoleh. Untuk lebih jelas ditampilkan seperti
gambar

10. Untuk menghasilkan output maka langkah selanjutnya menng klik enter sehingga
diperoleh hasil dengan MatLab seperti berikut
3. Solusi persamaan linier dengan metode Gauss-Jordan ;
X + Y + 4Z = 11
3X + 2Y Z = - 4
5X + 3Y + 2Z = 5

a. Analitis Persamaan Linier Metode Gauss-Jordan

, sehingga :

, sehingga :
, sehingga :

, sehingga :

, sehingga :

, sehingga :

, sehingga :

Maka secara analitis diperoleh bahwa dari setiap baris yaitu :


b. Dengan menggunakan MatLab
Algoritma
% Program untuk melakukan eliminasi Gauss Jordan
% n = dimensi matriks
% a = elemen matriks koefisien
% b = elemen ruas kanan
clear;
clc;

disp ('________________________________________________________');
disp ( ' SOLUSI PERSAMAAN DENGAN METODE GAUSS JORDAN ' );
disp ('NAMA : ZAHRA TAZKIA');
disp ('NIM : 8166175022');
disp ('KELAS : FISIKA REGULAR A 2016 PASCA SARJANA');
disp ('M. KULIAH : FISIKA KOMPUTASI');
disp ('DOSEN : Dr. MAKMUR SIRAIT, M.Si');
disp ('________________________________________________________');

a = input('Masukkan elemen matriks a:');


b = input('Elemen vektor ruas kanan b:');
n = length(b);
display('Elemen matriks');a
display('Elemen ruas kanan');b
vb=(1:n);
for kol=1:n
for bar=1:n
if(kol==bar)
%proses vipoting
ib = vb(kol);
maxi = abs(a(ib,kol));
i = kol;
ibx = ib;
for bars=i+1:n
ib=vb(bars);
if(abs(a(ib,kol)))>maxi
maxi = abs(a(ib,kol));
i = bars;
ibx =ib;
end
end
ib = vb(kol);
vb(kol)=ibx;
vb(i)= ib;
else
% proses eliminasi
ib = vb(bar);
ibx = vb(kol);
m = -a(ib,kol)/a(ibx,kol);
for j=kol:n
a(ib,j)= a(ib,j)+m*a(ibx,j);
end
b(ib)= b(ib)+m*b(ibx);
end
end
end
%nilai elemen X
for i=1:n
ib = vb(i);
x(i) = b(ib)/a(ib,i);
end
display('Nilai-nilai x');
x

Langkah-Langkah Menjalankan Program


1. Buka aplikasi matlab dengan menekan double click pada dekstop MatLab

2. Sehingga akan muncul tampilan seperti gambar di bawah


3. Kemudian klik kanan menu File New - M-file
4. Selanjutnya masukkan coding yang telah disediakan ke dalam file yang baru di buka
seperti pada gambar berikut;
5. Kemudian menyimpan file pada work MatLab. Setelah data tersimpan, langkah
selanjutnya adalah menjalankan program.

6. Setelah kita mengklik Debug Run, maka akan muncul tampilan seperti pada gambar di
bawah ini pada MatLab output.

7. Langkah selanjutnya adalah memasukkan data input sesuai dengan soal, seperti pada
gambar di bawah ini.
8. Setelah semua elemen matriks ruas kanan dan kiri dituliskan maka klik enter, sehingga
tampil seperti gambar di bawah ini.

Hasil penyelesaian persamaan X + Y + 4Z = 11, 3X + 2Y Z = - 4 dan 5X + 3Y + 2Z = 5 dengan


menggunakan metode Gauss Jordan yang diselesaikan dengan MatLab adalah X =
0.99999999999999, Y= -2.00000000000000, dan Z= 3.00000000000000.
4. Menetukan nilai eigen dan vektor eigen dari matriks berikut:

a. Analitis Nilai Eigen Dengan Cara Analitis


Nilai eigen merupakan nilai karakteristik suatu matriks. ditulis sebagai:

Ax = x

di mana A suatu matriks persegi (n,n), x merupakan vektor (n,1), dan merupakan nilai eigen

dari matriks A. Nilai eigen matriks A dapat dicari dengan

Axx = 0

(A)x = 0

Dari soal diberikan matriks 3x3 berikut:

Misalkan matriks itu adalah A matriks 3x3 dan vektor x, maka:

Berdasarkan persamaan (A)x = 0 dapat dituliskan

Untuk mencari nilai yang sesuai, terlebih dahulu dihitung determinan dari (A)

dengan metode Sarrus (khusus matriks 3x3) atau ekspansi kofaktor. Menggunakan ekspansi

kofaktor baris pertama, diperoleh


= + 2 + 33 15 adalah polinomial karakteristik matriks A
3 2

Berdasarkan persamaan (A)x = 0, diketahui jika x tidak nol maka A harus sama

dengan nol. Hal ini berarti det(A) = 0. Dengan demikian, diperoleh persamaan

3 + 22+ 33 15 = 0

Dengan pemfaktoran, diperoleh ketiga nilai eigen yaitu = -5,07 ; = 6,6 ; = 0,44.

b. Dengan menggunakan MatLab


Algoritma
% Polinomial Karakteristik dan Nilai Eigen
clc;
clear all;
disp ('________________________________________________________');
disp ( ' MENENTUKAN NILAI EIGEN DAN VEKTOR EIGEN ' );
disp ('NAMA : ZAHRA TAZKIA');
disp ('NIM : 8166175022');
disp ('KELAS : FISIKA REGULAR A 2016 PASCA SARJANA');
disp ('M. KULIAH : FISIKA KOMPUTASI');
disp ('DOSEN : Dr. MAKMUR SIRAIT, M.Si');
disp ('________________________________________________________');
disp (' ')
A=input('Mariks A = ');
disp('Matriks A =');
disp(A);
dA=det(A);
[ba,ka]=size(A);
syms L;
for j=1:ka
for i=1:ba
C=A-L*eye(ba);
end
end
disp(C);
disp('polinomial karakteristik matriks A=');
disp(det(C));
disp('nilai eigen matriks A=');
disp(eig(A));
[V D]=eig(A)

Langkah-Langkah Menjalankan Program


1. Buka aplikasi matlab dengan menekan double click pada dekstop MatLab
2. Sehingga akan muncul tampilan seperti gambar di bawah

3. Kemudian klik kanan menu File New - M-file


4. Selanjutnya masukkan coding yang telah disediakan ke dalam file yang baru di buka
seperti pada gambar berikut
5. Kemudian menyimpan file pada work MatLab. Setelah data tersimpan, langkah
selanjutnya adalah menjalankan program

6. Setelah kita mengklik Debug Run, maka akan muncul tampilan seperti pada gambar di
bawah ini pada MatLab output.
7. Untuk memproses data matriks yang dimasukkan maka klik enter sehingga akan
tertampil nilai eigen dan vektor eigen seperti gambar.

Jadi hasil nilai eigen matriks A dengan menggunakan MatLab adalah


- 5.07892906042201 0 0 - 5.07892906042201
nilai A 0 6.63372221808682 0 6.63372221808682
0 0 0.44520684233519 0.44520684233519
sedangkan vektor eigen matriks A dengan menggunakan MatLab adalah
0.62885544454119 - 0.76496152529011 - 0.42874549315371
V - 0.73042192607897 - 0.41176948 629690 - 0.36304094706102
- 0.26650448359078 - 0.49525726141129 0.82727176481337

Anda mungkin juga menyukai