Difference between revisions of "Metnum03-Christian Emanuel Kefi"

From ccitonlinewiki
Jump to: navigation, search
Line 220: Line 220:
 
[[File:af1.jpg|thumb|centre|1000px]]
 
[[File:af1.jpg|thumb|centre|1000px]]
  
- Dalam text view terlihat tulisan berwarna hijau, itu merupakan penanda atau note yang berfungsi memberikan keterangan dan tidak ter input kedalam hasil maupun masukan.
+
- Dalam text view terlihat '''tulisan berwarna hijau,''' itu merupakan penanda atau note yang berfungsi memberikan keterangan dan tidak ter input kedalam hasil maupun masukan.
  
- Terlihat juga inisiasi, sebenarnya itu hanya merupakan penamaan, dan sebenarnya bebas tergantung masing-masing memberikan nama.
+
- Terlihat juga '''inisiasi''', sebenarnya itu hanya merupakan penamaan, dan sebenarnya bebas tergantung masing-masing memberikan nama.
  
- Integer & real = integer merupakan merupakan bilangan bulat sementara real bisa bilangan bulat maupun decimal.
+
- '''Integer & real''' = integer merupakan merupakan bilangan bulat sementara real bisa bilangan bulat maupun decimal.
  
- Selain itu ada tanda titik dua ( : ) itu merupakan tanda dari infinity  
+
- Selain itu ada tanda '''titik dua ( : )''' itu merupakan tanda dari infinity  
  
- Pada baris no 10 terdapat tulisan “[size(inisiasi,1),2]” , itu berarti pada baris memanggil matriks inisiasi 1 = baris ; 2 = kolom, sehingga dalam codingan tersebut no 1 berarti infinity pada matriks inisiasi.
+
- Pada baris no 10 terdapat tulisan '''“[size(inisiasi,1),2]”''' , itu berarti pada baris memanggil matriks inisiasi 1 = baris ; 2 = kolom, sehingga dalam codingan tersebut no 1 berarti infinity pada matriks inisiasi.
  
- “n” yang dimaksud dalam class ini adalah jumlah node/sambungan/titik
+
- '''“n”''' yang dimaksud dalam class ini adalah jumlah node/sambungan/titik
  
- Boundary yang dimaksud adalah titik tumpu/fix yang tidak menyebabkan defleksi, dalam soal terletak pada titik 2,3 dan 4
+
- '''Boundary''' yang dimaksud adalah titik tumpu/fix yang tidak menyebabkan defleksi, dalam soal terletak pada titik 2,3 dan 4
  
- Dalam parameter load terlihat bahwa beban = 3*n karena meninjau n titik dalam 3 dimensi.
+
- Dalam parameter load terlihat bahwa beban = '''3*n''' karena meninjau n titik dalam 3 dimensi.
  
- [size(inisiasi,1)] = jumlah yang dihasilkan sesuai jumlah baris pada inisiasi dan tidak dalam bentuk matrix
+
- '''[size(inisiasi,1)]''' = jumlah yang dihasilkan sesuai jumlah baris pada inisiasi dan tidak dalam bentuk matrix
  
- [size(inisiasi,1),6,6] Ke = jumlah Ke yang dihasilkan sesuai jumlah baris pada inisiasi dan dalam bentuk matrix 6 x 6 sesuai dengan rumus 3D.
+
- '''[size(inisiasi,1),6,6]''' Ke = jumlah Ke yang dihasilkan sesuai jumlah baris pada inisiasi dan dalam bentuk matrix 6 x 6 sesuai dengan rumus 3D.
  
- Pada equation “k” terdapat (inisiasi[i,5]) yang berarti I adalah variable yang akan di looping pada bagian baris dan 5 berarti menunjukan kolom ke 5.
+
- Pada equation “k” terdapat '''(inisiasi[i,5])''' yang berarti I adalah variable yang akan di looping pada bagian baris dan 5 berarti menunjukan kolom ke 5.
  
 
[[File:af2.jpg|thumb|centre|1000px]]
 
[[File:af2.jpg|thumb|centre|1000px]]
Line 246: Line 246:
 
[[File:af3.jpg|thumb|centre|1000px]]
 
[[File:af3.jpg|thumb|centre|1000px]]
  
