Modul I(1).docx

  • Uploaded by: Hendra Rizki Fatoni
  • 0
  • 0
  • April 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Modul I(1).docx as PDF for free.

More details

  • Words: 1,553
  • Pages: 8
MODUL I PENGENALAN PYTHON DAN SISTEM MATRIKS

A. 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. B. Teori Dasar 1. Pengenalan Bahasa Python Python merupakan bahasa pemrograman dinamis yang mendukung pemrograman berbasis objek. Python didistribusikan dengan beberapa lisensi yang berbeda dari beberapa versi. Namun pada prinsipnya Python dapat diperoleh dan dipergunakan secara bebas, bahkan untuk kepentingan komersial. Karena lisensi Python tidak bertentangan baik menurut definisi Open Source maupun General Public License (GPL).

Figure 1. Logo Python

Python dikembangkan oleh Guido van Rossum pada tahun 1990-an di CWI, Amsterdam sebagai kelanjutan dari bahasa pemrograman ABC. Versi terakhir yang dikeluarkan CWI adalah 1.2. Tahun 1995, Guido pindah ke CNRI sambil terus melanjutkan pengembangan Python. Versi terakhir yang dikeluarkan adalah 1.6. Tahun 2000, Guido dan para pengembang inti Python pindah ke BeOpen.com yang merupakan sebuah perusahaan komersial dan membentuk BeOpen PythonLabs. Python 2.0 dikeluarkan oleh BeOpen. Setelah mengeluarkan Python 2.0, Guido dan beberapa anggota tim PythonLabs pindah ke DigitalCreations. Saat ini pengembangan Python terus dilakukan oleh sekumpulan pemrogram yang dikoordinir Guido dan Python Software Foundation. Python Software Foundation adalah sebuah organisasi non-profit yang dibentuk sebagai pemegang hak cipta intelektual Python sejak versi 2.1 dan dengan demikian mencegah Python dimiliki oleh perusahaan komersial. Hal yang membedakan Python dengan bahasa lain adalah dalam hal aturan penulisan kode program. Bahasa Python juga mendukung hampir di semua sistem operasi, bahkan untuk sistem operasi Linux, hampir semua distronya sudah menyertakan Python di dalamnya. Dengan kode yang simpel dan mudah diimplementasikan, seorang programmer dapat lebih mengutamakan pengembangan aplikasi yang dibuat. Selain itu python merupakan salah

satu produk yang opensource juga multiplatform. Beberapa fitur yang dimiliki Python adalah : a. Memiliki library/package yang luas; dalam distribusi python telah disediakan modul-modul siap pakai untuk berbagai keperluan. b. Memiliki tata bahasa yang jernih dan mudah untuk dipelajari. c. Memiliki aturan layout kode sumber yang memudahkan pengecekan, pembacaan kembali dan penulisan ulang kode sumber serta berorientasi objek. d. Memiliki sistem pengelolaan memori otomatis (garbage collection seperti java), mudah dikembangkan dengan menciptakan modul-modul baru, dimana modul tersebut dapat dibangun dengan bahasa python maupun C/C++. 2. Sistem dan Operasi 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. Misalkan sebuah matriks A dengan ukuran m baris dan n kolom dituliskan sebagai,

(1)

atau A = [aij] dimana i =1,2,...,m ; j =1,2,...,n Jadi ketika terdapat penulisan matriks B dengan ukuran 3x2 maka matriks B tersebut mempunyai elemen matriks 3 baris dan 2 kolom. 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. Misalkan ada matriks V dengan ukuran 2x3, X dengan ukuran 3x3, matriks Y berukuran 3x2, matriks Z berukuran 3x3.

Perhitungan manual dari operasi-operasi matriks diatas untuk operasi penjumlahan dan pengurangan antara matriks X (3x3) dengan Z (3x3) menghasilkan matriks dengan ukuran 3x3.

Operasi perkalian skalar mariks 3•Z akan menghasilkan matriks yang sama dengan ukuran matriks pengalinya. Operasi perkalian matriks V (2x3) dengan matriks Z (3x3) maka menghasilkan matriks 2x3. Operasi transposisi matriks dimanfaatkan untuk berbagai keperluan. Misalkan untuk mendeposisi data sehingga bisa dioparasikan lebih lanjut. Transposisi dari matriks Y:

Operasi invers matriks sangat penting dalam geofisika karena geofisika memanfaatkan operasi ini untuk mengetahui model bawah permukaan bumi. Sebelum ke invers matriks, terlebih dahulu harus dimengerti tentang determinan dan adjoin suatu matriks. Berikut ini

contoh determinan dengan metode Sarrus dan adjoinnya dari matriks X. Nilai determinan dari matriks X adalah sebagai berikut:

Selanjutnya nilai Adjoint matriks X diketahui melalui kofaktor X:

Sedangkan invers dari matriks X adalah,

C. Tugas Pendahuluan 1. Mengapa geofisikawan perlu mempelajari tentang metode numerik atau komputasi? 2. Apa yang ada ketahui tentang bahasa pemrograman python dan apa saja keunggulan dan kekurangannya dibandingkan dengan bahasa pemrograman yang lain! 3. Diketahui matriks berikut : 2 1 𝐴=[ 1 2

2 ]; 1

1 3 𝐵 = [2 4 3 5

5 6]; 2

Tentukan operasi matriks berikut: a. B + D b. B - D c. A x C d. 𝐴 ⨀ 𝐷 e. Det(B) f. Inv(D)

