http://air.eng.ui.ac.id/api.php?action=feedcontributions&user=Jenizhar&feedformat=atomccitonlinewiki - User contributions [en]2024-03-28T18:34:24ZUser contributionsMediaWiki 1.30.0http://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=56684Valve-Jenizhar Adivianto2021-01-18T06:47:55Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
'''1. Latar belakang'''<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
'''2. Tujuan'''<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
'''3. Metodologi'''<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
'''4. Hasil''' <br />
<br />
Setelah melakukan studi literatur, saya mendapatkan informasi mengenai diagram modelling sistem pendingin radiator yang diagram dan modelnya adalah sebagai berikut. <br />
<br />
[[File:Schematic-of-the-engine-cooling-system-to-be-modeled.png|center|500px]]<br />
<br />
[[File:Parts-of-cooling-system.png|center|500px]]<br />
<br />
<br />
Sumber :<br />
<br />
- https://www.researchgate.net/figure/Parts-of-cooling-system_fig1_268369584<br />
<br />
- https://www.researchgate.net/figure/Schematic-of-the-engine-cooling-system-to-be-modeled_fig1_288875880\<br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
Karena saya menggunakan open modellica, sudah terdapat berbagai contoh untuk sistem pendingin. Berdasarkan analisa saya membandingkan sistem cooling pada radiator ini memiliki modelling yang mirip dengan salah satu example pada openmodellica yaitu heating system. oleh karena juga terbatasnya komponen-komponen pada open modelica itu sendiri, jadi saya tidak bisa untuk memodelkan keseluruhan dari sistem pendingin radiator ini. Akhirnya saya akan menyederhanakan sistem pendingin radiator ini dengan sistem pendingin simple cooling. Pemodelan sistem simple cooling ini secara garis besar memiliki fungsi dan mekanisme yang sama dengan radiator yaitu menggunakan fluida yang bekerja sebagai coolant untuk mendinginkan sumber panas. Dengan penyederhanaan ini, saya juga bisa lebih mudah untuk menganalisa dari parameter-parameter yang ditinjau di sistem cooling. <br />
.<br />
berikut merupakan example dari heating system yang menurut analisa saya sudah hampir menyerupai dari sistem pendinginan radiator. <br />
<br />
[[File:Thermal.jpg|center|500px]]<br />
<br />
Dari heating system ini, saya akan menjelaskan beberapa komponen yang bisa mewakili pada sistem pendinginan radiator. Pertama-tama, pompa digunakan untuk menginput fluida ke sistem perpipaan. Kemudian disini burner berperan sebagai sumber panas mesin pada mobil sehingga fluida yang melewati burner akan menyerap panas. selanjutnya, valve disini berperan sebagai thermostat. Perbedaannya adalah kalau valve disini masih manual sedangkan thermostat yang digunakan pada mesin berperan sebagai controller yang memiliki sensor suhu. Bila suhu fluida masih rendah maka akan diputarkan kembali ke mesin dan apabila suhu sudah tinggi, valve akan terbuka dan fluida akan mengalir ke sistem pendingin, lalu dikembalikan lagi ke pompa. <br />
<br />
Dari keseluruhan heatingsystem ini, saya menemukan bahwa masih terlalu kompleks dan banyak terjadinya error saat disimulasikan. Oleh karena itu, saya mengambil salah satu example lagi yaitu simple cooling yang akan saya analisa parameter-parameternya. Berikut merupakan pemodelan dari sistem simple cooling.<br />
<br />
[[File:Cooling.jpg|center|500px]]<br />
<br />
Berikut merupakan hasil plotting simulasi yang menunjukkan variabel T dari pipa. Hasil dari plotting ini menunjukkan bahwa sistem cooling yang dimodelkan dapat digunakan. Plotting variabel T ini juga menunjukkan bahwa konveksi pada pemodelan ini dapat bekerja. grafik plotting dapat dilihat pada gambar dibawah<br />
<br />
[[File:Plotting.jpg|center|500px]]<br />
<br />
Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. Berikutnya merupakan perbandingan dari kenaikan suhu pada pipa dan pada fluida. Dapat terlihat bahwa terdapat perbedaan diagram pada plotting ini. Pada suhu pipa lebih tinggi daripada suhu fluida. Disini menunjukkan terjadinya perpindahan panas dari pipa ke fluida namun tidak semuanya. Parameter yang mempengaruhi perpindahan panas ini adalah properties dari fluidanya tersebut.<br />
<br />
[[File:Perbandingan pipa dan fluida.jpg|center|500px]]<br />
<br />
Pada konveksi ini, rumus yang digunakan adalah :<br />
<br />
[[File:MessageImage 1610015554811.jpg|center|500px]]<br />
<br />
Keterangan:<br />
<br />
A = luas<br />
<br />
h = koefisien konveksi W/(m2.K).<br />
<br />
Ts = suhu permukaan<br />
<br />
Tf = suhu fluida<br />
<br />
Koefisien konveksi bukan merupakan properti dari suatu fluida. Ia merupakan parameter yang diperoleh berdasarkan experimen yang mana nilainya bergantung kepada semua variabel yang mempengaruhi proses konveksi seperti '''geometri permukaan, sifat aliran fluida, properti fluida dan kecepatan fluida'''. Faktor-faktor tersebut merupakan parameter dari fluida yang dapat mempengaruhi sistem pendinginan ini. Namun, ketika saya ingin mengubah variabel-variabel pada open modellica, terjadi error-error yang belum saya mengerti sehingga hasil simulasi yang akan saya analisa belum dapat dilihat. <br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.<br />
<br />
== '''UAS''' ==<br />
<br />
Assalamualaikum Wr. Wb. <br />
<br />
berikut merupakan jawab UAS sistem fluida saya<br />
<br />
[[File:Uas nomer 1.jpeg|center|750px]]<br />
<br />
[[File:22222.jpg|center|750px]]<br />
<br />
[[File:333333.jpg|center|750px]]<br />
<br />
[[File:UAS Sisflu03 Jenizhar Adivianto 1806181810 no.4.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. wb</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=56683Valve-Jenizhar Adivianto2021-01-18T06:47:20Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
'''1. Latar belakang'''<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
'''2. Tujuan'''<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
'''3. Metodologi'''<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
'''4. Hasil''' <br />
<br />
Setelah melakukan studi literatur, saya mendapatkan informasi mengenai diagram modelling sistem pendingin radiator yang diagram dan modelnya adalah sebagai berikut. <br />
<br />
[[File:Schematic-of-the-engine-cooling-system-to-be-modeled.png|center|500px]]<br />
<br />
[[File:Parts-of-cooling-system.png|center|500px]]<br />
<br />
<br />
Sumber :<br />
<br />
- https://www.researchgate.net/figure/Parts-of-cooling-system_fig1_268369584<br />
<br />
- https://www.researchgate.net/figure/Schematic-of-the-engine-cooling-system-to-be-modeled_fig1_288875880\<br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
Karena saya menggunakan open modellica, sudah terdapat berbagai contoh untuk sistem pendingin. Berdasarkan analisa saya membandingkan sistem cooling pada radiator ini memiliki modelling yang mirip dengan salah satu example pada openmodellica yaitu heating system. oleh karena juga terbatasnya komponen-komponen pada open modelica itu sendiri, jadi saya tidak bisa untuk memodelkan keseluruhan dari sistem pendingin radiator ini. Akhirnya saya akan menyederhanakan sistem pendingin radiator ini dengan sistem pendingin simple cooling. Pemodelan sistem simple cooling ini secara garis besar memiliki fungsi dan mekanisme yang sama dengan radiator yaitu menggunakan fluida yang bekerja sebagai coolant untuk mendinginkan sumber panas. Dengan penyederhanaan ini, saya juga bisa lebih mudah untuk menganalisa dari parameter-parameter yang ditinjau di sistem cooling. <br />
.<br />
berikut merupakan example dari heating system yang menurut analisa saya sudah hampir menyerupai dari sistem pendinginan radiator. <br />
<br />
[[File:Thermal.jpg|center|500px]]<br />
<br />
Dari heating system ini, saya akan menjelaskan beberapa komponen yang bisa mewakili pada sistem pendinginan radiator. Pertama-tama, pompa digunakan untuk menginput fluida ke sistem perpipaan. Kemudian disini burner berperan sebagai sumber panas mesin pada mobil sehingga fluida yang melewati burner akan menyerap panas. selanjutnya, valve disini berperan sebagai thermostat. Perbedaannya adalah kalau valve disini masih manual sedangkan thermostat yang digunakan pada mesin berperan sebagai controller yang memiliki sensor suhu. Bila suhu fluida masih rendah maka akan diputarkan kembali ke mesin dan apabila suhu sudah tinggi, valve akan terbuka dan fluida akan mengalir ke sistem pendingin, lalu dikembalikan lagi ke pompa. <br />
<br />
Dari keseluruhan heatingsystem ini, saya menemukan bahwa masih terlalu kompleks dan banyak terjadinya error saat disimulasikan. Oleh karena itu, saya mengambil salah satu example lagi yaitu simple cooling yang akan saya analisa parameter-parameternya. Berikut merupakan pemodelan dari sistem simple cooling.<br />
<br />
[[File:Cooling.jpg|center|500px]]<br />
<br />
Berikut merupakan hasil plotting simulasi yang menunjukkan variabel T dari pipa. Hasil dari plotting ini menunjukkan bahwa sistem cooling yang dimodelkan dapat digunakan. Plotting variabel T ini juga menunjukkan bahwa konveksi pada pemodelan ini dapat bekerja. grafik plotting dapat dilihat pada gambar dibawah<br />
<br />
[[File:Plotting.jpg|center|500px]]<br />
<br />
Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. Berikutnya merupakan perbandingan dari kenaikan suhu pada pipa dan pada fluida. Dapat terlihat bahwa terdapat perbedaan diagram pada plotting ini. Pada suhu pipa lebih tinggi daripada suhu fluida. Disini menunjukkan terjadinya perpindahan panas dari pipa ke fluida namun tidak semuanya. Parameter yang mempengaruhi perpindahan panas ini adalah properties dari fluidanya tersebut.<br />
<br />
[[File:Perbandingan pipa dan fluida.jpg|center|500px]]<br />
<br />
Pada konveksi ini, rumus yang digunakan adalah :<br />
<br />
[[File:MessageImage 1610015554811.jpg|center|500px]]<br />
<br />
Keterangan:<br />
<br />
A = luas<br />
<br />
h = koefisien konveksi W/(m2.K).<br />
<br />
Ts = suhu permukaan<br />
<br />
Tf = suhu fluida<br />
<br />
Koefisien konveksi bukan merupakan properti dari suatu fluida. Ia merupakan parameter yang diperoleh berdasarkan experimen yang mana nilainya bergantung kepada semua variabel yang mempengaruhi proses konveksi seperti '''geometri permukaan, sifat aliran fluida, properti fluida dan kecepatan fluida'''. Faktor-faktor tersebut merupakan parameter dari fluida yang dapat mempengaruhi sistem pendinginan ini. Namun, ketika saya ingin mengubah variabel-variabel pada open modellica, terjadi error-error yang belum saya mengerti sehingga hasil simulasi yang akan saya analisa belum dapat dilihat. <br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.<br />
<br />
== '''UAS''' ==<br />
<br />
Assalamualaikum Wr. Wb. <br />
<br />
berikut merupakan jawab UAS sistem fluida saya<br />
<br />
[[File:Uas nomer 1.jpeg|center|750px]]<br />
<br />
[[File:22222.jpg|center|750px]]<br />
<br />
[[File:333333.jpg|center|750px]]<br />
<br />
[[UAS Sisflu03 Jenizhar Adivianto 1806181810 no.4.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. wb</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:UAS_Sisflu03_Jenizhar_Adivianto_1806181810_no.4.jpg&diff=56682File:UAS Sisflu03 Jenizhar Adivianto 1806181810 no.4.jpg2021-01-18T06:46:57Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=56681Valve-Jenizhar Adivianto2021-01-18T06:46:15Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
'''1. Latar belakang'''<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
'''2. Tujuan'''<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
'''3. Metodologi'''<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
'''4. Hasil''' <br />
<br />
Setelah melakukan studi literatur, saya mendapatkan informasi mengenai diagram modelling sistem pendingin radiator yang diagram dan modelnya adalah sebagai berikut. <br />
<br />
[[File:Schematic-of-the-engine-cooling-system-to-be-modeled.png|center|500px]]<br />
<br />
[[File:Parts-of-cooling-system.png|center|500px]]<br />
<br />
<br />
Sumber :<br />
<br />
- https://www.researchgate.net/figure/Parts-of-cooling-system_fig1_268369584<br />
<br />
- https://www.researchgate.net/figure/Schematic-of-the-engine-cooling-system-to-be-modeled_fig1_288875880\<br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
Karena saya menggunakan open modellica, sudah terdapat berbagai contoh untuk sistem pendingin. Berdasarkan analisa saya membandingkan sistem cooling pada radiator ini memiliki modelling yang mirip dengan salah satu example pada openmodellica yaitu heating system. oleh karena juga terbatasnya komponen-komponen pada open modelica itu sendiri, jadi saya tidak bisa untuk memodelkan keseluruhan dari sistem pendingin radiator ini. Akhirnya saya akan menyederhanakan sistem pendingin radiator ini dengan sistem pendingin simple cooling. Pemodelan sistem simple cooling ini secara garis besar memiliki fungsi dan mekanisme yang sama dengan radiator yaitu menggunakan fluida yang bekerja sebagai coolant untuk mendinginkan sumber panas. Dengan penyederhanaan ini, saya juga bisa lebih mudah untuk menganalisa dari parameter-parameter yang ditinjau di sistem cooling. <br />
.<br />
berikut merupakan example dari heating system yang menurut analisa saya sudah hampir menyerupai dari sistem pendinginan radiator. <br />
<br />
[[File:Thermal.jpg|center|500px]]<br />
<br />
Dari heating system ini, saya akan menjelaskan beberapa komponen yang bisa mewakili pada sistem pendinginan radiator. Pertama-tama, pompa digunakan untuk menginput fluida ke sistem perpipaan. Kemudian disini burner berperan sebagai sumber panas mesin pada mobil sehingga fluida yang melewati burner akan menyerap panas. selanjutnya, valve disini berperan sebagai thermostat. Perbedaannya adalah kalau valve disini masih manual sedangkan thermostat yang digunakan pada mesin berperan sebagai controller yang memiliki sensor suhu. Bila suhu fluida masih rendah maka akan diputarkan kembali ke mesin dan apabila suhu sudah tinggi, valve akan terbuka dan fluida akan mengalir ke sistem pendingin, lalu dikembalikan lagi ke pompa. <br />
<br />
Dari keseluruhan heatingsystem ini, saya menemukan bahwa masih terlalu kompleks dan banyak terjadinya error saat disimulasikan. Oleh karena itu, saya mengambil salah satu example lagi yaitu simple cooling yang akan saya analisa parameter-parameternya. Berikut merupakan pemodelan dari sistem simple cooling.<br />
<br />
[[File:Cooling.jpg|center|500px]]<br />
<br />
Berikut merupakan hasil plotting simulasi yang menunjukkan variabel T dari pipa. Hasil dari plotting ini menunjukkan bahwa sistem cooling yang dimodelkan dapat digunakan. Plotting variabel T ini juga menunjukkan bahwa konveksi pada pemodelan ini dapat bekerja. grafik plotting dapat dilihat pada gambar dibawah<br />
<br />
[[File:Plotting.jpg|center|500px]]<br />
<br />
Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. Berikutnya merupakan perbandingan dari kenaikan suhu pada pipa dan pada fluida. Dapat terlihat bahwa terdapat perbedaan diagram pada plotting ini. Pada suhu pipa lebih tinggi daripada suhu fluida. Disini menunjukkan terjadinya perpindahan panas dari pipa ke fluida namun tidak semuanya. Parameter yang mempengaruhi perpindahan panas ini adalah properties dari fluidanya tersebut.<br />
<br />
[[File:Perbandingan pipa dan fluida.jpg|center|500px]]<br />
<br />
Pada konveksi ini, rumus yang digunakan adalah :<br />
<br />
[[File:MessageImage 1610015554811.jpg|center|500px]]<br />
<br />
Keterangan:<br />
<br />
A = luas<br />
<br />
h = koefisien konveksi W/(m2.K).<br />
<br />
Ts = suhu permukaan<br />
<br />
Tf = suhu fluida<br />
<br />
Koefisien konveksi bukan merupakan properti dari suatu fluida. Ia merupakan parameter yang diperoleh berdasarkan experimen yang mana nilainya bergantung kepada semua variabel yang mempengaruhi proses konveksi seperti '''geometri permukaan, sifat aliran fluida, properti fluida dan kecepatan fluida'''. Faktor-faktor tersebut merupakan parameter dari fluida yang dapat mempengaruhi sistem pendinginan ini. Namun, ketika saya ingin mengubah variabel-variabel pada open modellica, terjadi error-error yang belum saya mengerti sehingga hasil simulasi yang akan saya analisa belum dapat dilihat. <br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.<br />
<br />
== '''UAS''' ==<br />
<br />
Assalamualaikum Wr. Wb. <br />
<br />
berikut merupakan jawab UAS sistem fluida saya<br />
<br />
[[File:Uas nomer 1.jpeg|center|750px]]<br />
<br />
[[File:22222.jpg|center|750px]]<br />
<br />
[[File:333333.jpg|center|750px]]<br />
<br />
[[File:4444.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. wb</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:4444.jpg&diff=56680File:4444.jpg2021-01-18T06:45:34Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:333333.jpg&diff=56679File:333333.jpg2021-01-18T06:44:47Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:22222.jpg&diff=56678File:22222.jpg2021-01-18T06:44:22Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Uas_nomer_1.jpeg&diff=56677File:Uas nomer 1.jpeg2021-01-18T06:43:49Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=55931Metnum03-Jenizhar Adivianto2021-01-14T07:27:49Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
Kemudian berikut merupakan koefisien hasil hitungan dari curve fitting dengan area yang bervariasi namun dengan material sama. <br />
<br />
[[File:Koef area lock.png|center]]<br />
<br />
Selanjutnya tabel berikut merupakan hasil dari Curve fitting dari yang memiliki area yang bervariasi (Elasticity locked)<br />
<br />
[[File:MessageImage 1609746499661.jpg|center]]<br />
<br />
Sedangkan, berikut merupakan hasil tabel dari curve fitting yang memiliki elastisitas yang bervariasi (Area locked)<br />
<br />
[[File:Tabel area locked.png|center|]]<br />
<br />
Beikutnya, saya membuat diagram perbandingan untuk yang area locked, dengan sumbu y yaitu ratio dan cost dan sumbu x nya adalah area. Diagram ini bisa kita gunakan untuk melihat dimana dengan material yang sama, kita bisa mengetahui dimana area yang paling efektif dan efisien sehingga bisa kita pakai untuk optimasi. berikut merupakan diagram tabel yang saya buat.<br />
<br />
[[File:Diagram elasticity lock.png|center]]<br />
<br />
Sekian dari pembahasan tugas besar saya <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[UAS METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
Berikut merupakan pembahasan jawaban UAS saya yang akan saya tampilkan di wiki ini. <br />
<br />
'''No. 1, 2 , dan 3'''<br />
<br />
[[File:1 2 3.jpg]]<br />
<br />
'''Nomor 1'''<br />
<br />
Penjelasan :<br />
<br />
1. Membuat sketsa permodelan dari water tower agar terbayang bagaimana analisa yang akan kita lakukan<br />
<br />
2. menentukan asumsi-asumsi seperti beban, boundary, dan lain-lain<br />
<br />
3. menentukan elemen dan node yang ada pada model trusses tersebut<br />
<br />
4. menentukan beban gaya dari water galloon yang ada diatas<br />
<br />
5. mengambil beberapa data mengenai material untuk mendapatkan elastisitas, area penampang, dan jenis serta standard dari material tersebut.<br />
<br />
6. mengolah data dengan metode numerik untuk mencari defleksi dan gaya reaksi yang ada pada node. setelah itu melakukan perbandingan (material locked) dan perbandingan area (elasticity locked)<br />
<br />
7. menganalisa dengan membuat diagram dari hasil komputasi<br />
<br />
8. mengambil kesimpulan material yang sesuai dengan fungsi obyektif dan boundaries yang ada.<br />
<br />
'''Nomor 2'''<br />
<br />
'''Tujuan'''<br />
<br />
Optimasi ini dapat membantu kita dalam memilih material dan ukuran dengan lebih akurat agar design yang kita rancang dapat dibuat dengan optimal. <br />
<br />
'''Asumsi'''<br />
<br />
Gaya reaksi yang dihitung hanya pada node karena model ini adalah trusses. Trusses menganggap bahwa tidak ada defleksi pada elemen. Kemudian elastisitas tidak bisa dibandingkan secara langsung karena sangat bervariasi. <br />
<br />
'''Hukum dan Dalil'''<br />
<br />
terdapat 3 hukum yaitu :<br />
<br />
1. Hk. hooke<br />
<br />
Disini menggunakan hukum hooke karena disini kita meninjau dan menganalisa kekakuan dari setiap elemen dan node<br />
<br />
2. Hk. Newton<br />
<br />
Disini kita menggunakan hukum newton karena pada trusses keadaan dari setiap elemen dianggap rigid.<br />
<br />
<br />
'''No. 4, 5 ,6 ,dan 7'''<br />
<br />
[[File:4567.jpg]]<br />
<br />
'''Nomor 4'''<br />
<br />
Untuk perhitungan numerik pseudocode dari model ini dimulai dari menginput node dan elemen yang ada ke openmodelica, kemudian kita mencari kekakuan dari setiap elemen dengan K = A E / L. Menentukan matriks lokal dan global. Kemudian dengan kodingan pada open modellica, kita dapat menghitung U dan gaya reaksi pada setiap node. <br />
<br />
'''Nomor 5'''<br />
<br />
Fungsi obyektif dari optimasi adalah meminimalkan biaya serta constraintnya adalah material yang dipakai harus sesuai dan kuat. <br />
<br />
'''Nomer 6'''<br />
<br />
Setelah mencari referensi, saya berasumsi untuk menggunakan material besi hollow SS400 dengan ukuran 50 x 50 x 3 mm. Hal ini berarti besi hollow ini memiliki ketebalan 3 mm yang nantinya digunakan untuk menghitung luas penampang yaitu sebesar 2.91e-4. Didapatkan juga E = 6.06 GPa. L dari elemen yaitu 2 serta beban yang digunakan yaitu sebesar 30000 N yang saya ganti.<br />
<br />
'''Nomer 7'''<br />
<br />
Berikut merupakan hasil simulasi dari kodingan yang sudah saya kerjakan<br />
<br />
model UAS_METNUM_Jenizhar<br />
parameter Real w[3]={30000,0,-30000};//beban dan gaya reaksi terhadap node 3 (-) dan node 1 (+)<br />
//asumsi dari elemen yang digunakan//<br />
parameter Real a = 2.91e-4;//luas penampang<br />
parameter Real e = 6.06e9;// modulus elastis<br />
parameter Real l = 2;// panjang batang<br />
//parameter dicari<br />
Real k;//kekakuan <br />
Real mglobal[3,3];//matriks global<br />
Real dis[3];//displacement<br />
Real stress_a[3];//stress yang dialami<br />
algorithm<br />
//persamaan nilai kekakuan//<br />
k := a*e/l;<br />
//persamaan matriks global//<br />
mglobal := [k,2*k,0;<br />
-k,2*k,-k;<br />
0,-k,2*k];<br />
//displacement dengan metode gauss-jordan//<br />
dis := Modelica.Math.Matrices.solve(mglobal,w);<br />
//mecari stress pada tiap elemen//<br />
stress_a[1] := dis[1]*k;<br />
stress_a[2] := dis[2]*k;<br />
stress_a[3] := dis[3]*k;<br />
equation<br />
<br />
end UAS_METNUM_Jenizhar;<br />
<br />
[[File:MessageImage 1610566512908.jpg]]</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=55882Metnum03-Jenizhar Adivianto2021-01-14T05:59:53Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
Kemudian berikut merupakan koefisien hasil hitungan dari curve fitting dengan area yang bervariasi namun dengan material sama. <br />
<br />
[[File:Koef area lock.png|center]]<br />
<br />
Selanjutnya tabel berikut merupakan hasil dari Curve fitting dari yang memiliki area yang bervariasi (Elasticity locked)<br />
<br />
[[File:MessageImage 1609746499661.jpg|center]]<br />
<br />
Sedangkan, berikut merupakan hasil tabel dari curve fitting yang memiliki elastisitas yang bervariasi (Area locked)<br />
<br />
[[File:Tabel area locked.png|center|]]<br />
<br />
Beikutnya, saya membuat diagram perbandingan untuk yang area locked, dengan sumbu y yaitu ratio dan cost dan sumbu x nya adalah area. Diagram ini bisa kita gunakan untuk melihat dimana dengan material yang sama, kita bisa mengetahui dimana area yang paling efektif dan efisien sehingga bisa kita pakai untuk optimasi. berikut merupakan diagram tabel yang saya buat.<br />
<br />
[[File:Diagram elasticity lock.png|center]]<br />
<br />
Sekian dari pembahasan tugas besar saya <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[UAS METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
Berikut merupakan pembahasan jawaban UAS saya yang akan saya tampilkan di wiki ini. <br />
<br />
'''No. 1, 2 , dan 3'''<br />
<br />
[[File:1 2 3.jpg]]<br />
<br />
'''Nomor 1'''<br />
<br />
Penjelasan :<br />
<br />
1. Membuat sketsa permodelan dari water tower agar terbayang bagaimana analisa yang akan kita lakukan<br />
<br />
2. menentukan asumsi-asumsi seperti beban, boundary, dan lain-lain<br />
<br />
3. menentukan elemen dan node yang ada pada model trusses tersebut<br />
<br />
4. menentukan beban gaya dari water galloon yang ada diatas<br />
<br />
5. mengambil beberapa data mengenai material untuk mendapatkan elastisitas, area penampang, dan jenis serta standard dari material tersebut.<br />
<br />
6. mengolah data dengan metode numerik untuk mencari defleksi dan gaya reaksi yang ada pada node. setelah itu melakukan perbandingan (material locked) dan perbandingan area (elasticity locked)<br />
<br />
7. menganalisa dengan membuat diagram dari hasil komputasi<br />
<br />
8. mengambil kesimpulan material yang sesuai dengan fungsi obyektif dan boundaries yang ada.<br />
<br />
'''Nomor 2'''<br />
<br />
'''Tujuan'''<br />
<br />
Optimasi ini dapat membantu kita dalam memilih material dan ukuran dengan lebih akurat agar design yang kita rancang dapat dibuat dengan optimal. <br />
<br />
'''Asumsi'''<br />
<br />
Gaya reaksi yang dihitung hanya pada node karena model ini adalah trusses. Trusses menganggap bahwa tidak ada defleksi pada elemen. Kemudian elastisitas tidak bisa dibandingkan secara langsung karena sangat bervariasi. <br />
<br />
'''Hukum dan Dalil'''<br />
<br />
terdapat 3 hukum yaitu :<br />
<br />
1. Hk. hooke<br />
<br />
Disini menggunakan hukum hooke karena disini kita meninjau dan menganalisa kekakuan dari setiap elemen dan node<br />
<br />
2. Hk. Newton<br />
<br />
Disini kita menggunakan hukum newton karena pada trusses keadaan dari setiap elemen dianggap rigid.<br />
<br />
<br />
'''No. 4, 5 ,6 ,dan 7'''<br />
<br />
[[File:4567.jpg]]<br />
<br />
'''Nomor 4'''<br />
<br />
Untuk perhitungan numerik pseudocode dari model ini dimulai dari menginput node dan elemen yang ada ke openmodelica, kemudian kita mencari kekakuan dari setiap elemen dengan K = A E / L. Menentukan matriks lokal dan global. Kemudian dengan kodingan pada open modellica, kita dapat menghitung U dan gaya reaksi pada setiap node. <br />
<br />
'''Nomor 5'''<br />
<br />
Fungsi obyektif dari optimasi adalah meminimalkan biaya serta constraintnya adalah material yang dipakai harus sesuai dan kuat. <br />
<br />
'''Nomer 6'''<br />
<br />
Setelah mencari referensi, saya berasumsi untuk menggunakan material besi hollow SS400 dengan ukuran 50 x 50 x 3 mm. Hal ini berarti besi hollow ini memiliki ketebalan 3 mm yang nantinya digunakan untuk menghitung luas penampang yaitu sebesar 2.91e-4. Didapatkan juga E = 6.06 GPa. L dari elemen yaitu 2 serta beban yang digunakan yaitu sebesar 30000 N yang saya ganti.<br />
<br />
'''Nomer 7'''<br />
<br />
Berikut merupakan hasil simulasi dari kodingan yang sudah saya kerjakan<br />
<br />
[[File:MessageImage 1610566512908.jpg]]</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:MessageImage_1610566512908.jpg&diff=55880File:MessageImage 1610566512908.jpg2021-01-14T05:55:03Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=55582Metnum03-Jenizhar Adivianto2021-01-13T18:47:43Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
Kemudian berikut merupakan koefisien hasil hitungan dari curve fitting dengan area yang bervariasi namun dengan material sama. <br />
<br />
[[File:Koef area lock.png|center]]<br />
<br />
Selanjutnya tabel berikut merupakan hasil dari Curve fitting dari yang memiliki area yang bervariasi (Elasticity locked)<br />
<br />
[[File:MessageImage 1609746499661.jpg|center]]<br />
<br />
Sedangkan, berikut merupakan hasil tabel dari curve fitting yang memiliki elastisitas yang bervariasi (Area locked)<br />
<br />
[[File:Tabel area locked.png|center|]]<br />
<br />
Beikutnya, saya membuat diagram perbandingan untuk yang area locked, dengan sumbu y yaitu ratio dan cost dan sumbu x nya adalah area. Diagram ini bisa kita gunakan untuk melihat dimana dengan material yang sama, kita bisa mengetahui dimana area yang paling efektif dan efisien sehingga bisa kita pakai untuk optimasi. berikut merupakan diagram tabel yang saya buat.<br />
<br />
[[File:Diagram elasticity lock.png|center]]<br />
<br />
Sekian dari pembahasan tugas besar saya <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[UAS METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
Berikut merupakan pembahasan jawaban UAS saya yang akan saya tampilkan di wiki ini. <br />
<br />
'''No. 1, 2 , dan 3'''<br />
<br />
[[File:1 2 3.jpg]]<br />
<br />
'''Nomer 1'''<br />
<br />
<br />
<br />
'''No. 4, 5 ,6 ,dan 7'''<br />
<br />
[[File:4567.jpg]]</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:4567.jpg&diff=55581File:4567.jpg2021-01-13T18:43:47Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:1_2_3.jpg&diff=55579File:1 2 3.jpg2021-01-13T18:43:03Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=54967Metnum03-Jenizhar Adivianto2021-01-13T09:40:06Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
Kemudian berikut merupakan koefisien hasil hitungan dari curve fitting dengan area yang bervariasi namun dengan material sama. <br />
<br />
[[File:Koef area lock.png|center]]<br />
<br />
Selanjutnya tabel berikut merupakan hasil dari Curve fitting dari yang memiliki area yang bervariasi (Elasticity locked)<br />
<br />
[[File:MessageImage 1609746499661.jpg|center]]<br />
<br />
Sedangkan, berikut merupakan hasil tabel dari curve fitting yang memiliki elastisitas yang bervariasi (Area locked)<br />
<br />
[[File:Tabel area locked.png|center|]]<br />
<br />
Beikutnya, saya membuat diagram perbandingan untuk yang area locked, dengan sumbu y yaitu ratio dan cost dan sumbu x nya adalah area. Diagram ini bisa kita gunakan untuk melihat dimana dengan material yang sama, kita bisa mengetahui dimana area yang paling efektif dan efisien sehingga bisa kita pakai untuk optimasi. berikut merupakan diagram tabel yang saya buat.<br />
<br />
[[File:Diagram elasticity lock.png|center]]<br />
<br />
Sekian dari pembahasan tugas besar saya <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[UAS METODE NUMERIK]]''' ==</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=54471Valve-Jenizhar Adivianto2021-01-07T10:42:24Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
'''1. Latar belakang'''<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
'''2. Tujuan'''<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
'''3. Metodologi'''<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
'''4. Hasil''' <br />
<br />
Setelah melakukan studi literatur, saya mendapatkan informasi mengenai diagram modelling sistem pendingin radiator yang diagram dan modelnya adalah sebagai berikut. <br />
<br />
[[File:Schematic-of-the-engine-cooling-system-to-be-modeled.png|center|500px]]<br />
<br />
[[File:Parts-of-cooling-system.png|center|500px]]<br />
<br />
<br />
Sumber :<br />
<br />
- https://www.researchgate.net/figure/Parts-of-cooling-system_fig1_268369584<br />
<br />
- https://www.researchgate.net/figure/Schematic-of-the-engine-cooling-system-to-be-modeled_fig1_288875880\<br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
Karena saya menggunakan open modellica, sudah terdapat berbagai contoh untuk sistem pendingin. Berdasarkan analisa saya membandingkan sistem cooling pada radiator ini memiliki modelling yang mirip dengan salah satu example pada openmodellica yaitu heating system. oleh karena juga terbatasnya komponen-komponen pada open modelica itu sendiri, jadi saya tidak bisa untuk memodelkan keseluruhan dari sistem pendingin radiator ini. Akhirnya saya akan menyederhanakan sistem pendingin radiator ini dengan sistem pendingin simple cooling. Pemodelan sistem simple cooling ini secara garis besar memiliki fungsi dan mekanisme yang sama dengan radiator yaitu menggunakan fluida yang bekerja sebagai coolant untuk mendinginkan sumber panas. Dengan penyederhanaan ini, saya juga bisa lebih mudah untuk menganalisa dari parameter-parameter yang ditinjau di sistem cooling. <br />
.<br />
berikut merupakan example dari heating system yang menurut analisa saya sudah hampir menyerupai dari sistem pendinginan radiator. <br />
<br />
[[File:Thermal.jpg|center|500px]]<br />
<br />
Dari heating system ini, saya akan menjelaskan beberapa komponen yang bisa mewakili pada sistem pendinginan radiator. Pertama-tama, pompa digunakan untuk menginput fluida ke sistem perpipaan. Kemudian disini burner berperan sebagai sumber panas mesin pada mobil sehingga fluida yang melewati burner akan menyerap panas. selanjutnya, valve disini berperan sebagai thermostat. Perbedaannya adalah kalau valve disini masih manual sedangkan thermostat yang digunakan pada mesin berperan sebagai controller yang memiliki sensor suhu. Bila suhu fluida masih rendah maka akan diputarkan kembali ke mesin dan apabila suhu sudah tinggi, valve akan terbuka dan fluida akan mengalir ke sistem pendingin, lalu dikembalikan lagi ke pompa. <br />
<br />
Dari keseluruhan heatingsystem ini, saya menemukan bahwa masih terlalu kompleks dan banyak terjadinya error saat disimulasikan. Oleh karena itu, saya mengambil salah satu example lagi yaitu simple cooling yang akan saya analisa parameter-parameternya. Berikut merupakan pemodelan dari sistem simple cooling.<br />
<br />
[[File:Cooling.jpg|center|500px]]<br />
<br />
Berikut merupakan hasil plotting simulasi yang menunjukkan variabel T dari pipa. Hasil dari plotting ini menunjukkan bahwa sistem cooling yang dimodelkan dapat digunakan. Plotting variabel T ini juga menunjukkan bahwa konveksi pada pemodelan ini dapat bekerja. grafik plotting dapat dilihat pada gambar dibawah<br />
<br />
[[File:Plotting.jpg|center|500px]]<br />
<br />
Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. Berikutnya merupakan perbandingan dari kenaikan suhu pada pipa dan pada fluida. Dapat terlihat bahwa terdapat perbedaan diagram pada plotting ini. Pada suhu pipa lebih tinggi daripada suhu fluida. Disini menunjukkan terjadinya perpindahan panas dari pipa ke fluida namun tidak semuanya. Parameter yang mempengaruhi perpindahan panas ini adalah properties dari fluidanya tersebut.<br />
<br />
[[File:Perbandingan pipa dan fluida.jpg|center|500px]]<br />
<br />
Pada konveksi ini, rumus yang digunakan adalah :<br />
<br />
[[File:MessageImage 1610015554811.jpg|center|500px]]<br />
<br />
Keterangan:<br />
<br />
A = luas<br />
<br />
h = koefisien konveksi W/(m2.K).<br />
<br />
Ts = suhu permukaan<br />
<br />
Tf = suhu fluida<br />
<br />
Koefisien konveksi bukan merupakan properti dari suatu fluida. Ia merupakan parameter yang diperoleh berdasarkan experimen yang mana nilainya bergantung kepada semua variabel yang mempengaruhi proses konveksi seperti '''geometri permukaan, sifat aliran fluida, properti fluida dan kecepatan fluida'''. Faktor-faktor tersebut merupakan parameter dari fluida yang dapat mempengaruhi sistem pendinginan ini. Namun, ketika saya ingin mengubah variabel-variabel pada open modellica, terjadi error-error yang belum saya mengerti sehingga hasil simulasi yang akan saya analisa belum dapat dilihat. <br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:MessageImage_1610015554811.jpg&diff=54467File:MessageImage 1610015554811.jpg2021-01-07T10:33:13Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=54449Valve-Jenizhar Adivianto2021-01-07T10:05:16Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
'''1. Latar belakang'''<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
'''2. Tujuan'''<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
'''3. Metodologi'''<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
'''4. Hasil''' <br />
<br />
Setelah melakukan studi literatur, saya mendapatkan informasi mengenai diagram modelling sistem pendingin radiator yang diagram dan modelnya adalah sebagai berikut. <br />
<br />
[[File:Schematic-of-the-engine-cooling-system-to-be-modeled.png|center|500px]]<br />
<br />
[[File:Parts-of-cooling-system.png|center|500px]]<br />
<br />
<br />
Sumber :<br />
<br />
- https://www.researchgate.net/figure/Parts-of-cooling-system_fig1_268369584<br />
<br />
- https://www.researchgate.net/figure/Schematic-of-the-engine-cooling-system-to-be-modeled_fig1_288875880\<br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
Karena saya menggunakan open modellica, sudah terdapat berbagai contoh untuk sistem pendingin. Berdasarkan analisa saya membandingkan sistem cooling pada radiator ini memiliki modelling yang mirip dengan salah satu example pada openmodellica yaitu heating system. oleh karena juga terbatasnya komponen-komponen pada open modelica itu sendiri, jadi saya tidak bisa untuk memodelkan keseluruhan dari sistem pendingin radiator ini. Akhirnya saya akan menyederhanakan sistem pendingin radiator ini dengan sistem pendingin simple cooling. Pemodelan sistem simple cooling ini secara garis besar memiliki fungsi dan mekanisme yang sama dengan radiator yaitu menggunakan fluida yang bekerja sebagai coolant untuk mendinginkan sumber panas. Dengan penyederhanaan ini, saya juga bisa lebih mudah untuk menganalisa dari parameter-parameter yang ditinjau di sistem cooling. <br />
.<br />
berikut merupakan example dari heating system yang menurut analisa saya sudah hampir menyerupai dari sistem pendinginan radiator. <br />
<br />
[[File:Thermal.jpg|center|500px]]<br />
<br />
Dari heating system ini, saya akan menjelaskan beberapa komponen yang bisa mewakili pada sistem pendinginan radiator. Pertama-tama, pompa digunakan untuk menginput fluida ke sistem perpipaan. Kemudian disini burner berperan sebagai sumber panas mesin pada mobil sehingga fluida yang melewati burner akan menyerap panas. selanjutnya, valve disini berperan sebagai thermostat. Perbedaannya adalah kalau valve disini masih manual sedangkan thermostat yang digunakan pada mesin berperan sebagai controller yang memiliki sensor suhu. Bila suhu fluida masih rendah maka akan diputarkan kembali ke mesin dan apabila suhu sudah tinggi, valve akan terbuka dan fluida akan mengalir ke sistem pendingin, lalu dikembalikan lagi ke pompa. <br />
<br />
Dari keseluruhan heatingsystem ini, saya menemukan bahwa masih terlalu kompleks dan banyak terjadinya error saat disimulasikan. Oleh karena itu, saya mengambil salah satu example lagi yaitu simple cooling yang akan saya analisa parameter-parameternya. Berikut merupakan pemodelan dari sistem simple cooling.<br />
<br />
[[File:Cooling.jpg|center|500px]]<br />
<br />
Berikut merupakan hasil plotting simulasi yang menunjukkan variabel T dari pipa. Hasil dari plotting ini menunjukkan bahwa sistem cooling yang dimodelkan dapat digunakan. Plotting variabel T ini juga menunjukkan bahwa konveksi pada pemodelan ini dapat bekerja. grafik plotting dapat dilihat pada gambar dibawah<br />
<br />
[[File:Plotting.jpg|center|500px]]<br />
<br />
Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. Berikutnya merupakan perbandingan dari kenaikan suhu pada pipa dan pada fluida. Dapat terlihat bahwa terdapat perbedaan diagram pada plotting ini. Pada suhu pipa lebih tinggi daripada suhu fluida. Disini menunjukkan terjadinya perpindahan panas dari pipa ke fluida namun tidak semuanya. Parameter yang mempengaruhi perpindahan panas ini adalah properties dari fluidanya tersebut.<br />
<br />
[[File:Perbandingan pipa dan fluida.jpg|center|500px]]<br />
<br />
<br />
<br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=54447Valve-Jenizhar Adivianto2021-01-07T10:04:28Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
'''1. Latar belakang'''<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
'''2. Tujuan'''<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
'''3. Metodologi'''<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
'''4. Hasil''' <br />
<br />
Setelah melakukan studi literatur, saya mendapatkan informasi mengenai diagram modelling sistem pendingin radiator yang diagram dan modelnya adalah sebagai berikut. <br />
<br />
[[File:Schematic-of-the-engine-cooling-system-to-be-modeled.png|center|500px]]<br />
<br />
[[File:Parts-of-cooling-system.png|center|500px]]<br />
<br />
<br />
Sumber :<br />
<br />
- https://www.researchgate.net/figure/Parts-of-cooling-system_fig1_268369584<br />
<br />
- https://www.researchgate.net/figure/Schematic-of-the-engine-cooling-system-to-be-modeled_fig1_288875880\<br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
Karena saya menggunakan open modellica, sudah terdapat berbagai contoh untuk sistem pendingin. Berdasarkan analisa saya membandingkan sistem cooling pada radiator ini memiliki modelling yang mirip dengan salah satu example pada openmodellica yaitu heating system. oleh karena juga terbatasnya komponen-komponen pada open modelica itu sendiri, jadi saya tidak bisa untuk memodelkan keseluruhan dari sistem pendingin radiator ini. Akhirnya saya akan menyederhanakan sistem pendingin radiator ini dengan sistem pendingin simple cooling. Pemodelan sistem simple cooling ini secara garis besar memiliki fungsi dan mekanisme yang sama dengan radiator yaitu menggunakan fluida yang bekerja sebagai coolant untuk mendinginkan sumber panas. Dengan penyederhanaan ini, saya juga bisa lebih mudah untuk menganalisa dari parameter-parameter yang ditinjau di sistem cooling. <br />
.<br />
berikut merupakan example dari heating system yang menurut analisa saya sudah hampir menyerupai dari sistem pendinginan radiator. <br />
<br />
[[File:Thermal.jpg|center|500px]]<br />
<br />
Dari heating system ini, saya akan menjelaskan beberapa komponen yang bisa mewakili pada sistem pendinginan radiator. Pertama-tama, pompa digunakan untuk menginput fluida ke sistem perpipaan. Kemudian disini burner berperan sebagai sumber panas mesin pada mobil sehingga fluida yang melewati burner akan menyerap panas. selanjutnya, valve disini berperan sebagai thermostat. Perbedaannya adalah kalau valve disini masih manual sedangkan thermostat yang digunakan pada mesin berperan sebagai controller yang memiliki sensor suhu. Bila suhu fluida masih rendah maka akan diputarkan kembali ke mesin dan apabila suhu sudah tinggi, valve akan terbuka dan fluida akan mengalir ke sistem pendingin, lalu dikembalikan lagi ke pompa. <br />
<br />
Dari keseluruhan heatingsystem ini, saya menemukan bahwa masih terlalu kompleks dan banyak terjadinya error saat disimulasikan. Oleh karena itu, saya mengambil salah satu example lagi yaitu simple cooling yang akan saya analisa parameter-parameternya. Berikut merupakan pemodelan dari sistem simple cooling.<br />
<br />
[[File:Cooling.jpg|center|500px]]<br />
<br />
Berikut merupakan hasil plotting simulasi yang menunjukkan variabel T dari pipa. Hasil dari plotting ini menunjukkan bahwa sistem cooling yang dimodelkan dapat digunakan. Plotting variabel T ini juga menunjukkan bahwa konveksi pada pemodelan ini dapat bekerja. grafik plotting dapat dilihat pada gambar dibawah<br />
<br />
[[File:Plotting.jpg|center|500px]]<br />
<br />
Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. <br />
<br />
<br />
<br />
<br />
<br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=54446Valve-Jenizhar Adivianto2021-01-07T10:03:44Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
'''1. Latar belakang'''<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
'''2. Tujuan'''<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
'''3. Metodologi'''<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
'''4. Hasil''' <br />
<br />
Setelah melakukan studi literatur, saya mendapatkan informasi mengenai diagram modelling sistem pendingin radiator yang diagram dan modelnya adalah sebagai berikut. <br />
<br />
[[File:Schematic-of-the-engine-cooling-system-to-be-modeled.png|center|500px]]<br />
<br />
[[File:Parts-of-cooling-system.png|center|500px]]<br />
<br />
<br />
Sumber :<br />
<br />
- https://www.researchgate.net/figure/Parts-of-cooling-system_fig1_268369584<br />
<br />
- https://www.researchgate.net/figure/Schematic-of-the-engine-cooling-system-to-be-modeled_fig1_288875880\<br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
Karena saya menggunakan open modellica, sudah terdapat berbagai contoh untuk sistem pendingin. Berdasarkan analisa saya membandingkan sistem cooling pada radiator ini memiliki modelling yang mirip dengan salah satu example pada openmodellica yaitu heating system. oleh karena juga terbatasnya komponen-komponen pada open modelica itu sendiri, jadi saya tidak bisa untuk memodelkan keseluruhan dari sistem pendingin radiator ini. Akhirnya saya akan menyederhanakan sistem pendingin radiator ini dengan sistem pendingin simple cooling. Pemodelan sistem simple cooling ini secara garis besar memiliki fungsi dan mekanisme yang sama dengan radiator yaitu menggunakan fluida yang bekerja sebagai coolant untuk mendinginkan sumber panas. Dengan penyederhanaan ini, saya juga bisa lebih mudah untuk menganalisa dari parameter-parameter yang ditinjau di sistem cooling. <br />
.<br />
berikut merupakan example dari heating system yang menurut analisa saya sudah hampir menyerupai dari sistem pendinginan radiator. <br />
<br />
[[File:Thermal.jpg|center|500px]]<br />
<br />
Dari heating system ini, saya akan menjelaskan beberapa komponen yang bisa mewakili pada sistem pendinginan radiator. Pertama-tama, pompa digunakan untuk menginput fluida ke sistem perpipaan. Kemudian disini burner berperan sebagai sumber panas mesin pada mobil sehingga fluida yang melewati burner akan menyerap panas. selanjutnya, valve disini berperan sebagai thermostat. Perbedaannya adalah kalau valve disini masih manual sedangkan thermostat yang digunakan pada mesin berperan sebagai controller yang memiliki sensor suhu. Bila suhu fluida masih rendah maka akan diputarkan kembali ke mesin dan apabila suhu sudah tinggi, valve akan terbuka dan fluida akan mengalir ke sistem pendingin, lalu dikembalikan lagi ke pompa. <br />
<br />
Dari keseluruhan heatingsystem ini, saya menemukan bahwa masih terlalu kompleks dan banyak terjadinya error saat disimulasikan. Oleh karena itu, saya mengambil salah satu example lagi yaitu simple cooling yang akan saya analisa parameter-parameternya. Berikut merupakan pemodelan dari sistem simple cooling.<br />
<br />
[[File:Cooling.jpg|center|500px]]<br />
<br />
Berikut merupakan hasil plotting simulasi yang menunjukkan variabel T dari pipa. Hasil dari plotting ini menunjukkan bahwa sistem cooling yang dimodelkan dapat digunakan. Plotting variabel T ini juga menunjukkan bahwa konveksi pada pemodelan ini dapat bekerja. grafik plotting dapat dilihat pada gambar dibawah<br />
<br />
[[File:Plotting.jpg|center|500px]]<br />
<br />
Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. Berikutnya merupakan perbandingan dari kenaikan suhu pada pipa dan pada fluida. Dapat terlihat bahwa terdapat perbedaan diagram pada plotting ini. Pada suhu pipa lebih tinggi daripada suhu fluida. Disini menunjukkan terjadinya perpindahan panas dari pipa ke fluida namun tidak semuanya. Parameter yang mempengaruhi perpindahan panas ini adalah properties dari fluidanya tersebut.<br />
<br />
[[File:Perbandingan pipa dan fluida.jpg|center|500px]]<br />
<br />
<br />
<br />
<br />
<br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Perbandingan_pipa_dan_fluida.jpg&diff=54442File:Perbandingan pipa dan fluida.jpg2021-01-07T09:59:31Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=54435Valve-Jenizhar Adivianto2021-01-07T09:54:09Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
'''1. Latar belakang'''<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
'''2. Tujuan'''<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
'''3. Metodologi'''<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
'''4. Hasil''' <br />
<br />
Setelah melakukan studi literatur, saya mendapatkan informasi mengenai diagram modelling sistem pendingin radiator yang diagram dan modelnya adalah sebagai berikut. <br />
<br />
[[File:Schematic-of-the-engine-cooling-system-to-be-modeled.png|center|500px]]<br />
<br />
[[File:Parts-of-cooling-system.png|center|500px]]<br />
<br />
<br />
Sumber :<br />
<br />
- https://www.researchgate.net/figure/Parts-of-cooling-system_fig1_268369584<br />
<br />
- https://www.researchgate.net/figure/Schematic-of-the-engine-cooling-system-to-be-modeled_fig1_288875880\<br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
Karena saya menggunakan open modellica, sudah terdapat berbagai contoh untuk sistem pendingin. Berdasarkan analisa saya membandingkan sistem cooling pada radiator ini memiliki modelling yang mirip dengan salah satu example pada openmodellica yaitu heating system. oleh karena juga terbatasnya komponen-komponen pada open modelica itu sendiri, jadi saya tidak bisa untuk memodelkan keseluruhan dari sistem pendingin radiator ini. Akhirnya saya akan menyederhanakan sistem pendingin radiator ini dengan sistem pendingin simple cooling. Pemodelan sistem simple cooling ini secara garis besar memiliki fungsi dan mekanisme yang sama dengan radiator yaitu menggunakan fluida yang bekerja sebagai coolant untuk mendinginkan sumber panas. Dengan penyederhanaan ini, saya juga bisa lebih mudah untuk menganalisa dari parameter-parameter yang ditinjau di sistem cooling. <br />
.<br />
berikut merupakan example dari heating system yang menurut analisa saya sudah hampir menyerupai dari sistem pendinginan radiator. <br />
<br />
[[File:Thermal.jpg|center|500px]]<br />
<br />
Dari heating system ini, saya akan menjelaskan beberapa komponen yang bisa mewakili pada sistem pendinginan radiator. Pertama-tama, pompa digunakan untuk menginput fluida ke sistem perpipaan. Kemudian disini burner berperan sebagai sumber panas mesin pada mobil sehingga fluida yang melewati burner akan menyerap panas. selanjutnya, valve disini berperan sebagai thermostat. Perbedaannya adalah kalau valve disini masih manual sedangkan thermostat yang digunakan pada mesin berperan sebagai controller yang memiliki sensor suhu. Bila suhu fluida masih rendah maka akan diputarkan kembali ke mesin dan apabila suhu sudah tinggi, valve akan terbuka dan fluida akan mengalir ke sistem pendingin, lalu dikembalikan lagi ke pompa. <br />
<br />
Dari keseluruhan heatingsystem ini, saya menemukan bahwa masih terlalu kompleks dan banyak terjadinya error saat disimulasikan. Oleh karena itu, saya mengambil salah satu example lagi yaitu simple cooling yang akan saya analisa parameter-parameternya. Berikut merupakan pemodelan dari sistem simple cooling.<br />
<br />
[[File:Cooling.jpg|center|500px]]<br />
<br />
Berikut merupakan hasil plotting simulasi yang menunjukkan variabel T dari pipa. Hasil dari plotting ini menunjukkan bahwa sistem cooling yang dimodelkan dapat digunakan. Plotting variabel T ini juga menunjukkan bahwa konveksi pada pemodelan ini dapat bekerja. grafik plotting dapat dilihat pada gambar dibawah<br />
<br />
[[File:Plotting.jpg|center|500px]]<br />
<br />
Dari grafik menunjukkan bahwa ada diagram suhu yang turun terlebih dahulu baru naik akibat konveksi yang hasil akhirnya adalah suhu steady pada pipa. Dari suhu pipa yang tinggi akibat konveksi dari panas suhu mesin, panas tersebut akan berpindah kepada fluida yang mengalir didalamnya yang nantinya akan dialirkan ke pendingin fluidanya. <br />
<br />
<br />
<br />
<br />
<br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Plotting.jpg&diff=54427File:Plotting.jpg2021-01-07T09:49:47Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=54047Valve-Jenizhar Adivianto2021-01-07T07:06:54Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
'''1. Latar belakang'''<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
'''2. Tujuan'''<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
'''3. Metodologi'''<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
'''4. Hasil''' <br />
<br />
Setelah melakukan studi literatur, saya mendapatkan informasi mengenai diagram modelling sistem pendingin radiator yang diagram dan modelnya adalah sebagai berikut. <br />
<br />
[[File:Schematic-of-the-engine-cooling-system-to-be-modeled.png|center|500px]]<br />
<br />
[[File:Parts-of-cooling-system.png|center|500px]]<br />
<br />
<br />
Sumber :<br />
<br />
- https://www.researchgate.net/figure/Parts-of-cooling-system_fig1_268369584<br />
<br />
- https://www.researchgate.net/figure/Schematic-of-the-engine-cooling-system-to-be-modeled_fig1_288875880\<br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
Karena saya menggunakan open modellica, sudah terdapat berbagai contoh untuk sistem pendingin. Berdasarkan analisa saya membandingkan sistem cooling pada radiator ini memiliki modelling yang mirip dengan salah satu example pada openmodellica yaitu heating system. oleh karena juga terbatasnya komponen-komponen pada open modelica itu sendiri, jadi saya tidak bisa untuk memodelkan keseluruhan dari sistem pendingin radiator ini. Akhirnya saya akan menyederhanakan sistem pendingin radiator ini dengan sistem pendingin simple cooling. Pemodelan sistem simple cooling ini secara garis besar memiliki fungsi dan mekanisme yang sama dengan radiator yaitu menggunakan fluida yang bekerja sebagai coolant untuk mendinginkan sumber panas. Dengan penyederhanaan ini, saya juga bisa lebih mudah untuk menganalisa dari parameter-parameter yang ditinjau di sistem cooling. <br />
.<br />
berikut merupakan example dari heating system yang menurut analisa saya sudah hampir menyerupai dari sistem pendinginan radiator. <br />
<br />
[[File:Thermal.jpg|center|500px]]<br />
<br />
Dari heating system ini, saya akan menjelaskan beberapa komponen yang bisa mewakili pada sistem pendinginan radiator. Pertama-tama, pompa digunakan untuk menginput fluida ke sistem perpipaan. Kemudian disini burner berperan sebagai sumber panas mesin pada mobil sehingga fluida yang melewati burner akan menyerap panas. selanjutnya, valve disini berperan sebagai thermostat. Perbedaannya adalah kalau valve disini masih manual sedangkan thermostat yang digunakan pada mesin berperan sebagai controller yang memiliki sensor suhu. Bila suhu fluida masih rendah maka akan diputarkan kembali ke mesin dan apabila suhu sudah tinggi, valve akan terbuka dan fluida akan mengalir ke sistem pendingin, lalu dikembalikan lagi ke pompa. <br />
<br />
Dari keseluruhan heatingsystem ini, saya menemukan bahwa masih terlalu kompleks dan banyak terjadinya error saat disimulasikan. Oleh karena itu, saya mengambil salah satu example lagi yaitu simple cooling yang akan saya analisa parameter-parameternya. Berikut merupakan pemodelan dari sistem simple cooling.<br />
<br />
[[File:Cooling.jpg|center|500px]]<br />
<br />
<br />
<br />
<br />
<br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Cooling.jpg&diff=54035File:Cooling.jpg2021-01-07T07:00:30Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=54034Valve-Jenizhar Adivianto2021-01-07T06:58:53Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
'''1. Latar belakang'''<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
'''2. Tujuan'''<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
'''3. Metodologi'''<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
'''4. Hasil''' <br />
<br />
Setelah melakukan studi literatur, saya mendapatkan informasi mengenai diagram modelling sistem pendingin radiator yang diagram dan modelnya adalah sebagai berikut. <br />
<br />
[[File:Schematic-of-the-engine-cooling-system-to-be-modeled.png|center|500px]]<br />
<br />
[[File:Parts-of-cooling-system.png|center|500px]]<br />
<br />
<br />
Sumber :<br />
<br />
- https://www.researchgate.net/figure/Parts-of-cooling-system_fig1_268369584<br />
<br />
- https://www.researchgate.net/figure/Schematic-of-the-engine-cooling-system-to-be-modeled_fig1_288875880\<br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
Karena saya menggunakan open modellica, sudah terdapat berbagai contoh untuk sistem pendingin. Berdasarkan analisa saya membandingkan sistem cooling pada radiator ini memiliki modelling yang mirip dengan salah satu example pada openmodellica yaitu heating system. oleh karena juga terbatasnya komponen-komponen pada open modelica itu sendiri, jadi saya tidak bisa untuk memodelkan keseluruhan dari sistem pendingin radiator ini. Akhirnya saya akan menyederhanakan sistem pendingin radiator ini dengan sistem pendingin simple cooling. Pemodelan sistem simple cooling ini secara garis besar memiliki fungsi dan mekanisme yang sama dengan radiator yaitu menggunakan fluida yang bekerja sebagai coolant untuk mendinginkan sumber panas. Dengan penyederhanaan ini, saya juga bisa lebih mudah untuk menganalisa dari parameter-parameter yang ditinjau di sistem cooling. <br />
.<br />
berikut merupakan example dari heating system yang menurut analisa saya sudah hampir menyerupai dari sistem pendinginan radiator. <br />
<br />
[[File:Thermal.jpg|center|500px]]<br />
<br />
Dari heating system ini, saya akan menjelaskan beberapa komponen yang bisa mewakili pada sistem pendinginan radiator. Pertama-tama, pompa digunakan untuk menginput fluida ke sistem perpipaan. Kemudian disini burner berperan sebagai sumber panas mesin pada mobil sehingga fluida yang melewati burner akan menyerap panas. selanjutnya, valve disini berperan sebagai thermostat. Perbedaannya adalah kalau valve disini masih manual sedangkan thermostat yang digunakan pada mesin berperan sebagai controller yang memiliki sensor suhu. Bila suhu fluida masih rendah maka akan diputarkan kembali ke mesin dan apabila suhu sudah tinggi, valve akan terbuka dan fluida akan mengalir ke sistem pendingin, lalu dikembalikan lagi ke pompa. <br />
<br />
Dari keseluruhan heatingsystem ini, saya menemukan bahwa masih terlalu kompleks dan banyak terjadinya error saat disimulasikan. Oleh karena itu, saya mengambil salah satu example lagi yaitu simple cooling yang akan saya analisa parameter-parameternya<br />
<br />
<br />
<br />
<br />
<br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Thermal.jpg&diff=54031File:Thermal.jpg2021-01-07T06:50:55Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Parts-of-cooling-system.png&diff=54019File:Parts-of-cooling-system.png2021-01-07T06:38:47Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Schematic-of-the-engine-cooling-system-to-be-modeled.png&diff=54015File:Schematic-of-the-engine-cooling-system-to-be-modeled.png2021-01-07T06:33:51Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=53080Valve-Jenizhar Adivianto2021-01-06T06:38:02Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
'''1. Latar belakang'''<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
'''2. Tujuan'''<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
'''3. Metodologi'''<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
'''4. Hasil''' <br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
<br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=53077Valve-Jenizhar Adivianto2021-01-06T06:36:55Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
1. Latar belakang<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
2. Tujuan<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
3. Metodologi<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
4. Hasil <br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png|center|500px]]<br />
<br />
<br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=53074Valve-Jenizhar Adivianto2021-01-06T06:35:55Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
1. Latar belakang<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. Radiator pada mobil berfungsi sebagai pendingin mesin yang panas karena berputar terus menerus. sistem kerja dari radiator mesin adalah air (pendingin) yang dialirkan ke mesin untuk menyerap panas dan nantinya air tersebut akan kembali ke radiator untuk didingankan dan begitu pula seterusnya. Siklus ini merupakan salah satu siklus termofluida karena disini terdapat peristiwa heat exchange atau pertukaran panas. <br />
<br />
Terdapat beberapa komponen penting pada sistem pendingin mesin mobil yaitu:<br />
<br />
- water jacket = tempat air untuk mengalir di dalam mesin<br />
<br />
- selang = mengalirkan air dari mesin ke radiator (atas) ataupun sebaliknya (bawah)<br />
<br />
- radiator = tempat air dari mesin mengalami pendinginan<br />
<br />
- reservoir tank = tempat penampungan air<br />
<br />
- kipas pendingin = kipas untuk membantu mendinginkan air pada radiator<br />
<br />
- pompa air = memompa air dari radiator ke mesin<br />
<br />
- thermostat = berperan sebagai kontroller, berfungsi untuk mengarahkan aliran air ke radiator. Apabila mesin masih dingin, maka thermostat tertutup dan air hanya akan berputar pada mesin. Jika mesin sudah mencapai suhu 90 derajat, maka thermostat akan terbuka lebar dan air akan mengalir ke radiator untuk didinginkan. <br />
<br />
2. Tujuan<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
3. Metodologi<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
4. Hasil <br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
[[File:Sketsa revisi.png]]<br />
<br />
<br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Sketsa_revisi.png&diff=53071File:Sketsa revisi.png2021-01-06T06:35:26Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=52652Valve-Jenizhar Adivianto2021-01-05T13:44:16Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
1. Latar belakang<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus sistem pendinginan pada mesin mobil menggunakan radiator sebagai kasus yang ingin saya analisa. <br />
<br />
2. Tujuan<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
3. Metodologi<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
4. Hasil <br />
<br />
berikut merupakan hasil sketsa kasar saya mengenai sistem cycle pendingin ini.<br />
<br />
<br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Valve-Jenizhar_Adivianto&diff=52650Valve-Jenizhar Adivianto2021-01-05T13:25:16Z<p>Jenizhar: </p>
<hr />
<div>Assalamualaikum Wr. Wb<br />
<br />
<br />
== '''BIODATA''' ==<br />
<br />
<br />
Perkenalkan saya Jenizhar Adivianto dari kelas sisflu 03<br />
<br />
<br />
=='''PERTEMUAN 1''' ==<br />
<br />
<br />
pada pertemuan kali ini kelas dibuka oleh pak Dai dan membahas mengenai valve.<br />
<br />
'''fungsi valve''':<br />
<br />
1. <br />
<br />
2. mengatur aliran<br />
<br />
3. menghindari backflow<br />
<br />
'''ada beberapa jenis valve yaitu''':<br />
<br />
1. Butterfly Valve<br />
<br />
2. Check valve<br />
<br />
3. Gate valve<br />
<br />
4. Globe valve<br />
<br />
5. Ball valve<br />
<br />
Valve harus bekerja dengan pressure drop seminimal mungkin. Kemudian bang Ales menjelaskan mengenai apa itu CFD. CFD merupakan Computational Fluid Dynamics yang digunakan untuk mengetahui dan menganalisa sebuah sistem fluida melalui simulasi. <br />
<br />
Kemudian Gandes menjelaskan mengenai fitur pada CFD yaitu ada external flow dan Internal flow. <br />
<br />
Berikutnya, ada Josiah dari kelas aplikasi CFD mengenai koding dari software CFD.<br />
<br />
Pak Dai menghimbau agar seluruh mahasiswa mempraktikan simulasi yang contohnya sudah diberikan di grup WA yaitu mengenai valve. Berikut merupakan dokumentasi dari poercobaan saya:<br />
<br />
[[File:hasil run solver.jpg|center|750px]]<br />
<br />
[[File:Grafik dan paraview.jpg|center|750px]]<br />
<br />
Berikutnya Pak DAI memberikan kami tugas yaitu menghitung pressure drop dan grafik sesuai dengan video tutorial yang sudah diberikan namun dengan valve yang berbeda. Saya menggunakan valve dengan geometri sebagai berikut dengan mesh yang sudah di sesuaikan dan generate<br />
<br />
[[File:Mesh.jpg|center|750px]]<br />
<br />
kemudian dengan aplikasi paraview saya menghitung pressure drop dengan mengurangi pressure total outlet dengan inlet. berikut merupakan gambar dari pressure total inlet dan outlet:<br />
<br />
[[File:Inlet total pressure.jpg|center|750px]]<br />
<br />
[[File:Outlet total pressure.jpg|center|750px]]<br />
<br />
Hasil pressure drop yang dicari adalah 0.0000496495<br />
<br />
Setelah itu saya membuat grafik dari pressure. <br />
<br />
[[File:Grafik tekanan.jpg|center|750px]]<br />
<br />
Setelah itu, saya membuat distribusi velocity dan tekanan yang tersebar di seluruh valve<br />
<br />
[[File:Distribusi tekanan.jpg|center|750px]]<br />
<br />
[[File:Distribusi velocity.jpg|center|750px]]<br />
<br />
Terima kasih, sekian <br />
<br />
Wassalamualaikum Wr. wb.<br />
<br />
<br />
== '''PERTEMUAN 2''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pada pertemuan kali ini, pak Dai menjelaskan mengenai prinsip dasar dari sistem fluida. Kemudian, pak Dai menghimbau mahasiswa pada kelas CFD untuk sharing mengenai aplikasi-aplikasi sistem fludia yaitu Bang Abi Rizky. Sistem fluida pada penerapan di CFD SOF mengenai vertikal turbin. Vertikal turbin memiliki poros vertikal, kemudian airfoil dari sudu - sudu turbin dan beberapa parameter lainnya. Bang abi menjelaskan mengenai distribusi kecepatan dan tekanan pada air foil. kemudian distribusi tersebut dapat disimulasikan seiring dengan waktu. Menunjukkan bahwa apabila ada pergerakan rotasi, maka distribusi kecepatan juga berubah-ubah<br />
<br />
kemudian yang kedua ada bang bintang dari kelas cfd untuk sharing mengenai ilmu sistem fluida.<br />
<br />
Pak Dai menghimbau untuk mengsimulasikan pembangkit listrik tenaga uap dibantu oleh bang Edo. bang edo menjelaskan tentang turbin VAWT dengan 3 air foil yang mewakilkan sudu. Di bagian belakang air foil pasti ada vortex yang terjadi karena adanya separasi. <br />
<br />
Pak Dai menjelaskan mengenai turbin impuls dan turbin reaksi. turbin reaksi ada guide mechanism dari blade yang berputar. lebih besar. Fluida akan mengalir melalui turbin tersebut. Turbin impuls biasanya untuk turbin-turbin air. sudunya lebih statis. Turbin impuls lebih memiliki sudu yang melengkung daripada turbin reaksi. rumus impuls<br />
<br />
F = mdot . deltaV<br />
<br />
untuk turbin reaksi tekanan diatas airfoil lebih kecil dari pada dibawah sehingga terdapat gaya lengan. <br />
<br />
<br />
== '''PR 2/Jenizhar Adivianto''' ==<br />
<br />
<br />
Pak Dai juga menjelaskan di open modelicca mengenai model sistem fluida dengan perpindahan fluida dari 1 tangki ke tangki yang lain. disitu kita bisa memperkirakan berapa laju dan perubahan tekanannya. dalam model tangki tersebut, terdapat beberapa perhitungan dalam bentuk koding. Kemudian pak DAi mengsimulasikan sehingga kita bisa melihat plot<br />
<br />
Pada pertemuan ini jga pak Dai memberikan kami tugas untuk mempelajari example yang ada di openmodelica mengenai sistem fluida. Oleh karena itu, saya akan mempelajari example three tanks yang ada di open modelica. Setelah saya memilih three tanks, terdapat model dan kodingan yang sudah tertera pada open modelicanya. koding tersebut berisikan profil dan keadaan awal tanki serta profil dan rumusan matematika untuk pipa-pipanya. gambarnya dapat dilihat dibawah ini<br />
<br />
[[File:Model three tanks.jpg|center|750px]]<br />
<br />
pada kodingan diketahui bahwa semua tanki memiliki ketinggian yang sama namun memiliki ketinggian air yang berbeda. pada tanki 1 air memiliki ketinggian 8 sedangkan pada tanki 2 dan 3 air memiliki ketinggian 3. Setelah mengetahui itu, saya mencoba untuk check simulation dan tentu saja variable sudah seimbang dengan equation. Lalu saya langsung simulasikan. Berikut merupakan grafik dari level atau ketinggian air pada 3 tanki tersebut setelah saya simulasikan selama 200 detik.<br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. <br />
<br />
Berikut merupakan link file saya : https://drive.google.com/drive/folders/10yoOEjFsBZYgWB8OT6NOKVaKnv_SvauJ?usp=sharing<br />
<br />
Sekian pembelajaran example dari open modelica pada kali ini<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
=='''PERTEMUAN 3''' ==<br />
<br />
Assalamualaikum wr. wb<br />
<br />
Pada hari ini Pak Dai membuka pertemuan dengan mengingatkan kami semua akan tugas yang sudah diberikan dan mengajak kami untuk berdiskusi mengenai prinsip dari sistem permodelan sistem fluida. Dari apakah itu permodelan dan fungsi dari permodelan. Permodelan merupakan suatu metode untuk membuat atau mereplika sistem nyata dalam bentuk numerik yang bisa disimulasikan dan dihitung untuk membantu para engineer dalam merancang suatu sistem. salah satu contohnya adalah untuk sistem fluida. Kita bisa melakukan analisis berbasis hukum-hukum fisika dalam permodelan ini contohnya adalah software open modelica. <br />
<br />
Ada 2 pendekatan pada sistem permodelan, yang pertama '''low driven model''' (berdasarkan hukum fisika). Contohnya adalah bernoulli, kontinuitas, dll. Yang kedua adalah model berbasis AI (artificial inteligience) yaitu '''data driven model'''<br />
<br />
Selanjutnya ada asistensi oleh pak Aryo untuk simulasi open modelica. Pak Aryo menghimbau kami untuk membuka example twotanks pada open modelica. kemudian, beliau menjelaskan bahwa pada documentation browser terdapat informasi-informasi yang diketahui yang nantinya akan dihitung oleh pemrograman koding yang dibuat. <br />
<br />
sistem ini terdiri dari kedua tanki dan satu pipa. dari kedua tanki tersebut memiliki ketinggian fluida yang berbeda dan pada saluran pipa sudah terisi fluida karena tidak ada valve. Jadi disini kita akan melihat perubahan level pada kedua tanki sampai nanti level dari kedua tanki sama. Karena ada perbedaan ketinggian maka ada perbedaan tekanan dan volume juga sehingga terjadi gaya hidrostatik.<br />
<br />
Kemudian kodingan di cek model terlebih dahulu untuk verifikasi apakah model sudah siap untuk di simulasikan. Output yang dihasilkan dari simulasi adalah plotting grafik dan angka-angka hasil hitungan pada variable browser. pada variable browser juga terdapat keterangan-keterangan mengenai deskripsi dari variabel.<br />
<br />
Dari hasil simulasi yang dilakukan, dapat dilihat bahwa level dari kedua tanki sudah seimbang setelah detik 1,5 s. Setelah itu, Pak Aryo menghimbau agar kami mencoba untuk menjalankan simulasi dengan waktu yang lebih sebentar. jadi waktu merupakan hal yang penting dalam simulasi permodelan. <br />
<br />
kemudian kami mengambil satu contoh lagi pada empty tanks. Pada contoh ini memiliki level fluida yang berbeda dan memiliki posisi yang berbeda yaitu vertikal. Jadi air pada tanki 1 mengalir ke tanki 2 yang masih kosong menggunakan pengaruh ketinggian. memiliki komponen sama seperti sebelumnya yaitu 2 tanki dan 1 pipa. Menyimulasikan untuk melihat bagaimana perubahan level terhadap waktu.<br />
<br />
Setelah dicoba menambah panjang dari pipa, maka akan lebih lama. dan apabila ketinggian dari pipa di perpendek maka akan lebih cepat perpindahannya. maka dari itu model yang ada pada open modelica sudah sesuai dengan hukum fisika nyatanya. <br />
<br />
Terima Kasih<br />
Wassalamualaikum<br />
<br />
<br />
== '''PR 3/Jenizhar Adivianto''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Pak hario memberikan kami tugas mengenai aplikasi open modelica untuk mata kuliah Sistem Fluida. Pak Hario memberikan kami tugas yaitu untuk ANALISA PEMODELAN SISTEM DENGAN TOOLS OPENMODELICA<br />
<br />
Dari sistem fluida yang diberikan dalam gambar-gambar berikut, buatlah analisa pemodelannya sbb :<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Berikut merupakan gambar yang diberikan oleh pak Hario dan jawaban dari soal-soal yang diberikan<br />
<br />
[[File:Gambar1 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
sistem pemanas yang simpel dengan siklus aliran tertutup. Setelah 2000s maka valve tersebut akan sepenuhnya terbuka. terdapat pompa untuk mengatur tekanan dan burner untuk mengatur temperatur. Ada part berupa pipa dimana sebagai media air mengalir. Berikutnya ada sensor kecepatan dan suhu untuk mengukur parameter tersebut.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Pada model yang sudah ada pada gambar diatas, dapat dilihat bahwa pertama-tama, air dalam tank mengalir menuju heater dengan bantuan pompa. Pada heater terdapat burner yang dapat mengatur temperature. selanjutnya ada valve yang terhubung pada pipa sehingga kita bisa mengatur juga aliran yang masuk ke bagian yang berhubungan dengan wall. Dengan itu maka akan terjadi perpindahan panas pada pipa ke wall yang pada saat itu memiliki suhu lingkungan serta suhu dari fluida juga akan berubah setelah di tinjau pada sensor suhu dan kembali ke tanki. <br />
<br />
Pada sistem permodelan ini, pertama - tama kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Dari permodelan yang dibuat, terdapat beberapa parameter yang dapat kita tinjau. Yang pertama yaitu ada Temperature dimana temperature ini merupakan hal utama yang kita amati pada permodelan ini. Parameter berikutnya yaitu Tekanan akibat dari pompa. Dimensi pipa juga sangat mempengaruhi hasil dari pergerakan fluida disini seperti diameter, panjang pipa, kekasaran, dan lain-lain<br />
<br />
Jadi disini kita dapat melihat dalam 2000s sampai valve penuh dibuka, bagaimana simulasi mengenai perubahan-perubahan parameter yang terjadi dan pada detik berapa valve dapat memberikan efek maksimal terhadap sistem permodelan ini<br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Terdapat beberapa hukum fisika yaitu :<br />
<br />
1. Hukum konservasi energi<br />
<br />
2. Hukum konservasi massa<br />
<br />
3. Hukum konservasi momentum<br />
<br />
pada model ini juga terdapat hukum-hukum dari heat transfer seperti konveksi dan konduksi.<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
[[File:MessageImage 1606926656680.jpg|center|750px]]<br />
<br />
[[File:MessageImage 1606926809899.jpg|center|750px]]<br />
<br />
[[File:Gambar 2 sisflu.jpg|center|750px]]<br />
<br />
1. Deskripsi/uraian fisik berdasarkan bagan yang ada<br />
<br />
Pada gambar diatas, terdapat 3 tanki yang saling berhubungan dengan 3 pipa. Air dari dalam tanki akan mengisi air pada tanki 2 dan 3. Dengan ketinggian air yang berbeda-beda. Pada tanki 1 memiliki ketinggian air 8m dan pada tanki 2 dan 3 memiliki tinggi 3m. Pada permodelan ini, kami bisa menganalisa dan mengsimulasikan perpindahan air dari tanki 1 ke tanki 2, kemudian tanki 2 ke tanki 3. Oleh karena itu, saya akan menyebutkan prosedur analisa saya pada nomor berkutnya.<br />
<br />
2. Prosedur analisa pemodelan<br />
<br />
Karena pengaruh prinsip-prinsip dan hukum fluida, maka air dapat mengalir dari tanki 1 ke tanki 2, begitu pula dari tanki 2 ke tanki 3. Pada sistem permodelan ini, kita harus memastikan bahwa kodingan yang tertera sudah sesuai dengan model yang kita inginkan dan hukum-hukum fisika. Apabila dirasa sudah sesuai, maka kita dapat memastikan kembali dengan tombol centang hijau yaitu "check model". Dengan Check model, apabila variable dan equation sudah seimbang, maka kode program yang dibuat sudah benar sehingga kita dapat memulai simulasi. Setelah simulasi selesai, kita dapat melihat grafik plot setiap variabel yang ada sehingga dapat kita analisa dan ambil kesimpulannya nanti.<br />
<br />
3. Analisa dan Interpretasi Hasil Pemodelan<br />
<br />
Pada kode program permodelan ini, terdapat 261 variabel dan 261 equation. kode - kode program tersebut berisi semua data - data yang kita butuhkan dan perhitungan - perhitungan dari hukum fisika yang kita butuhkan juga. Pada awal -awal pemograman, kita meng-input fluida yang akan kita gunakan dalam sistem ini yaitu air. Data dari fluida air sudah ada di dalam open modelica sehingga kita dapat langsung menginput kumpulan properties dan sifat-sifat air melalui kodingan yang simpel.<br />
<br />
Selanjutnya kita dapat melihat pada kodingan untuk meng-input tanki-tanki yang akan kita gunakan dalam sistem permodelan ini. Kodingan untuk tanki 1 dapat dilihat sebagai berikut : <br />
<br />
Modelica.Fluid.Vessels.OpenTank tank1(<br />
crossArea=1,<br />
redeclare package Medium = Medium,<br />
use_portsData=true,<br />
height=12,<br />
level_start=8,<br />
nPorts=1,<br />
portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=<br />
0.1)}) annotation (Placement(transformation(extent={{-80,20},{-40,<br />
<br />
pada kodingan tersebut dapat dilihat ada Cross area yang menunjukan luas, height = tinggi tanki, level start = ketinggian air awal, dan properties-properties lainnya. Begitu pula untuk tanki 2 dan tanki 3.<br />
<br />
Untuk kodingan dari pipanya memiliki data mengenai properties-propertiesnya pula sehingga dapat di lihat sebagai berikut <br />
<br />
Modelica.Fluid.Pipes.StaticPipe pipe1( redeclare package<br />
Medium = Medium,<br />
allowFlowReversal=true,<br />
height_ab=2,<br />
length=2,<br />
diameter=0.1)<br />
annotation (Placement(transformation(<br />
origin={-60,-10},<br />
extent={{-10,-10},{10,10}},<br />
rotation=90)));<br />
<br />
Setelah semua data di input, dapat dihubungkan dengan equation-equation sebagai berikut<br />
<br />
equation<br />
connect(pipe1.port_a, pipe2.port_a) annotation (Line(points={{-60,-20},{-60,<br />
-40},{0,-40},{0,-30},{0,-20}}, color={0,127,255}));<br />
connect(pipe2.port_a, pipe3.port_a) annotation (Line(points={{0,-20},{0,-20},<br />
{0,-40},{60,-40},{60,-30}}, color={0,127,255}));<br />
connect(pipe3.port_b, tank3.ports[1])<br />
annotation (Line(points={{60,-10},{60,-10},{60,10}}, color={0,127,255}));<br />
connect(pipe1.port_b, tank1.ports[1]) annotation (Line(points={{-60,0},{-60,<br />
10},{-60,20}}, color={0,127,255}));<br />
connect(pipe2.port_b, tank2.ports[1]) annotation (Line(<br />
<br />
Equation - equation diatas berguna untuk menghubungkan pipa dengan pipa dan pipa dengan tanki-tanki pada kodingan sebelumnya. Dengan hitungan matematis disini kode - kode yang sudah diprogram nantinya dapat dilihat hasil simulasinya apabila kodingan tersebut sudah benar dan sesuai dengan hukum fisika dan matematika. Oleh karena itu, pada soal nomer 4 saya akan memberikan catatan mengenai konsep-konsep hukum fisika yang ada pada sistem permodelan ini. <br />
<br />
4. Catatan konsep utama hukum fisika yang diimplementasikan dalam pemodelan<br />
<br />
Hukum fisika dalam pemodelan tersebut adalah hukum tekanan hidrostatis dan hukum bernoulli dirumuskan sebagai berikut:<br />
<br />
Ph = ρgh<br />
<br />
Ph = Tekanan Hidrostatis (N/m2 atau Pa) >> 1 atm = 1 Pa<br />
<br />
ρ = Massa jenis (km/m3)<br />
<br />
g = Gaya gravitasi (m/s2)<br />
<br />
h = Kedalaman suatu benda dari permukaan zat cair (m)<br />
<br />
Ph = ρgh + P<br />
<br />
P = Tekanan udara luar (1 atm atau 76 cm Hg)<br />
<br />
5. Berikan hasil-hasil simulasi parameter untuk mendukung kesimpulan yang diperoleh<br />
<br />
Setelah disimulasikan, didapatkan grafik untuk variabel-variabel yang ada di dalam sistem. Karena kita meninjau perpindahan air dari tanki ke tanki, maka disini saya akan menganalisa perubahan level dari tiap tanki tiap waktunya yang hasil simulasinya akan saya tunjukkan di bawah ini. <br />
<br />
[[File:Hasil grafik.jpg|center|750px]]<br />
<br />
pada grafik menunjukan ketinggian air pada ketiga tanki terhadap waktu. Dapat dilihat bahwa air pada tanki satu menurun terlebih dahulu secara drastis karena air tanki 1 mengalir untuk mengisi tanki 2 dan 3. selanjutnya air pada tanki dua terlihat menurun sedikit karena mengisi tanki tiga juga. Sedangkan untuk ketinggian air pada tanki 3 terlihat cenderung naik terus sebelum akhirnya setimbang. Hal ini disebabkan oleh keadaan tanki 3 yang hanya menerima air namun tidak memberikan air ke tanki lain. Jadi, dapat diambil kesimpulan bahwa perhitungan-perhitungan yang sudah di program dengan openmodelica sudah benar dan sesaui dengan kejadian aslinya dan simulasi-simulasi tersebut dapat digunakan sebagai langkah awal dalam merancang suatu sistem atau produk.<br />
<br />
== '''PERTEMUAN 4''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
pada hari ini, Pak hario membuka kelas untuk mengajar kami mengenai open modelica kembali. Pertama-tama, beliau mengajarkan kami tentang pembuatan komponen pada sistem. Jadi kita bisa membuka libraries dan menemukan komponen, kemudian kita bisa ngedrag open tanks dan pipa untuk di sambungkan. Cara menyambungkannya adalah mengedrag titik yang ada di bawah tanki dan klik untuk mengubah arah dari vertikan ke horizontal, kemudian klik kembali untuk menyambungkan dengan pipa. Begitu pula dari pipa ke tanki 2.<br />
<br />
Dengan memasuki model ini, maka kode program dari komponen otomatis masuk ke bagin text document. kemudian ada equation untuk menyambungkan komponen-komponen tersebut. Kita me remodel dari two tanks yang sudah ada di example dengan memasukan komponen sendiri.<br />
<br />
== '''PR 4/Jenizhar Adivianto''' ==<br />
<br />
Selanjutnya pak hario memberikan kami tugas mengenai analisa siklus kombinasi pembangkit daya untuk kita analisa : <br />
<br />
1. Bagaimanakah analisa termodinamika (konservasi massa dan energi) pada sistem tersebut, buat skematik analisisnya.<br />
<br />
2. Lakukan identifikasi komponen-komponen utama pada sistem serta berilah deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.<br />
<br />
3. Medium fluida kerja apa saja yang terjadi dalam proses siklus tersebut, dan bagaimanakah proses analisis perhitungan dalam pemodelan<br />
<br />
4. Jelaskan flow line (jalur koneksi) masing-masing yang diberi warna hitam, merah, dan biru sesuai dengan interkoneksi yang diberikan dalam diagram tersebut.<br />
<br />
gambar permodelan siklus teersebut dapat dilihat pada gambar dibawah ini : <br />
<br />
[[File:Soal.jpg|center|750px]]<br />
<br />
'''1. Analisa Termodinamika'''<br />
<br />
Pada permodelan ini menggunakan siklus rankine dan brayton. Siklus rankine merupakan siklus yang biasa digunakan pada pembangkit listrik yang menggunakan uap dimana fluida yang digunakan melewati dua fase yaitu yang pertama cairan terlebih dahulu kemudia menjadi uap untuk menggerakkan turbin. Sedangkan, siklus brayton merupakan siklus yang hanya menggunakan satu fase fluida saja yaitu gas untuk menggerakkan turbin. Udara di kompresi dan dipanaskan sehingga dapat menggerakkan turbin gas. Namun karena disini adalah gabungan, saya akan memperjelas skema yang terjadi pada siklus ini. <br />
<br />
[[File:Siklus.jpg|center|750px]]<br />
<br />
'''2. Identifikasi Komponen'''<br />
<br />
Berikut merupakan identifikasi komponen-komponen yang berada pada siklus ini:<br />
<br />
1. Valve = berguna untuk mengatur aliran dengan membuka atau menutup katup. Parameter dari valve ini adalah Max. CV, Fluid average pressure, dan Fluid specific enthalpy.<br />
<br />
2. Pipa = berguna sebagai wadah atau media untuk fluida mengalir dari satu tempat ke tempat yang lain. Parameter dari pipa adalah Diameter, panjang, average fluid pressure.<br />
<br />
3. Pompa = berguna untuk menggerakkan fluida dengan mengatur tekanan. Parameter dari pompa adalah Coeff. Pump, laju massa, laju volume, dan Fluid average pressure<br />
<br />
4. Kondensor = berfungsi untuk mengubah uap menjadi air yang nantinya akan digunakan kembali dalam siklus ini. parameter dari kondensor adalah Cavity volume, Cavity cross-sectional area, Fraction of initial water volume in the drum, Pipe internal diameter, Friction pressure loss coefficient, dan Number of pipes in parallel<br />
<br />
5. Drum = berfungsi untuk menampung air dan uap (saturated steam) panas dengan perbandingan 50 - 50. parameter dari drum adalah diameter, cross area, tinggi<br />
<br />
6. Generator = berfungsi untuk mengubah energi gerak menjadi energi listrik. parameter dari generator adalah efisiensi<br />
<br />
7. Heat exchanger = berfungsi untuk mengubah temperatur dari fluida yang dipakai. parameter dari heat exchanger adalah Exchanger length, Number of segments, Pipe internal diameter, dan Number of pipes in parallel<br />
<br />
8. Steam turbine = berfungsi untuk mengubah energi panas menjadi energi gerak untuk menggerakan blade sehingga dapat memnggerakan generator. parameter dari steam turbine adalah Nominal compression nominal rate, Compressor nominal efficiency, Turbine nominal expansion rate, Turbine nominal efficiency, Turbine reduced mass flow rate, Chamber pressure loss coefficient, dan Combustion chamber thermal losses<br />
<br />
9. Water Mixer = berfungsi untuk mencampurkan fluida dari beberapa inlet menjadi lebih sedikit daripada inlet pada awalnya. Parameter dari water mixer adalah kecepatan, tekanan, dan ketinggian.<br />
<br />
10. Water Splitter = berfungsi untuk memecah satu aliran atau lebih dari sebuah inlet menjadi lebih banyak, kebalikan dengan water mixer. Parameter dari water splitter adalah kecepatan, tekanan, dan ketinggian. <br />
<br />
'''3. Medium yang dipakai serta analisa perhitungan'''<br />
<br />
Medium yang digunakan dalam siklus ini ada 4 yaitu steam turbines, gas turbines, centrifugal pump, dan Kompressor. Pada keempat medium ini terdapat siklus adiabatik yang berarti proses yang muncul tanpa perpindahan panas dan massa antara sistem dan lingkungannya. Jadi proses ini ditutupi oleh dinding yang disolasi termal sepenuhnya. <br />
<br />
'''4. Fungsi flow line'''<br />
<br />
1. Hitam tebal = jalur hitam tebal untuk masuk dan keluar gas pada turbin (pada openmodelica)<br />
<br />
2. Hitam tipis = mentransfer energi/kerja dari turbin ke generator<br />
<br />
3. Biru = jalur untuk gas temperature rendah (pada openmodelica)<br />
<br />
4. merah = jalur untuk gas temperature tinggi (pada openmodelica)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''PERTEMUAN 5''' ==<br />
<br />
Assalamualaikum wr wb<br />
<br />
Pada pertemuan kali ini, kelas dibuka oleh pak Dai dengan memberitahu kami mengenai tugas besar atau tubes. <br />
<br />
kemudian pak haryo memberikan kami tutorial kembali mengenai thermosyspro pada open modelica. dengan cara membuka system libraries dan emmilih thermosyspro. kemudian memilih example kemudian simple example kemudian pilih test compressor. Pak hario menjelaskan bahwa informasi-informasi mengenai komponen - komponen pada diagram dapat kita lihat semuanya pada text view. kita akan me remodel sistem fluida kompresor ini. Dapat dilihat bahwa di komponen paling kiri terdapat source dan komponen paling kanan terdapat sink. Dapat dilhat bahwa terdapat aliran fluida disitu. Selanjutnya, pak haryo menjelaskan kepada kami mengenai setiap komponen pasti mempunyai parameter yang dapat dilihat apabila kita klik komponennya. Pada kompresor terdapat 3 parameter yaitu faktor kompressor, efisiensi isentropik, dan power loses akibat gaya gesek. <br />
<br />
Pak hario melatih kami untu kmembuat remodel dari sistem ini. pertama-tama buat class baru. Kemudian import kembali thermosyspro. Krmudian masukan komponen2 yang dibutuhkan dengan men-drag dari libraries ke dalam. kemudian, sambungkan komponen-komponen dengan menarik garis. Settelah itu kita menyamakan parameter-parameter dengan parameter pada contohnya. Setelah itu kit acheck model dan ubah stop time pada simulation setup menjadi 1000. Setelah selesai dapat kita lihat grafik plotting dari dari tiap variabel yang akan kita bandingkan dengan contoh yang sudah ada. Pak hario menjelaskan bahwa ada juga sistem-sistem perpipaan yang lain pada libraries pressure loses. <br />
<br />
Untuk tugas besar, setelah pertemuan ini, kita punya gambaran mengenai permodelan dan analisis mengenai bagaimana bahan bakar dihasilkan. analisis berdasarkan desain yang ada namun bisa dilakukan analisa terhadap konfigurasinya (piping : panjang, dimensi ) sudah ditentukan. Pak hario menjelaskan mengenai tubes seperti membuat suatu permodelan dan analisis suatu sistem pemipaan yang ada dalam suatu proses pengolahan bahan bakar, nanti didalam proses pengolahan bahan bakar itu terdapat bahan bakar yang dihasilkan dalam suatu proses reaksi didalam reaktor. Kemudian, didalam reaktor ada temperatur pembakaran, laju udara untuk pembakarannya, laju partikel katalis untuk membantu proses dll. Masing-masing mahasiswa menganalisis hidrodinamik dengan sistem yang ada, dan nanti bisa dilakukan analisis dari struktur sistem tersebut seperti data-data pipa dan lain-lain. Juga ada sistem koneksi seperti elbow, fitting dan komponen valve contohnya.<br />
<br />
<br />
== '''PERTEMUAN 6''' ==<br />
<br />
Assalamualaikum Wr.wb<br />
<br />
Pada sore hari ini, diadakan kelas dengan dosen tamu oleh Bapak Harun Al Rasyid<br />
<br />
Beliau merupakan CEO di beberapa industri perusahaan pembangkit dan sudah memiliki pengalaman sebanyak 36 tahun di bidangnya. Pertama-tama, beliau membuka kelas dengan menjelaskan sejarah dari teknologi pembangkit yang awalnya ada pada tahun 1950. Berikutnya, Pak Harun menjelaskan mengenai beberapa poin utama yaitu<br />
<br />
1. Tipe-tipe turbin untuk penggerak pesawat<br />
<br />
2. Perbedaan turbin gas<br />
<br />
3. Siklus Brayto<br />
<br />
4. Penjelasan secara umum mengenai gas Turbin dan CCPP (combined cycle power plant)<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. wb<br />
<br />
== '''Sinopsis TUGAS BESAR''' ==<br />
<br />
Assalamualaikum Wr. Wb.<br />
<br />
1. Latar belakang<br />
<br />
Sangat banyak kasus - kasus sistem fluida yang ada di kehidupan profesional maupun sehari-hari. Setelha melakukan riset dan studi literatur mengenai kasus-kasus sistem fluida, akhirnya saya menentukan kasus .......... sebagai kasus yang ingin saya analisa. <br />
<br />
2. Tujuan<br />
<br />
Tugas besar yang saya rancang pada kali ini memiliki tujuan untuk menuntun mahasiswa dari kelas sisflu-03 ini agar dapat bisa menganalisa kasus nyata dengan menerapkan teori-teori yang sudah ada melalui perangkat lunak atau software yang disarankan yaitu OpenModellica. Tugas besar ini juga berperan untuk menjadi parameter pemahaman dari kelas-kelas yang sudah diadakan sebelumnya juga. <br />
<br />
3. Metodologi<br />
<br />
Pertama-tama, saya berusaha memahami konsep dan alur dari kasus terlebih dahulu. Setelah itu, saya membuat sketsa terlebih dahulu sebelum saya beranjak ke openmodelica. Pada open modelica, saya akan melakukan pencarian terhadap komponen - komponen yang saya butuhkan untuk sketsa yang sudah saya buat. kemudian, saya menyusun komponen-komponen tersebut sesuai dengan alur dari kasus tersebut. Berikutnya saya akan mengecek terlebih dahulu apakah susunan sudah valid dan dapat disimulasikan. Apabila sudah aman, saya akan mencoba untuk menganalisa faktor-faktor yang mempengaruhi kerja dari alur tersebut. <br />
<br />
4. Hasil <br />
<br />
Terima kasih<br />
<br />
wassalamualaikum Wr. Wb.</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=52066Metnum03-Jenizhar Adivianto2021-01-04T14:12:37Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
Kemudian berikut merupakan koefisien hasil hitungan dari curve fitting dengan area yang bervariasi namun dengan material sama. <br />
<br />
[[File:Koef area lock.png|center]]<br />
<br />
Selanjutnya tabel berikut merupakan hasil dari Curve fitting dari yang memiliki area yang bervariasi (Elasticity locked)<br />
<br />
[[File:MessageImage 1609746499661.jpg|center]]<br />
<br />
Sedangkan, berikut merupakan hasil tabel dari curve fitting yang memiliki elastisitas yang bervariasi (Area locked)<br />
<br />
[[File:Tabel area locked.png|center|]]<br />
<br />
Beikutnya, saya membuat diagram perbandingan untuk yang area locked, dengan sumbu y yaitu ratio dan cost dan sumbu x nya adalah area. Diagram ini bisa kita gunakan untuk melihat dimana dengan material yang sama, kita bisa mengetahui dimana area yang paling efektif dan efisien sehingga bisa kita pakai untuk optimasi. berikut merupakan diagram tabel yang saya buat.<br />
<br />
[[File:Diagram elasticity lock.png|center]]<br />
<br />
Sekian dari pembahasan tugas besar saya <br />
<br />
Wassalamualaikum Wr. Wb</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Diagram_elasticity_lock.png&diff=52064File:Diagram elasticity lock.png2021-01-04T14:11:37Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=52057Metnum03-Jenizhar Adivianto2021-01-04T13:56:47Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
Kemudian berikut merupakan koefisien hasil hitungan dari curve fitting dengan area yang bervariasi namun dengan material sama. <br />
<br />
[[File:Koef area lock.png|center]]<br />
<br />
Selanjutnya tabel berikut merupakan hasil dari Curve fitting dari yang memiliki area yang bervariasi (Elasticity locked)<br />
<br />
[[File:MessageImage 1609746499661.jpg|center]]<br />
<br />
Sedangkan, berikut merupakan hasil tabel dari curve fitting yang memiliki elastisitas yang bervariasi (Area locked)<br />
<br />
[[File:Tabel area locked.png|center|]]<br />
<br />
6. '''Optimasi 1'''<br />
<br />
7. '''Optimasi 2'''</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Koef_area_lock.png&diff=52056File:Koef area lock.png2021-01-04T13:56:08Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Tabel_area_locked.png&diff=52055File:Tabel area locked.png2021-01-04T13:54:09Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=51994Metnum03-Jenizhar Adivianto2021-01-04T07:51:01Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
Kemudian berikut merupakan koefisien hasil hitungan dari curve fitting dengan area yang bervariasi namun dengan material sama. <br />
<br />
[[File:Elas 2.jpg|center]]<br />
<br />
Selanjutnya tabel berikut merupakan hasil dari Curve fitting dari yang memiliki area yang bervariasi.<br />
<br />
[[File:MessageImage 1609746499661.jpg|center]]<br />
<br />
6. '''Optimasi 1'''<br />
<br />
7. '''Optimasi 2'''</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=51993Metnum03-Jenizhar Adivianto2021-01-04T07:50:22Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
Kemudian berikut merupakan koefisien hasil hitungan dari curve fitting dengan area yang bervariasi namun dengan material sama. <br />
<br />
[[File:Elas 2.jpg|center]]<br />
<br />
Selanjutnya tabel berikut merupakan hasil dari Curve fitting dari yang memiliki area yang bervariasi.<br />
<br />
[[File:MessageImage 1609746499661.jpg|center]]<br />
<br />
6. '''Optimasi 1'''<br />
<br />
7. '''Optimasi 2'''</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:MessageImage_1609746499661.jpg&diff=51992File:MessageImage 1609746499661.jpg2021-01-04T07:49:42Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=51984Metnum03-Jenizhar Adivianto2021-01-04T07:35:13Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
Kemudian berikut merupakan koefisien hasil hitungan dari curve fitting dengan area yang bervariasi namun dengan material sama. <br />
<br />
[[File:Elas 2.jpg|center]]<br />
<br />
6. '''Optimasi 1'''<br />
<br />
7. '''Optimasi 2'''</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Elas_2.jpg&diff=51983File:Elas 2.jpg2021-01-04T07:34:39Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=51972Metnum03-Jenizhar Adivianto2021-01-04T07:14:51Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
Kemudian berikut merupakan koefisien hasil hitungan dari curve fitting dengan area yang bervariasi namun dengan material sama. <br />
<br />
[[File:Elasticity locked.jpg|center]]<br />
<br />
6. '''Optimasi 1'''<br />
<br />
7. '''Optimasi 2'''</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=51949Metnum03-Jenizhar Adivianto2021-01-04T07:03:03Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
Kemudian berikut merupakan koefisien hasil hitungan dari curve fitting dengan area yang bervariasi namun dengan material sama. <br />
<br />
[[File:Elasticity locked.jpg]]<br />
<br />
6. '''Optimasi 1'''<br />
<br />
7. '''Optimasi 2'''</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=File:Elasticity_locked.jpg&diff=51948File:Elasticity locked.jpg2021-01-04T07:02:28Z<p>Jenizhar: </p>
<hr />
<div></div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=51909Metnum03-Jenizhar Adivianto2021-01-04T06:38:00Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
model Trusses_3D_Tugas_Besar_Safety //<br />
<br />
//define initial variable<br />
parameter Integer Points=size(P,1); //Number of Points<br />
parameter Integer Trusses=size(C,1); //Number of Trusses<br />
parameter Real Yield=215e6; //Yield Strength (Pa)<br />
parameter Real Area=0.000224; //Area L Profile (Dimension=0.03, Thickness=0,004) (m2)<br />
parameter Real Elas=193e9; //Elasticity SS 304 (Pa)<br />
<br />
//define connection<br />
parameter Integer C[:,2]=[1,5; <br />
2,6;<br />
3,7;<br />
4,8;<br />
5,6; //1st floor<br />
6,7; //1st floor<br />
7,8; //1st floor<br />
5,8; //1st floor<br />
5,9;<br />
6,10;<br />
7,11;<br />
8,12;<br />
9,10; //2nd floor<br />
10,11;//2nd floor <br />
11,12;//2nd floor<br />
9,12; //2nd floor<br />
9,13;<br />
10,14;<br />
11,15;<br />
12,16;<br />
13,14;//3rd floor<br />
14,15;//3rd floor<br />
15,16;//3rd floor<br />
13,16];//3rd floor<br />
<br />
//define coordinates (please put orderly)<br />
parameter Real P[:,6]=[0.3,-0.375,0,1,1,1; //1<br />
-0.3,-0.375,0,1,1,1; //2<br />
-0.3,0.375,0,1,1,1; //3<br />
0.3,0.375,0,1,1,1; //4<br />
<br />
0.3,-0.375,0.6,0,0,0; //5<br />
-0.3,-0.375,0.6,0,0,0; //6<br />
-0.3,0.375,0.6,0,0,0; //7<br />
0.3,0.375,0.6,0,0,0; //8<br />
<br />
0.3,-0.375,1.2,0,0,0; //9<br />
-0.3,-0.375,1.2,0,0,0; //10 <br />
-0.3,0.375,1.2,0,0,0; //11<br />
0.3,0.375,1.2,0,0,0; //12<br />
<br />
0.3,-0.375,1.8,0,0,0; //13<br />
-0.3,-0.375,1.8,0,0,0; //14<br />
-0.3,0.375,1.8,0,0,0; //15<br />
0.3,0.375,1.8,0,0,0]; //16<br />
<br />
//define external force (please put orderly)<br />
parameter Real F[Points*3]={0,0,0,<br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,0, <br />
0,0,-500, <br />
0,0,-1000, <br />
0,0,-1000, <br />
0,0,-500}; <br />
<br />
//solution<br />
Real displacement[N], reaction[N];<br />
Real check[3];<br />
<br />
Real stress1[Trusses];<br />
Real safety[Trusses];<br />
Real dis[3];<br />
Real Str[3];<br />
<br />
protected<br />
parameter Integer N=3*Points;<br />
Real q1[3], q2[3], g[N,N], G[N,N], G_star[N,N], id[N,N]=identity(N), cx, cy, cz, L, X[3,3];<br />
Real err=10e-10, ers=10e-4;<br />
<br />
algorithm<br />
//Creating Global Matrix<br />
G:=id;<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Area*Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
//Transforming to global matrix<br />
g:=zeros(N,N); <br />
for m,n in 1:3 loop<br />
g[3*(C[i,1]-1)+m,3*(C[i,1]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,2]-1)+n]:=X[m,n];<br />
g[3*(C[i,2]-1)+m,3*(C[i,1]-1)+n]:=-X[m,n];<br />
g[3*(C[i,1]-1)+m,3*(C[i,2]-1)+n]:=-X[m,n];<br />
end for; <br />
<br />
G_star:=G+g;<br />
G:=G_star;<br />
end for;<br />
<br />
//Implementing boundary<br />
for x in 1:Points loop<br />
if P[x,4] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-2,a]:=0;<br />
G[(x*3)-2,(x*3)-2]:=1;<br />
end for;<br />
end if;<br />
if P[x,5] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[(x*3)-1,a]:=0;<br />
G[(x*3)-1,(x*3)-1]:=1;<br />
end for;<br />
end if;<br />
if P[x,6] <> 0 then<br />
for a in 1:Points*3 loop<br />
G[x*3,a]:=0;<br />
G[x*3,x*3]:=1;<br />
end for;<br />
end if;<br />
end for;<br />
<br />
//Solving displacement<br />
displacement:=Modelica.Math.Matrices.solve(G,F);<br />
<br />
//Solving reaction<br />
reaction:=(G_star*displacement)-F;<br />
<br />
//Eliminating float error<br />
for i in 1:N loop<br />
reaction[i]:=if abs(reaction[i])<=err then 0 else reaction[i];<br />
displacement[i]:=if abs(displacement[i])<=err then 0 else displacement[i];<br />
end for;<br />
<br />
//Checking Force<br />
check[1]:=sum({reaction[i] for i in (1:3:(N-2))})+sum({F[i] for i in (1:3:(N-2))});<br />
check[2]:=sum({reaction[i] for i in (2:3:(N-1))})+sum({F[i] for i in (2:3:(N-1))});<br />
check[3]:=sum({reaction[i] for i in (3:3:N)})+sum({F[i] for i in (3:3:N)});<br />
<br />
for i in 1:3 loop<br />
check[i] := if abs(check[i])<=ers then 0 else check[i];<br />
end for;<br />
<br />
//Calculating stress in each truss<br />
for i in 1:Trusses loop<br />
for j in 1:3 loop<br />
q1[j]:=P[C[i,1],j];<br />
q2[j]:=P[C[i,2],j];<br />
dis[j]:=abs(displacement[3*(C[i,1]-1)+j]-displacement[3*(C[i,2]-1)+j]);<br />
end for;<br />
<br />
//Solving Matrix<br />
L:=Modelica.Math.Vectors.length(q2-q1);<br />
cx:=(q2[1]-q1[1])/L;<br />
cy:=(q2[2]-q1[2])/L;<br />
cz:=(q2[3]-q1[3])/L; <br />
X:=(Elas/L)*[cx^2,cx*cy,cx*cz;<br />
cy*cx,cy^2,cy*cz;<br />
cz*cx,cz*cy,cz^2];<br />
<br />
Str:=(X*dis);<br />
stress1[i]:=Modelica.Math.Vectors.length(Str);<br />
end for;<br />
<br />
//Safety factor<br />
for i in 1:Trusses loop<br />
if stress1[i]>0 then<br />
safety[i]:=Yield/stress1[i];<br />
else<br />
safety[i]:=0;<br />
end if; <br />
end for;<br />
<br />
end Trusses_3D_Tugas_Besar_Safety;<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
6. '''Optimasi 1'''<br />
<br />
7. '''Optimasi 2'''</div>Jenizharhttp://air.eng.ui.ac.id/index.php?title=Metnum03-Jenizhar_Adivianto&diff=51901Metnum03-Jenizhar Adivianto2021-01-04T06:34:33Z<p>Jenizhar: </p>
<hr />
<div>'''KELAS METODE NUMERIK 03'''<br />
<br />
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ<br />
<br />
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُ <br />
<br />
<br />
== '''BIODATA DIRI''' ==<br />
<br />
<br />
----<br />
<br />
[[File:204456(1).jpg|150px|thumb|left|Nama Saya Jenizhar Adivianto akrab di sapa Dio, seorang Mahasiswa Teknik Mesin, Fakultas Teknik Universitas Indonesia]]<br />
<br />
Nama : Jenizhar Adivianto <br />
<br />
NPM : 1806181810<br />
<br />
Program Studi : S1 Teknik Mesin Pararel<br />
<br />
----<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
== '''[[Pertemuan 1 : 9 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada pertemuan kali ini yaitu pertemuan pertama mata kuliah metode numerik oleh Pak Dai. Pak Dai memakai sarana belajar yang ia miliki yaitu wiki Air.eng.ui.ac.id ini. Pertama-tama Pak Dai memulai pembelajaran dengan menekankan 4 hal yang menjadi indikator pembelajaran pada saat kuliah. Yang pertama yaitu konsep. Kita harus memahami prinsip dan konsep terlebih dahulu sehingga bisa lebih leluasa dan tahu saat kapan harus dipakai. Yang kedua, kita harus mengetahui penerapan dan aplikasi dari teori dan konsep yang sudah kita pelajari. Yang ketiga, yaitu kita harus tahu kapan dan mengapa teori atau konsep tersebut kita pakai untuk menyelesaikan suatu permaslahan. Yang keempat yaitu penilaian diri sendiri. Dengan menilai diri sendiri, kita dapat mengetahui progress pembelajaran kita dan hal keempat ini merupakan hal yang harus dilakukan agar dapat melakukan hal 1 - 3.<br />
<br />
di akhir pertemuan, Pak Dai memberikan kami tugas yaitu untuk menulis di air mengenai ilmu apa saja yang sudah kita dapatkan pada waktu sebelum uts dengan pak Engkos. Materi yang sudah di tulis di air.eng dibuatkan video mengenai penjelasannya kemudian di upload ke youtube. Yang terakhir yaitu mempelajari software modellica yang sudah didownload.<br />
<br />
'''1. Hal yang sudah dipelajari'''<br />
<br />
Pertama-tama, kami mempelajari bagaimana metode numerik secara garis besar. kemudian pada chapter 5, kami belajar mengenai beberapa metode-metode yang dipakai untuk menyelesaikan persamaan. Yang pertama itu ada bracketing method yang berisi graphical method, bisection method, dan False position method. Kemudian metode berikutnya ada open method yang berisi Fixed-point iteration, Newton Raphson method, Secant method, dan Brent's method.<br />
<br />
Pada Chapter berikutnya, kami mempelajari tentang regresi linear. Disini, regresi linear biasa digunakan untuk membuktikan teori-teori yang sudah ada dengan eksperimen. Dengan mengambil sampel yang bervariasi, kami dapat menghitung beberapa variabel seperti error dan lain-lain. Metode ini sering dilakukan pada saat praktikum atau pada saat analisa setelah pengambilan data.<br />
<br />
Materi terakhir sebelum uts yang kami pelajari adalah interpolasi. Interpolasi linier merupakan salah satu metode yang digunakan untuk mengetahui nilai dari suatu interval dua buah titik yang terletak dalam satu garis lurus. ada beberapa jenis yaitu newton Divided difference, Langrange, Spline, dan multidimensional. <br />
<br />
'''2. Link Video Youtube'''<br />
<br />
Berikut merupakan link dari video hasil progress pembelajaran saya mengenai openmodelica:<br />
<br />
https://youtu.be/Oaxobc5wd3Y<br />
<br />
'''3. Hasil pembelajaran modellica'''<br />
<br />
Untuk belajar modelica, pertama-tama saya membuka tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=SW5Eclf1tRs<br />
<br />
Video tersebut berisi mengenai pengenalan modelica untuk pemula. Sebagian besar dari isi video tersebut masih menjelaskan tentang simbol-simbol, tools, interface, dan lain-lain. Pada libraries, terdapat berbagai macam tools yang dapat membantu kita dalam menggunakan modelica. Salah satunya adalah tools "modelica". di dalam tools tersebut, kita dapat menemukan banyak model-model yang dapat kita pakai nantinya seperti electrical, magnetic, mechanical, fluida, heat, dan lain -lain. dapat dilihat pada gambar di bawah ini<br />
<br />
[[File:Libraries.jpg]]<br />
<br />
Pada video tersebut, ia menggunakan contoh controlled temperature pada heat transfer. Kita bisa melihat blok diagram, plot pemrograman diagram tersebut, dan teks dokumen yang menjelaskan diagram tersebut. Selanjutnya, ada tools berupa simulation. Kita perlu check model untuk memastikan bahwa model bisa dipakai. perlu dipastikan bahwa equation dan variabel sama. Bila tidak, maka terjadi masalah singularity. Setelah check model, maka kita bisa mensimulasikan model tersebut. Setelah simulasi selesai, dapat dilihat grafik-grafik dan variabel dimana kita bisa memilih apa yang ingin kita lihat pada sisi variabelnya. <br />
<br />
Berikutnya ada simulation setup dimana disitu kita bisa mengatur start time, stop time, interval, metode, dan lain-lain. Pada simulation setup juga terdapat translation page, simulation page, output, dan archived simulation. <br />
<br />
Untuk Tutorial pembuatan model, saya membukan tutorial di youtube dengan link sebagai berikut : https://www.youtube.com/watch?v=esSMzMCFwbo<br />
<br />
Video ini menjelaskan tentang bagaimana kita membuat model baru. Pada video tersebut, digunakan contoh nyata heat transfer dan dijadikan model matematika terlebih dahulu. Pertama-tama buka tab modeling di pojok bawah kiri. kemudian klik new file dan pilih "package". Setelah itu, klik kanan pada heat transfer di library dan pilih new open modelica course. Pilih connector dan tulid "heatport" dan pilih partial. Buka text view bar pada bagian atas<br />
<br />
<br />
Kemudian buka dua heat class baru dengan jenis connector dan nama "heatport_a" dan "heatport_b". Kita menggunakan dua heatport karena pada heatflux keadaan ini ada inlet dan outlet. Pada kedua class tersebut, buka text view dan tulis:<br />
<br />
<br />
Setelah membuat heatpart, kita membuat model matematika pada class baru yang akan di hitung. Yaitu ada pada wall, ambient(lingkungan), dan convection. Dan setelah ketiga model tersebut sudah ditulis, kita menggabungkan semua dengan model cooling. jangan lupa setiap selesai membuat model pada text view, di check terlebih dahulu dengan klik tombol centang hijau. Nanti akan saya tunjukkan di video bagaimana cara mengisinya. kalau sudah, bisa coba ke simulation dan di setup stop time = 10s. sisanya default saja. Kalau sudah, run simulation. Setelah selesai, dapat dilihat plort dari persamaan yang sudah dibuat dengan grafik.<br />
<br />
<br />
Terima kasih, sekian rangkuman pada pertemuan pertama<br />
<br />
Wassalamualaikum Wr.wb.<br />
<br />
<br />
== '''[[Pertemuan 2 : 16 November 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat Pagi/Siang/Sore/Malam Semuanya<br />
<br />
Pada kelas hari ini Pak DAI menanyakan bagaimana progress tugas kami mengenai progress pembelajaran open modelica itu sendiri. Kemudian Pak DAI memberikan kami 2 latihan soal yaitu:<br />
<br />
1. buatlah modeling mengenai persamaan y = x + 10<br />
<br />
[[File:Model add.jpg|center|750px]]<br />
<br />
[[File:Simul add.jpg|center|750px]]<br />
<br />
2. buatlah modeling mengenai mean (rata-rata)<br />
<br />
[[File:Model mean.jpg|center|750px]]<br />
<br />
[[File:Simul mean.jpg|center|750px]]<br />
<br />
Setelah itu, Pak Dai memberikan tugas yaitu membua suatu program untuk menyelesaikan persamaan aljabar dengan gauss elimination.<br />
<br />
Bentuk umum sistem persamaan linear mempunyai matriks yang bersesuaian yang disebut matriks yang diperluas atau augmented matrix. Pada mata kuliah sebelumnya kita mengerjakan persamaan dengan manual. Namun, pada mata kuliah metode numerik ini, kita dapat menyelesaikan persamaan-persamaan tersebut dengan program yang kita buat sendiri.<br />
<br />
Saya menggunakan persamaan yaitu :<br />
<br />
a + 2b + 3c + d = 9 <br />
<br />
3a + 5b + 7c + 4d = 12<br />
<br />
4a + b + c + 3d = 23<br />
<br />
6a + 7b + 5c + 2d = 0<br />
<br />
saya menggunakan program koding pada open modelica pertama dengan membuat function terlebih dahulu yaitu sebagai berikut :<br />
<br />
[[File:Fungsijeni.jpg|center|750px]]<br />
<br />
setelah itu, saya memasukkan data - data angka yang sudah diketahui kedalam class dan menyambungkan fungsi yang pertama ke dalam equation pada class seperti berikut :<br />
<br />
[[File:Classjeni.jpg|center|750px]]<br />
<br />
Bila sudah, pastikan di cek terlebih dahulu pada centang hijau. Kemudian, apabila sudah benar, langsung kita simulasikan. Berikut merupakan hasil dari simulasi saya :<br />
<br />
[[File:Plotjeni.jpg|center|750px]]<br />
<br />
Terima Kasih <br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 3 : 23 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
Pada hari ini, pak Dai menghimbau kami untuk membaca materi mengenai permodelan pegas di buku metode numerik terlebih dahulu. Kemudian, pak Dai menjelaskan bagaimana cara mengaplikasikan metode numerik ke permodelan teknik. <br />
<br />
Masalah teknik -> analisis teknik -> model matematis -> model numerik -> komputer -> solusi<br />
<br />
Kemudian pak dai menjelaskan bagaimana permodelan aplikasi pegas. pertama dari masalah tekniknya yaitu merupakan sistem pegas. kemudian pada analisis teknik kita menentukan hal-hal apa saja yang kita ketahui dalam persamaan tersebut. kemudian dengan hukum hooke kita membuat model matematisnya. Selanjutnya dengan openmodelica kita dapat membuat model numerik dan perhitungan simulasi komputernya untuk mendapatkan solusi<br />
<br />
Selanjutnya, pak Dai menghimbau kami untuk membuktikan matriks sistem pegas yang ada di buku dengan perhitungan pada openmodelica. Pada kali ini saya menggunakan fungsi gauss elimination karena hal yang ingin kita buktikan berbentuk matriks. kemudian saya menggunakan class untuk menginput data-data matriks yang sudah ada sehingga dapat kita hitung otomatis nantinya dengan program yang sudah kita buat. koding dari saya yaitu dapat dilihat dibawah ini:<br />
<br />
[[File:MessageImage 1606115724656.jpg|center|750px]]<br />
<br />
[[File:Class pegas 2.jpg|center|750px]]<br />
<br />
Berikutnya merupakan grafik yang didapat dari hasil simulasi. Disini dapat dilihat bahwa grafik W disini sesuai dengan apa yang ada dibuku. Berarti perhitungan sudah sesuai dan x disini yang merupakan perpindahan berarti sudah terbukti benar. Grafik tersebut dapat dilihat dibawah ini<br />
<br />
[[File:Class pegas 1.jpg|center|750px]]<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
<br />
== '''[[Tugas 3 Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr wb.<br />
<br />
Pada kali ini saya akan mengerjakan tugas yang diberikan oleh pak Dai yaitu soal dibawah ini<br />
<br />
[[File:Truss 0.png|center|750px]]<br />
<br />
Setelah membaca soal, kami dihimbau untuk membuat model matematika pada open modelica. kodingannya dapat dilihat dibawah ini :<br />
<br />
1. Pencarian Defleksi<br />
<br />
[[File:Defleksi.jpg|center|750px]]<br />
<br />
2. Pencarian Gaya Eksternal<br />
<br />
[[File:Gaya eksternal bener.jpg|center|750px]]<br />
<br />
3. Pencarian Defleksi lokal<br />
<br />
[[File:Defeleksi lokal.jpg|center|750px]]<br />
<br />
berikut merupakan hasil simulasi<br />
<br />
1. Simulasi defleksi<br />
<br />
[[File:Simul defleksi.jpg|center|750px]]<br />
<br />
2. Simulasi Gaya Eksternal<br />
<br />
[[File:Simul gaya eksternal.jpg|center|750px]]<br />
<br />
3. Simulasi Defleksi lokal<br />
<br />
[[File:Simul defleksi lokal.jpg|center|750px]]<br />
<br />
Sekian tugas saya<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb.<br />
<br />
== '''[[Pertemuan 4 : 30 November 2020]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
pada hari ini pertemuan dibuka oleh Pak Dai, beliau mengingatkan kembali kepada kita bahwa metnum ini merupakan gabungan antara matematika dan fisika dengan tugas yang diberikan minggu lalu. Kemudian, Pak Dai memberikan pertanyaan mengenai perbedaan statik dan dinamik. Perbedaannya adalah kalau statik bebannya tidak berubah terhadap waktu sedangkan berubah pada dinamik.<br />
<br />
Kemudian pak Dai menghimbau kami untuk melihat kodingan dari saudara christoper untuk mempratikkannya dalam open modelica itu sendiri. kode - kode nya addalah sebagai berikut:<br />
<br />
function GaussJordan<br />
<br />
// Gauss-Jordan Algorithm<br />
// Transforms input matrix A into reduced row echelon form matrix B<br />
// Christopher S.E. November 2020<br />
<br />
input Real [:,:] A; // An augmented matrix of m*n<br />
output Real [:,:] B; // Output matrix in reduced row echelon form<br />
<br />
// Local variables<br />
protected<br />
Integer h = 1; // Initialize pivot row<br />
Integer k = 1; // Initialize pivot column<br />
Integer m = size(A,1); // Number of rows in matrix<br />
Integer n = size(A,2); // Number of columns in matrix<br />
Integer c = 0; // Index counter<br />
Integer max_row; // Row index of max number in pivot column<br />
<br />
Real [:] pivot_column; // Vector containing pivot column data<br />
Real [:] pivot_row; // Vector containing backwards pivot row data<br />
Real [:,:] temp_array; // Stores matrix data when switching rows<br />
Real r; // Ratio value used for row operations<br />
<br />
// Limit to handle floating point errors<br />
Real float_error = 10e-10;<br />
<br />
algorithm<br />
<br />
// Transfer input matrix A into variable B<br />
B := A;<br />
<br />
while h <= m and k <= n loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_column := {B[i,h] for i in h:m};<br />
<br />
// Get position index of lowest row with greatest pivot number<br />
c:= h-1;<br />
for element in pivot_column loop<br />
c := c+1;<br />
if abs(element) == max(abs(pivot_column)) then<br />
max_row := c;<br />
end if;<br />
end for;<br />
<br />
// No pivot in this column, move on to next column<br />
if B[max_row, k] == 0 then<br />
k := k+1;<br />
<br />
else<br />
// Swap Rows h <-> max_row<br />
temp_array := B;<br />
temp_array[h] := B[max_row];<br />
temp_array[max_row] := B[h];<br />
B:= temp_array;<br />
<br />
// Divide pivot row by pivot number<br />
B[h] := B[h]/B[h,k];<br />
<br />
// For all rows below the pivot<br />
for i in (h+1):m loop<br />
<br />
// Store the ratio of the row to the pivot<br />
r := B[i,k] / B[h,k];<br />
<br />
// Set lower part of pivot column to zero<br />
B[i,k] := 0;<br />
<br />
// Operations on the remaining row elements<br />
for j in (k+1):n loop<br />
B[i,j] := B[i,j] - B[h,j] * r;<br />
end for;<br />
<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h+1;<br />
k := k+1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in row echelon form<br />
<br />
// Set values of (h,k) to (m,n)<br />
h := m;<br />
k := n;<br />
<br />
while h >= 1 and k >=1 loop<br />
<br />
// Dealing with floating point errors<br />
for i in 1:m loop<br />
for j in 1:n loop<br />
if abs(B[i,j]) <= float_error then<br />
B[i,j] := 0;<br />
end if;<br />
end for;<br />
end for;<br />
<br />
// Finding the pivot<br />
pivot_row := {B[h,i] for i in 1:k};<br />
<br />
// Get position index k of pivot<br />
c := 0;<br />
for element in pivot_row loop<br />
c := c+1;<br />
if element <> 0 then<br />
break;<br />
end if;<br />
end for;<br />
k := c;<br />
<br />
// No pivot in this row, move on to next row<br />
if B[h, k] == 0 then<br />
h := h-1;<br />
<br />
else<br />
<br />
// Perform row operations<br />
for i in 1:(h-1) loop<br />
r := B[i,k];<br />
B[i] := B[i] - B[h] * r;<br />
end for;<br />
<br />
// Move on to next pivot row and column<br />
h := h-1;<br />
k := k-1;<br />
<br />
end if;<br />
<br />
end while;<br />
<br />
// The matrix is now in reduced row echelon form<br />
<br />
end GaussJordan;<br />
<br />
== '''[[Kuis Metode Numerik]]''' ==<br />
<br />
Assalamualaikum wr. wb.<br />
<br />
berikut merupakan flow chart dari kuis yang sudah diberikan yaitu example 4 dan example 8. <br />
<br />
[[File:Example 4.jpg|center|750px]]<br />
<br />
[[File:Example 8.jpg|center|750px]]<br />
<br />
Pada soal nomor 4 kita pertama-tama harus menentukan node - node dari elemen yang ada pada soal dan juga sudut teta. Variabel node tersebut memiliki variabel i dan j. Diketahui juga dalam soal yaitu luas permukaan (A) = 10^-3m2 lalu modulus elastisitas (E) = 200GPa. Diketahui juga panjang batang yaitu 1m, 1,25m, dan 1,6m. Untuk melakukan simulasi di open modelica, kita harus menentukan matriks lokal terlebih dahulu yang nantinya ditambahkan untuk menentukan matriks global. Matriks global inilah yang nantinya kita bisa masukkan ke open modelica sebagai parameter real. Kode program dari open modellica yang saya buat adalah sebagai berikut:<br />
<br />
[[File:kodingkuis.jpg|center|750px]]<br />
<br />
Karena pada 1 dan 3 batang fix dan tidak ada gaya luar, maka matriks kita hilangkan baris dan kolom 1, 2, 5, 6. Setelah saya cek model sudah benar memiliki 24 equation dan 24 variabel<br />
<br />
[[File:Grafik.jpg|center|750px]]<br />
<br />
setelah disimulasikan berikut diatas merupakan grafik dari U. Tahap selanjutnya adalah menghitung gaya reaksi dari trusses dengan rumus R=(K*U)-F. U sudah diketahui diperhitungan sebelumnya dan K F sudah diketahui pada soal. berikut merupakan kodingan dari perhitungan.<br />
<br />
[[File:Kodinggaya.jpg|center|750px]]<br />
<br />
[[File:Grafikgaya.jpg|center|750px]]<br />
<br />
Berikut merupakan kodingan untuk perhitungan defleksi dan hasiil grafiknya<br />
<br />
[[File:Kodingdefleksi.jpg|center|750px]]<br />
<br />
[[File:Grafik defleksi.jpg|center|750px]]<br />
<br />
Untuk Soal no 8<br />
<br />
Terima kasih <br />
<br />
Wassalamualaikum wr. wb.<br />
<br />
== '''[[Pertemuan 5 : 7 Desember 2020]]''' ==<br />
<br />
Assalamualaikum wr.wb<br />
<br />
pada hari ini kelas dibuka oleh pak Dai dengan memanggil saudara Edward Josua untuk membantu menjelaskan tahap-tahap dalam menyelesaikan soal-soal. <br />
<br />
kemudian saudara ahmad menjelaskan mengenai flowchart yang ia buat sendiri walaupun belum mengaplikasikan hitung-hitungannnya, tetapi ahmad menjelaskan mengenai tahapan untuk menyelesaikan soal. Pertama solve stiffness, kemudian buat matrix global dari setiap elemen, selanjutnya adalah menyelesaikan matriks global dan mengimplementasikan boundary condition, kemudian didapatkan U.<br />
<br />
Pada Stiffness matrix elemen, ada float error karena perhitungan dalam radian. untuk Stiffness matrix global kita menentukan matrix global. Selanjutnya kita mengeliminasi menggunakan gauss jordan matrix global tersebut dan kita harus juga menghilangkan floating error. Terakhir yaitu masukkan rumus R=(K*U)-F<br />
<br />
'''1. Pembelajaran Koding Fahmi'''<br />
<br />
Kemudian pak Dai memberikan kami tugas mengenai pembahasan oleh saudara Ahmad Muhammad Fahmi tentang kodingan yang dibuat olehnya mengenai kuis nomer 4 dan 8. Untuk membantu pembelajaran kami, Fahmi memberikan video rekaman tutorial yang berisi diskusi pada link dibawah ini :<br />
<br />
https://drive.google.com/file/d/1n0zvwmn-3G4DWYCSPD48-Xfrp9_kT3R0/view?usp=sharing<br />
<br />
Pertama-tama, untuk mengerjakan nomer 4 yang 2d, Fahmi membuat beberapa function yang nanti akan digunakan dan 1 class untuk membuat penyelesaian atas soal yang diberikan. Pada class, Saudara ahmad memasukkan parameter REAL (inisiasi) yang berisi element, theta, A, E, L. Kemudian kita menginput node - node yang ada dengan memasukkan matriks dengan parameter integer. mengapa memakai integer? karena integer adalah bilangan bulat sedangkan kalau real bisa berbentuk desimal atau pecahan. Pada parameter integer kita memanggil matriks inisiasi pada kolom satu untuk di sesuaikan dengan node-node yang bersangkutan. Kemudian kita meng-input jumlah node yaitu n=4 dan Boundaries pada node. Boundaries pada node ini yaitu pada titik 1 dan 3 karena mereka merupakan tumpuan. Setelah itu, kita memasukkan load dengan menginput parameter real (2*n). Kita mengalikan n dengan 2 karena disini gaya ada 2 arah yaitu x dan y. Sesudah mengisi load, kita menginput equation dengan fungsi-fungsi yang sudah dibuat juga pada function oleh Fahmi. Kodingan dari Fahmi dapat dilihat pada file yang sudah dikirim di WA.<br />
<br />
Untuk pembahasan dari function, pertama-tama kita melihat terlebih dahulu dari function stiffnessmatrixelement. Disini kita menginput terlebih dahulu input yaitu matriks inisiasi (:,5) dan outputnya adalah matriks dari Ke yang tadi ada pada equation pada class. Kita bisa memasuki parameter tanpa harus menulis ulang pada function dengan memanggil parameter pada Class. Dengan menggunakan protected maka parameter dapat dipanggil. Parameter yang kita ambil untuk Ke adalah Theta, StiffTrig, Stifftrans, k_vec, dan Floating error. Untuk function-function yang lainnya juga bisa dilihat pada file yang sudah diberikan di WA.<br />
<br />
Untuk Soal 3d, terdapat perbedaan kodingan pada boundaries dari node-node yang diberikan. Terdapat perbedaan juga pada matrix parameter real karena data yang ada pada element, theta, A, E, L juga berbeda. Kita tetap menggunakan function yang sama.Jadi intinya adalah kita menggunakan pemrograman yang sama, namun hanya data-data saja yang berbeda sehingga kita harus menyesuaikan kembali dengan apa yang ada pada soal<br />
<br />
'''2. Aplikasi pada example 3.3'''<br />
<br />
Soal dapat dilihat sebagai berikut<br />
<br />
[[File:Gambar 2020-12-14 032203.png|center|750px]]<br />
<br />
Dapat dilihat bahwa disini adalah model 3d dengan 5 batang atau elemen. Kita masih menggunakan pemrograman yang sama yang dibuat oleh fahmi, namun kita harus mengubah data-data sesuai dengan soal yang ada. Yang kita ubah pertama pada class adalah data dari parameter realnya, integer, dan boundary. kode pemrograman yang fahmi pakai adalah sebagai berikut : <br />
<br />
class QuizSoal1<br />
//inisiasi = [ elemen#, dX, dY, dZ, A, E]<br />
parameter Real [:,6] inisiasi = [1, 6, 0, -3, 1.56, 10.6e6; //isi sesuai data<br />
2, 0, 0, -6, 1.56, 10.6e6;<br />
3, 0, 6, -3, 1.56, 10.6e6;<br />
4, -6, 0, -3, 1.56, 10.6e6;<br />
5, -6, 6, 0, 1.56, 10.6e6;<br />
6, 0, 6, 3, 1.56, 10.6e6];<br />
<br />
//node = [ i, j] <br />
parameter Integer [size(inisiasi,1),2] node = [1, 2; //isi sesuai data<br />
1, 3;<br />
1, 4;<br />
2, 3;<br />
2, 4;<br />
3, 4];<br />
<br />
//jumlah node<br />
parameter Integer n = 4; //isi sesuai data<br />
<br />
//titik node boundary xyz<br />
parameter Integer [:] Boundary_xyz = {1}; //isi sesuai data<br />
<br />
//titik node boundary xy<br />
parameter Integer [:] Boundary_xy = {4}; //isi sesuai data<br />
<br />
//titik node boundary xz<br />
parameter Integer [:] Boundary_xz = {0}; //isi sesuai data<br />
<br />
//titik node boundary yz<br />
parameter Integer [:] Boundary_yz = {0}; //isi sesuai data<br />
<br />
//titik node boundary x<br />
parameter Integer [:] Boundary_x = {3}; //isi sesuai data<br />
<br />
//titik node boundary y<br />
parameter Integer [:] Boundary_y = {0}; //isi sesuai data<br />
<br />
//titik node boundary z<br />
parameter Integer [:] Boundary_z = {0}; //isi sesuai data<br />
<br />
//load = [ F1x, F1y, F1z,..., Fnx, Fny, Fnz]<br />
parameter Real [3*n] load = {0, 0, 0, //isi sesuai data<br />
0, -200, 0, <br />
0, 0, 0, <br />
0, 0, 0}; <br />
<br />
Real [size(inisiasi,1)] L;<br />
Real [size(inisiasi,1)] k;<br />
Real [size(inisiasi,1),6,6] Ke;<br />
Real [size(inisiasi,1),3*n,3*n] Kg;<br />
Real [3*n,3*n] KgTot;<br />
Real [3*n,3*n] KgB;<br />
Real [3*n] U;<br />
Real [3*n] R;<br />
<br />
//check force<br />
Real [3] F;<br />
<br />
equation<br />
L = {(sqrt(inisiasi[i,2]^2 + inisiasi[i,3]^2 + inisiasi[i,4]^2)) for i in 1:size(inisiasi,1)}; <br />
<br />
k = {(inisiasi[i,5] * inisiasi[i,6] / L[i]) for i in 1:size(inisiasi,1)};<br />
<br />
Ke = StiffnessMatrixElement(inisiasi);<br />
<br />
Kg = StiffnessMatrixGlobal(n, node, Ke);<br />
<br />
KgTot = SumStiffnessMatrixGlobal(Kg);<br />
<br />
KgB = BoundaryStiffnessMatrixGlobal(KgTot, Boundary_xyz, Boundary_xy, Boundary_xz, Boundary_yz, Boundary_x, Boundary_y, Boundary_z);<br />
<br />
U = GaussJordan(KgB, load);<br />
<br />
R = ReactionForce(KgTot, U, load);<br />
<br />
F = CheckForce(load,R);<br />
<br />
end QuizSoal1;<br />
<br />
Berikut juga terdapat function untuk perhitungan-perhitungan yang digunakan yang dapat dilihat di bawah ini:<br />
<br />
[[File:Checkforce.jpg|center|1200px]]<br />
<br />
[[File:Gauss.jpg|center|1200px]]<br />
<br />
[[File:Reactionforce.jpg|center|1200px]]<br />
<br />
[[File:Stiffnesselement.jpg|center|1200px]]<br />
<br />
[[File:Global.jpg|center|1200px]]<br />
<br />
[[File:Sum global.jpg|center|1200px]]<br />
<br />
Selanjutnya, simulasi akan dilakukan dengan mengecek model terlebih dahulu apakah sudah benar. Check of QuizSoal1 completed successfully.<br />
<br />
Class QuizSoal1 has 1407 equation(s) and 1407 variable(s).<br />
<br />
0 of these are trivial equation(s).<br />
<br />
Berikut diatas merupakan hasil dari check model. kemudian akan disimulasikan, Dari simulasi yang sudah dilakukan, dapat dilihat hasil dari U dan R yang akan ditampilkan dibawah ini. <br />
<br />
[[File:HasilUR.jpg]]<br />
<br />
'''3. Feedback'''<br />
<br />
Sudah sangat baik dan inovatif, namun banyak sekali istilah baru sehingga perlu di jelaskan secara langsung lebih lanjut<br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[Pertemuan 6 : 14 Desember 2020]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Selamat siang semuanya. Pada hari ini kelas dibuka oleh pak Dai dengan membuka diskusi mengenai generasi jaman sekarang lebih mementingkan nilai daripada ilmunya. Pak Dai menjelaskan bahwa kasus itu dibagi 2. yang pertama persoalan yang menyangkut solid mechanics dan yang kedua yaitu fluida dalam teknik mesin ini. Sebenernya semua beban pada dunia nyata adalah dinamik. Namun, beban statik hanya merupakan suatu pendekatan. Itu yang disebut sustain load pada filosofi statika struktur. Pada trusses, stress atau deformasi hanya ada di ujung2nya. Pada trusses saat dipasang, semua titik hanya ada 3 derajat atau variabel yaitu ux, uy, uz. Pada titik tersebut kita dapat menghitung hukum fisikanya. Kita juga menyususn persamaan aljabar disetiap titiknya. Dengan metode numerik kita dapat menyelesaikan persamaan keseluruhan secara global.<br />
<br />
== '''[[Pertemuan 7 : 21 Desember 2020]]''' ==<br />
<br />
Asslamualaikum wr wb<br />
<br />
pada hari ini, pak Dai membuka kelas dengan menjelaskan kepada kami apa itu optimasi. Pak Dai menjelaskan bahwa tugas besar yang kita buat nantinya harus menganalisa trusses atau rangka. Trusses berbeda dengan beam. Beam ada asumsi momen di setiap titik. Kalau trusses tidak perlu. Dalam metode numerik ini bukan hanya menyelesaikan persamaan namun juga harus bisa menyusun persamaan fisika dan aljabarnya. Tentukan pers. aljabar, analisa dengan matriks, dan selesaikan. menghitung dan mencari kondisi optimal. kalau kita merancang, yang sering menjadi tujuan atau objektif kita adalah harus ada fungsi atau batasan-batasannya. tujuan disini adalah untuk meminimalkan biaya. Constrainnya harus cukup tangguh dan mampu menahan beban. Gaya yang bekerja harus mampu didukung oleh struktur ini. Harus mencari displacement, setelah itu mencari gaya, kemudian verifikasi apa perhitungan sudah betul. Bandingkan stress dan kekuatan material. Tegangan yang terjadi tidak boleh melebihi setengah dari kekuatan atau allowable stressnya.'<br />
<br />
Untuk datanya, rangka batangnya biasanya terdapat seperti pada gambar dibawah ini:<br />
<br />
[[File:MessageImage 1608531487237.jpg|center|750px]]<br />
<br />
Cari di google spesifikasi material-material besi siku dan harganya. Dari data disitu, kita lakukan optimasi. Contohnya staainless steel lebih mahal tapi lebih kuat. kita harus analisa optimasi sesuai dengan tujuan kita yaitu meminimalkan biaya. <br />
<br />
[[File:91768.jpg|center|750px]]<br />
<br />
Dapat dilihat pada gambar diatas merupakan ilustrasi daripada optimasi. Dari grafik tersebut, terdapat head, break horse power dan efisiensi. Oleh karena itu, kita harus menemukan BEP atau break even point dimana dapat diketahui pada tingkat efisiensi tertinggi. Sehingga kita harus memastikan bahwa sistem harus seoptimal mungkin dengan menentukan BEP<br />
<br />
Selanjutnya, kami diberikan tutorial optimasi oleh bu Chandra. Harus ada tujuan dan constraint pada optimasi. Bu chandra menjelaskan mengenai Bracket Optimization Using Golden Ratio Method. Berikut rumus persamaan yang digunakan :<br />
<br />
1. d = (sqrt 5 - 1)/2 . (Xu - Xt)<br />
<br />
2. X1 = Xt + d<br />
<br />
3. X2 = Xu - d<br />
<br />
[[File:91796.jpg|center|750px]]<br />
<br />
Berikut merupakan cara untuk menentukan global maksimum. Pada gambar diatas merupakan gambaran cara kita mengoptimasikan sebuah persamaan dari grafik. karena kita mengincar efisiensi maksimal, maka kita mengeliminasi pelan-pelan pada setiap iterasinya yang pada bagian sebelah kiri x2. Kemudian bu Chandra memberikan kami latian soal dengan persamaan <br />
<br />
F(x) = 2sinx - x^2/10<br />
<br />
Tujuan objektifnya adalah mencari f(x) maksimum dari fungsi tersebut. Untuk constraint tidak ada. Constraint ada kalau x dibatasi. Kami kemudian menuliskan program pada open modelica sebagai berikut<br />
<br />
[[File:91804.jpg|center|750px]]<br />
<br />
Kemudian, berikutnya adalah kami membuat model untuk menyelesaikan persamaan tersebut. Model tersebut dapat dilihat sebagai berikut :<br />
<br />
[[File:MessageImage 1608535344700.jpg|center|750px]]<br />
<br />
Kemudian berikutnya merupakan hasil grafik f1 dan f2 pada simulasi kodingan diatas<br />
<br />
[[File:MessageImage 1608536441959.jpg|center|750px]]<br />
<br />
Sekian <br />
<br />
Terima kasih<br />
<br />
Wassalamualaikum Wr. Wb<br />
<br />
== '''[[TUGAS BESAR METODE NUMERIK]]''' ==<br />
<br />
Assalamualaikum Wr. Wb<br />
<br />
Berikut merupakan sinopsis tugas besar yang diberikan oleh pak Dai. Diberikan permodelan 3d trusses yang diberikan sebuah gaya seperti gambar dibawah ini: <br />
<br />
[[File:MessageImage 1609696226842.jpg|center]]<br />
<br />
Berikut merupakan alur dari mengerjakan tugas besar yang sudah didiskusikan bersama dengan Josiah, Fahmi, dan christo. Alur ini sangat membantu saya dalam memahami tahap-tahap pengerjaan yang tadinya belum terbayang sama sekali. berikut merupakan penjabaran dari alur tersebut. <br />
<br />
'''1. Mendefinisikan Permasalahan'''<br />
<br />
Gambar diatas merupakan suatu model trusses yang akan dioptimasi. Optimasi memiliki tujuan objektif yaitu menekan biaya namun dengan material yang terbaik. Oleh karena itu, disini saya ingin mengoptimasi model trusses ini dengan membandingkan beberapa material untuk nantinya memilih material yang sesuai dengan metode numerik.<br />
<br />
'''2. Asumsi Solusi'''<br />
<br />
Berikut merupakan asumsi-asumsi yang saya gunakan untuk mencari solusi dari soal diatas.<br />
<br />
1. Variasi Stiffness terikat dengan variabel area. Memvariasikan Elastisitas tergolong sulit karena setiap material memiliki range yang tidak teratur dan dalam satu material yang sejenis (struktur biaya tetap) tidak terjadi perubahan nilai elastisitas yang berbanding lurus dengan perubahan biaya.<br />
<br />
2. Beban akan terdistribusi hanya pada point penghubung (karena bersifat truss)<br />
<br />
Membandingkan material – material dengan data dan persoalan yang ada. Pertama-tama kita memilih material yang terbaik terlebih dahulu dengan mengasumsikan dengan luas tertentu sehingga kita dapat membandingkan elastisitas dari beberapa material tersebut. Dari perbandingan tersebut, kita memakai material yang terbaik namun disini kita juga memperhatikan biaya dari material tersebut. Berikutnya, apabila kita sudah mendapatkan material yang paling efisien, kita membandingkan berbagai macam variable area yang nantinya paling sesuai dengan tujuan objektif dari optimasi. <br />
<br />
'''3. Pengambilan Data'''<br />
<br />
Disini saya mengambil data berbagai macam amterial dengan profil besi siku dan daftar harganya juga. Berikut merupakan tabel dari pengambilan data untuk material yang bervariasi.<br />
<br />
[[File:Material tabel.jpg|center|]]<br />
<br />
Kemudian berikutnya merupakan pengambilan data untuk area yang bervariasi<br />
<br />
[[File:MessageImage 1609741867332.jpg|center]]<br />
<br />
yang nantinya dari data-data ini akan saya lakukan curve fitting untuk melakukan pendekatan terhadap sampel-sampel yang sudah saya ambil<br />
<br />
'''4. Permodelan Numerik'''<br />
<br />
Sebelumnya, saya menggunakan curve fittin guntuk melakukan pendekatan -pendekatan terhadap sampel -sampel data yang sudah diambil. Berikut merupakan kode syntax untuk curve fitting yang saya gunakan. Coefficient yang didapatkan diakhir hasil merupakan koefisien yang dimasukkan ke rumus untuk menghasilkan pendekatan-pendekatan tersebut. berikut merupakan kode syntx saya<br />
<br />
<br />
----<br />
<br />
<br />
class curve_fitting<br />
<br />
parameter Real X[4]={2.00E+12,1.90E+12,1.93E+12,1.97E+12}; //Area/ Elastisitas<br />
parameter Real Y[4]={410480,265000,443000,240000}; //Area/ Cost/ Density/ Yield<br />
<br />
Real Coe[3];<br />
<br />
algorithm <br />
Coe:=Curve_Fitting(X,Y,2);<br />
<br />
end curve_fitting;<br />
<br />
<br />
----<br />
<br />
Untuk fungsi curve fittingnya, saya menggunakan kodingan yang sudah didiskusikan bersama dengan fahmi, josiah, dan christo. Kode synaxnya adalah sebagai berikut<br />
<br />
<br />
----<br />
<br />
function Curve_Fitting<br />
<br />
input Real X[:];<br />
input Real Y[size(X,1)];<br />
input Integer order=2;<br />
output Real Coe[order+1];<br />
<br />
protected<br />
Real Z[size(X,1),order+1];<br />
Real ZTr[order+1,size(X,1)];<br />
Real A[order+1,order+1];<br />
Real B[order+1];<br />
<br />
algorithm<br />
<br />
for i in 1:size(X,1) loop<br />
for j in 1:(order+1) loop<br />
Z[i,j]:=X[i]^(order+1-j);<br />
end for;<br />
end for;<br />
ZTr:=transpose(Z);<br />
<br />
A:=ZTr*Z;<br />
B:=ZTr*Y;<br />
Coe:=Modelica.Math.Matrices.solve(A,B);<br />
//Coe:=fill(2,size(Coe,1));<br />
<br />
end Curve_Fitting;<br />
/*<br />
for i in 1:3 loop<br />
for j in 1:Points loop<br />
R[j]:=reaction[3*(j-1)+i];<br />
end for;<br />
Sur[i]:=sum(R);<br />
end for;<br />
*/<br />
<br />
<br />
----<br />
<br />
<br />
untuk permodelan numerik, berikur merupakan kode syntax yang sudah didiskusikan bersama-sama<br />
<br />
<br />
<br />
'''5. Komputasi'''<br />
<br />
Memulai perhitungan numerik dan mensimulasikannya agar mendapat Analisa-analisa yang dibutuhkan untuk nantinya di optimasi. Berikut merupakan hasil dari kodingan curve fitting saya yang membuahkan hasil berupa coefficient untuk Area locked<br />
<br />
[[File:MessageImage 1609739867943.jpg|center]]<br />
<br />
6. '''Optimasi 1'''<br />
<br />
7. '''Optimasi 2'''</div>Jenizhar