Difference between revisions of "Antoni"

From ccitonlinewiki
Jump to: navigation, search
Line 145: Line 145:
 
print("Maka nilai F1(reaction force) adalah : ", f1)
 
print("Maka nilai F1(reaction force) adalah : ", f1)
  
link videos :
+
 
 +
 
 +
TUGAS 5
 +
Menentukan nilai defleksi menggunakan metode numerik di bantu dengan persamaan pegas melalui persamaan matematisnya
 +
 
 +
import numpy as np
 +
 
 +
#menentukan jumlah pegas yang diinginkan
 +
 
 +
N = 2
 +
 
 +
y = N+1
 +
 
 +
K = np.zeros((y,y),float)
 +
 
 +
#mendefinisikan bahwa array berisi konstanta pegas
 +
k_peg = np.zeros(N)
 +
D=np.zeros(N)
 +
E=np.zeros(N)
 +
L=np.zeros(N)
 +
A_1=np.zeros(N)
 +
A=np.zeros(N)
 +
E_L=np.zeros(N)
 +
for i in range (0,N):
 +
    print("masukan nilai diameter material ", i+1," ?")
 +
    D[i]=eval(input())
 +
    print("masukan nilai Modulus Young material ", i+1," ?")
 +
    E[i]=eval(input())
 +
    print("masukan nilai panjang material ", i+1," ?")
 +
    L[i]=eval(input())
 +
    A_1[i] = float(D[i] * D[i])
 +
    A[i] = float(A_1[i] * 0.785)
 +
    E_L[i] = float(E[i] / L[i])
 +
    k_peg[i] = float(A[i] * E_L[i])
 +
    print("Nilai konstanta pegas ke - ", i+1, "adalah ",k_peg[i])
 +
 
 +
print("berapa besar jarak antara Titik B dan Material?")
 +
De=eval(input())
 +
 
 +
#membuat matriks global kekuatan
 +
 
 +
K[0,0] = k_peg[0]
 +
 
 +
K[N,N] = k_peg[N-1]
 +
 
 +
#pola1
 +
j_1 = 0
 +
for i_1 in range (0,N):
 +
    j_1 += 1
 +
    K[i_1,j_1] =- (k_peg[i_1])
 +
 
 +
#pola2
 +
i_2 = 0
 +
for j_2 in range (0,N):
 +
    i_2 += 1
 +
    K[i_2,j_2] =- (k_peg[j_2])
 +
 
 +
#pola3
 +
j_3 = 0
 +
for i_3 in range(1,N):
 +
    j_3 += 1
 +
    K[i_3,j_3]= k_peg[i_3]+k_peg[i_3 - 1]
 +
print("Matriks kekakuan global sisem pegas adalah : ")
 +
print("")
 +
print (K)
 +
 
 +
gaya = eval(input("masukkan gaya yang bekerja ? "))
 +
 
 +
 
 +
A = K[1:y , 1:y]
 +
 
 +
n = len(A)
 +
 
 +
B = np.zeros((n,1),float)
 +
B[0] = gaya
 +
B[1] = 0
 +
 
 +
 
 +
 
 +
#eliminasi gauss
 +
for k in range (0,n-1):   
 +
    for i in  range (k+1,n):
 +
        if A[i,k] != 0.0 :
 +
            lam = A[i,k]/A[k,k]
 +
            A[i, k:n] = A[i, k:n] - lam*A[k, k:n]
 +
            B[i]=B[i] - lam*B[k]
 +
 
 +
#back substitution
 +
U = np.zeros(n,float)
 +
for m in range (n-1,-1,-1): 
 +
    U[m]=(B[m]-np.dot(A[m,m+1:n], U[m+1:n]))/A[m,m]
 +
    print("Nilai U", m+2," =",U[m])
 +
 
 +
if (U[n-1]>De):
 +
 
 +
    print("Defleksi melebihi batas maksimum!")
 +
else:
 +
    print("Defleksi senilai : ",U[n-1])

Revision as of 22:46, 19 March 2019

