Anda di halaman 1dari 12

UJIAN TENGAH SEMESTER

MATA KULIAH KOMPUTASI NUMERIK


Nama : Martina Lorensa
NIM : 20210022

Soal !
1. Tolong jelaskan apa itu komputasi numerik beserta contoh-contohnya!
2. Buatlah algoritma komputasi numerik sesuai dengan yang sudah dijelaskan minimal ada
program utama dan program sub-rutin
Jawaban

1. Komputasi numerik adalah cabang ilmu komputer yang fokus pada pengembangan metode
matematika untuk menyelesaikan masalah numerik menggunakan komputasi. Ini melibatkan
pendekatan yang menggunakan angka-angka dan metode iteratif untuk menyelesaikan
masalah matematika yang kompleks atau tidak bisa diselesaikan secara analitis. Contoh
aplikasinya termasuk perhitungan integral, solusi persamaan diferensial, interpolasi data, dan
optimisasi numerik. berikut adalah beberapa definisi komputasi numerik dari para
ahli:Menurut Cleve Moler, pendiri MATLAB: "Komputasi numerik adalah suatu disiplin ilmu
yang mengembangkan metode matematika dan algoritma yang menggunakan komputer untuk
menyelesaikan masalah matematika dan ilmiah yang sulit secara analitik."

a. Menurut David Kincaid dan Ward Cheney dalam buku "Numerical Mathematics and
Computing": "Komputasi numerik adalah studi tentang metode yang menggunakan
algoritma numerik untuk memecahkan masalah matematika dengan menerapkan
pendekatan berbasis angka, terutama melalui komputer."
b. Menurut Anne Greenbaum dalam "Iterative Methods for Solving Linear Systems":
"Komputasi numerik adalah studi tentang metode komputasional untuk memahami,
merancang, dan menerapkan algoritma yang menghasilkan solusi numerik bagi masalah
matematika."
c. Menurut Germund Dahlquist dan Åke Björck dalam "Numerical Methods in Scientific
Computing": "Komputasi numerik melibatkan pengem embangan, analisis, dan
implementasi metode matematika yang menggunakan representasi numerik dan
komputasi berbasis komputer untuk memahami dan menyelesaikan masalah
matematika."
d. Menurut Eugene Isaacson dan Herbert Keller dalam "Analysis of Numerical Methods":
"Komputasi numerik adalah studi tentang metode komputasional untuk memecahkan
masalah matematika yang melibatkan operasi pada angka-angka dengan komputer."

Komputasi numerik memiliki banyak fungsi yang penting dalam berbagai bidang. Beberapa
fungsi utama komputasi numerik meliputi:
a. Pemecahan Persamaan dan Sistem Linear: Komputasi numerik digunakan untuk
menyelesaikan persamaan matematika, terutama persamaan diferensial dan sistem
persamaan linear yang kompleks. Ini memiliki aplikasi luas dalam ilmu fisika, rekayasa,
dan ilmu pengetahuan lainnya.
b. Interpolasi dan Ekstrapolasi: Komputasi numerik dapat digunakan untuk
memperkirakan nilai di antara titik data yang diketahui (interpolasi) atau bahkan di luar
rentang data yang ada (ekstrapolasi). Ini berguna dalam analisis data dan permodelan.
c. Pengoptimalan: Komputasi numerik memungkinkan pencarian solusi terbaik dalam ruang
parameter yang kompleks. Ini digunakan dalam optimisasi matematis, di mana tujuan
adalah mencari nilai maksimum atau minimum dari fungsi.
d. Analisis Statistik: Komputasi numerik digunakan untuk analisis data statistik, termasuk
menghitung rerata, deviasi standar, distribusi probabilitas, dan lainnya.
e. Pemodelan Fisika dan Ilmu Pengetahuan Alam: Dalam bidang fisika, kimia, biologi,
dan ilmu pengetahuan alam lainnya, komputasi numerik digunakan untuk memodelkan
fenomena kompleks seperti pergerakan partikel, reaksi kimia, dan dinamika populasi.
f. Simulasi: Komputasi numerik memungkinkan simulasi berbagai situasi yang sulit atau
mahal untuk diuji dalam dunia nyata. Ini digunakan dalam berbagai bidang, termasuk ilmu
medis, teknik, dan industri manufaktur.
g. Grafika Komputer dan Animasi: Dalam industri hiburan dan grafika komputer,
komputasi numerik memungkinkan pembuatan grafika dan animasi yang realistis dan
dinamis.
h. Kriptografi: Komputasi numerik digunakan dalam pengembangan algoritma enkripsi
yang mendasari keamanan data dan komunikasi di dunia digital.
i. Analisis Keuangan: Komputasi numerik digunakan dalam perhitungan nilai aset, model
risiko, dan analisis portofolio dalam bidang keuangan.
j. Pemrosesan Sinyal: Dalam pemrosesan sinyal, komputasi numerik digunakan untuk
analisis, transformasi, dan penyaringan sinyal, seperti dalam pengolahan audio dan
gambar.

