Anda di halaman 1dari 19

LAPORAN AKHIR

KOMPUTASI GEOFISIKA TG2204

MODUL KE – 1
PENGENALAN PYTHON DAN SISTEM MATRIKS

Oleh:
Anggita Miftahul Jannah 121120034

Asisten :

1. Mu’amar Hafiz 119120084


2. Agis Wandahlia Jambak 120120004
3. Junita Cintia Dewi Br Pinem 120120054
4. Ilham Wahyudi 120120056
5. Azriel Bilhaq 120120064
6. Salsabila Mukhlis 120120160
7. Waldi Tambunan 120120175
8. Josma Hardianto Damanik 120120183

PROGRAM STUDI TEKNIK GEOFISIKA


JURUSAN TEKNOLOGI PRODUKSI DAN INDUSTRI

INSTITUT TEKNOLOGI SUMATERA

2023
I. TUJUAN PRAKTIKUM
Tujuan praktikum adalah sebagai berikut:
1. Mahasiswa mengenal dan mampu memahami konsep dasar bahasa
pemrograman python.
2. Mahasiswa mampu menerapkan operasi matriks 2D menggunakan bahasa
python.

II. DASAR TEORI


A. PYTON
Apa itu python? Python merupakan bahasa pemrograman tingkat
tinggi yang yang dibuat oleh Guido Van Rossum dan dirilis pada tahun
1991 Python juga merupakan bahasa yanng sangat populer belakangan ini.
Selain itu python juga merupakan bahasa pemrograman yang multi fungsi
contohnya python dapat digunakan untuk Machine Learning dan Deep
Larning. Python dipilih sebagai penelitian karena python memiliki
penulisan sintaksis yang mudah selain itu python juga memiliki
library yang lengkap dan memiliki dukungan komunitas yang kuat karena
python bersifat open source. Untuk menuliskan source code python anda
dapat menggunakan IDE seperti vs code, sublime text, PyCharm atau anda
juga dapat menggunakan IDE online seperti Jupyter notebook dan google
colab.
Python adalah bahasa pemrograman interpretatif multiguna dengan
filosofi perancangan yang berfokus pada tingkat keterbacaan kode. Python
diklaim sebagai bahasa yang menggabungkan kapabilitas, kemampuan,
dengan sintaksis kode yang sangat jelas, dan dilengkapi dengan
fungsionalitas pustaka standar yang besar serta komprehensif. Python juga
didukung oleh komunitas yang besar(Alfarizi dkk., 2023).
Python mendukung multi paradigma pemrograman, utamanya; namun
tidak dibatasi; pada pemrograman berorientasi objek, pemrograman
imperatif, dan pemrograman fungsional. Salah satu fitur yang tersedia pada
python adalah sebagai bahasa pemrograman dinamis yang dilengkapi
dengan manajemen memori otomatis. Seperti halnya pada bahasa
pemrograman dinamis lainnya, python umumnya digunakan sebagai bahasa
script meski pada praktiknya penggunaan bahasa ini lebih luas mencakup
konteks pemanfaatan yang umumnya tidak dilakukan dengan menggunakan
bahasa script.
Python dapat digunakan untuk berbagai keperluan pengembangan
perangkat lunak dan dapat berjalan di berbagai platform sistem operasi.
Saat ini kode python dapat dijalankan di berbagai platform sistem operasi,
beberapa diantaranya adalah:
• Linux/Unix
• Windows
• Mac OS X
• Java Virtual Machine
• Amiga
• Palm
• Symbian (untuk produk-produk Nokia)
Python didistribusikan dengan beberapa lisensi yang berbeda dari
beberapa versi. Namun pada prinsipnya Python dapat diperoleh dan
dipergunakan secara bebas, bahkan untuk kepentingan komersial. Lisensi
Python tidak bertentangan baik menurut definisi Open Source maupun
General Public License (GPL)(Syahrudin & Kurniawan, 2018).
Python di anggap sebagai bahasa yang paling banyak digunakan di
dalam bidang Machine Learning dan Deep Learnig hal ini dikarenakan
selain penulisan sintaksis yang mudah Python juga didorong oleh
komunitas yang besar selain itu python juga memiliki banyak library yang
sangat mendukung Machine Learning dan DeepLearning berikut
beberapa contoh library python yang cukup populer yang dapat digunakan
untuk Machine Learning dan Deep Learning:
1. Numpy
Library ini berisikan fungsi matematika dengan kompleksitas tinggi
dapat digunakan untuk memproses array dan matriks multidimensi
yang besar. NumPy juga sangat berguna untuk menangani aljabar
linier, transformasi Fourier, dan bilangan acak.
B. Matriks
Matriks adalah sekumpulan bilangan yang disusun secara baris dan
kolom dan ditempatkan pada kurung biasa atau kurung siku. Bentuk umum
Matriks adalahsebagai berikut(Pratama dkk., 2021):