Nama : ANTONI NPM  : 1706042251 Major: Naval architect and marine engineering

TUGAS 1

Tujuan dari pembelajaran metode numerik - memahami konsep/prinsip dan mampu menerapkannya - menjadi orang yang lenih mengenal dirinuya .

penerapan-penerapannya juga beberapa macam yaitu: 1.algoritma , flowchart , pemograman, metode iterative 2.menyelesaikan persamaan aljabar simultan 3.diferensial & integral 4.optimasi 5.studikasus

pada metode numerik ini kita akan banyak menjumpai angka-angka yang nilainya desimal karena dasarnya metode numerik ini ialah pedekatan sebuah nilai sebagai contoh kita punya software yang terdiri dari 34 bit dan 64 bit hal ini adalah menunjukkan koreksi pendekatan ke sebuah nilai semakin besar jumlah bit nya maka semakin banyak angka desimal yang bisa terlihat atau dapat di tampilkan.

maka perlu penalaran yang logis untuk menyelesaikan / menemukan solusi dengan metode numerik ini , bukan hafalan namun konsep berfikir kita , cara membentuk suatu konsep berfikir kita perlu banyak menganalisis dengan selalu mencari tau asal usul kenapa hal tersebut ada dan kenapa hal tersebut dapat terjadi, dengan menggunakan logika berfikir yang finite (ada batas)

salah satu logika berfikir yang kita pernah pelajari ialah kalkulus , kalkulus ialah notasi logic untuk menginterpretasikan sebuah pernyataan, kemudian dulu juga mempelajari matematika , nah kata dosen Pak Ahmad Indra (PAI) atau aki dia menyebutkan matematika bisa membantu dan juga menyesatkan , jika manusia mempunyai konsep pemikiran infinite maka matematika bisa menyesatkan. suatu saat kita akan mengerti ujar Pak Ahmad Indra

Untuk ujiannya kita menggunakan sistem muhasabah ( self reflection ) seperti yang sudah di dapatkan apa saja,dengan meliputi 3 komponen penting yaitu : 1. knowladge : yaitu pengetahuan kita, tentang yang sudah di pelajari 2. skill  : keterampilan kita dalam menerapkan pengetahuan kita 3. Value  : perubahan diri kita dari sebelumnya seperti; menjadi lebih rajin , menjadi lebih logis dalam berfikir.

Tugas 2

import numpy as np print("Hello this is linear algebra solution program :)") print("ix + jy = k") print("ax + by = c") print("Please input the value") i = int(input("input value of i :")) j = int(input("input value of j :")) k = int(input("input value of k :")) a = int(input("input value of a :")) b = int(input("input value of b :")) c = int(input("input value of c :")) x = np.array([[i,j],[a,b]]) y = np.array([k,c]) z = np.linalg.solve(x,y)

xval = int(z[0]) yval = int(z[1]) print("x = ",xval) print("y = ", yval)

TUGAS 3

Link video pembahasan break even point menggunakan matriks dengan metode eliminasi gauss jordan: https://youtu.be/YYITjvrmGIU

TUGAS 4

Membahas mengenai peralihan dan peregangan displacement menggunakan FEM dengan pengaplikasian pegas

import numpy as np

  1. menentukan jumlah pegas yang diinginkan

N = eval(input("masukan jumlah pegas yang diinginkan ? "))

y = N+1

K = np.zeros((y,y),float)

  1. mendefinisikan array yang berisi konstanta pegas

k_peg = np.zeros(N)

for i in range (0,N):

   print("masukan nilai konstanta pegas yang ke ", i+1 , "?")
   k_peg[i] = eval(input())
  1. membuat matriks global kekuatan

K[0,0] = k_peg[0]

K[N,N] = k_peg[N-1]

  1. pola1

j_1 = 0 for i_1 in range (0,N):

   j_1 += 1
   K[i_1,j_1] =- (k_peg[i_1])
  1. pola2

i_2 = 0 for j_2 in range (0,N):

   i_2 += 1
   K[i_2,j_2] =- (k_peg[j_2])
  1. pola3