- Dalam stiffnessMatrixElement input inisiasi_mat itu sama saja dengan inisiasi tetapi tempatnya di function, namanya berbeda namun terhubung / sama karena [:,7]. Input tersebut berdasarkan variable dalam kurung pada equation “Ke” diatas.
+
- Dalam '''StiffnessMatrixElement''' input inisiasi_mat itu sama saja dengan inisiasi tetapi tempatnya di function, namanya berbeda namun terhubung / sama karena [:,7]. Input tersebut berdasarkan variable dalam kurung pada equation “Ke” diatas.
  
- StiffTrig = rumus dalam matrix Ke hanya ada 6 jenis
+
- '''StiffTrig''' = rumus dalam matrix Ke hanya ada 6 jenis
  
- Stifftrans = matrix pola K elemen
+
- '''Stifftrans''' = matrix pola K elemen
  
- Zeros = meng nol kan matrix
+
- '''Zeros''' = meng nol kan matrix
  
 
[[File:af4.jpg|thumb|centre|1000px]]
 
[[File:af4.jpg|thumb|centre|1000px]]
  
Dalam function StiffnessMatrixGlobal ini walaupun menggunakan looping tetapi masih harus menginut satu per satu posisi pemindahan dari matriks K element ke matriks K global.
+
Dalam function '''StiffnessMatrixGlobal''' ini walaupun menggunakan looping tetapi masih harus menginput satu per satu posisi pemindahan dari matriks K element ke matriks K global.
  
 
[[File:af5.jpg|thumb|centre|900px]]
 
[[File:af5.jpg|thumb|centre|900px]]
  
Untuk sum stifness matrix ini hanya penjumlahan semua matrix global dari setiap elemen. Jadi inputnya [: , : , :] merupakan [jumlah, baris, kolom] dan output memiliki jumlah hanya 1 jadi hanya menjadi [baris , kolom]. Cara menghitungnya seperti di algoritma, menggunakan perintah sum, dan pada setiap baris dan kolomnya di looping.  
+
Untuk '''SumStifnessMatrix''' ini hanya penjumlahan semua matrix global dari setiap elemen. Jadi inputnya [: , : , :] merupakan [jumlah, baris, kolom] dan output memiliki jumlah hanya 1 jadi hanya menjadi [baris , kolom]. Cara menghitungnya seperti di algoritma, menggunakan perintah sum, dan pada setiap baris dan kolomnya di looping.  
  
 
[[File:af6.jpg|thumb|centre|900px]]
 
[[File:af6.jpg|thumb|centre|900px]]
Line 268: Line 268:
 
[[File:af7.jpg|thumb|centre|850px]]
 
[[File:af7.jpg|thumb|centre|850px]]
  
Gaus Jordan dipakai untuk mencari nilai U, dan menggunakan perhitungan dari matrix yang terdapat pada modelica. Dalam perhitungan juga diselipkan floating eror agar nilai yang terhitung terlalu kecil atau dibawah batas floating eror akan menjadi 0.
+
Gaus Jordan dipakai untuk mencari '''nilai U''', dan menggunakan perhitungan dari matrix yang terdapat pada modelica. Dalam perhitungan juga diselipkan floating eror agar nilai yang terhitung terlalu kecil atau dibawah batas floating eror akan menjadi 0.
  
 
[[File:af8.jpg||thumb|centre|950px]]
 
[[File:af8.jpg||thumb|centre|950px]]
  
Check force mengecek apakah gaya yang terjadi pada suatu titik =0. Dalam check force fungsi fos agak berbeda sedikit karena terdapat beberapa angka titik 2 pada algorithm, contoh :
+
'''Check force''' mengecek apakah gaya yang terjadi pada suatu titik =0. Dalam check force fungsi fos agak berbeda sedikit karena terdapat beberapa angka titik 2 pada algorithm, contoh :
 
Dari pers ini : [ F1x, F1y,..., Fnx, Fny]
 
Dari pers ini : [ F1x, F1y,..., Fnx, Fny]
 
Load_x :=sum({load[i] for I in 1:3: (size(load,1)-2)})  
 
Load_x :=sum({load[i] for I in 1:3: (size(load,1)-2)})  
 