Gambar 2.1 Matriks


Matriks umum dikenal pada matematika sebagai kumpulan bilangan
atau angka yang disusun dalam baris dan kolom yang bentuknya berupa
persegi panjang, biasanya dibatasi dengan simbol “[ ]” atau “( )”. Bilangan
yang terdapat dalam suatu matriks disebut elemen matriks. Matriks biasa
digunakan untuk menyelesaikan permasalahan matematika, misalnya
menemukan solusi persamaan linier karena matriks berupa variable biasa
yang bisa dioperasikan seperti dijumlahkan, dikurangkan dan dikalikan.
Matriks dinotasikan dengan huruf besar seperti A, X, Y, dan sebagainya.
Matriks memiliki banyak jenis, ada matriks kuadrat yang mana antara baris
dan kolom sama banyaknya, matriks diagonal yang diluar diagonal utama
berupa nol, matriks simetris jika elemen dibawah diagonal cerminan
elemen atas diagonal, matriks identitas yang diagonal utamanya bernilai 1
selainnya bernilai 0 dan lain-lain.
Matriks selalu digunakan dalam pengolahan data geofisika. Pengolahan
data geofisika selalu melibatkan data yang besar karena memang titik
pengukurannya banyak, sehingga untuk memproses data tersebut, maka
disimpan dalam suatu matriks yang kemudian dioperasikan lebih lanjut
sesuai dengan kebutuhannya. Operasi antar matriks dilakukan dengan
menggunakan beberapa persyaratan. Penjumlahan dan pengurangan
matriks dapat dilakukan ketika kedua matriks tersebut berukuran sama.
Sehingga yang dijumlahkan atau dikurangkan adalah elemen dan posisi
yang sama. Perkalian matriks memiliki dua tipe yaitu skalar dan matriks.
Perkalian skalar dilakukan untuk satu angka yang dikalikan dengan sebuah
matriks, sedangkan perkalian matriks dilakukan ketika matriks dikalikan
dengan matriks yang memiliki syarat berupa jumlah baris matriks pertama
sama dengan jumlah kolom matriks kedua. Pada proses penjumlahan
Matriks,Baris ke-1 kolom ke-1 dalam matriks A ditambah baris ke-1
kolom ke-1 dalam matriks B.Begitupula dengan unsur matriks yg
lainnya. Pada proses perkalian matriksagak sedikit berbeda dari
penjumlahan matriksdimana untuk perkalian rumus (Matematika) Baris
dikali kolom ditambah baris dikali kolom yang lain

III. LANGKAH PENGERJAAN

A. Script
#MATRIKS PENJUMLAHAN
import numpy as np
B = np.array([[1, 3, 5], [2, 4, 6], [3, 5, 2]])
D = np.array([[2, 3, 1], [2, 1, 3], [3, 5, 2]])

print (B)
print (D)
G=B+D
print ('Hasil Penjumlahan : \n', G)
print ("")

#MATRIKS PENGURANGAN
import numpy as np
B = np.array([[1, 3, 5], [2, 4, 6], [3, 5, 2]])
D = np.array([[2, 3, 1], [2, 1, 3], [3, 5, 2]])

print (B)
print (D)
H=B-D
print ('Hasil Pengurangan : \n', H)
print ("")

#MATRIKS PERKALIAN A X C
import numpy as np
A = np.array([[2, 1, 2], [1, 2, 1]])
C = np.array([[3, 1], [2, 2], [1, 3]])
D = np.array([[2, 3, 1], [2, 1, 3], [3, 5, 2]])

print (A)
print (C)
I = np.dot(A,C)
print ('Hasil Perkalian a x c : \n', I)
print ("")

#MATRIKS PERKALIAN A.D


import numpy as np
A = np.array([[2, 1, 2], [1, 2, 1]])
C = np.array([[3, 1], [2, 2], [1, 3]])
D = np.array([[2, 3, 1], [2, 1, 3], [3, 5, 2]])

print (A)
print (C)
J = A.dot(D)
print ('Hasil Dot A.D : \n', J)
print ("")
#MATRIKS DETERMINAN (B)
import numpy as np
B = np.array([[1, 3, 5], [2, 4, 6], [3, 5, 2]])

