Difference between revisions of "Stefanus Nandiwardhana Mahardhika"
Line 122: | Line 122: | ||
'''Quiz 2''' | '''Quiz 2''' | ||
---- | ---- | ||
+ | |||
+ | '''Soal 1''' | ||
+ | [[File:Soal_quiz_1.jpg]] | ||
'''Soal 2''' | '''Soal 2''' | ||
[[File:Soal_quiz_2.jpg]] | [[File:Soal_quiz_2.jpg]] |
Revision as of 23:13, 16 October 2019
Introduksi
Perkenalkan, nama saya Stefanus Nandiwardhana Mahardhika (Akrab dipanggil Evan). Saya adalah mahasiswa Teknik Mesin di Universitas Indonesia angkatan 2017. Saya adalah salah satu dari sekian banyak mahasiswa rantau di Universitas Indonesia. Saya lahir di Kota Yogyakarta pada tanggal 25 Februari 1999.
Nama: Stefanus Nandiwardhana Mahardhika Jurusan: Teknik Mesin Angkatan: 2017 NPM: 1706036160
Kenapa Anak Teknik Mesin Harus Belajar Kalkulus?
Menurut saya kalkulus adalah salah satu ilmu yang mendasar dalam ilmu ke-Teknik-an. Tidak jarang dalam memecahkan sebuah masalah, baik yang kompleks maupun yang sederhana, kita sebagai orang teknik memerlukan ilmu kalkulus. Dari memplot grafik sampai menghitung efisiensi sebuah pembangkit listrik tenaga uap, terdapat banyak hal yang tidak bisa terlepas dari penggunaan ilmu kalkulus.
Pertemuan Pertama
Pada pertemuan pertama mata kuliah metode numerik ini, saya dikenalkan dengan Dr. Ahmad Indra dan Dr. Eng. Radon Dhelika. Kuliah diawali dengan penjelasan singkat akan mata kuliah Metode Numerik oleh Pak Dai. Beliau juga menjelaskan akan sistem penilaian di kelas ini yang lebih melihat kepada perkembangan yang dialami oleh mahasiswa selama mengikuti mata kuliah ini. Hal ini dikarenakan kepercayaan Pak Dai dan Pak Radon terhadap continuous learning. Pak Radon kemudian menambahkan alasan penggunaan bahasa koding Python dalam pembelajaran mata kuliah ini yang berupa semakin populernya penggunaan bahasa Python dalam berbagai hal. Hal ini memudahkan mahasiswa dalam mencari informasi bantuan dalam mempelajarinya.
Tugas 2: *Pelajari Python *Buatlah sebuah program untuk memecahkan soal limit (x^2 - 1)/(x - 1) dengan algoritma flowchart/kata-kata. *Tulis aplikasi dari metode numerik
Tugas 1
1. Pemecahan soal limit (x^2 - 1)/(x - 1) ternyata tidaklah gampang. Awalnya saya mencoba-coba berusaha membuat koding sendiri dari awal tanpa bantuan library. Namun, setelah mencoba-coba dan gagal, akhirnya saya memutuskan untuk menggunakan bantuan Sympy Library. Berikut hasilnya:
Penggunaan Sympy Library sangatlah mempersingkat dan menyederhanakan koding yang perlu ditulis.
Saya menggunakan Jupyter Notebook sebagai interface editor dalam menulis koding Python dengan bantuan Anaconda Navigator sebagai launcher-nya.
Line 1: Koding yang saya tulis diawali dengan "from sympy import limit" untuk melakukan impor modul simpy yang berhubungan dengan limit. Saya juga bisa menggunakan "*" untuk menggantikan "limit" untuk mengimpor semua modul dan membiarkannya mencari sendiri modul yang berhubungan. Line 2: Kemudian saya menetapkan x sebagai simbol x yang ada di simpy Line 3: Kemudian saya menetapkan sebuah karakter acak ("r") untuk ditetapkan sebagai persamaan yang ingin dicari (limit (x^2 - 1)/(x - 1)). Setelah penulisan persamaan, saya memberi tanda koma untuk menuliskan variabel dan angka yang didekati. Line 4: Terakhir, saya memerintahkan agar jawaban dari persamaan tadi dicetak.
Jawaban yang didapatkan adalah 2.
2. Aplikasi dari metode numerik tentunya sangat banyak, mengingat metode numerik adalah salah satu cara pemecahan permasalahan perhitungan matematika dengan solusi yang berupa perkiraan sehingga penyelesaiannya cenderung lebih sederhana daripada metode analitik. Berikut adalah contoh aplikasi dari metode numerik:
- Penyelesaian persamaan diferensial
- Regresi
- Interpolasi
- Integrasi Numerik
- Differensiasi Numerik
Semuanya tentunya sangat dibutuhkan dalam banyak bidang, terutama bidang ke-teknik-an.
Pertemuan Kedua
Pada pertemuan kedua, kami membahas komputer sebagai media menulis coding. Pak Dai menggunakan permainan komputer catur sebagai sebuah contoh. Mengapa google ads dapat mengetahui kebutuhan kita saat itu? Apa yang membuat database google lebih luas daripada database otak kita. Perbedaan 32 bit dan 64 bit adalah jumlah interger yang bisa dibaca oleh komputer tersebut. 32 bit berarti komputer tersebut dapat membaca 2^31 interger. Komputer secara fisik hanya mengenal on (1) dan off (0), atau yang disebut sebagai binary code. OS yang mampu menjalankan software 32 bit berarti dia dapat membaca sekian binary code. Apabila terdapat lebih maka dia akan mengalami overflow. Sedangkan 64 bit mempresentasikan angka paling kecil dan paling besar lebih banyak lagi sehingga lebih cepat dan lebih akurat daripada 32 bit. Processor 32 bit dapat membaca 4GB RAM, sedangkan 64 bit processor dapat membaca sampai 16 milyar GB RAM. 5.0 adalah pancasila karena teknologi harus empowering human. Jangan sampai teknologi malah menjadi melemahkan manusia. Jangan sampai manusia di-drive oleh teknologi seperti sosial media dll. Kita yang harus bisa me-drive teknologi. Hal ini dapat dilakukan salah satunya sebagai orang mesin adalah mengerti numerik software yang kita gunakan dalam bidang engineering.
Kami kemudian diberikan pelajaran akan dasar-dasar python oleh Pak Radon. Karena keterbatasan program pada komputer kampus, kami terpaksa menggunakan website pythonanywhere.com sebagai media untuk menulis koding python. Di situ kami belajar untuk mencetak "Hello Python World" sampai beberapa koding yang berupa Tuples dan Lists. Berikut adalah hasil percobaan saya menggunakan Tuples dan Lists.
Setiap software engineering dilakukan melalui trial and error.
Numerical methods in engineering with python 3
Minggu depan jam 4 sore quiz tentang pemrograman
Pertemuan Ketiga
Pertemuan ketiga dimulai dengan quiz mengenai coding. Permasalahan yang harus kami pecahkan berupa pembuatan program yang dapat menentukan suku ke-n dari deret fibonacci. Karena bingung bagaimana saya bisa menyelesaikan masalah tersebut, pada saat quiz saya memilih untuk menggunakan library sympy. Namun, ternyata setelah quiz selesai Pak Radon mengatakan bahwa penggunaan library tidak diperbolehkan. Berikut adalah coding yang saya tulis:
Kami pun kemudian disuruh untuk mengulang pengerjaan quiz tetapi dengan petunjuk dari Pak Radon dan Pak DAI bahwa penyelesaiannya bisa menggunakan function atau loop. Berikut adalah hasilnya.
Penyelesaian dengan Function: Penyelesaian dengan Loop:
Tugas 1: Kerjakan fibonacci sequence dengan loop (for/while) dan function/subroutine.
Tugas 2: Presentasi Kelompok contoh soal eliminasi gauss bab 2 pada buku Num. Meth in Eng. using python (J. Kiusalaas)
Pertemuan Keempat
Pada pertemuan keempat, kami pertama membahas tentang Pemodelan Komputer (Computer Moelling). Pertama-tama kami disuruh menyebutkan apa itu "model" menurut kami. Menurut saya sendiri, model adalah suatu gambaran yang mewakili suatu sistem atau objek. Penggunaan model akan memudahkan analisis sistem atau objek tersebut. Setelah masing-masing mahasiswa menyebutkan arti "model" menurut mereka masing-masing, Pak Dai kemudian menyebutkan bahwa ada tiga poin dari sebuah model, yaitu: Representasi, simplifikasi, dan asumsi. Simulasi komputer tidak pernah mencapai keakuratan 100% karena simulasi hanyalah sebuah pendekatan (Asumsi). Contoh dari asumsi adalah analisis sebuah fondasi yang dilakukan menggunakan rumus stress. Analisis dilakukan dengan mengasumsikan modulus elastisitas dari setiap titik. Simplifikasi adalah sebuah penyederhanaan. Contohnya, analisis fondasi yang kita buat tadi kita buat menjadi analisis satu dimensi.
Elastisitas: keengahan untuk berubah bentuk
Tensor flow dalam AI google Pengembang google menevelop engine mesin learning menggunakan python jadi python tuh suatu hal yang sangat biasa.
Tugas 1: Membangun persamaan aljabar displacement dari sebuah batang dalam kesetimbangan pada 4 titik
Pertemuan Kelima
Pada pertemuan kelima, kami diberi penjelasan oleh asisten dosen mengenai aljabar simultan. Kami diberi contoh modelling spring system yang berupa beberapa pegas yang dihubungkan dalam formasi seri, kemudian kami diberi penjelasan cara modellingnya dalam bentuk matriks dan cara melakukan superposisi pada matriks tersebut sehingga kami dapat melakukan modelling pada spring system yang memiliki lebih banyak pegas. Modelling matriks ini nantinya akan diselesaikan menggunakan metode Gauss Jordan dalam Python. Saat menggunakan input, eval harus digunakan sehingga menjadi angka, tanpa eval dia akan menganggapnya sebagai string. Syntax eval juga dapat diubah menjadi int (interger) atau float untuk angka dengan desimal.
Pertemuan Keenam
Peran komputer dalam pemecahan masalah hanya.... modelling harus dari kita. Mungkin sebaiknya nama mata kuliah Metode Numerik diganti "Computer Aided Engineering" Karena komputer dapat membantu kita dalam memecahkan masalah engineering apabila sudah kita tentukan dan tuliskan modellingnya. Sifat continuum artinya pada saat benda tersebut mengalami gaya maka gaya tersebut akan diteruskan ke semua bagian benda tersebut. Selain itu, semua titik benda tersebut memiliki sifat yang dapat diukur. Masalah atau benda yang kita deal with, semuanya bersifat continuum sehingga memiliki model matematika dalam bentuk persamaan-persamaan differensial yang dapat kita pecah dengan Metode Numerik. Sifat discontinuum baru akan kita jumpai pada skala molekuler.
Setelah itu Bang Edo menjelaskan tentang metode Runge-Kutta. Metode ini adalah salah satu cara penyelesaian persamaan differensial. Runge-Kutta Method terdiri dari 2nd order, 3rd order, dan 4th order, dimana 4th Order Runge-Kutta Method adalah metode yang paling akurat. Runge-Kutta ini digunakan untuk penyelesaian masalah yang sudah dalam bentuk modelling matematika, tetapi susah untuk diselesaikan menggunakan metode eksak.
Quiz 2
Soal 1
Soal 2