3 1 𝐶 = [2 2]; 1 3

2 3 𝐷 = [2 1 3 5

1 3]; 2

D. Langkah Praktikum 1. Pengenalan Python a. Package/Modul Package atau modul merupakan library yang merupakan objek python dengan atribut yang dapat di bind dan dijadikan sebagai referensi, secara sederhana modul adalah file yang terdiri dari kode python. Modul dapat mendefenisikan fungsi, kelas dan variable. Modul juga bisa menyertakan kode yang bisa dijalankan ‘runable’. Contoh: import numpy import matplotlib.pyplot import scipy

b. Type Data Tipe data adalah suatu media atau memori pada computer yang digunakan untuk menampung informasi. Python sendiri mempunyai tipe data yang cukup unik karena kita tidak perlu mendefenisikan terlebih dahulu tipe data pada sebuah variable yang akan digunakan. Script: Data = [1, 2, 3, 4, 5, 6, 7, 8, 9] Data = (1, 2, 3, 4, 5, 6, 7, 8, 9) Data = {‘nama’:’putu’, ‘nim’:’12115017, ‘angkatan’:’2015’}

c. Aritmatika Cobalah mengeksekusi script dibawah ini. Script: a = 5 b = 8 c = 10 #Penjumlahan d = a + b #Pengurangan e = c – d #Pembagian f = c/a #Perkalian g = a * f #Mod

# List # Tuple # Dictonary

h = a % 2 print(d, e, f, g, h)

d. Kondisi dan perulangan Pengambilan keputusan (kondisi if else) tidak hanya digunakan untuk menentukan tidakan apa yang diambil sesuai dengan kondisi, tetapi juga digunakan untuk menentukan tindakan apa yang diambil/dijalankan jika kondisi tidak sesuai. Sedangkan perulangan digunakan apabila harus menulis banyak kode dengan kondisi yang sangat banyak, sehingga akan membuang-buang waktu, maka dapat memanfaatkan perulangan di dalam bahasa pemrograman python. Script: data = [1, 2, 3, 4, 5, 3, 4, 10, 3] #Kondisi if (data[2] == 3): print(‘Benar’) #Contoh penggunaan While Loop count = 0 while (count < 9): print ('The count is:', count) count = count + 1 print ("Good bye!") #Contoh pengulangan for buah = ["Duku", "Semangka", "Jeruk", “Markisa”] for makanan in buah: print("Saya suka makan", makanan) #Contoh penggunaan Nested Loop i = 2 while(i < 100): j = 2 while(j <= (i/j)): if not(i%j): break j = j + 1 if (j > i/j) : print(i, " is prime") i = i + 1 print "Good bye!"

e. Fungsi Fungsi ada;ah blok kode terorganisir dan dapat digunakan kembali dan dapat digunakan untuk melakukan sebuah tindakan/action.

Script: import numpy as np def luasLingkaran(r): luas = np.pi()*r**2 return luas def luasPersegi(lebar, panjang): luas = lebar * panjang return luas print(‘Luas Lingkaran: ‘, luasLingkaran(7)) print(‘Luas Persegi: ‘, luasPersegi(8,10))

2. Operasi Matriks a. Penjumlahan Cobalah script berikut ini: import numpy as np a = np.array([[1, 2, 1], [2, 1, 2]]) b = np.array([[3, 3, 1], [1, 2, 3]]) print(a) print(b) c = a + b print (‘hasil penjumlahan a + b : \n’, c)

b. Pengurangan Cobalah script berikut ini: import numpy as np a = np.array([[1, 2, 1], [2, 1, 2]]) b = np.array([[3, 3, 1], [1, 2, 3]]) print(a) print(b) c = a + b print (‘hasil penjumlahan a + b : \n’, c)

c. Perkalian Cobalah script berikut ini: import numpy as np a = np.array([[1, 2, 1], [2, 1, 2]]) b = np.array([[3, 3], [1, 2], [2, 3]]) print(a) print(b) #Perkalian dot

c = np.dot(a,b) print (‘hasil perkalian a x b : \n’, c)

d. Matriks Identitas Cobalah script berikut ini: import numpy as np #Membuat matriks zero a = np.zeros((4,4)) print(‘Matriks zero: \n’, a) #Membuat matris satu b = np.ones((4,4)) print(‘Matriks one: \n’, b) #Membuat matriks identitas c = np.identity((4,4)) print(‘Matriks Identitas: \n’, c)

E. Laporan dan Analisis Tugas yang harus dilampirkan pada laporan berupa: 1. Screenshot hasil program dari hasil perhitungan soal no 3 pada bagian tugas pendahuluan! 2. Apakah perbedaan antara perkalian scalar dan vector pada matriks yang anda lakukan? 3. Apakah yang dimaksud dengan matrik singular dan non-singular? Apakah matriks B dan D bisa di inversikan? Kaitkan dengan syarat matriks bisa diinversikan!

F. Referensi [1] Chapra,S.C.,Canale,R.P.,1990, Numerical Method for Engineers. [2] Abdullah, Agus, dkk. 2007. Modul Praktikum Komputasi Universitas Pertamina. UP: Bandung [3] Dahrin, Darharta, dkk. 2007. Modul Praktikum Komputasi ITB. ITB: Bandung.

Related Documents

Modul
October 2019 83
Modul
August 2019 77
Modul
August 2019 101
Modul 11
June 2020 24
Modul Limit.pdf
June 2020 13
Modul Ii
June 2020 16

More Documents from "Amalia Yuli Astuti"