print(B)
B_det = np.linalg.det(B)
print ('Hasil Determinan Matriks B : \n', B_det)
print ("")
#MATRIKS INVERSE (D)
import numpy as np
D = np.array([[2, 3, 1], [2, 1, 3], [3, 5, 2]])

print(D)
D_inv = np.linalg.inv(D)
print ('Hasil Invers Matriks D : \n', D_inv)

B. Langkah Kerja
1. Pertama buka google colab, lalu buat laman kerja baru.
2. Buat tab tab untuk masing masing script yang akan dibuat.
3. Pertama buat script matriks penjumlahan – import numpy as np – buat
variabel B dan D – isi nilai matriks – jumlahkan matriks B +D – print.
4. Kedua matriks pengurangan – sama dengan script pertama – buat
variabel baru dengan mengurangkan B-D – Print.
5. Buat matriks perkalian – buat variabel A dan C dan input elemen
matriks ke script – buat fungsi np.dot(A,C) – print.
6. Buat perkalian dot – buat matriks A,C dan D pada script – gunakan
fungsi A.dot(D) – print.
7. Lalu buat matriks determinan B – import numpy as np – buat matriks
B – determinan B dengan fungsi =np.linalg.det(B) – Print.
8. Terakhir buat matriks inverse D – buat matriks D – gunakan fungsi
np.linalg.inv(D) – Print.
C. Diagram Alir

Gambar 3.1 Diagram Alir penjumlahan


Gambar 3.2 Diagram Alir pengurangan

Gambar 3.3 Diagram Alir perkalian


Gambar 3.4 Diagram Alir perkalian dot

Gambar 3.5 Diagram Alir Determinan


Gambar 3.5 Diagram Alir Determinan
IV. HASIL dan PEMBAHASAN
A. Hasil
1. Penjumlahan B + D

Gambar 4.1. Penjumlahan B+D


2. Pengurangan B-D

Gambar 4.2. Pengurangan B-D


3. Perkalian AxC

Gambar 4.3. Perkalian AxC

4. Perkalian dot A.D

Gambar 4.4. Perkalian dot A.D


5. Determinan B

Gambar 4.5. Determinan B

6. Inverse D

Gambar 4.6. Inverse D