1:3:(size…) = angka mula : interval : angka akhir (dikurang 1 karena yang diminta angka ganjil.
 
1:3:(size…) = angka mula : interval : angka akhir (dikurang 1 karena yang diminta angka ganjil.

Revision as of 11:58, 14 December 2020

BIODATA DIRI

Christian Emanuel Kefi.S1 Teknik Mesin Ekstensi 2019.Universitas Indonesia

Nama : Christian Emanuel Kefi

NPM  : 1906435460

Pendidikan Terakhir : Diploma III

Pertemuan Metode Numerik-03

Pertemuan 1 : Senin,9 November 2020

Pada pertemuan kali ini mereview pembelajaran sebelum UTS dan meberikan 4 indikator dalam pembelajaran yang pertama mengetahui apa yang dipelajari, yang kedua paham konsep pembelajaran yang sudah dipelajari atau diketahui tersebut, ketiga pengaplikasian dari suatu materi/konsep yang sudah dipelajari, keempat mengenali diri/ menilai diri sendiri dalam pengaplikasian yang sudah dipelajari.

Selain itu pertemuan ini disertai pemberian tugas untuk mencoba membuat program pada aplikasi openmodelica. link dibawah menghubungkan dengan video tugas tersebut.

Tugas 1 : Muller's method menggunakan Openmodelica

https://www.youtube.com/watch?v=tKEca_-MpMI

Dalam metode ini menggunakan 3 titik tebakan yang nantinya akan dimasukan kedalam persamaan kuadrat untuk mendapatkan hasil yaitu sebuah titik potong dari sebuah garis polinomial dan garis sumbu-x. Titik tersebut merupakan pendekatan untuk menemukan akar-akar dari suatu polinomial. semakin banyak iterasi yang dilakukan semakin dekat hasil perhitungan yang dilakukan dengan akar yang sebenarnya. Gambar berikut menunjukan contoh dari program perhitungan yang menjawab suatu persoalan menemukan akar-akar dari suatu polinommial :

Contoh Program Mencari Akar Polinomial

Parameter digambar itu merupakan nilai yang diketahui atau yang nantinya akan diinput, dan nilai real adalah nilai yang ada dalam perhitungan baik yang diketahui maupun yang akan dicari.

Pertemuan 2 : Senin,16 November 2020

Pada pertemuan kali ini dilakukan penilaian terhadap PR pertama, yaitu mempelajari aplikasi openmodelica. Dari tugas tersebut saya membahas tentang Muller methods seperti yang tertera diatas.

1) Dalam pertemuan ini juga diberikan tugas membuat permodelan sederhana yaitu menjumlahkan angka 10 terhadap suatu variabel.

Fungadd.jpg

2) Selain itu juga membuat persamaan untuk mencari nilai rata-rata dari suatu data tertentu.

Program dari mencari nilai rata-rata
Hasil rata-rata

3) Selanjutnya dilakukan percobaan menbuat function class dari class pada no.1. contohnya sebagai berikut :

Funcclass.jpg

Tugas 2 : Class type function - untuk menyelesaikan persamaan aljabar simultan

Persamaan aljabar simultan adalah persamaan aljabar yang mempunyai lebih dari satu persamaan dan diselesaikan secara simultan. Pada umumnya, jenis persamaan aljabar simultan dapat diselesaikan dengan metode grafik, metode subtitusi, metode eliminasi gauss, dan metode cramer.

Pada percobaan pertama menggunakan metode class function pada open modelica dengan contoh soal sebagai berikut :

x1 + 2.x3 = 6

-3.x1 + 4.x2 + 6.x3 = 30

-x1 - 2.x2 + 3.x3 = 8


dengan contoh program function dan class sebagai berikut :

program function
program class

Dan hasil percobaan sebagai berikut

hasil

Pertemuan 3 : Senin,23 November 2020

Pada pertemuan ketiga ini dijelaskan tentang masalah teknik berupa sistem pegas-masa yang terdapat pada contoh 12.11 pada buku metode numerik.

spring mass system dapat diselesaikan dengan menggunakan persamaan dari hukum Hooke. dimana variable yang digunakan sebagai berikut :

Soal12.11.jpg

m = massa benda (kg)

k = konstanta pegas

x = Jarak perpindahan (m)

Fd-Fu = force up dan force down = merupakan force balance (zigma F)

pembagian gaya yang bekerja pada setiaap komponen

Dari gambar diatas dapat disimpulkan gaya yang bekerja pada setiap komponen diatas adalah :

1) Benda 1

 kx1 = 2k(x2-x1) + m1g  ----> 3kx1-2kx2=m1g

2) Benda 2

 2k(x2-x1)=m2g+k(x3-x2))  -----> -2kx1 + 3kx2 - kx3 = m2g

3) Benda 3

 k(x3-x2) = m3g

Untuk mencari nilai dari x digunakan persamaan sebagai berikut:

Matrixk1.jpg

Dengan persamaan tersebut dimasukan nilai k=10 kg/s^2, dan m1 = 2 kg, m2 = 3 kg, dan m3 = 2,5 kg didapatkan hasil sebagai berikut :

Nilaikw.jpg

Dengan menggunakan aplikasi open modelica didapatkan nilai dari x1, x2, x3 dengan langkah-langkah sebagai berikut :

function
class
hasil x1, x2, x3

Tugas 3 : Beam

Pada tugas kali ini mencari gaya reaksi dan defleksi pada setiap titik dari beam dibawah gaya tekan seperti dibawah ini :

Kanti.jpg

Semua kerangka beam terbuat dari kayu yang memiliki modulus elastisitas E = 1,9 x 10^6 lb/in dan A = 8 in^2

untuk mencari defleksi dan gaya reaksi hal yang dilakukan adalah :

1) Melakukan analisis node i, j, dan sudut dari setiap element

2) Mencari nilai kekakuan dari setiap element

 - Elemen 1,3,4,6 memiliki kekakuan yang sama karena memiliki A, E, dan L yang sama
 - Elemen 2, dan 5 memiliki kekakuan yang sama
Kekakuan1.jpg

3) membuat persamaan elemen-elemen

4) Dari no 3 didapatkan matriks dari individual elemen matrix, pada tahap ini dilakukan penggabungan terhadap semua individual elemen matrix

Kglobe.jpg

dan disederhanakan menjadi sebagai berikut :

Sed.jpg

5) Dari data yang didapatkan dari buku didapatkan matriks 10 x 10 :

Mataneh.jpg

karena nilai dari U1x, U1y, U3x, dan U3y = 0 , maka matriks dapat disederhanakan menjadi bentuk 6 x 6

Matrixenam.jpg

Apabila dikerjakan dengan matrix pada open modelica hasilnya sebagai berikut :

Codtugas.jpg
Hasilu.jpg

Pertemuan 4 : Senin,30 November 2020

Pertemuan ini diisi oleh pak Ahmad Indra diawali dengan menjelaskan tentang struktur statik dan struktur dinamik, dimana struktur static merupakan sistem yang bersifat tetap atau tidak berubah bedasarkan waktu sementara sistem dinamik adalah struktur yang memiliki fungsi waktu. dalam pertemuan ini juga diberikan kuis 2 nomor struktur 2 dimansi dan 3 dimensi.

QUIZ Metnum 1

Langkah-langkah dan hasil quis no.4

Quis4.1.jpg
Quis4.2.jpg
Quis4.3.jpg

Langkah-langkah quis no.8

Quis8.jpg

hasil No 8 menggunakan excel :

Untuk permodelan 3D digunakan stiffness matrix dari space trusses dengan hasil sebagai berikut :

Ex80.jpg

Pembuatan matrix lokal dan global dilakukan menggunakan excel karena lebih mudah dalam penulisan, perhitungan dan penempatan.

Ex8.jpg

Setelah didapatkan matriks lokal digabungkan menjadi matriks global dengan meng-copy paste sesuai tempat pada matrix global

Ex81.jpg

dengan memasukan kondisi batas dimana terjadi gaya tarik ke bawah searah sumbu Y sebesar 5000 N pada titik D, maka nilai-nilai dibawah ini sama dengan 0:


U2x = U2y = U2z = U3x = U3y = U3z = U4x = U4y = U4z = 0

F1x = F1z = F2x = F2y = F2z = F3x = F3y = F3z = F4x = F4y = F4z = 0


Dari kondisi tersebut matriks dapat disederhanakan menjadi 3x3 seperti dibawah ini :

Ex82.jpg

Pertemuan 5 : Senin, 7 Desember 2020

Pertemuan kali ini membahas tentang kuis yang diberikan pertemuan sebelumnya, dalam kasus ini kebanyakan mahasiswa blum memahami tentang cara menggunakan looping pada openmodelica. pertemuan kali ini dibantu oleh ahmad fahmi dalam penjelasan metode looping untuk pengerjaan kuis 1. Dari hasil dan penjelasan yang didapat mahasiswa diharapkan untuk mencoba kembali dengan kasus example 3.3 yang diberikan sebagai tugas berikutnya.

Tugas 5 : Quis 1, Example 3.3

1. Mempelajari codingan 3d Fahmi 2. Mengaplikasikan pada soal example 3.3 3. memberikan masukan atas codingan Fahmi

