Wildan Zulfa Abdurrohman

From ccitonlinewiki
Revision as of 11:40, 17 October 2019 by Wildan.zulfa (talk | contribs)
Jump to: navigation, search
James.jpg

Nama: Wildan Zulfa Abdurrohman

NPM: 1806149305







Pertemuan Pertama (Rabu, 4 September 2019)

Mengapa kita sebagai mahasiswa teknik mesin perlu mempelajari mata kuliah kalkulus?

"Menurut saya, mahasiswa teknik mesin harus mempelajari kalkulus karena mata kuliah ini merupakan dasar dari mata kuliah teknik seperti: Termodinamika, Kinematika dan Dinamika, Aljabar Linier, Metode Numerik, Fisika Listrik dan Mekanika."


Kalkulus.jpg


Bahasa program tidak diajarkan di kelas, kita belajar metode menyelesaikan masalah dengan programming. USA dapat memprediksi cuaca menggunakan programing yang sangat rumit dengan bantuan super computer. Namun sekarang terdapat kuantum komputer yang lebih canggih yang dapat menyelesaikan komputasi yang lebih kompleks. Programming tersebut menggunakan bahasa programming, bahasa programming hanya mengerti tambah, kurang, kali, bagi, mereka tidak mengetahui perhitungan kalkulus seperti diferensial dan integral. Oleh karena itu, manusia akan memberikan rumus menggunakan algoritma dengan bahasa proggamming kepada komputer.


Langkah-langkah Python: menulis algoritma; membuat flow chart; menulih bahasa programming. Persamaan yang diselesaikan oleh software canggih hanya menggunakan perkalian matriks karena bahasa programming menggunakan persamaan sederhana dengan cara memberikan instruksi menggunakan algoritma, setelah itu membuat flow chart lalu dilanjutkan ke dalam bahasa programming, kemudian komputer akan melaksanakan instruksi tersebut


CAE Computer-aided engineering merupakan program untuk melakukan analisis teknik yang mencakup analisis finite element (FEA - finite element analysis), dinamika fluida komputasi (CFD - computational fluid dynamics), dinamika multibody (MBD - multibody dynamics), dan optimalisasi.

Trik untuk mempelajari metode numerik adalah langsung terjun mencoba secara langsung bahasa programming

(Dr. Ahmad Indra)


Industri 4.0 mendorong lulusan teknik supaya dapat melakukan programming, karena pasar membutuhkan lulusan yang memahami bahasa programming. Oleh sebab itu, mata kuliah metode numerik merupakan salah satu sarana bagi mahasiswa teknik mesin untuk mempelajari bahasa programming. Saya merekomendasikan kepada mahasiswa untuk mencoba terlebih dahulu bahasa programming, khususnya bahsa Python, supaya mahasiswa dapat memahammi secara mandiri apa itu yang dimaksud dengan bahasa programming.


Kami, Dosen Departemen teknik Mesin, memiliki pemikiran jangka panjang mengenai kurikulum 2020 untuk mengadakan mata kuliah programming untuk mahasiswa teknik mesin. Selain itu, kami juga ingin melakukan kolaborasi dengan IMM untuk mengadakan pelatihan programming bagi mahasiswa teknik mesin. Oleh sebab itu, jangan berkecil hati apabila belum pernah mencoba programming karena programming itu logic sehingga dengan sendirinya kalian akan dapat memahami hal tersebut.

(Dr. Eng. Radon Dhelika)


Penilaian Continous Evaluation: nilai tidak hanya UTS dan UAS, dosen mengamati perkembangan mahasiswa dengan cara melihat gradien


Tugas Pertemuan Pertama:

Pelajari python & Membuat program untuk menyelesaikan persoalan matematis limit x=1; y=(x^2-1)/(x-1)
Python.jpg

Python merupakan salah satu bahasa pemrograman yang memiliki konsep desain sederhana, yang berfokus pada kemudahan dalam penggunaan. Kode Python dirancang untuk mudak dibaca, dipelajari, digunakan ulang, dan dirawat. Selain itu, Python juga mendukung pemrograman berorientasi obe=jek dan pemrograman fungsional. Python dpat meningkatkan produktivitas dan menghemat waktu programer. Untuk memperoleh hasil yang sama, bahasa Python lebih sedikit ditulis dibandingkan menggunakan bahasa pemrograman lain.


