Difference between revisions of "Metnum03-Iza Azmar Aminudin"

From ccitonlinewiki
Jump to: navigation, search
(Pertemuan 4: Membahas Penyelesaian Trusses dan Quis 1| 30 November 2020)
(Pertemuan 4: Membahas Penyelesaian Trusses dan Quis 1| 30 November 2020)
Line 179: Line 179:
 
'''Coding'''
 
'''Coding'''
  
model Tugas3
+
 
parameter Real A=0.001;//luas
 
parameter Real E=200*10^9;//modulus elastisitas
 
parameter Real L1=1;//Panjang batang 1,2
 
parameter Real L2=1.25;//Panjang batang 4
 
parameter Real L3=1.6;//panjang batang 3,5
 
parameter Real t1=0;//sudut batang 1.Node 1 dan 2.
 
parameter Real t2=0;//sudut batang 2. Node 2 dan 3.
 
parameter Real t3=4.04;//sudut batang 3.Node 3 dan 4.
 
parameter Real t4=4.7;//sudut batang 4. Node 2 dan 4.
 
parameter Real t5=5.4;//sudut batang 5. Node 1 dan 4.
 
Real d1[8,8]=[(cos(t1))^2,sin(t1)*cos(t1),-(cos(t1))^2,-sin(t1)*cos(t1),0,0,0,0;
 
              sin(t1)*cos(t1),(sin(t1))^2,-sin(t1)*cos(t1),-(sin(t1))^2,0,0,0,0;
 
              -(cos(t1))^2,-sin(t1)*cos(t1),(cos(t1))^2,sin(t1)*cos(t1),0,0,0,0;
 
              -sin(t1)*cos(t1),-(sin(t1))^2,sin(t1)*cos(t1),(sin(t1))^2,0,0,0,0;
 
              0,0,0,0,0,0,0,0;
 
              0,0,0,0,0,0,0,0;
 
              0,0,0,0,0,0,0,0;
 
              0,0,0,0,0,0,0,0];         
 
Real d2[8,8]=[0,0,0,0,0,0,0,0;
 
            0,0,0,0,0,0,0,0;
 
            0,0,(cos(t2))^2,sin(t2)*cos(t2),-(cos(t2))^2,-(sin(t2)*cos(t2)),0,0;
 
            0,0,sin(t2)*cos(t2),(sin(t2))^2,-(sin(t2)*cos(t2)),-(sin(t2))^2,0,0;
 
            0,0,-(cos(t2))^2,-(sin(t2)*cos(t2)),(cos(t2))^2,sin(t2)*cos(t2),0,0;
 
            0,0,-(sin(t2)*cos(t2)),-(sin(t2))^2,sin(t2)*cos(t2),(sin(t2))^2,0,0;
 
            0,0,0,0,0,0,0,0;
 
            0,0,0,0,0,0,0,0];
 
Real d3[8,8]=[0,0,0,0,0,0,0,0;
 
            0,0,0,0,0,0,0,0;
 
            0,0,0,0,0,0,0,0;
 
            0,0,0,0,0,0,0,0;
 
            0,0,0,0,(cos(t3))^2,sin(t3)*cos(t3),-(cos(t3))^2,-sin(t3)*cos(t3);
 
            0,0,0,0,sin(t3)*cos(t3),(sin(t3))^2,-sin(t3)*cos(t3),-(sin(t3))^2;
 
            0,0,0,0,-(cos(t3))^2,-sin(t3)*cos(t3),(cos(t3))^2,sin(t3)*cos(t3);
 
            0,0,0,0,-sin(t3)*cos(t3),-(sin(t3))^2,sin(t3)*cos(t3),(sin(t3))^2];             
 
Real d4[8,8]=[0,0,0,0,0,0,0,0;
 
              0,0,0,0,0,0,0,0;
 
            0,0,(cos(t4))^2,sin(t4)*cos(t4),0,0,-(cos(t4))^2,-sin(t4)*cos(t4);
 
            0,0,sin(t4)*cos(t4),(sin(t4))^2,0,0,-sin(t4)*cos(t4),-(sin(t4))^2;
 
            0,0,0,0,0,0,0,0;
 
            0,0,0,0,0,0,0,0;
 
            0,0,-(cos(t4))^2,-sin(t3)*cos(t4),0,0,(cos(t4))^2,sin(t4)*cos(t4);
 
            0,0,-sin(t4)*cos(t4),-(sin(t4))^2,0,0,sin(t4)*cos(t4),(sin(t4))^2];           
 
