Difference between revisions of "Kelompok 12"
Adamillana (talk | contribs) |
|||
Line 23: | Line 23: | ||
== Tugas Finite Element Analysis dengan Eliminasi Gauss == | == Tugas Finite Element Analysis dengan Eliminasi Gauss == | ||
+ | |||
+ | |||
+ | Soal Statika Sturktur dengan Element Analysis menggunakan Eliminasi Gauss | ||
+ | |||
+ | Pertimbangkan tiga elemen sistem di mana Node 1 dilampirkan ke fix support, menghasilkan kendala perpindahan U1 = 0, k1 = 50 lb / in, k2 = 75 lb / in, dan k3= 100 lb/in. F1=0, F2=75, F3=50, F4=25 untuk kondisi ini tentukan perpindahan nodal U2, U3, dan U4 | ||
+ | |||
+ | |||
+ | import numpy as np | ||
+ | |||
+ | A = np.array ([[50,-50, 0, 0],[-50, 125, -75, 0],[0, -75, 175, -100], [0, 0, -100, 100]]) | ||
+ | |||
+ | b = np.array ([[0],[75],[50],[25]]) | ||
+ | |||
+ | |||
+ | def gaussElimin(A,b): | ||
+ | |||
+ | n = len(b) | ||
+ | |||
+ | 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+1:n] = A[i,k+1:n] - lam*A[k,k+1:n] | ||
+ | |||
+ | b[i] = b[i] - lam*b[k] | ||
+ | |||
+ | for k in range(n-1,-1,-1): | ||
+ | |||
+ | b[k] = (b[k] - np.dot(A[k,k+1:n],b[k+1:n]))/A[k,k] | ||
+ | |||
+ | return b | ||
+ | |||
+ | x = gaussElimin(A,b) | ||
+ | |||
+ | print (x) |
Revision as of 14:52, 2 October 2019
Perkenalkan, kami kelompok 12 dengan anggota kelompok sebagai berikut:
1. Elvin
2. Khairun Naziri Batubara
3. Adam Ilham Maulana
Tugas Metode Eliminasi Gauss
Video diatas merupakan penjelasan program eliminasi Gauss yang dibuat pada python. Rangkaian kode dari video diatas ditampilkan sebagai berikut:
Tugas Finite Element Analysis dengan Eliminasi Gauss
Soal Statika Sturktur dengan Element Analysis menggunakan Eliminasi Gauss
Pertimbangkan tiga elemen sistem di mana Node 1 dilampirkan ke fix support, menghasilkan kendala perpindahan U1 = 0, k1 = 50 lb / in, k2 = 75 lb / in, dan k3= 100 lb/in. F1=0, F2=75, F3=50, F4=25 untuk kondisi ini tentukan perpindahan nodal U2, U3, dan U4
import numpy as np
A = np.array ([[50,-50, 0, 0],[-50, 125, -75, 0],[0, -75, 175, -100], [0, 0, -100, 100]])
b = np.array ([[0],[75],[50],[25]])
def gaussElimin(A,b):
n = len(b)
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+1:n] = A[i,k+1:n] - lam*A[k,k+1:n]
b[i] = b[i] - lam*b[k]
for k in range(n-1,-1,-1):
b[k] = (b[k] - np.dot(A[k,k+1:n],b[k+1:n]))/A[k,k]
return b
x = gaussElimin(A,b)
print (x)