Difference between revisions of "Alvi Arya Ramadhan"

From ccitonlinewiki
Jump to: navigation, search
Line 179: Line 179:
 
  end GaussJordan;
 
  end GaussJordan;
  
[[File:Screenshot(86).png|800px|thumb|center]]
+
[[File:Screenshot (86).png|800px|thumb|center]]
  
 
=== Tugas 3 ===
 
=== Tugas 3 ===

Revision as of 14:10, 2 December 2020

Biodata

Alvi arya.jpeg

assalamualaikum Wr.Wb

Nama : Alvi Arya Ramadhan

NPM  : 1806201434

Tempat, tanggal lahir : Jakarta, 3 Desember 2000

Jurusan : Teknik Mesin

Angkatan : 2018

Saya adalah mahasiswa Semester 5 jurusan teknik mesin FTUI angkatan 2018. Pada semester ini saya mengambil mata kuliah metode numerik untuk menambah kapasitas dalam diri saya dan memenuhi syarat perkuliahan. saya mengambil jurusan ini karena tertarik dengan bidang mekanika serta konversi energi yang akan banyak digunakan dalam industri 4.0 nantinya dan Berharap saya menjadi pribadi yang lebih baik lagi sehingga dapat berguna bagi lingkungan dengan ilmu yang ada dalam diri saya, saya suka olahraga karena menurut saya itu memiliki manfaat dalam jangka panjang baik jasmani dan rohani.

Tujuan dari mata kuliah metode numerik ini antara lain adalah sebagai berikut,

  • Memahami konsep dan prinsip dasar dalam Metode Numerik
  • Dapat menerapkan pemahaman dari konsep yang ada di dalam permodelan numerik
  • Mampu menerapkan Metode Numerik dalam persoalan engineering
  • Mendapat nilai tambah terhadap diri pribadi

Materi Sebelum Uts

sebelumnya saya telah diajarkan beberapa materi sebelum UTS diantaranya:

  • penghitungan deret Taylor dan McLaurin dengan metode forward, center, dan backward;
  • menghitung persamaan dengan metode Bisection, Secant,dan Raphson;
  • mencari nilai interpolasi dan regresi linier menggunakan matriks.

Tugas 1

  • mempelajari mengenai open modelica
  • hasil belajar

Pertemuan (18/11/2020)

Hari ini kita diberi tahu bahwa orang yang yang lebih baik dari hari kemarin adalah orang yang beruntung karena memiliki grafik kehidupan yang meningkat sedangkan orang yang sama saja atau bahkan lebih buruk dari hari kemarin adalah orang yang merugi sebab grafiknya akan menurun. Setelah itu kami diajarkan cara untuk membuat Class panggil dan fungsi untuk membuat sebuah persamaan yang kita rancang sendiri .

Tugas 2

aplikasi modelica dengan class dan funtion dalam permasalahan matriks dengan variabel array

Pertemuan (25/11/2020)

Aplikasi metode numerik dalam permasalahan teknik.

Dijelaskan mengenai Aplikasi Numerik dalam permasalahan Teknik. metode numerik yang sering digunakan untuk melakukan analisa masalah teknik adalah Computation Fluid Dynamics (CFD), Finite Element Analysis (FEA), dan Metode Stokastik. CFD dan FEA berdasarkan hukum-hukum fisika, sementara metode stokastik berbasis data dan statistik. ada beberapa langkah yang harus dilakukan untuk menyelesaikan sebuah masalah teknik, kita harus membuat analisa masalah selanjutnya melakukan permodelan matematis lanjut ke model numerik dan jika sudah mendapatkannya dipindahkan ke komputer sehingga mendapatkan sebuah output berupa solusi permasalahan yang ada.

setelah itu beberapa teman kami menampilkan sesuatu yang telah dia pelajari dan kami semua menyimaknya dengan seksama dalam menyelesaikan sistem persamaan dengan membuat fungsi penyelesaian dengan referensi pseudocode 9.4 untuk soal 9.5 dari buku Numerical Methods for Engineers 7th Edition oleh Chapra.

GaussJordan.mo

function GaussJordan

input Real [:,:] A;
output Real [:,:] B;

protected // untuk local variable
Integer h = 1;    //pivot row
Integer k = 1;    //pivot coloumn
Integer m = size(A,1); //Number of row
Integer n = size(A,2); //Number of column
Integer c = 0;
Integer max_row; // Row index of max number in pivot column

Real [:] pivot_column;
Real [:] pivot_row;
Real [:,:] temp_array;
Real r;

Real float_error = 10e-10;


algorithm

//fungsi input A dan output B 
B := A;
  
while h <= m and k <= n loop

  for i in 1 : m loop
    for j in 1 : n loop
     if abs(B[i,j]) <= float_error then
       B[i,j] := 0;
      end if;
    end for;
  end for;

//Finding pivot 
  pivot_column:= {B[i,h] for i in h:m};
  
    //Mencari baris terbawah yang mempunyai nilai pivot tertinggi
    c:=h-1;
    for element in pivot_column loop
      c:= c+1;
      if abs(element)== max(abs(pivot_column)) then
        max_row :=c;
      end if;
    end for;
    
  //Jika tidak ada pivot di kolom ini, pindah ke kolom selanjutnya
  if B[max_row,k] == 0 then
    k:=k+1;
   
  else 
    // tukar row h - max_row
    temp_array := B;
    temp_array[h] := B[max_row];
    temp_array[max_row] := B[h];
    B:= temp_array;
    
    //devide pivot row by pivot number
     B[h] := B[h]/B[h,k];
     
     for i in (h+1) :m loop
       r := B[i,k]/B[h,k];
      
      B[i,k]:=0;
      
      for j in (k+1) : n loop
        B[i,j] := B[i,j]-B[h,j] * r;
      end for;
    end for;
    
    //move ke pivot kolom dan row selanjutnya
    h := h+1;
    k := k+1;
    
  end if;
  
end while;

// proses dari kanan atas
h :=m;
k :=n;

while h >=1 and k>=1 loop
  
  //dealing with error
  for i in 1:m loop
    for j in 1:n loop
      if abs(B[i,j]) <=float_error then
        B[i,j]:=0;
      end if;
    end for;
  end for; 

//finding pivot 
    pivot_row := {B[h,i] for i in 1:k};
    
    //Get position index k of pivot 
    c := 0;
    for element in pivot_row loop
      c := c+1;
      if element <> 0 then
        break;
      end if;
    end for;
    k:= c;
    
  // no pivot in this row, move to next row
  if B[h,k] == 0 then 
    h:= h-1;
    
  else
    //perform row operatation
    for i in 1:(h-1) loop
      r := B[i,k];
      B[i] := B[i] - B[h] *r;
    end for;
    
    //move to next pivot row dan column
    h:=h+1;
    k:=k+1;
    
  end if;
  
end while;
    
     
end GaussJordan;
Screenshot (86).png

Tugas 3

kami diminta untuk menyederhanakan persamaan dari masalah teknik berikut.

Tugas minggu 3.jpeg