Real d5[8,8]=[cos(t5)^2,sin(t5)*cos(t2),0,0,0,0,-(cos(t5))^2,-(sin(t5)*cos(t5));
 
            sin(t5)*cos(t5),(sin(t5))^2,0,0,0,0,-(sin(t5)*cos(t5)),-(sin(t5))^2;         
 
            0,0,0,0,0,0,0,0; 
 
            0,0,0,0,0,0,0,0; 
 
            0,0,0,0,0,0,0,0;
 
            0,0,0,0,0,0,0,0; 
 
            -(cos(t5))^2,-(sin(t5)*cos(t5)),0,0,0,0,(cos(t5))^2,sin(t5)*cos(t5);
 
            -(sin(t5)*cos(t5)),-(sin(t5))^2,0,0,0,0,sin(t5)*cos(t5),(sin(t5))^2];
 
Real k1;
 
Real k2;
 
Real k3;
 
Real K1[8,8];
 
Real K2[8,8];
 
Real K3[8,8];
 
Real K4[8,8];
 
Real K5[8,8];
 
Real KG[8,8];
 
equation
 
k1=A*E/L1;
 
k2=A*E/L2;
 
k3=A*E/L3;
 
K1=k1*d1;
 
K2=k1*d2;
 
K3=k3*d3;
 
K4=k2*d4;
 
K5=k3*d5;
 
KG=K1+K2+K3+K4+K5;
 
end Tugas3;
 
  
  
Line 268: Line 198:
  
 
Berikut adalah coding yang digunakan untuk mencari displacement dan reaction. Dalam simulasinya, harus menggunakan NaiveGauss agar simulasi dapat dilakukan
 
Berikut adalah coding yang digunakan untuk mencari displacement dan reaction. Dalam simulasinya, harus menggunakan NaiveGauss agar simulasi dapat dilakukan
 
Coding Untuk U dan R
 
model Tugas3UdanR
 
parameter Real A[8,8]=[10^6,0,0,0,0,0,0,0;
 
                      0,10^6,0,0,0,0,0,0;
 
                    -2*10^8,0,4*10^8,1.98*10^6,-2*10^8,0,-0.0245566,-1.9*10^6;
 
                      0,0,1.98*10^6,1.59*10^8,0,0,-1.9*10^6,-1.5*10^8;
 
                      0,0,0,0,10^6,0,0,0;
 
                      0,0,0,0,0,10^6,0,0;
 
                      -5*10^7,6.13*10^7,-0.0245566,-1.5*10^6,-4.8*10^7,-6*10^7,9.88*10^7,1.58*10^6;
 
                      6.13*10^6,-7.4*10^7,-1.9*10^6,-1.5*10^8,-6*10^7,-7.6*10^7,1.58*10^6,3.11*10^8];//apply boundary
 
parameter Real B[8]={0,0,-1035.27618,3863.703305,0,0,-1035.27618,3863.703305};//external load
 
parameter Real KG[8,8]=[2.5*10^8,-9.6*10^7,-2*10^8,0,0,0,-5*10^7,6.13*10^7;
 
                      -6.1*10^7,7.46*10^7,0,0,0,0,6.13*10^7,-7.4*10^7;
 
                    -2*10^8,0,4*10^8,1.98*10^6,-2*10^8,0,-0.0245566,-1.9*10^6;
 
                      0,0,1.98*10^6,1.59*10^8,0,0,-1.9*10^6,-1.5*10^8;
 
                      0,0,-2*10^8,0,2.48*10^8,6.09*10^7,-4.8*10^7,-6*10^7;
 
                      0,0,0,0,6.09*10^7,7.65*10^7,-6*10^7,-7.6*10^7;
 
                      -5*10^7,6.13*10^7,-0.0245566,-1.5*10^6,-4.8*10^7,-6*10^7,9.88*10^7,1.58*10^6;
 
                      6.13*10^7,-7.4*10^7,-1.9*10^6,-1.5*10^8,-6*10^7,-7.6*10^7,1.58*10^6,3.11*10^8];                       
 
parameter Real F[8]={0,0,-1035.27618,3863.703305,0,0,-1035.27618,3863.703305};//force
 
Real U[8];//displacement
 
Real R[8];//reaction
 
equation
 
U=NaiveeeeGausss(A,B);
 
R=(KG*U)-F;
 
 
end Tugas3UdanR;
 
 
 
Coding Untuk NaiveGauss
 
function NaiveeeeGausss
 
 
input Real [8,8] A;
 
input Real [8] B; 
 
output Real [8] x; 
 
protected
 
Real [8,8] a;
 
Real [8] b;
 
Integer m = size(A,1); // jumlah kolom
 
Integer n = size(A,2); // jumlah baris
 
Real k = 1;     
 
Real i = 1;     
 
Real j = 1;     
 
Real factor = 1;
 