Bahasa Python memiliki 5 tipe variabel yaitu: integer; float; string; boolean; list. Untuk tipe integer penulisan merupakan suatu bilangan bulat, tipe float merupakan bilangan desimal dengan koma menggunakan tanda titik, tipe string merupakan rangkaian huruf yang diapit oleh tanda petik tunggal atau ganda, tipe boolean merupakan pernyataan benar salah yang ditulis dengan kata True atau False, tipe list merupakan wadah untuk membuat suatu kumpulan data dengan cara penulisan diapit oleh tanda [ ] dan setiap data dipisahkan oleh tanda koma.


Bahasa Python dapat digunakan untuk menyelesaikan persoalan matematis, penjumlahan menggunakan tanda (+), pengurangan (-), perkalian (*), pembagian (/), eksponensial (**). Persoalan matematis yang kompleks dapat diselesaikan dengan membuat flow chart, yaitu mengurutkan proses pengerjaan suatu persoalan matematis dengan menggunakan penjumlahan, pengurangan, perkalian, atau pembagian. Selain itu, persoalan matematis juga dapat diselesaikan menggunakan metode if else. Metode if else merupakan perintah yang dipengaruhi oleh suatu kondisi yang disebut if, semua hal yang berada diluar kondisi tersebut adalah else. Kondisi untuk suatu perbandingan meliputi: tanda (==) berarti sama dengan; tanda (!=) atau (<>) berarti tidak sama dengan; tanda (>) berarti lebih dari; tanda (<) berarti kurang dari; tanda (>=) berarti lebih dari sama dengan; tanda (<=) berarti kurang dari sama dengan. Perintah input berfungsi untuk memasukkan data yang telah diberikan oleh pengguna, perintah untuk meminta data dari pengguna adalah menggunakan tanda titik dua (:).


Program untuk menyelesaikan persoalan matematis limit x=1; y=(x^2-1)/(x-1) ditulis dengan bahasa Python yang terdiri dari penjumlahan, pengurangan, perkalian, dan pembagian. Selain itu, program ini menggunakan metode if else karena terdapat suatu kondisi perbandingan dalam menyelesaikan persoalan tersebut. Apabila x sama dengan 1 maka hasil y=(x^2-1)/(x-1) adalah 0/0 yang artinya tidak terdefinisi, sedangkan untuk x tidak sama dengan 1 maka y terdefinisi. Oleh sebab itu jika x adalah 1 maka persamaan y=(x^2-1)/(x-1) harus disederhanakan terlebih dahulu menjadi y=x+1 sehingga y terdefinisi.


Flow chart program untuk menyelesaikan persoalan matematis y=(x^2-1)/(x-1) adalah sebagai berikut:

Flowchart tugas 1.PNG


Ketika program tersebut dijalankan, kemudian input angka 1 pada kolom "masukan x: " maka hasilnya adalah sebagai berikut:

Hasil tugas 1.PNG


Pertemuan Kedua (Rabu, 11 September 2019)

Mausia harus mengenal komputer supaya dapat memahami cara kerja dari komputer untuk memaksimalkan performa dari komputer tersebut. Komputer merupakan teknologi yang dapat melaksanakan perintah dan menyelesaikan suatu permasalahan dengan menggunakan bahasa algoritma. Bahasa yang dipahami komputer ialah bahasa yang terdiri dari angka 0 dan 1.


Manusia merupakan makhluk paling cerdas, tetapi akal pikiran dan memori manusia terbatas. Oleh karena itu, komputer digunakan sebagai alat bantu untuk mengingat dan menyelesaikan masalah lebih banyak. Namun. komputer tetap harus diberikan perintah oleh manusia, karena komputer tidak dapat memerintah dirinya sendiri. Semakin pintar seseorang, maka orang tersebut akan semakin menunduk atau rendah hati. Artinya, mausia yang cerdas, semakin banyak ilmunya maka ia akan berfikir menggunakan hati, karena otaknya sudah dipenuhi oleh ilmu. Komputer tidak memiliki hati, sehingga manusia tetap diperlukan untuk mengontrol dan memerintah komputer supaya beroperasi secara maksimal. Pada kelas minggu ini cobalah kalian membuat penyelesaian aritmatik sederhana, kemudian cobalah untuk menjalankan perintah loop.

(Dr. Ahmad Indra)