Fungsi-fungsi ini hanya beberapa contoh dari banyaknya peran penting komputasi numerik dalam
berbagai bidang. Dengan bantuan algoritma dan metode numerik, kita dapat mengatasi masalah
matematika dan ilmiah yang rumit dan memperoleh solusi pendekatan yang akurat. Kemudian
komputasi numerik juga memiliki manfaat dan fungsi yang sangat penting dalam bidang
informatika, yang mencakup pengembangan dan penerapan perangkat lunak, analisis data, serta
pemecahan masalah matematika dan ilmiah.

Berikut adalah beberapa manfaat dan fungsi komputasi numerik dalam bidang informatika:

Manfaat :

1. Solusi Masalah Kompleks: Komputasi numerik memungkinkan penyelesaian masalah


matematika dan ilmiah yang kompleks dan sulit diselesaikan secara analitis. Ini
memungkinkan ilmuwan dan insinyur untuk memahami dan mengatasi masalah dunia
nyata yang rumit.
2. Inovasi dan Penelitian: Dalam bidang penelitian, komputasi numerik memungkinkan
eksperimen virtual yang membantu pengembangan penemuan baru dan inovasi. Ilmuwan
dapat menganalisis skenario yang berbeda dengan cepat dan efisien.
3. Pengembangan Perangkat Lunak: Komputasi numerik merupakan dasar untuk
pengembangan perangkat lunak yang melibatkan analisis matematika dan ilmiah. Ini
termasuk pembuatan perangkat lunak simulasi, perangkat lunak rekayasa, dan alat analisis
data.
4. Analisis Data: Dalam analisis data, komputasi numerik digunakan untuk mengolah,
menganalisis, dan memahami data besar. Ini melibatkan penerapan algoritma numerik
dalam statistik, machine learning, dan analisis pola.
5. Pemodelan dan Simulasi: Komputasi numerik memungkinkan pembuatan model
matematika yang mewakili fenomena dunia nyata. Dengan menggunakan model ini,
simulasi dapat dilakukan untuk mengobservasi dampak berbagai variabel dan skenario.

Fungsi:

1. Pemecahan Persamaan: Komputasi numerik digunakan untuk menyelesaikan persamaan


matematika, seperti persamaan diferensial dan persamaan linear, yang sering muncul
dalam berbagai aplikasi ilmiah dan teknis.
2. Optimisasi: Komputasi numerik digunakan dalam mencari solusi optimal dari berbagai
masalah, termasuk optimisasi fungsi matematika untuk mencapai hasil terbaik.
3. Analisis Statistik: Dalam analisis data, komputasi numerik memungkinkan perhitungan
statistik yang melibatkan mean, median, deviasi standar, serta distribusi probabilitas.
4. Grafika Komputer: Dalam grafika komputer, komputasi numerik digunakan untuk
merender gambar, efek visual, dan animasi yang realistis.
5. Kriptografi: Komputasi numerik memiliki peran penting dalam pengembangan algoritma
enkripsi yang mendukung keamanan informasi dan data.
6. Pemodelan Matematika: Komputasi numerik digunakan untuk memodelkan fenomena
matematika dalam dunia nyata, seperti dinamika populasi, pertumbuhan ekonomi, dan
perubahan iklim.