Real sum = 1; 
 
 
algorithm
 
a := A;
 
b := B;
 
// Forward Elimination
 
for k in 1:(n-1) loop
 
  for i in (k+1):n loop
 
    factor := a[i,k] / a[k,k];
 
    for j in (k+1):n loop
 
      a[i,j] := a[i,j] - (factor * a[k,j]);
 
    end for;
 
    b[i] := b[i] - (factor * b[k]);
 
  end for;
 
end for;
 
// Back Substitution
 
x[n] := b[n] / a[n,n];
 
for i in (n-1):(-1) loop
 
  sum := b[i];
 
  for j in (i+1):n loop
 
    sum := sum - (a[i,j] * x[j]);
 
  end for;
 
  x[i] := sum / a[i,i];
 
end for;
 
 
 
end NaiveeeeGausss;
 
 
 
  
 
Tampilan Modelica Untuk Coding Model U dan R serta function NaiveGauss
 
Tampilan Modelica Untuk Coding Model U dan R serta function NaiveGauss

Revision as of 12:06, 7 December 2020

                                                               بِسْمِ اللّهِ الرَّحْمَنِ الرَّحِيْمِ

Assalamu'alaikum Wr. Wb,

Salam Sejahtera untuk kita semua,

Biodata Diri

Perkenalkan saya:

Nama  : Iza Azamr Aminudin

NPM  : 1806233316

Kelas  : Metnum-03


Melalui laman web ini, insya Allah saya akan berbagi kepada teman-teman sekalian terkait pembelajaran mata kuliah Metode Numerik yang saya pelajari bersama pa DAI dan teman-teman di kelas Metnum 03. Semoga yang saya tulis dalam laman ini dapat memberi hikmah bagi saya dan teman-teman pembaca, aamiiin.


Pendahuluan | Filosofi dalam Belajar Metode Numerik

Salah satu kewajiban hakiki untuk manusia adalah untuk belajar memetik hikmah dari semua pembelajaran yang akan terus ada selama hidup ini. Selain itu, Nabi Muhammad SAW sebagai idola saya pernah berkata bahwa sebaik-baiknya manusia adalah manusia yang paling bermanfaat bagi manusia (H.R Ahmad). Kedua hal ini insya Allah terus memotivasi saya untuk terus belajar dan memanfaatkan ilmu yang saya pelajari baik bagi kehidupan saya sendiri hingga untuk kepentingan orang banyak lainnya. Melalui mata kuliah metode numerik ini saya berharap untuk mendapatkan ilmu baik yang berupa materi pembelajaran seperti yang diajarkan oleh Pa DAI, dari buku, maupun melalui pengajaran yang dilakukan oleh asisten dosen dan teman-teman saya. Selain itu, saya berharap dengan menekuni pembelajaran metode numerik ini dapat menambah pengetahuan dan "ketidaktahuan" tentang hal-hal yang belum saya pelajari maupun mengerti sehingga terus menambah motivasi saya dalam belajar dan juga menjaga saya dari sikap riya dan takabur yang dapat membuat saya menjadi orang yang berpikiran tertutup dan menututp keran ilmu pengetahuan,

Semangat teman-teman semua dalam menimba ilmu dalam mata kuliah ini.

Pertemuan 1: Review Materi Pra-UTS dan Pengantar Software Open-Modelica | 9 November 2020

Review Materi Sebelum UTS

Pembelajaran mata kuliah Metode Numerik-03 sebelumnya diampu oleh Bapak Dr. Ir. Engkos A. Kosasih, M.T. Selama pembelajaran sebelum UTS, kami mempelajari beberapa konsep yang digunakan dalam menyelesaikan permasalahan dengan metode numerik. Diantara materi-materi tersebut diantanya adalah sebagai berikut.

1. Deret Maclaurin dan Deret Taylor

Teorema Ketunggalan Andaikan f memenuhi uraian berikut,

                                                          f(x) = c0 + c1(x - a) + c2(x - a)^2  + c3(x - a)^3 .  .  .

untuk semua x dalam selang di sekitar a, maka cn = Jadi suatu fungsi tidak dapat digambarkan oleh dua deret pangkat dari (x - a).


2. Gauss Elimination


Tutorial Open-Modelica

https://www.youtube.com/watch?v=l7I8YlQBdug

Pertemuan 2: Review Tugas Modelica dan Simulasi Penyelesaian Metode Numerik | 16 November 2020

Pada kesempatan kali ini, kami mempelajari cara membuat program sederhana didalam modelica untuk menjumlahkan angka 10 kepada sebuah variable dan mencari rata-rata nilai dengan menggunakan software modelica.

1. Membuat program sederhana didalam modelica untuk menjumlahkan angka 10 kepada sebuah variable software modelica.