Carilah suatu website mengenai Python sebagai referensi kamu untuk belajar. Pelajari satu web terlebih dahulu supaya fokus dalam mempelajari Python. Install Python kemudian cobalah untuk membuat "hello world" sebagai langkah pertama untuk melakukan programming. Setelah itu, kalian dapat mencoba berbagai macam perintah untuk membuat suatu program. Terdapat website untuk menjalankan program Python secara online, salah satunya adalah pythonanywhere.com

(Dr. Eng. Radon Dhelika)


Tuples list code.png
Tuples list result.png

Tugas Pertemuan Kedua

Pelajari buku Python Bab 1

!!!Pertemuan Ketiga QUIZ!!!


Pertemuan Ketiga (Rabu, 18 September 2019)

Pada pertemuan ini kami mengerjakan soal mengenai deret fibonacci. Untuk menyelesaikan permasalahan ini, saya menggunakan 2 metode yaitu:

1. Loop

2. Rumus

Hasil dari pengerjaan program untuk penyelesaian deret fibonacci menggunakan loop adalah sebagai berikut:

Fibonacci loop.png

Sedangkan, hasil dari pengerjaan program untuk penyelesaian deret fibonacci menggunakan rumus adalah sebagai berikut:

Fibonacci rumus.png


Pertemuan Kempat (Rabu, 25 September 2019)

Pada pertemuan ini, kami mempelajari cara menyelesaikan sistem persamaan linier menggunakan metode numerik dengan menggunakan eliminasi gauss.

Eliminisasi Gauss adalah metode untuk mengoperasikan nilai-nilai di dalam matriks sehingga menjadi matriks yang lebih sederhana. Dengan melakukan operasi baris sehingga matriks tersebut menjadi salah satu metode penyelesaian persamaan linear.

Contoh soal

Contoh soal kelompok 3.PNG



Pengerjaan Matematis

Menggunakan Eliminasi Gauss

Gaussbagian 1.PNG
Gaussbagian 2.PNG


Kemudian menyelesaikan dengan Subtitusi


Pengerjaan Menggunakan Bahasa Python

Dalam penggunaan matriks pada bahasa python dibutuhkan fungsi array dengan cara import numpy

Gausspython 1 kel 3.jpeg
Gausspython 2.JPG

Hasil perhitungan dengan Python

Gausspython 3.JPG

Program Python


Pertemuan Kelima (Rabu, 2 Oktober 2019)

Pertemuan Keenam (Rabu, 9 Oktober 2019)

Pada pertemuan ini kami membahas mengenai berbagai macam cara untuk menyelesaikan permasalahan matematis. Ada macam-macam cara untuk menyelesaikan permasalahan matematis, terutama di bidang teknik. Anda harus mengerti apa yang bisa dan tidak bisa dilakukan oleh komputer.


Metode Numerik memiliki nama lain yaitu Computer Audit Engineering. Bagaimana memodelkan permasalahan teknik untuk menjadi algoritma yang dapat dipahami oleh komputer. Apabila kita menerapkan suatu persamaan gaya yang kontinu pada suatu material, maka persamaan tersebut akan menjadi persamaan diferensial. Beban yang diberikan secara kontinu akan membuat material itu merasakan bahan tersebut secara terus menerus.


Orang cerdas merupakan orang yang pikirannya berbeda dari orang lain, menuju pikiran yang lebih futuristik. Supaya mempersiapkan life after. Diferensial merupakan sesuatu bagian yang sangat kecil tetapi tidak nol dan kontinu. Apabila suatu benda diberikan gaya, maka benda tersebut akan memberikan reaksi yaitu hukum aksi-reaksi. Apabila suatu benda tersebut memiliki luasan, maka reaksinya berupa stress. karena terdapat perpindahan gaya dari suatu titik menuju suatu luasan.


Ada banyak metode untuk menyelesaikan permasalahan diferensial. Namun, terdapat beberapa permasalahan diferensial yang tidak dapat diselesaikan secara eksak, karena sangat rumit. Permasalahan di dunia teknik tidaklah linier. Oleh karena itu, digunakanlah program metode numerik untuk membantu menyelesaikan permasalahan tersebut. salah satu metode penyelesaian persamaan diferensial dengan bantuan metode numerik adalah metode runge-kutta. Runge-kutta memiliki beberapa pendekatan, terdapat 4 orde pendekatan runge-kutta yang mana semakin tinggi orde, maka nilai error akan semakin kecil

(Dr. Ahmad Indra)