j_3 = 0 for i_3 in range(1,N):

   j_3 += 1
   K[i_3,j_3]= k_peg[i_3]+k_peg[i_3 - 1]

print("Matriks kekakuan global sisem pegas adalah : ") print("") print (K)

  1. menentukan gaya yang bekerja

gaya = eval(input("masukan gaya yang bekerja atau yang diketahui ? "))


A = K[1:y , 1:y]

n = len(A)

B = np.zeros(n,float) B[n-1] = gaya

  1. eliminasi gauss

for k in range (0,n-1):


   for i in  range (k+1,n):
       
       if A[i,k] != 0.0 :
           
           
           lam = A[i,k]/A[k,k]
           
           A[i, k:n] = A[i, k:n] - lam*A[k, k:n]
           
           B[i]=B[i] - lam*B[k]

print("Matriks A : ") print("") print(A)


  1. back substitution

U = np.zeros(n,float) for m in range (n-1,-1,-1):

   U[m]=(B[m]-np.dot(A[m,m+1:n], U[m+1:n]))/A[m,m]
   print("Nilai U", m+2," =",U[m])
  1. reaction force

f1 = k_peg[0] * U[0]

print("Maka nilai F1(reaction force) adalah : ", f1)


TUGAS 5 Menentukan nilai defleksi menggunakan metode numerik di bantu dengan persamaan pegas melalui persamaan matematisnya

import numpy as np

  1. menentukan jumlah pegas yang diinginkan

N = 2

y = N+1

K = np.zeros((y,y),float)

  1. mendefinisikan bahwa array berisi konstanta pegas

k_peg = np.zeros(N) D=np.zeros(N) E=np.zeros(N) L=np.zeros(N) A_1=np.zeros(N) A=np.zeros(N) E_L=np.zeros(N) for i in range (0,N):

   print("masukan nilai diameter material ", i+1," ?")
   D[i]=eval(input())
   print("masukan nilai Modulus Young material ", i+1," ?")
   E[i]=eval(input())
   print("masukan nilai panjang material ", i+1," ?")
   L[i]=eval(input())
   A_1[i] = float(D[i] * D[i])
   A[i] = float(A_1[i] * 0.785)
   E_L[i] = float(E[i] / L[i])
   k_peg[i] = float(A[i] * E_L[i])
   print("Nilai konstanta pegas ke - ", i+1, "adalah ",k_peg[i])

print("berapa besar jarak antara Titik B dan Material?") De=eval(input())

  1. membuat matriks global kekuatan

K[0,0] = k_peg[0]

K[N,N] = k_peg[N-1]

  1. pola1

j_1 = 0 for i_1 in range (0,N):

   j_1 += 1
   K[i_1,j_1] =- (k_peg[i_1])
  1. pola2

i_2 = 0 for j_2 in range (0,N):

   i_2 += 1
   K[i_2,j_2] =- (k_peg[j_2])
  1. pola3

j_3 = 0 for i_3 in range(1,N):

   j_3 += 1
   K[i_3,j_3]= k_peg[i_3]+k_peg[i_3 - 1]

print("Matriks kekakuan global sisem pegas adalah : ") print("") print (K)

gaya = eval(input("masukkan gaya yang bekerja ? "))


A = K[1:y , 1:y]

n = len(A)

B = np.zeros((n,1),float) B[0] = gaya B[1] = 0


  1. eliminasi gauss

for k in range (0,n-1):

   for i in  range (k+1,n):
       if A[i,k] != 0.0 :
           lam = A[i,k]/A[k,k]
           A[i, k:n] = A[i, k:n] - lam*A[k, k:n]
           B[i]=B[i] - lam*B[k]
  1. back substitution

U = np.zeros(n,float) for m in range (n-1,-1,-1):

   U[m]=(B[m]-np.dot(A[m,m+1:n], U[m+1:n]))/A[m,m]
   print("Nilai U", m+2," =",U[m])

if (U[n-1]>De):

   print("Defleksi melebihi batas maksimum!")

else:

   print("Defleksi senilai : ",U[n-1])