Difference between revisions of "Ryanson Jonathan"

From ccitonlinewiki
Jump to: navigation, search
Line 66: Line 66:
 
===Runge-Kutta Method===
 
===Runge-Kutta Method===
 
Lebih lengkapnya dapat dilihat di sini: [[Kelompok 2]]
 
Lebih lengkapnya dapat dilihat di sini: [[Kelompok 2]]
 +
 +
===KUIS===
 +
 +
'''Problem 2.1 no 6'''
 +
# Untuk memasukkan modul numpy ke dalam program.
 +
from numpy import linalg
 +
import numpy as np
 +
# Matriks a dipecah menjadi 5 baris, dengan baris pertama dinotasikan sebagai a1, baris kedua a2, dst.
 +
# matA sebagai notasi matriks a.
 +
a1 = [0,0,2,1,2]
 +
a2 = [0,1,0,2,-1]
 +
a3 = [1,2,0,-2,1]
 +
a4 = [0,0,0,-1,1]
 +
a5 = [0,1,-1,1,-1]
 +
matA = np.array ([a1,a2,a3,a4,a5])
 +
# Masukkan entri pada matriks b. matB sebagai notasi matriks b.
 +
matB = np.array ([1,1,-4,-2,-1])
 +
# Lakukan perhitungan menggunakan modul Numpy.
 +
hasil = linalg.solve (matA,matB)
 +
x1 = int(hasil[0])
 +
x2 = int(hasil[1])
 +
x3 = int(hasil[2])
 +
x4 = int(hasil[3])
 +
x5 = int(hasil[4])
 +
# Memperlihatkan hasil perhitungan kepada user.
 +
print ("Hasil perhitungan:")
 +
print ("x1=",x1,"x2=",x2,"x3=",x3,"x4=",x4,"dan x5=",x5)
 +
# Kode ini dibuat oleh Ryanson Jonathan (1806149293), menggunakan bantuan modul Numpy.
 +
 +
'''Problem 7.1 no 2'''
 +
# Line dibawah ini menunjukkan x0 dan y0 sebagai titik asal, h sebagai increment.
 +
# Digunakan h = 0.005.
 +
# x = 0.03, sesuai dengan yang diminta soal.
 +
x0 = 0
 +
y0 = 1
 +
h = 0.005
 +
x = 0.03
 +
# "fungsi" menyatakan fungsi awal dalam soal, yang telah diubah sehingga membentuk persamaan y'.
 +
# Mengubah bentuk persamaan dalam soal, y' = x^2-4y.
 +
def fungsi(x, y):
 +
    return (x**2 - 4*y)
 +
# Ini merupakan implementasi perhitungan Runge-Kutta, dinotasikan dengan "RK".
 +
def RK(x0, y0, x, h):
 +
    n = (int)((x - x0)/h) 
 +
    y = y0
 +
    for i in range(1, n + 1):
 +
      k1 = h * fungsi(x0, y)
 +
      k2 = h * fungsi(x0 + 0.5 * h, y + 0.5 * k1)
 +
      k3 = h * fungsi(x0 + 0.5 * h, y + 0.5 * k2)
 +
      k4 = h * fungsi(x0 + h, y + k3)
 +
 +
      # untuk y selanjutnya
 +
      y = y + (1.0 / 6.0)*(k1 + 2 * k2 + 2 * k3 + k4)
 +
 +
      # untuk x selanjutnya
 +
      x0 = x0 + h
 +
    return y
 +
#Memperlihatkan hasil perhitungan kepada user.
 +
print("Nilai y(", x, ") adalah", RK(x0, y0, x, h))
 +
#Kode ini dibuat oleh Ryanson Jonathan (1806149293).

Revision as of 17:41, 16 October 2019

Ryanson di tahun 2019.

Ryanson Jonathan (lahir di Jakarta, 5 Mei 2000, umur 19) merupakan seorang mahasiswa Fakultas Teknik Universitas Indonesia, mengambil jurusan Teknik Mesin. Selain itu, Ryanson juga menjalani kanal YouTube, dan akan mengeluarkan musik dengan nama Pinterbanget.


Metode Numerik

Mengapa mahasiswa Teknik Mesin harus mempelajari Kalkulus

Menurut Ryanson, mahasiswa Teknik Mesin harus belajar Kalkulus karena pada dasarnya Kalkulus adalah hal yang paling mendasar yang diperlukan untuk mempelajari hal-hal yang lebih mendalam. Ilmu-ilmu dan konsep yang dipelajari pada Kalkulus pada nantinya akan dipakai di mata kuliah lain, seperti Termodinamika Dasar dan Matematika Teknik.

Mengenal Python

Python adalah sebuah bahasa coding atau bahasa pemrograman yang digunakan untuk menyelesaikan suatu masalah.

Flowchart

Terdapat sebuah formula:

T=(x^2-1)/(x-1)

Formula ini dapat diselesaikan menggunakan flowchart, dengan metode sbb:

Letitflowwrj.jpg

Memindahkan flowchart kedalam Python

