BUKU PANDUAN LABORATORIUM S1 MATEMATIKA

BUKU PANDUAN LABORATORIUM S1 MATEMATIKA
PRAKTIKUM ANALISIS NUMERIK

NAMA

:

NIM

:

KELOMPOK

:

ASISTEN

: 1.
2.

DEPARTEMEN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
2016

BUKU PANDUAN LABORATORIUM S1 MATEMATIKA
PRAKTIKUM ANALISIS NUMERIK

NAMA

:

NIM

:

KELOMPOK :
ASISTEN

: 1.
2.


KONTRAK PERKULIAHAN
KEHADIRAN

: 15%

KUIS

: 15%

TUGAS

: 20%

UTS

: 20%

UAS


: 30%

DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
2016

ABSENSI PRAKTIKUM ANALISIS NUMERIK

Nama :
NIM

Pertemuan

:

Hari / Tgl

Judul


Paraf
Asisten Pertama Asisten Kedua

Diketahui Kepala Laboratorium
S1 Matematika FMIPA USU

Medan,
Asisten Lab

2016

Dr. Suyanto, M.Kom
Nip. 19590813198601 1 002

……………………………

DAFTAR ISI

Bab I


METODE BISEKSI

1

Bab II

METODE REGULA FALSI

4

Bab III

METODE NEWTON RAPHSON

7

Bab IV

METODE SECANT


10

Bab V

METODE INTEGRASI REIMANN

13

Bab VI

METODE INTEGRASI TRAPEZOIDA

16

Bab VII

METODE INTEGRASI SIMPSON

19


BAB I
METODE BISEKSI

Metode Biseksi dapat digunakan untuk menyelesaikan persamaan non-linier.
Penyelesaian persamaan non-linier adalah penentuan akar-akar persamaan non-linier, dimana
akar sebuah persamaan 𝑓 𝑥 = 0 adalah nilai-nilai 𝑥 yang menyebabkan nilai 𝑓(𝑥) sama
dengan nol. Dengan kata lain, akar persamaan 𝑓(𝑥) adalah titik potong antara kurva 𝑓(𝑥) dan
sumbu 𝑥.

Metode Biseksi ini membagi range menjadi 2 bagian. Dari dua bagian ini, dipilih
bagian yang mengandung akar dan yang tidak mengandung akar, dibuang. Hal ini dilakukan
berulang-ulang hingga diperoleh akar persamaan.
Algoritma Metode Biseksi:
1.
2.
3.
4.
5.

Definisikan fungsi 𝑓(𝑥).

Tentukan batas bawah (a) dan batas atas (b).
Tentukan toleransi error atau iterasi maksimum.
Hitung 𝑓(𝑎) dan 𝑓(𝑏).
Jika 𝑓 𝑎 ∗ 𝑓(𝑏) > 0 maka proses dihentikan karena tidak ada akar, bila tidak
dilanjutkan ke langkah selanjutnya.

6. Hitung 𝑥 =

𝑎+𝑏
2

7. Hitung 𝑓(𝑥).
8. Bila 𝑓(𝑥) ∗ 𝑓(𝑎) < 0 maka 𝑏 = 𝑥 dan 𝑓(𝑏) = 𝑓(𝑥), bila tidak 𝑎 = 𝑥 dan
𝑓(𝑎) = 𝑓(𝑥).
9. Jika |𝑏 − 𝑎| < 𝑒 atau iterasi > iterasi maksimum, maka peroses dihentikan dan
didapatkan akar = 𝑥, dan bila tidak ulangi langkah ke-6.

Contoh:

Selesaikan persamaan 𝑥𝑒 −𝑥 + 1 = 0. Dengan menggunakan range 𝑥 = [−1,0].


iterasi
a
b
f(a)
1
-1
0 -1.7182818
2
-1
-0.5 -1.7182818
3
-0.75
-0.5
-0.58775
4
-0.625
-0.5 -0.1676537
5
-0.625

-0.5625 -0.1676537
6
-0.59375
-0.5625 -0.0751424
7
-0.578125
-0.5625 -0.0306192
8
-0.5703125
-0.5625
-0.00878
9
-0.5703125 -0.5664063
-0.00878
10
-0.5683594 -0.5664063 -0.0033637
Akar persamaan diperoleh di x = -0.5673828