Memasukan Coding untuk permasalahan


Menguji logic coding


Melakukan Simulasi


2. Mencari rata-rata nilai dengan menggunakan software modelica.

Memasukan Coding untuk permasalahan


Menguji logic coding


Melakukan Simulasi


3. Tugas 02

Melakukan Eliminasi Gauss untuk menyelesaikan persamaan linear tiga variabel. Tugas kali ini yaitu Pr2 metnum ... Buat class dengan type function untuk menyelesaikan persamaa2n aljabar simultan (metoda gauss elim, gauss seidel ataupun metoda lain) ... Dan sebuah class untuk menjalankan fungsi tersebut. Waktu 1 minggu dan dikumpulkan di wikipage air.eng.

Berikut adalah persamaan yang akan saya uji

Persamaan Aljabar Linear


Kemudian saya membuat class sebagai berikut.

Class Gauss Elimination

Dan membuat function sebagai berikut

Function Gauss Elimination

Setelah function dan class dibuat, barulah saya melakukan simulasi untuk mendapatkan hasilnya. Berikut adalah hasil yang saya dapatkan.

Grafik Hasil Function



Pertemuan 3: Menyelesaikan Spring-mass System| 23 November 2020

Menyelesaikan persamaan Spring-mass System dengan menggunakan software modelica


Soal Spring-mass System


Penjabaran Soal Spring-mass System


Persamaan Dari Problem di Soal


Persamaan Hk. Hooke dari Problem di Soal


Matriks Persamaan Hk. Hooke


Nilai Delta x dapat dicari dari matriks tersebut dengan eliminasi Gauss menggunakan software modelica.

Coding di Class Modelica
Coding di Function Modelica

Sehingga didapatlah hasil sebagai berikut.

Hasil nilai delta x dan grafiknya dalam modelica


Tugas 3 Dalam tugas 3 kami diberikan suatu permasalahan metode numerik dalam suatu truses

Soal

Memisalkan trus dalam node-node

Pemisalan truss menjadi node node

Berikut adalah persamaan

penyelesaian dengan rumus
Persamaan solusi dari soal


Matrix penyelesaian dari soal

Matrix solusi dari trusses untuk diselesaikan dengan openmodelica

Coding di Class Modelica
Coding di Class Modelica
Coding di Class Modelica

hasil grafik dan perhitungan dari modelica

Coding di Class Modelica


Pertemuan 4: Membahas Penyelesaian Trusses dan Quis 1| 30 November 2020

Soal Quis 1

Soal Quiz no. 4
Soal Quiz 8

Langkah-langkah dalam menyelesaikan soal

Flow chart

Menyelesaikan Soal no. 4

Proses mencari persamaan matriks untuk menentukan nilai konstanta kekakuan global

Solusi
Solusi


Setelah mendapatkan persamaan dari matriks untuk mencari kekakuan global dari masing-masing titik, langkah selanjutnya adalah dengan menggunakan perangkat lunak Open Modelica untuk mencari kekakuan global dari masing-masing titik tersebut


Berikut adalah Tampilan Coding di Software Modelica Beserta rincian Codingnya

Coding Untuk Matriks Mencari nilai Konstanta Kekakuan Global

Coding



Tampilan Modelica

Coding Untuk Matriks Mencari nilai Konstanta Kekakuan Global

Selanjtnya dilakukan pengecekan Coding dan dilakukanlah simulasi

Solusi


Berikut adalah hasil yang didapatkan dari simulasi menggunakan Open Modelica untuk mencari Kekakuan Lokal

Solusi


Setelah itu, langkah selanjutnya adalah mencari displacement (U) dan reaction (R). Untuk mencari displacement, perlu diperhatikan boundary dan external load yang ada dan dimasukan kedalam matriks. Karena titik 1 dan 3 merupakan pinned, maka tidak ada displacement pada titik 1 dan 3(U1x=U1Y=U3X=U3Y=0). External load berada pada titik 2 dan 4 (pada arah x sebesar -4000Cos(15) sedangkan pada arah y sebesar 4000Cos(15)). Pada Open Modelica, menggunakan persamaan A*U=F dan R=(KG*U)-R untuk mencari displacement dan reaction setiap titik:

Berikut adalah coding yang digunakan untuk mencari displacement dan reaction. Dalam simulasinya, harus menggunakan NaiveGauss agar simulasi dapat dilakukan

Tampilan Modelica Untuk Coding Model U dan R serta function NaiveGauss

Coding untuk mencari nilai U dan R
Coding function NaiveGauss untuk mencari nilai U dan R


Berikut adalah hasil yang didapatkan

Solusi untuk U dan R