Dengan manfaat dan fungsi ini, komputasi numerik memberikan fondasi yang kuat untuk
kemajuan dalam berbagai aspek bidang informatika, dari pengembangan perangkat lunak hingga
pemahaman lebih dalam tentang dunia kita.

Dalam komputasi numerik juga memiliki metode -metode numerik yang digunakan dalam
prakteknya yaitu ada metode numerik secara umum dan metode numerik dalam bidang teknik
informatika sebagai berikut :

1. Metode numerik secara umum adalah pendekatan matematis untuk memecahkan masalah
matematika yang kompleks atau tidak dapat diselesaikan secara analitis (yaitu, dengan
rumus matematis eksplisit). Metode ini berfokus pada representasi numerik dari fenomena
matematika dan penggunaan komputer untuk melakukan perhitungan.
Berikut adalah beberapa poin penting tentang metode numerik secara umum:
a. Pendekatan Berbasis Angka: Metode numerik menggunakan representasi angka
(bilangan riil atau kompleks) untuk mendekati solusi dari masalah matematika. Ini
berbeda dari pendekatan analitis yang berfokus pada manipulasi simbol matematika.
b. Diskritisasi: Dalam metode numerik, domain masalah atau kontinum matematis
sering diskritisasi, artinya mereka dipecah menjadi himpunan nilai-nilai terbatas atau
titik-titik yang dapat dihitung.
c. Iterasi dan Aproksimasi: Metode numerik sering melibatkan proses iteratif di mana
perhitungan dilakukan berulang kali untuk mendekati solusi yang akurat. Selama
iterasi, perkiraan solusi diperbarui dan diperbaiki.
d. Pemecahan Persamaan Diferensial: Salah satu aplikasi utama dari metode numerik
adalah memecahkan persamaan diferensial yang mendefinisikan berbagai fenomena
alam. Ini termasuk persamaan diferensial biasa (ODE) dan persamaan diferensial
parsial (PDE).
e. Integrasi Numerik: Metode numerik juga digunakan untuk menghitung integral dari
fungsi matematika yang kompleks atau tidak dapat diintegrasikan secara analitis.
f. Optimisasi Numerik: Metode numerik digunakan dalam mencari nilai ekstremum
(maksimum atau minimum) dari fungsi matematis.
g. Analisis Numerik: Ini adalah subdisiplin dari metode numerik yang berfokus pada
analisis dan pengembangan algoritma untuk memastikan keakuratan, stabilitas, dan
kinerja dari metode yang digunakan.
h. Aplikasi di Ilmu dan Teknologi: Metode numerik diterapkan di berbagai bidang ilmu
pengetahuan dan teknologi, termasuk fisika, rekayasa, biologi komputasi, keuangan,
dan banyak lagi.

Contoh metode numerik termasuk metode Euler untuk integrasi numerik, metode Newton-
Raphson untuk mencari akar persamaan, dan metode elemen hingga untuk memecahkan
persamaan diferensial parsial dalam konteks rekayasa struktural.