f(b)


1
0.1756394
0.1756394
0.1756394
0.0127818
0.0127818
0.0127818
0.0127818
0.0020354
0.0020354

1 Modul Praktikum Analisis Numerik S1 Matematika

x

-0.5
-0.75
-0.625
-0.5625
-0.59375
-0.578125
-0.5703125
-0.5664063
-0.5683594
-0.5673828

f(x)
0.17563936
-0.58775
-0.1676537
0.01278176
-0.0751424
-0.0306192
-0.00878
0.00203538
-0.0033637
-0.000662

Program 1.1
clc;
f = inline ('x*exp(-x)+1');
a = input ('Input batas bawah(a) : ');
b = input ('Input batas atas(b) : ');
error = input ('Input toleransi error : ');
iterasi = 1;
disp('-----------------------------------------------------');
disp(' i
a
b
f(a)
f(b)
x
f(x)');
disp('-----------------------------------------------------');
if f(a)*f(b) > 0
disp ('Tidak ada akar!!!');
else
while abs(b-a)>error
x = (a+b)/2;
disp (sprintf('%3g %10.7f %10.7f %10.7f
%10.7f %10.7f',iterasi,a,b,f(a),f(b),x,f(x)))

%10.7f

if f(x)*f(a) 0
disp ('Tidak ada akar!!!');
else
while (abs(fx) > e)
iterasi = iterasi+1;
x = ((f(b)*a)-(f(a)*b))/(f(b)-f(a));
fx = f(x);
disp (sprintf('%3g %10.7f %10.7f %10.7f
%10.7f %10.7f',iterasi,a,b,f(a),f(b),x,fx))

%10.7f

if f(a)*fx < 0
b = x;
else
a = x;
end
end
end
disp (sprintf('Akar persamaan diperoleh di x = %10.7f',x));

5 Modul Praktikum Analisis Numerik S1 Matematika

Latihan
1. Buatlah sebuah program MATLAB dengan memodifikasi program 2.1.
2. Buatlah sebuah program MATLAB menggunakan Metode Regula Falsi dengan kasus
yang berbeda.

NILAI

6 Modul Praktikum Analisis Numerik S1 Matematika

PARAF

BAB III
METODE NEWTON RAPHSON

Metode Newton Raphson adalah metode pendekatan yang menggunakan satu titik
awal dan mendekatinya dengan memperhatikan gradient pada titik tersebut. Titik pendekatan
𝑛 + 1 dituliskan dengan:
𝑥𝑛+1 = 𝑥𝑛 −

Algoritma Metode Newton Raphson:

𝑓(𝑥𝑛 )
𝑓 ′ (𝑥𝑛 )

Definisikan fungsi 𝑓(𝑥) dan 𝑓′(𝑥).
Tentukan toleransi error atau iterasi maksimum (N).
Tentukan nilai pendekatan awal 𝑥0 .
Hitung 𝑓(𝑥𝑜 ) dan 𝑓′(𝑥𝑜 )
Untuk iterasi i=1 sampai denga N
𝑓(𝑥𝑖 )
𝑥𝑖+1 = 𝑥𝑖 − ′
𝑓 (𝑥𝑖 )
6. Akar persamaan adalah 𝑥𝑖 yang terakhir diperoleh.
1.
2.
3.
4.
5.

Contoh:
Selesaikan persamaan 𝑥 − 𝑒 −𝑥 = 0 dengan titik pendekatan awal𝑥0 = 0.

𝑓 𝑥 = 𝑥 − 𝑒 −𝑥

𝑓 ′ 𝑥 = 1 + 𝑒 −𝑥

iterasi
x
0
0
1
0.5
2
0.566311
3
0.5671432
Akar persamaan diperoleh di x = 0.5671432

f(x)
-1
-0.1065307
-0.0013045
-0.0000002

7 Modul Praktikum Analisis Numerik S1 Matematika

f’(x)
2
1.6065307
1.5676155
1.5671434

Program 3.1
clc;
f = inline ('x-exp(-x)');
g = inline ('1+exp(-x)');
x = input ('Input nilai pendekatan awal : ');
N = input ('Input banyak iterasi : ');
disp('---------------------------------------');
disp(' i
x
f(x)
g(x)');
disp('---------------------------------------');
fx = f(x);
gx = g(x);
for i=0:N
disp (sprintf('%3g
x=x-(f(x)/g(x));
fx=f(x);
gx=g(x);

%10.7f

%10.7f

%10.7f',i,x, fx, gx));

for j=i+1:N+1
x1=x-(f(x)/g(x));
end
end
disp (sprintf('Akar persamaan diperoleh di x = %10.7f',x));

8 Modul Praktikum Analisis Numerik S1 Matematika

Latihan
1. Buatlah sebuah program MATLAB dengan memodifikasi program 3.1.
2. Buatlah sebuah program MATLAB menggunakan Metode Newton Raphson dengan
kasus yang berbeda.

NILAI

9 Modul Praktikum Analisis Numerik S1 Matematika

PARAF

BAB IV
METODE SECANT

Metode Secant merupakan perbaikan dari Metode Regula Falsi dan Newton Raphson.
Dimana kemiringan dua titik dinyatakan secara diskrit, dengan mengambil bentuk garis lurus
yang melalui satu titik.

Algoritma Metode Secant:

𝑥𝑛+1 = 𝑥𝑛 − 𝑦𝑛

𝑥𝑛 − 𝑥𝑛 +1
𝑦𝑛 − 𝑦𝑛+1

Definisikan fungsi 𝑓(𝑥).
Tentukan toleransi error atau iterasi maksimum.
Tentukan dua nilai pendekatan awal yang diantaranya terdapat akar yaitu 𝑥0 dan 𝑥1 .
Hitung 𝑓(𝑥𝑜 ) dan 𝑓(𝑥1 ) sebagai 𝑦0 dan 𝑦1 .
Untuk iterasi i=1 sampai denga |𝑓 𝑥𝑖 < 𝑒
𝑥𝑖 − 𝑥𝑖−1
𝑥𝑖+1 = 𝑥𝑖 − 𝑦𝑖
𝑦𝑖 − 𝑦𝑖−1
6. Akar persamaan adalah 𝑥 yang terakhir diperoleh.
1.
2.
3.
4.
5.

Contoh:
Selesaikan persamaan 𝑥 2 − 𝑥 + 1 𝑒 −𝑥 = 0

Diketahui bahwa akar terletak pada range 𝑥 = [0.8,0.9]

Maka ambil 𝑥0 = 0.8 dan 𝑥1 = 0.9 sehingga:
𝑦0 = 𝑓 𝑥0 = −0.1687921

𝑦1 = 𝑓 𝑥1 = 0.0375176

iterasi
X
1
0.8818149
2
0.8825283
3
0.8825342
Akar persamaan diperoleh x = 0.8825342

10 Modul Praktikum Analisis Numerik S1 Matematika

f(x)
-0.0015318
-1.275E-05
4.412E-09

Program 4.1
clc;
f = inline ('(x*x)-(x+1)*exp(-x)');
x0 = input ('Input nilai x0 : ');
x1 = input ('Input nilai x1 : ');
error = input ('Input toleransi error : ');
iterasi = 1;
disp('---------------------------');
disp(' i
x
f(x)');
disp('---------------------------');
while abs (f(x1)) > error
x = x1-f(x1)*(x1-x0)/(f(x1)-f(x0));
disp (sprintf('%3g %10.7f %10.7f %10.7f \n', iterasi,
x, f(x)));
x0=x1;
x1=x;
iterasi = iterasi+1;
end
disp (sprintf('Akar persamaan diperoleh di x = %10.7f',x));

11 Modul Praktikum Analisis Numerik S1 Matematika

Latihan
1. Buatlah sebuah program MATLAB dengan memodifikasi program 4.1.
2. Buatlah sebuah program MATLAB menggunakan Metode Secant dengan kasus yang
berbeda.

NILAI

12 Modul Praktikum Analisis Numerik S1 Matematika

PARAF

BAB V
METODE INTEGRASI REIMANN

Metode Integral Reimann ini merupakan metode integral yang digunakan dalam
kalkulus dan didefinisikan sebagai:
𝑏
𝑎

𝑓 𝑥 𝑑𝑥 = 𝑕

𝑛
𝑖=0

𝑓 𝑥𝑖

Pada metode ini, luasan yang dibatasi oleh 𝑦 = 𝑓(𝑥) dan sumbu 𝑥 dibagi menjadi N bagian
pada range 𝑥 = [𝑎, 𝑏]yang akan dihitung.
Algoritma Metode Integral Reimann:

Definisikan fungsi 𝑓(𝑥).
Tentukan batas bawah (a) dan batas atas (b).
Tentukan jumlah pembagi area N.
Hitung
𝑏−𝑎
𝑕=
𝑁
5. Hitung

1.
2.
3.
4.

𝐿=𝑕

𝑁

𝑖=0

𝑓 𝑥𝑖

Contoh:
Hitung luas yang dibatasi 𝑦 = 𝑥 2 dan sumbu 𝑥 untuk range 𝑥 = [0,1].

Dengan N=10, maka
𝑕=

1−0
= 0.1
10

diperoleh tabel:
x
0
0.1
0.2
f(x) 0
0.01
0.04
Sehingga dapat dihitung:

0.3
0.09

0.4
0.16

0.5
0.25

0.6
0.36

0.7
0.49

0.8
0.64

0.9
0.81

𝐿=𝑕 𝑁
𝑖=0 𝑓 𝑥𝑖
= 0.1 (0 + 0.01 + 0.04 + 0.09 + 0.16 + 0.25 + 0.36 + 0.49 + 0.64 + 0.81 + 1
= 0.1 3.85
= 0.385
13 Modul Praktikum Analisis Numerik S1 Matematika

1
1

Program 5.1
clc;
f = inline('x*x');
a = input ('Input batas bawah(a) : ');
b = input ('Input batas atas(b) : ');
N = input ('Input jumlah pembagi area(N) : ');
h = (b-a)/N;
luas = f(a);
for i=1:N
x=a+(i*h);
fx=f(x);
luas = luas + fx;
end
total = h*luas;
disp(sprintf('\n Luas: %10.7f', total));

14 Modul Praktikum Analisis Numerik S1 Matematika

Latihan
1. Buatlah sebuah program MATLAB dengan memodifikasi program 5.1.
2. Buatlah sebuah program MATLAB menggunakan Metode Integrasi Reimann dengan
kasus yang berbeda.

NILAI

15 Modul Praktikum Analisis Numerik S1 Matematika

PARAF

BAB VI
METODE INTEGRASI TRAPEZOIDA

Pada Metode Integral Reimann, setiap daerah bagian dinyatakan sebagai empat
persegi panjang dengan tinggi 𝑓(𝑥) dan lebar 𝑥. Sedangkan pada Metode Trapezoida ini,
setiap bagian dinyatakan sebagai trapesium.
Algoritma Metode Integral Reimann:
Definisikan fungsi 𝑓(𝑥).
Tentukan batas bawah (a) dan batas atas (b).
Tentukan jumlah pembagi area N.
Hitung
𝑏−𝑎
𝑕=
𝑁
5. Hitung

1.
2.
3.
4.

𝑕
𝐿 = (𝑓0 + 2
2

𝑁−1
𝑖=1

𝑓𝑖 + 𝑓𝑛 )

Contoh:
Hitung

1
2𝑥 3 𝑑𝑥
0

Dengan N=10, maka
𝑕=

1−0
10

= 0.1

diperoleh tabel:
x
0
0.1
f(x)
0
0.002

0.2
0.016

0.3
0.054

0.4
0.128

0.5
0.25

0.6
0.432

0.7
0.686

0.8
1.024

0.9
1.458

1
2

Sehingga dapat dihitung
𝑕

𝐿 = (𝑓0 + 2
2

𝑁−1
𝑖=1 𝑓𝑖

+ 𝑓𝑛 )

0.1
{0 + 2(0 + 0.002 + 0.016 + 0.054 + 0.128 + 0.25 + 0.432 + 0.686 + 1.024 +
2
1.458) + 2}
= 0.505

=

16 Modul Praktikum Analisis Numerik S1 Matematika

Program 6.1
clc;
f = inline('2*x*x*x');
a = input ('Input batas bawah(a) : ');
b = input ('Input batas atas(b) : ');
N = input ('Input jumlah pembagi area(N) : ');
h = (b-a)/N;
luas = 0;
for i=1:N-1
x=a+(i*h);
fx=f(x);
luas = luas + fx;
end
total =(h*0.5)*(f(a)+f(b)+(2*luas));
disp(sprintf('\n Luas: %10.7f', total));

17 Modul Praktikum Analisis Numerik S1 Matematika

Latihan
1. Buatlah sebuah program MATLAB dengan memodifikasi program 6.1.
2. Buatlah sebuah program MATLAB menggunakan Metode Integrasi Trapezoida
dengan kasus yang berbeda.

NILAI

18 Modul Praktikum Analisis Numerik S1 Matematika

PARAF

BAB VII
METODE INTEGRASI SIMPSON

Metode Integrasi Simpson merupakan pengambangan dari Metode Integrasi
Trapezoida yaitu daerah pembaginya berupa dua buah trapesium dengan menggunakan
pembobot berat di titik tengahnya.
Algoritma Metode Simpson:
Definisikan fungsi 𝑓(𝑥).
Tentukan batas bawah (a) dan batas atas (b).
Tentukan jumlah pembagi area N.
Hitung
𝑏−𝑎
𝑕=
𝑁
5. Hitung

1.
2.
3.
4.

𝐿=

𝑕
(𝑓 + 4
3 0

𝑖=𝑔𝑎𝑛𝑗𝑖𝑙

𝑓𝑖 + 2

𝑖=𝑔𝑒𝑛𝑎𝑝

𝑓𝑖 + 𝑓𝑛 )

Contoh:
Hitung

1
2𝑥 3 𝑑𝑥
0

Dengan N=10, maka
𝑕=

1−0
10

= 0.1

diperoleh tabel
x
0
0.1
0.2
f(x)
0
0.002 0.016
Sehingga dapat dihitung:
𝑕

𝐿 = (𝑓0 + 4
3

=

𝑖=𝑔𝑎𝑛𝑗𝑖𝑙

𝑓𝑖 + 2

0.3
0.054

0.4
0.128

𝑖=𝑔𝑒𝑛𝑎𝑝

𝑓𝑖 + 𝑓𝑛 )

0.5
0.25

0.6
0.432

0.7
0.686

0.1
{0 + 4 0.002 + 2 0.016 + 4 0.54 + 2 0.128 + 4 0.25
3
+ 2 0.432 + 4 0.686 + 2 1.024 + 4 1.458 + 2}

=

0.8
1.024

0.1
15 = 0.5
3

19 Modul Praktikum Analisis Numerik S1 Matematika

0.9
1.458

1
2

Program 7.1
clc;
f = inline('2*x*x*x');
a = input ('Input batas bawah(a) : ');
b = input ('Input batas atas(b) : ');
N = input ('Input jumlah pembagi area(N) : ');
h = (b-a)/N;
luasGanjil = 0;
luasGenap = 0;
for i=1:2:N-1
x=a+(i*h);
fx=f(x);
luasGanjil = luasGanjil + fx;
end
for i=2:2:N-2
x=a+(i*h);
fx=f(x);
luasGenap = luasGenap + fx;
end
total = (h/3)*(f(a)+f(b)+(4*luasGanjil)+(2*luasGenap));
disp(sprintf('\n Luas: %10.7f', total));

20 Modul Praktikum Analisis Numerik S1 Matematika

Latihan
1. Buatlah sebuah program MATLAB dengan memodifikasi program 7.1.
2. Buatlah sebuah program MATLAB menggunakan Metode Integrasi Simpson dengan
kasus yang berbeda.

NILAI

21 Modul Praktikum Analisis Numerik S1 Matematika

PARAF