Serta uraikan pembahasannya di wikipage masing-masing termasuk pembahasan FlowChart, Diagram Class dan Coding tambahan anda sebagai kontribusi coding lebih aplikatif, efffisien dan robust.

1. Setelah mempelajari hasil coding dari Ahmad Fahmi, saya mememahami cara penggunaan loop dalam open modelica selain itu ilmu baru yang saya dapatkan adalah mempelajari Bahasa-bahasa baru dalam pemrograman open modelica seperti contoh dibawah ini :

Af1.jpg

- Dalam text view terlihat tulisan berwarna hijau, itu merupakan penanda atau note yang berfungsi memberikan keterangan dan tidak ter input kedalam hasil maupun masukan.

- Terlihat juga inisiasi, sebenarnya itu hanya merupakan penamaan, dan sebenarnya bebas tergantung masing-masing memberikan nama.

- Integer & real = integer merupakan merupakan bilangan bulat sementara real bisa bilangan bulat maupun decimal.

- Selain itu ada tanda titik dua ( : ) itu merupakan tanda dari infinity

- Pada baris no 10 terdapat tulisan “[size(inisiasi,1),2]” , itu berarti pada baris memanggil matriks inisiasi 1 = baris ; 2 = kolom, sehingga dalam codingan tersebut no 1 berarti infinity pada matriks inisiasi.

- “n” yang dimaksud dalam class ini adalah jumlah node/sambungan/titik

- Boundary yang dimaksud adalah titik tumpu/fix yang tidak menyebabkan defleksi, dalam soal terletak pada titik 2,3 dan 4

- Dalam parameter load terlihat bahwa beban = 3*n karena meninjau n titik dalam 3 dimensi.

- [size(inisiasi,1)] = jumlah yang dihasilkan sesuai jumlah baris pada inisiasi dan tidak dalam bentuk matrix

- [size(inisiasi,1),6,6] Ke = jumlah Ke yang dihasilkan sesuai jumlah baris pada inisiasi dan dalam bentuk matrix 6 x 6 sesuai dengan rumus 3D.

- Pada equation “k” terdapat (inisiasi[i,5]) yang berarti I adalah variable yang akan di looping pada bagian baris dan 5 berarti menunjukan kolom ke 5.

Af2.jpg
Af3.jpg

- Dalam StiffnessMatrixElement input inisiasi_mat itu sama saja dengan inisiasi tetapi tempatnya di function, namanya berbeda namun terhubung / sama karena [:,7]. Input tersebut berdasarkan variable dalam kurung pada equation “Ke” diatas.

- StiffTrig = rumus dalam matrix Ke hanya ada 6 jenis

- Stifftrans = matrix pola K elemen

- Zeros = meng nol kan matrix

Af4.jpg

Dalam function StiffnessMatrixGlobal ini walaupun menggunakan looping tetapi masih harus menginput satu per satu posisi pemindahan dari matriks K element ke matriks K global.

Af5.jpg

Untuk SumStifnessMatrix ini hanya penjumlahan semua matrix global dari setiap elemen. Jadi inputnya [: , : , :] merupakan [jumlah, baris, kolom] dan output memiliki jumlah hanya 1 jadi hanya menjadi [baris , kolom]. Cara menghitungnya seperti di algoritma, menggunakan perintah sum, dan pada setiap baris dan kolomnya di looping.

Af6.jpg

Untuk K global yang, merupakan K global yang sudah mengikuti boundary, atau dalam hiungan manual pada titik tumpu nilai defleksi = 0. Input dari function ini berasal dari KgTot dan boundary dengan output berukuran sama dengan K global.

Af7.jpg

Gaus Jordan dipakai untuk mencari nilai U, dan menggunakan perhitungan dari matrix yang terdapat pada modelica. Dalam perhitungan juga diselipkan floating eror agar nilai yang terhitung terlalu kecil atau dibawah batas floating eror akan menjadi 0.

Af8.jpg

Check force mengecek apakah gaya yang terjadi pada suatu titik =0. Dalam check force fungsi fos agak berbeda sedikit karena terdapat beberapa angka titik 2 pada algorithm, contoh : Dari pers ini : [ F1x, F1y,..., Fnx, Fny] Load_x :=sum({load[i] for I in 1:3: (size(load,1)-2)}) 1:3:(size…) = angka mula : interval : angka akhir (dikurang 1 karena yang diminta angka ganjil.