2. Dalam bidang teknik informatika, metode numerik adalah kunci untuk memecahkan
masalah matematis yang kompleks atau tidak dapat diselesaikan secara analitis dengan
menggunakan komputasi dan algoritma. Berikut adalah beberapa metode numerik yang
sering digunakan beserta contoh penerapannya dalam teknik informatika:
a. Metode Iteratif:
Metode Gauss-Seidel: Digunakan untuk menyelesaikan sistem persamaan linear.
Contoh penerapannya adalah dalam pemecahan masalah analisis jaringan, seperti pada
metode penyelesaian persamaan aliran daya dalam sistem tenaga listrik.
b. Interpolasi Numerik:
Metode interpolasi polinomial: Digunakan untuk memperkirakan fungsi di antara
titik data yang diberikan. Contoh penerapannya adalah dalam pembuatan grafik atau
kurva dalam perangkat lunak pemodelan.
c. Pemecahan Persamaan Diferensial:
Metode Euler: Metode iteratif sederhana untuk memecahkan persamaan diferensial
biasa (ODE). Digunakan dalam simulasi dinamika sistem fisika dan rekayasa.
Metode Runge-Kutta: Metode iteratif yang lebih akurat untuk memecahkan ODE.
Digunakan dalam simulasi dinamika sistem yang membutuhkan tingkat presisi yang
lebih tinggi.
d. Optimisasi Numerik:
Metode gradien konjugat: Digunakan untuk mencari titik minimum atau maksimum
dari fungsi multidimensi. Penerapannya mencakup optimisasi jaringan neural dalam
pembelajaran mesin.
e. Metode Matriks dan Aljabar Linier:
Metode eliminasi Gauss: Digunakan untuk menyelesaikan sistem persamaan linear.
Penerapannya mencakup pemodelan dan analisis struktur dalam rekayasa sipil atau
mekanik.
Metode faktorisasi LU: Digunakan untuk memecah matriks menjadi faktor-faktor
yang lebih sederhana. Penerapannya termasuk analisis sirkuit dalam elektronika dan
simulasi dinamika struktur.
f. Integrasi Numerik:
Metode trapesium: Digunakan untuk menghitung integral tentu dari fungsi.
Penerapannya dalam analisis numerik untuk mengestimasi area di bawah kurva.
Metode Simpson: Digunakan untuk menghitung integral tentu dengan lebih akurat
daripada metode trapesium. Penerapannya dalam analisis statistik dan pemrosesan
sinyal.
g. Pemodelan dan Simulasi:
Metode elemen hingga: Digunakan untuk memecahkan persamaan diferensial parsial
dalam konteks analisis struktural atau termal. Penerapannya dalam desain dan analisis
struktur bangunan atau komponen mekanik.
h. Transformasi Fourier:
Metode cepstrum: Digunakan dalam pemrosesan sinyal dan gambar untuk
menganalisis frekuensi karakteristik dari sinyal. Penerapannya termasuk pengenalan
suara dan pengolahan citra medis.

2. Berikut ini saya membuat penerapan algoritma dari metode-metode yang ada dalam
komputasi numerik dalam 2 bahasa pemrograman yaitu Fortran dan MATLAB, yang dimana
ada program utama dan program sub-rutin:
a. Metode Iterasi di Fortran :
Program Utama (main program) dari Iterasi Gauss-Seidel :

PROGRAM GaussSeidel
IMPLICIT NONE
INTEGER, PARAMETER :: N = 3 ! Jumlah variabel
REAL :: A(N,N) = RESHAPE((/4, -1, 0, -1, 4, -1, 0, -1, 4/), (/N, N/))
REAL :: B(N) = (/15, 10, 10/)
REAL :: X(N) = 0.0
INTEGER :: i

! Panggil sub-rutin Iterasi Gauss-Seidel


CALL GaussSeidelIter(A, B, X)

! Cetak hasil
PRINT *, 'Hasil:'
DO i = 1, N
PRINT *, 'X(', i, ') = ', X(i)
ENDDO

CONTAINS

! Sub-rutin untuk Iterasi Gauss-Seidel


SUBROUTINE GaussSeidelIter(A, B, X)
REAL, DIMENSION(:,:) :: A
REAL, DIMENSION(:) :: B, X
INTEGER :: N, i, j
REAL :: Sum

DO i = 1, N
Sum = 0.0
DO j = 1, N
IF (i /= j) THEN
Sum = Sum + A(i,j) * X(j)
ENDIF
ENDDO
X(i) = (B(i) - Sum) / A(i,i)
ENDDO

END SUBROUTINE GaussSeidelIter

END PROGRAM GaussSeidel

b. Metode Interpolasi di MATLAB


Program utama- Interpolasi Polinomial Newton:

function main()

X = [0 1 2 3 4]; % Data x

Y = [1 0 3 2 1]; % Data y

x_interpolate = 2.5; % Titik yang akan diinterpolasi

% Panggil sub-rutin Interpolasi Polinomial Newton

y_interpolated = NewtonInterpolation(X, Y, x_interpolate);

% Cetak hasil
fprintf('Hasil interpolasi pada x = %.1f adalah y = %.2f\n', x_interpolate,
y_interpolated);

end

function y_interpolated = NewtonInterpolation(X, Y, x_interpolate)

n = length(X);

F = zeros(n, n);

F(:,1) = Y';