B. Analisis
Praktikum yang dilakukan pada modul pertama komputasi yang
berjudul pengenalan pyton dan sistem matriks merupakan pengolahan
yang dilakukan praktikan dalam menjabarkan pengunaan pyton dalam
fungsi matematis atau perhitungan dengan membuat script yang
menghasilkan output sesuai diinginkan praktikan. Pada pengenalan pyton
kita membuat script library dengan mengimport numpy dengan np sebagai
fungsinya. Laporan akhir ini melakukan proses aritmatika yang terdapat
pada Tugas pendahuluan yang terdiri dari penjumlahan, pengurangan,
perkalian, perkalian dot, determinan dan inverse.
Pada bagian aritmatika kita mengunakan beberapa fungsi seperti
penjumlahan, pengurangan , pembagian, dan perkalian. Dalam aritmatika
diperlukan nilai penyebut dan pembilang yang digunakan dalam
perhitungan matematis di dalam script ini, dimana variabel yang dibuat
adalah A, B, C dan D sebagai nilai yang diketahui dan dilakukan fungsi
penjumlahan, pengurangan , perkalian, dan perkalian dot. Untuk melihat
hasil perhitungan yang dilakukan, digunakan fungsi print untuk
menampilkan hasil perhitungan seperti hasil script diatas dan output dari
perhitungan akan ditampilkan pada layar output. Dalam matematika akan
mempermudah perhitungan dalam nilai yang besar.
Selanjutnya script yang kita buat adalah matriks penjumlahan dan
pengurangan dengan mengimport library numpy sebagai penjabar matriks
yang akan dibuat. Dalam script diberikan variabel yang memuat nilai
matriks yang akan dijumlahkan atau dikurangkan. Np.array berfungsi
menjadikan nilai yang diketahui menjadi bentuk matriks. Selanjutnya
dilakukan pembuatan fungsi penjumlahan (G = B + D) dan pengurangan
( H = B – D) dengan catatan variabel yang digunakan harus berbeda
dengan nilai yang akan di eksekusi. Maka script yang kita buat akan
menampilkan penjumlahan dan pengurangan matriks pada output script.
Hal yang sama dilakukan pada perkalian (x) dan dot matriks. Dimana
output pada perkalian x dan dot akan berbeda tergantung jumlah kolom
dan baris matriks yang kita buat. Pada fungsi perkalian matriks AxC
mengunakan rumus (I = np.dot(A,C)) dan perkalian dot matriks A.D
mengunakan rumus (J = A.dot(D)) hasil akan diperoleh dari matriks yang
diketahui dan perbedaan nilai pada variabel yang akan dijabarkan. Dalam
menjabarkan nilai dot maka pada fungsi dot ditambah np. Agar nilai
matriks dapat dieksekusi oleh program.
Matriks determinan diperoleh dengan membuat matriks 3x3 pada fungsi
yang akan dibuat, matriks determinan dapat dibentuk dengan mengunakan
fungsi np.linalg.det. dan akan mendeterminasi matriks 3 x 3 menjadi nilai
determinan matriks yang diketahui seperti gambar diatas yang merupakan
pengaplikasian matriks determinan. Praktikan harus membuat elemen
elemen matrik yang akan dieksekusi oleh program yang telah dibuat dan
hasil determinan B adalah 10.
Matriks inverse merupakan matrik awal yang diberikan pada script dan
akan diubah menjadi bentuk inversi, seperti pada gambar diatas yang
merupakan matriks inverse. Dalam membuat matriks inverse mengunakan
fungsi numpy. Np.linalg.inv fungsi tersebut mengubah data matriks awal
menjadi bentuk matriks inverse tanpa mengubah jumlah kolom dan baris
matriks awal. Elemen elemen dari matriks D harus sesuai asumsi dari
program agar dapat di progrest oleh program pyton.
Perkalian scalar dan vektor pada matriks yang dilakukan memiliki
beberapa perbedan, sesuai namanya vektor adalah matriks yang memiliki
arah dan nilai sedangkan scalar adalah matriks yang hanya memiliki nilai
dan dari hasil yang kita peroleh perbedaan pada bentuk nilai matriks yang
diberikan dimana skalar menghasilkan bilangan tunggal seperti hasil
determinan 10 dan vector merupakan matriks bersusun elemen elemen
pengisi seperti penjumlahan, pengurangan dan perkalian.
Matriks singular merupakan matriks yang memiliki nilai 0 pada
determinannya dan non singular tidak sama dengan 0. Seperti nilai
determinan yang kita peroleh yaitu 10, nilai 10 yang kita peroleh
merupakan non singular, karena tidak sama dengan 0, dan matriks yang
non singular mempunyai inverse apabila dilakukan inverse tetapi tidak
dengan singular yang tidak memiliki inverse karena bernilai 0. Dan
matriks B serta D dapat diinversikan karena seperti percobaan yang telah
kita lakukan B dapat di determinan dengan nilai 10 serta D dapat
diinversikan, sehingga matriks B dan D merupakan non Singular

V. Kesimpulan
Dari pengolahan aritmatika, determinan dan inverse yang telah
dilakukan pada praktikum modul 1 kali ini dengan judul pengenalan
pyton dan sistem matriks dapat disimpulkan bahwa :
1. Praktikan mampu memahami pengolahan dasar penjumlahan,
pengurangan, perkalian x, perkalian dot, determinan serta inverse
dari matriks input yang diketahui.
2. Praktikan mampu melaksanakan proses yang telah diarahkan
dengan melihat hubungan antara program dengan input yang
diberikan.
DAFTAR PUSTAKA

Alfarizi, M. R. sirfatullah, Al-farish, M. Z., Taufiqurrahman, M., Ardiansah, G.,


& Elgar, M. (2023). Penggunaan Python Sebagai Bahasa Pemrograman
Untuk Machine Learning Dan Deep Learning. Karimah Tauhid, 2(1), 1–6.

Pratama, H. J., Ali, E. P., Nurvia, M., & Harahap, E. (2021). Aplikasi
penjumlahan dan perkalian matriks pada microsoft excel. Jurnal Matematika,
20(1), 17–22.
https://journals.unisba.ac.id/index.php/matematika/article/view/1373

Syahrudin, A. N., & Kurniawan, T. (2018). Input dan Output pada Bahasa
Pemrograman Python. Jurnal Dasar Pemrograman Python STMIK, June
2018, 1–7. https://www.researchgate.net/publication/338385483
Lampiran
https://colab.research.google.com/drive/
1FujcqTWAdhbOwMLAL6xJzk9yexESj3Ae?usp=sharing

Anda mungkin juga menyukai