Pertemuan Ketujuh (Rabu, 16 Oktober 2019)

Berikut merupakan program untuk menyelesaikan problem set 2.1 no.6

#eliminasi gauss jordan problem set 2.1 no.6

#mengimport numpy ke dalam program
import numpy as np

#mendefinisakan baris matriks yang berisi varibel dari persamaan yang ada
line1 = [1,2,0,-2,1]
line2 = [0,1,0,2,-1]
line3 = [0,0,2,1,2]
line4 = [0,0,0,-1,1]
line5 = [0,1,-1,1,-1]

#mendefinisikan baris variabel menjadi suatu matriks menggunakan perintah array
variabel = np.array ([line1,line2,line3,line4,line5]) 

#mendefinisikan hasil persamaan menjadi suatu matriks menggunakan perintah array
hasil = np.array ([-4,1,1,-2,-1]) 

#melakukan eliminasi gauss-jordan terhadap kedua matriks diatas menggunakan perintah linalg
run = np.linalg.solve (variabel,hasil)

#mendefinisikan masing-masing nilai dari variabel setelah dilakukan eliminasi gauss-jordan
x1 = int(run[0])
x2 = int(run[1])
x3 = int(run[2])
x4 = int(run[3])
x5 = int(run[4])

#menampilkan nilai masing-masing vaiabel menggunakan perintah print
print ("hasil X berdasarkan eliminasi Gauss-Jordan adalah sebagai berikut:")
print ("x1= ",x1)
print ("x2= ",x2)
print ("x3= ",x3)
print ("x4= ",x4)
print ("x5= ",x5)

#by Wildan Zulfa A

Hasil run program diatas adalah sebagai berikut:

"C:\Users\wildan zulfa\PycharmProjects\Pertemuan 7\venv\Scripts\python.exe" "C:/Users/wildan zulfa/PycharmProjects/Pertemuan 7/Eliminasi Gauss Jordan.py"

hasil X berdasarkan eliminasi Gauss-Jordan adalah sebagai berikut:

x1=  3
x2=  -2
x3=  1
x4=  1
x5=  -1

Process finished with exit code 0

Berikut merupakan program untuk menyelesaikan problem set 7.1 no.2

#persamaan diferensial runge-kutta problem set 7.1 no.2

#mendefinisikan persamaan diferensial
def dydx(x, y):
    return ((x ** 2 - 4 * y))

# melakukan penyelesaian dengan metode runge-kutta menggunakan nilai h dan y0 saat x0
def rungeKutta(x0, y0, x, h):

    #mendefinisikan jarak penyelesaian yang diinginkan dengan menggunakan persamaan berikut
    n = (int)((x - x0) / h)

    # mendefinisikan y awal
    y = y0

    #mendefinisikan nilai k dari setiap orde pada metode runge-kutta
    for i in range(1, n + 1):
        k1 = h * dydx(x0, y)
        k2 = h * dydx(x0 + 0.5 * h, y + 0.5 * k1)
        k3 = h * dydx(x0 + 0.5 * h, y + 0.5 * k2)
        k4 = h * dydx(x0 + h, y + k3)

        # mengupdate nilai dari y setelah diturunkan
        y = y + (1.0 / 6.0) * (k1 + 2 * k2 + 2 * k3 + k4)

        # mengupdate nilai dari x berdasarkan hasil diatas
        x0 = x0 + h

    # memberikan perintah pengulangan pada y
    return y


# memberikan pemisalan terhadap variabel-variabel yang ada
x0 = 0
y = 1
x = 0.03
h = 0.01

#menampilkan nilai dari y saat x
print('Nilai dari y saat x adalah:', rungeKutta(x0, y, x, h))

#by Wildan Zulfa A

Hasil run program diatas adalah sebagai berikut:

"C:\Users\wildan zulfa\PycharmProjects\Pertemuan 7\venv\Scripts\python.exe" "C:/Users/wildan zulfa/PycharmProjects/Pertemuan 7/Persamaan Diferensial Runge-Kutta.py"

Nilai dari y saat x adalah: 0.8869291754400297

Process finished with exit code 0

QUOTES

Orang yang hari ini lebih baik dari hari kemarin adalah orang yang beruntung

Orang yang hari ini sama dengan hari kemarin adalah orang yang rugi

Orang yang hari ini lebih buruk dari hari kemarin adalah orang yang celaka



Kolom Komentar:

hahahaha (Luqman Sugiyono)