Difference between revisions of "Metnum03-Muhammad Aditya Atmadja"
(→Quiz) |
|||
Line 170: | Line 170: | ||
[[File:Quiz1metnum Adit.png|600px|center]] | [[File:Quiz1metnum Adit.png|600px|center]] | ||
+ | |||
+ | Nomor 4 | ||
+ | |||
+ | Class | ||
+ | class no1Quiz | ||
+ | // DECLARATIONS | ||
+ | // Data for each member: [element #, node i, node j, theta, area, modulus, length] | ||
+ | // SI Units: [integer, integer, integer, degrees, meters^2, pascals, meters] | ||
+ | // Imperial Units: [integer, integer, integer, degrees, inches^2, lb/inches, inches] | ||
+ | parameter Real [:,7] member = [1, 1, 2, 0, 8, 1.9e6, 36; | ||
+ | 2, 2, 3, 135, 8, 1.9e6, 50.9; | ||
+ | 3, 3, 4, 0, 8, 1.9e6, 36; | ||
+ | 4, 2, 4, 90, 8, 1.9e6, 36; | ||
+ | 5, 2, 5, 45, 8, 1.9e6, 50.9; | ||
+ | 6, 4, 5, 0, 8, 1.9e6, 36]; | ||
+ | // External loads for each node: [node #, FX, FY] | ||
+ | parameter Real [:,3] node_load = [1, 0, 0; | ||
+ | 2, 0, 0; | ||
+ | 3, 0, 0; | ||
+ | 4, 0, -500; | ||
+ | 5, 0, -500]; | ||
+ | // Vector for equivalent stiffness constant of each member | ||
+ | Real [size(member,1)] k; | ||
+ | // Array for Stiffness Matrix | ||
+ | Real [size(member,1),4,4] Ke; | ||
+ | equation | ||
+ | // Calculate stiffness constants for each member element | ||
+ | k = {(member[i,5] * member[i,6] / member[i,7]) for i in 1:size(member,1)}; | ||
+ | // Find stiffness matrix for each element | ||
+ | Ke = stiffnesselement(member); | ||
+ | end no1Quiz; | ||
+ | |||
+ | |||
+ | == Pertemuan 5 == | ||
+ | |||
+ | Pada pertemuan kali ini, kami membahas kembali tentang PR sebelumnya yaitu nomor 4 dan 8. Teman saya, Ahmad Mohammad Fahmi menjelaskan tentang coding yang dia buat dari awal sampai akhir. Namun, coding dari Fahmi masih ada yang kurang, karena total gaya pada ketiga sumbu untuk soal nomor 8 masih belum sama dengan 0. Selain itu Fahmi menjelaskan kepada teman-teman di kelas tentang fungsi-fungsi yang saya gunakan untuk mengerjakan soal quiz. Beberapa hal yang saya jelaskan antara lain: | ||
+ | |||
+ | |||
+ | 1. Cara melakukan looping menggunakan fungsi for. | ||
+ | |||
+ | 2. Cara membuat data dalam bentuk array. | ||
+ | |||
+ | 3. Cara menggunakan fungsi if. | ||
+ | |||
+ | 4. Apa itu floating number dan bagaimana cara menghilangkannya. | ||
+ | |||
+ | 5. Apa itu protected variable. | ||
+ | |||
+ | 6. Fungsi dari modelica class dengan specialization class dan function. | ||
+ | |||
+ | |||
+ | == Tugas Besar == | ||
+ | |||
+ | Pada tugas besar ini kita diminta untuk mengoptimasi pemilihan material | ||
+ | |||
+ | [[File:Tugas_Besar_Metnum_Geometri_Jos.jpg|600px|center]] | ||
+ | |||
+ | Dengan asumsi sebagai berikut: | ||
+ | |||
+ | Beban akan terdistribusi hanya pada node (karena bersifat trusses). | ||
+ | Safety factor minimal bernilai 2. | ||
+ | Batas displacement 0,001 m sebelum buckling (pada truss paling atas). |
Revision as of 08:49, 4 January 2021
Contents
Biodata Diri
Nama : Muhammad Aditya Atmadja
NPM : 1806181786
Kelas : Metode Numerik 03
Pertemuan Pertama
Pada pertemuan pertama, Kami diarahkan untuk mengingat kembali pelajaran sebelum UTS
Materi UTS yang telah kami dapatkan sebagai berikut:
1. Turunan Numerik
Turunan numerik terbagi 3 yaitu:
Turunan Maju (Forward)
Turunan Mundur (Backward)
Turunan Pusat (Centered)
2. Pencarian Akar - Akar Persamaan
Untuk mencari akar - akar persamaan dapat digunakan 2 cara cara yaitu:
Close method (Bracketing) : Terdiri dari graphical method, false position dan bisection
Open method : Terdiri dari newton raphson, secant, dan simple fix point
Interpolasi dan Regresi
Interpolasi adalah metode menghasilkan titik-titik data baru dalam suatu jangkauan dari suatu set diskret data-data yang diketahui.
Regresi adalah salah satu metode untuk menentukan hubungan sebab-akibat antara variabel dengan variabel lainnya.
Selain kita mengingat tentang materi sebelum UTS, Pak DAI menginstruksikan untuk setiap mahasiswa mempelajari OpenModelica. Tutorial yang saya ikuti adalah simulasi feedback yang menggunakan sistem PID melalui video dengan link: https://www.youtube.com/watch?v=Dw66ODbMS2A
Pertemuan Kedua
Pada pertemuan ini tiap mahasiswa yang telah mempelajari OpenModelica untuk menunjukkannya pada zoom call. Setelah selesai, Pak Dai mengajarkan bagaimana cara melakukan perhitungan dengan menggunakan openmodelica. kami membuat program sederhana dalam modelica untuk menjumlahkan angka 10 kepada sebuah variabel. Berikut hasilnya:
Lalu kami diberi tugas untuk melakukan perhitungan rata-rata.
Lalu didapatkan hasil rata-rata sebagai berikut:
Tugas
Pada tugas ini saya menyelesaikan persamaan berikut
Pada penyelesaian persamaan tersebut saya menggunakan metode eliminasi gauss
Dari perhitungan diatas didapatkan nilai x1=1 , x2=2 , dan x3=3
Referensi yang saya gunakan pada penyelesaian diatas menggunakan link https://build.openmodelica.org/Documentation/Modelica.Math.Matrices.solve.html
Pertemuan 3
Pada pertemuan ini, kami diminta untuk menjelaskan tugas aljabar simultan, selanjutnya kami diminta untuk mencoba mengerjakan soal
Kode yang digunakan adalah sebagai berikut
Tugas 3
Tugas ini kami menghitung defleksi pada setiap batang dan gaya reaksinya.
matriks lokal digabung sehingga mendapatkan matriks global
Saya cari matriks posisi global untuk seluruh node dengan coding berikut:
Hasil koding
Kemudian masukkan boundary conditionnya. Pada node 1 dan 3 fix, sehingga U1x,U1y,U3x,U3y=0. Pada node 4 dan 5 diberikan gaya eksternal dengan F4y = -500lb dan F5y = -500lb. Boundary condition tersebut kemudian dimasukkan dalam persamaan {F}=[K]g*[U].
Dengan menggunakan eliminasi gauss didapatkan matriks global
Untuk mencari nilai U atau displacement, saya menggunakan coding sebagai berikut:
Hasilnya adalah
menentukan gaya reaksi dengan rumus {R}=[K]g{U}-{F}
untuk mencari gaya reaksi saya gunakan kode berikut
hasilnya adalah
File yang digunakan dapat diunduh dengan link berikut
https://drive.google.com/drive/folders/1PvrxD9vmdkvBj99Qqs0fi7nWCkrWlE6y?usp=sharing
Pertemuan 4
Pada pertemuan ini kita mengawali dengan membahas tentang perbedaan statika struktur dan dinamika struktur. Dapat disimpulkan dengan singkat statika struktur berbeda dengan dinamika struktur, pada statika struktur beban seperti contohnya di trusses tetap sedangkan pada dinamika struktur bebannya bisa berubah sewaktu-waktu seperti contohnya ada gempa bumi atau faktor eksternal lainnya.
Quiz
Soal yang diberikan adalah sebagai berikut
Lalu saya buat flowchart seperti berikut
Nomor 4
Class
class no1Quiz // DECLARATIONS // Data for each member: [element #, node i, node j, theta, area, modulus, length] // SI Units: [integer, integer, integer, degrees, meters^2, pascals, meters] // Imperial Units: [integer, integer, integer, degrees, inches^2, lb/inches, inches] parameter Real [:,7] member = [1, 1, 2, 0, 8, 1.9e6, 36; 2, 2, 3, 135, 8, 1.9e6, 50.9; 3, 3, 4, 0, 8, 1.9e6, 36; 4, 2, 4, 90, 8, 1.9e6, 36; 5, 2, 5, 45, 8, 1.9e6, 50.9; 6, 4, 5, 0, 8, 1.9e6, 36]; // External loads for each node: [node #, FX, FY] parameter Real [:,3] node_load = [1, 0, 0; 2, 0, 0; 3, 0, 0; 4, 0, -500; 5, 0, -500]; // Vector for equivalent stiffness constant of each member Real [size(member,1)] k; // Array for Stiffness Matrix Real [size(member,1),4,4] Ke; equation // Calculate stiffness constants for each member element k = {(member[i,5] * member[i,6] / member[i,7]) for i in 1:size(member,1)}; // Find stiffness matrix for each element Ke = stiffnesselement(member); end no1Quiz;
Pertemuan 5
Pada pertemuan kali ini, kami membahas kembali tentang PR sebelumnya yaitu nomor 4 dan 8. Teman saya, Ahmad Mohammad Fahmi menjelaskan tentang coding yang dia buat dari awal sampai akhir. Namun, coding dari Fahmi masih ada yang kurang, karena total gaya pada ketiga sumbu untuk soal nomor 8 masih belum sama dengan 0. Selain itu Fahmi menjelaskan kepada teman-teman di kelas tentang fungsi-fungsi yang saya gunakan untuk mengerjakan soal quiz. Beberapa hal yang saya jelaskan antara lain:
1. Cara melakukan looping menggunakan fungsi for.
2. Cara membuat data dalam bentuk array.
3. Cara menggunakan fungsi if.
4. Apa itu floating number dan bagaimana cara menghilangkannya.
5. Apa itu protected variable.
6. Fungsi dari modelica class dengan specialization class dan function.
Tugas Besar
Pada tugas besar ini kita diminta untuk mengoptimasi pemilihan material
Dengan asumsi sebagai berikut:
Beban akan terdistribusi hanya pada node (karena bersifat trusses). Safety factor minimal bernilai 2. Batas displacement 0,001 m sebelum buckling (pada truss paling atas).