for j = 2:n

for i = j:n

F(i,j) = (F(i,j-1) - F(i-1,j-1)) / (X(i) - X(i-j+1));

end

end

y_interpolated = 0;

for i = 1:n

term = F(i,i);

for j = 1:i-1

term = term * (x_interpolate - X(j));

end

y_interpolated = y_interpolated + term;

end

end
c. Metode Integrasi Numerik diFortran
Program Utama-Metode Trapesium:

PROGRAM TrapezoidalIntegration

IMPLICIT NONE

INTEGER, PARAMETER :: N = 1000

REAL :: a = 0.0, b = 1.0, h, x, integral

INTEGER :: i

h = (b - a) / REAL(N)

! Panggil sub-rutin Integrasi Trapesium

integral = 0.5 * (f(a) + f(b))

DO i = 1, N-1

x = a + REAL(i) * h

integral = integral + f(x)

ENDDO

integral = integral * h

! Cetak hasil

PRINT *, 'Hasil integrasi: ', integral

CONTAINS
! Fungsi yang akan diintegrasi

REAL FUNCTION f(x)

REAL, INTENT(IN) :: x

f = x**2

END FUNCTION f

END PROGRAM TrapezoidalIntegration

d. Metode Newton-Raphson di MATLAB


Program Utama -Newton-Raphson dalam mencari akar persamaan
x3−6x2+11x−6=0x3−6x2+11x−6=0.

function main()

% Definisikan fungsi dan turunannya

f = @(x) x^3 - 6*x^2 + 11*x - 6;

df = @(x) 3*x^2 - 12*x + 11;

% Tebakan awal

x0 = 1.5;

tolerance = 1e-6;

% Panggil sub-rutin Newton-Raphson

root = NewtonRaphson(f, df, x0, tolerance);

% Cetak hasil
fprintf('Aproksimasi akar: %.6f\n', root);

end

function root = NewtonRaphson(f, df, x0, tolerance)

max_iterations = 1000;

x = x0;

for i = 1:max_iterations

x_new = x - f(x) / df(x);

if abs(x_new - x) < tolerance

root = x_new;

return;

end

x = x_new;

end

error('Metode Newton-Raphson tidak konvergen');

end

e. Metode Elemen Hingga di Fortran


Program Utama - Analisis Struktur Balok (Metode Elemen Hingga):

PROGRAM FiniteElementAnalysis
IMPLICIT NONE

INTEGER, PARAMETER :: NNODES = 2

REAL :: L = 5.0 ! Panjang balok (satuan)

REAL :: E = 2.1E11 ! Modulus Young (N/m^2)

REAL :: A = 0.01 ! Luas penampang balok (m^2)

REAL :: U(NNODES) = (/0.0, 0.0/) ! Displacement pada ujung balok

REAL :: F(NNODES) = (/0.0, -10000.0/) ! Beban terdistribusi pada ujung balok

! Panggil sub-rutin Analisis Elemen Hingga

CALL FiniteElementAnalysis1D(L, E, A, U, F)

! Cetak hasil

PRINT *, 'Displacement pada ujung balok:'

PRINT *, 'U1 = ', U(1), ' m'

PRINT *, 'U2 = ', U(2), ' m'

CONTAINS

! Sub-rutin Analisis Elemen Hingga (1D)

SUBROUTINE FiniteElementAnalysis1D(L, E, A, U, F)

REAL, INTENT(IN) :: L, E, A

REAL, INTENT(INOUT) :: U(NNODES), F(NNODES)

REAL :: K, LNODE, X
INTEGER :: I

K=E*A/L

LNODE = L / REAL(NNODES - 1)

DO I = 1, NNODES - 1

X = LNODE * REAL(I - 1)

F(I) = F(I) + K * U(I) - K * U(I+1)

F(I+1) = F(I+1) + K * U(I+1) - K * U(I)

ENDDO

END SUBROUTINE FiniteElementAnalysis1D

END PROGRAM FiniteElementAnalysis

Dalam program Fortran di atas melakukan analisis elemen hingga pada balok dengan
beban terdistribusi dan menghitung displacement pada ujung balok.

Anda mungkin juga menyukai