Kemudian, flowchart dapat direpresentasikan dalam kode Python sebagai berikut:

Ryansonj tugas1.png

Tuples dan Lists

Pada pertemuan kedua, dibahas mengenai dasar-dasar Python, yang beberapa sudah saya singgung di kode yang sudah digunakan di atas. Salah satu hal yang dapat dilakukan dalam Python adalah pembentukan Tuples dan Lists, yang mana Tuples berarti data yang terdapat lebih dari 1 dan Lists berarti data dalam bentuk daftar yang nantinya dapat ditambahkan.

tupel = ("Ryanson", "Jonathan", (5,5,2000))
firstname,lastname,date = tupel
print("Halo! Nama saya ", firstname, lastname, ". Saya biasa dipanggil ", firstname, ". Saya lahir tanggal", date[0], ", bulan", date[1], ", tahun ", date[2], ".")

Hasil dari kode diatas: "Halo! Nama saya Ryanson Jonathan. Saya biasa dipanggil Ryanson. Saya lahir tanggal 5, bulan 5, tahun 2000."

daftar = []
daftar.append("Telur")
daftar.append("Tepung")
daftar.append("Susu")
print("Daftar belanja untuk bulan ini: ", daftar)

Hasil dari kode diatas: "Daftar belanja untuk bulan ini: ['Telur', 'Tepung', 'Susu']"

Deret Fibonacci

Pada minggu ketiga, diberikan soal untuk membuat program untuk menyelesaikan deret Fibonacci, sehingga user dapat memasukkan suatu angka (n) dan dapat mengetahui suku ke-n dalam deret Fibonacci.

Dalam menyelesaikan masalah ini, dapat ditentukan 2 pendekatan:

1. Loop

Metode loop digunakan memakai fungsi def, if, else:

Ryansonfiboloop.png

2. Function

Metode function digunakan memakai rumus yang sudah ada untuk langsung mencari deret Fibonacci:

Ryansonfibofunc.png

Eliminasi Gauss

Lebih lengkapnya dapat dilihat di sini: Kelompok 2

Runge-Kutta Method

Lebih lengkapnya dapat dilihat di sini: Kelompok 2

KUIS

Problem 2.1 no 6

# Untuk memasukkan modul numpy ke dalam program.
from numpy import linalg 
import numpy as np
# Matriks a dipecah menjadi 5 baris, dengan baris pertama dinotasikan sebagai a1, baris kedua a2, dst.
# matA sebagai notasi matriks a.
a1 = [0,0,2,1,2]
a2 = [0,1,0,2,-1]
a3 = [1,2,0,-2,1]
a4 = [0,0,0,-1,1]
a5 = [0,1,-1,1,-1]
matA = np.array ([a1,a2,a3,a4,a5])
# Masukkan entri pada matriks b. matB sebagai notasi matriks b.
matB = np.array ([1,1,-4,-2,-1])
# Lakukan perhitungan menggunakan modul Numpy.
hasil = linalg.solve (matA,matB)
x1 = int(hasil[0])
x2 = int(hasil[1])
x3 = int(hasil[2])
x4 = int(hasil[3])
x5 = int(hasil[4])
# Memperlihatkan hasil perhitungan kepada user.
print ("Hasil perhitungan:")
print ("x1=",x1,"x2=",x2,"x3=",x3,"x4=",x4,"dan x5=",x5)
# Kode ini dibuat oleh Ryanson Jonathan (1806149293), menggunakan bantuan modul Numpy.

Problem 7.1 no 2

# Line dibawah ini menunjukkan x0 dan y0 sebagai titik asal, h sebagai increment.
# Digunakan h = 0.005.
# x = 0.03, sesuai dengan yang diminta soal.
x0 = 0
y0 = 1
h = 0.005
x = 0.03
# "fungsi" menyatakan fungsi awal dalam soal, yang telah diubah sehingga membentuk persamaan y'.
# Mengubah bentuk persamaan dalam soal, y' = x^2-4y.
def fungsi(x, y): 
   return (x**2 - 4*y) 
# Ini merupakan implementasi perhitungan Runge-Kutta, dinotasikan dengan "RK".
def RK(x0, y0, x, h): 
   n = (int)((x - x0)/h)  
   y = y0 
   for i in range(1, n + 1): 
      k1 = h * fungsi(x0, y) 
      k2 = h * fungsi(x0 + 0.5 * h, y + 0.5 * k1) 
      k3 = h * fungsi(x0 + 0.5 * h, y + 0.5 * k2) 
      k4 = h * fungsi(x0 + h, y + k3) 

      # untuk y selanjutnya 
      y = y + (1.0 / 6.0)*(k1 + 2 * k2 + 2 * k3 + k4) 

      # untuk x selanjutnya
      x0 = x0 + h 
   return y 
#Memperlihatkan hasil perhitungan kepada user.
print("Nilai y(", x, ") adalah", RK(x0, y0, x, h))
#Kode ini dibuat oleh Ryanson Jonathan (1806149293).