Difference between revisions of "Satria Yusuf Erlangga"

From ccitonlinewiki
Jump to: navigation, search
Line 91: Line 91:
 
  [ 1.]
 
  [ 1.]
 
  [-1.]]
 
  [-1.]]
 +
 +
 +
'''2'''
 +
 +
#definisikan
 +
def dydx(x, y):
 +
    return ((x**2 - 4*y))
 +
 
 +
# Mencari nilai dari y untuk x menggunakan ukuran h
 +
def rungeKutta(x0, y0, x, h):
 +
    n = (int)((x - x0)/h) 
 +
    # Iterasi
 +
    y = y0
 +
    for i in range(1, n + 1):
 +
        "Apply Runge Kutta Formulas to find next value of y"
 +
        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)
 +
 
 +
        # Penambahan nilai y dan x
 +
        y = y + (1.0 / 6.0)*(k1 + 2 * k2 + 2 * k3 + k4) 
 +
        x0 = x0 + h
 +
    return y
 +
 
 +
#Pemisalan dan penambahan data :
 +
o = input ("berapakah nilai x0 ")
 +
p = input ("berapakah nilai y ")
 +
q = input ("berapakah nilai x ")
 +
r = input ("berapakah nilai h ")
 +
x0= int(o)
 +
y= int(p)
 +
x= float(q)
 +
h= float(r)
 +
print ('Nilai y pada x adalah:', rungeKutta(x0, y, x, h))
 +
 +
 +
'''Run'''
 +
 +
Python 3.7.4 (default, Jul  9 2019, 00:06:43)
 +
[GCC 6.3.0 20170516] on linux
 +
berapakah nilai x0 0
 +
berapakah nilai y 1
 +
berapakah nilai x 0.03
 +
berapakah nilai h 0.01
 +
Nilai y pada x adalah: 0.8869291754400297

Revision as of 23:58, 16 October 2019

Biodata


NPM : 1706036242

TTL : Tegal, 1 september 1999

Catatan 1 ,4 September 2019

Sekarang ini kita tidak luput dari pemrograman, salah satu salah satu aplikasi yang digunakan dari pemrograman adalah python. Banyak dari universitas di indonesia maupun di luar negeri sudah mencantumkan pemrograman sebagai salah satu mata kuliah wajib mereka dikarenakan betapa pentingnya mata kuliah ini.

Kenapa kita mempelajari kalkulus dalam salah satu mata kuliah teknik mesin?

Karena dalam kalkulus kita mempelajari dasar-dasar perhitungan dan rumus dasar yang dapat kita gunakan pada mata kuliah lanjutan seperti matematika teknik , mekanika fluida dan mata kuliah lainnya.

HW 1 : Pelajari Python dan dan membuat program untuk menyelesaikan suatu fungsi


Pada Tugas yang pertama kali ini kita diminta untuk menyelesaikan limit dari fungsi F(x)= (x^2-1)/(x-1) dengan x=1

Pada tugas kali ini, saya mencoba menggunakan import library sympy untuk simbolic mathemathic dari library python itu sendiri. sympy tersendiri didesain agar memiliki feature full sebagai CAS atau computer algebra system

Berikut langkah2 yang saya lakukan:

Ucup1.png


Catatan 2 ,11 September 2019

Kita sebagai engineer , harus memahami komputer itu sendiri. Tidak hanya cuma bisa menggunakan nya, namun memahami juga bagaimana program dari komputer sendiri dapat digunakan. Seperti kata Pak Radon, jika kita ingin mempelajari kita harus langsung masuk mencobanya dibandingkan membaca teori dari buku.

Kemudian kami diajarkan dasar-dasar python dari Pak Radon. Saya menggunakan aplikasi Spyder dari laptop saya dikarenakan komputer yang saya gunakan tidak bisa terhubung pada internet. Disitu kami belajar sedikit tentang Tupples dan List. Berikut adalah latihan saya :

Ucup Tupple.png

Catatan 3 ,18 September 2019

Pada hari ini,Pak Dai dan Pak Radon memberikan kuis untuk menyelesaikan soal program deret fibonacci melalui python.

Deret tersebut : 1, 1, 2, 3, 5, 8, 13, .. , n. Ada banyak cara untuk menyelesaikan deret fungsi tersebut, namun yang saya gunakan adalah dengan cara if else :

Kuis 1.png


Kuis


from numpy import*
#Menyusun Matriks A, baris 1 disusun kembali dengan angka sehingga tidak eror
A = array([[1.,2.,0.,-2.,0.,-4],\
          [0.,1.,0.,2.,-1.,1],\
          [0.,0.,2.,1.,2.,1],\
          [0.,0.,0.,-1,1.,-2],\
          [0.,1.,-1.,1.,-1.,-1]])
print ('Matrix A Adalah =',A)


n=len(A)
#Segitiga atas menggunakan Gauss
for k in range(0,n-1):
   for i in range(k+1,n):
       m=A[i][k]/A[k][k]
       for j in range(0,n+1):
           A[i][j]=A[i][j]-m*A[k][j]
#Subtitusi
Hasil = zeros((n,1))
Hasil[n-1][0]=A[n-1][n]/A[n-1][n-1]
for j in range(n-2,-1,-1):
   S=0
   for i in range(j+1,n):
       S=S+A[j][i]*Hasil[i][0]
       Hasil[j][0]=(A[j][n]-S)/A[j][j]
#Print Hasil
print ('Hasil=',Hasil)

Run

Matrix A Adalah = [[ 1.  2.  0. -2.  0. -4.]
[ 0.  1.  0.  2. -1.  1.]
[ 0.  0.  2.  1.  2.  1.]
[ 0.  0.  0. -1.  1. -2.]
[ 0.  1. -1.  1. -1. -1.]]
Hasil= [[ 2.]
[-2.]
[ 1.]
[ 1.]
[-1.]]


2

#definisikan
def dydx(x, y): 
   return ((x**2 - 4*y)) 
 
# Mencari nilai dari y untuk x menggunakan ukuran h
def rungeKutta(x0, y0, x, h): 
   n = (int)((x - x0)/h)  
   # Iterasi 
   y = y0 
   for i in range(1, n + 1): 
       "Apply Runge Kutta Formulas to find next value of y"
       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) 
 
       # Penambahan nilai y dan x
       y = y + (1.0 / 6.0)*(k1 + 2 * k2 + 2 * k3 + k4)  
       x0 = x0 + h 
   return y 
 
#Pemisalan dan penambahan data :
o = input ("berapakah nilai x0 ")
p = input ("berapakah nilai y ")
q = input ("berapakah nilai x ")
r = input ("berapakah nilai h ")
x0= int(o)
y= int(p)
x= float(q)
h= float(r)
print ('Nilai y pada x adalah:', rungeKutta(x0, y, x, h))


Run

Python 3.7.4 (default, Jul  9 2019, 00:06:43)
[GCC 6.3.0 20170516] on linux
berapakah nilai x0 0
berapakah nilai y 1
berapakah nilai x 0.03
berapakah nilai h 0.01
Nilai y pada x adalah: 0.8869291754400297