Modul 8 Praktikum Pemrograman Komputer [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

LABORATORIUM TEKNIK KIMIA FAKULTAS TEKNIK UPN “VETERAN” JAWA TIMUR Praktikum Percobaan



: PEMROGRAMAN KOMPUTER : MATRIKS DAN PLOT DALAM PEMROGRAMAN MATLAB Tanggal : 14 NOVEMBER 2019 Pembimbing : DR.T.IR.SUSILOWATI,MT



Nama NPM/Semester Sesi Paralel



: M. ALVIEAN BAIHAQI : 19031010063/I : VIII :B



LAPORAN RESMI Soal : 1. Explain about matrix and plot (2 or 3 Dimension) that you know in matlab! Mention the types and their requirement! 2. Make your program in matlab with input, output, selection statement, looping, and matrix or plot! Give your algorithm, flowchart, and printscreen about input & output! Be creative! 3. Filtrasi merupakan suatu proses pemisahan zat padat dari fluida menggunakan media filter. Slurry CaCO3 23.47 kg/m3 dimasukkan dalam filter press pada tekanan konstan 338kN/m2 dengan temperatur 298.2 K. Luas filter plate and frame 0.873 m2 dan jumlah frame yang digunakan adalah 20 buah. Hambatan cake (α) 1.863 x 107 m/kg. Hambatan filter medium (Rm) 10.63 x 107 m-1. Viskositas air = 8,397 kg/m.s. Hitung waktu yang dibutuhkan untuk mendapatkan 3.37 m3 filtrat! Tampilkan grafik antara waktu per menit vs volume yang didapat setiap menitnya hingga mencapai yang diinginkan! Rumus :



𝐵=



µ x Rm A x (−Δp)



𝑡 𝐾𝑝 𝑥 𝑉 = +𝐵 𝑣 2 𝐾𝑝 =



µ x α x Cs 𝐴2 𝑥 (−𝛥𝑝)



4. Sebuah campuran A dan B (A lebih volatile) dengan Pa=11(2Npm terakhir) mmHg dan Pb sebesar 45(1 Npm terakhir) mmHg jika sebuah campuran memiliki nilai α>1 maka mudah dipisahkan sehingga tidak memiliki titik azeotrop. Buatlah kurva kesetimbangan dari campuran A dan B. sertakan flowchart, algoritma, script dan hasil run!



𝛼=



𝑃𝑎 𝑃𝑏



𝑦𝑎 =



𝛼 𝑥 𝑋𝑎 1 + 𝑋𝑎(𝛼 − 1)



5. Buatlah program dengan menghitung hukum – hukum gas ideal disertakan dengan grafiknya, lengkapi programnya dengan flowchart, algoritma dan hasil run!



1. Explain about matrix and plot (2 or 3 Dimension) that you know in matlab! Mention the types and their requirement! Answer : 1.) Matrix In MATLAB, matrix is a set of numbers in the form of a rectangularlength array. At a specific value there is a scalar defined as a 1 × 1 matrix or a matrix consisting of only 1 row called a row matrix and a matrix consisting of 1 column called a column matrix (or vector). MATLAB has another way of storing numeric and non numerical values, but basically the matrix form is the recommended form. A matrix is also called a two-dimensional array of numbers.In MATLAB, you can create a matrix by entering elements in each row as comma or space delimited numbers and using semicolons to mark the end of each row. Based on the matrix order, matrix can be divided into several types : A. Square matrix A matrix with an order of n x n or number of rows equal to the number of columns present in the matrix. This matrix is also called square matrix B. Line Matrix Line Matrix is a matrix that consist of only one line C. Column Matrix Column Matrix is a matrix that consist of only one column. (Ndraha, 2015)



2.) Plot Graphs or plots in MATLAB serve to present the data, making it easier to see as a whole. How to Create a graph in MATLAB can be done with various formulation commands with various functions. Generally, there are 2 types of plot in MATLAB, that is 2 Dimension Plot and Dimension Plot 3.



A. 2 Dimensional Plot (2 Dimension Graphs) 2-dimensional computer graphics commonly called 2D or field are the shapes of objects that have length and width. Graph 2 Dimension is a drawing technique that is based on x (flat) axis coordinate and y (a vertical) axis. In order to appear perfectly, the image to be displayed with this technique should have the minimum and maximum x and y coordinates of the resolution used. The 2D computer graph is a computer-based digital image, which is a two- dimensional image object (2D). The 2D Graphic Model is a combination of geometric models (also called vector graphics), digital images (raster graphics), mathematical functions, and so on. These components can be modified and manipulated by two-dimensional geometry transformations, such as translation, rotation, and dilation. There are two commands in matlab that serve to draw the function graph that is "ezplot" and "plot" · a. Plot Plot (y) is a command in MATLAB to view the y chart based on the values of y1, y2, y3, y4 ,. . . yn which is already known. Later the plot will generate a graph based on the coordinates of points (1, y1), (2, y2), (3, y3) ,. . . , (n, yn) connecting the point coordinates (i, yi) and (i + 1, yi + 1) with a straight line. Example : Suppose we will draw a graph of y with the values of y1, y2, y3, y4, y5, y6 are 1, 5, -6, 8, 9, and 19 respectively. Solution: >>y = [1 5 -6 8 9 19]; >>plot (y) b. Ezplot Ezplot (y) is a command in MATLAB to view the y chart based on known equations.



Example : Suppose we will create a graph y = x2 Solution: >>y1 = inline ('x ^ 2'); % >>ezplot (y1)



B. 3 Dimensional Plot (3 Dimensional Graphs) 3-dimensional computer graphics are called 3D or are the shapes of objects that have length, width and height. Graph 3 Dimension is a drawing technique which is based on the x-axis coordinate point (flat), y- axis (vertical), and z-axis (tilt). In computer graphics, 3D is a graphical form that uses three dimensional geometry data representation. In MATLAB is known as the plot3 function, which is used to display 3- dimensional graphs. Plot3 requires 3 arguments with plot3 (x, y, z), where x, y, z represent 3 parts of the same length vector. (Mufdholifah, 2012)



2. Make your program in matlab with input, output, selection statement, looping, and matrix or plot! Give your algorithm, flowchart, and printscreen about input & output! Be creative!



Algoritma Program Perhitungan Tegangan Permukaan 1. Mulai program 2. Menampilkan dan memasukkan pilihan 3. Apabila pilihan 1 maka a. Memasukkan nilai jari-jari bola b. Memproses perulangan dan rumus : tpA=(rhoA x g x h x r)/2 c. Menampilkan hasil perhitungan, perulangan, dan plot 4. Apabila pilihan 2 a. Memasukkan nilai jari-jari bola b. Memproses perulangan dan rumus : tpB=(rhoB x g x h x r)/2 c. Menampilkan hasil perhitungan, perulangan, dan plot 5. Apabila pilihan 3 a. Memasukkan nilai jari-jari bola b. Memproses perulangan dan rumus : tpC=(rhoC x g x h x r)/2 c. Menampilkan hasil perhitungan, perulangan, dan plot 6. Apabila pilihan 4 a. Memasukkan nilai jari-jari bola b. Memproses perulangan dan rumus : tpD=(rhoD x g x h x r)/2 c. Menampilkan hasil perhitungan, perulangan, dan plot 7. Selesai



Flowchart Program Perhitungan Tegangan Permukaan Mulai



Menampilkan dan memasukkan pilihan



1



Memasukkan nilai jari-jari bola



for h=10: 2:30



Memproses dengan rumus : tpA=(rhoA x g x h x r)/2



Menampilkan hasil perhitungan, perulangan, dan grafik



a



b



a



2



b



Memasukkan nilai jari-jari bola



for h=10: 2:30



Memproses dengan rumus : tpB=(rhoB x g x h x r)/2



Menampilkan hasil perhitungan, perulangan, dan grafik



c



d



c



3



d



Memasukkan nilai jari-jari bola



for h=10: 2:30



Memproses dengan rumus : tpC=(rhoC x g x h x r)/2



Menampilkan hasil perhitungan, perulangan, dan grafik



e



f



e



4



f



Memasukkan nilai jari-jari bola



for h=10: 2:30



Memproses dengan rumus : tpD=(rhoD x g x h x r)/2



Menampilkan hasil perhitungan, perulangan, dan grafik



Selesai



Listing Program Perhitungan Tegangan Permukaan clear all; clc; rhoA=1; rhoB=0.84; rhoC=0.89; rhoD=0.9; g=980; disp('======================================'); disp('PROGRAM PERHITUNGAN TEGANGAN PERMUKAAN'); disp('======================================'); disp('



');



disp('Pilihan Cairan/Fluida : '); disp('1. Aquadest '); disp('2. Minyak Kelapa '); disp('3. OLI SAE 40 '); disp('4. OLI SAE 50 '); disp('--------------------------------------'); a=input('Masukkan Pilihan : '); switch a case 1 disp('



|Aquadest|



');



disp('Densitas : 1 gr/cm^3'); r=input('Masukkan jari-jari bola yang akan dimasukkan kedalam fluida = '); disp('--------------------------------------------------------'); disp(' Tegangan Permukaan



| Ketinggian Permukaan



disp('--------------------------------------------------------'); for h=10:2:30 tpA=(rhoA*g*h*r)/2; fprintf('%14.2f %27.2f\n',tpA,h);



');



plot(tpA,h,'-r*'); xlabel('Tegangan Permukaan (dyne/cm)'); ylabel('Ketinggian Permukaan (cm)'); title('GRAFIK



HUBUNGAN



KETINGGIAN



DENGAN



TEGANGAN PERMUKAAN'); grid on; hold on; end case 2 disp('



|Minyak Kelapa|



');



disp('Densitas : 0.84 gr/cm^3'); r=input('Masukkan jari-jari bola yang akan dimasukkan kedalam fluida = '); disp('--------------------------------------------------------'); disp(' Tegangan Permukaan



| Ketinggian Permukaan



');



disp('--------------------------------------------------------'); for h=10:2:30 tpB=(rhoB*g*h*r)/2; fprintf('%14.2f %27.2f\n',tpB,h); plot(tpB,h,'-r*'); xlabel('Tegangan Permukaan (dyne/cm)'); ylabel('Ketinggian Permukaan (cm)'); title('GRAFIK



HUBUNGAN



KETINGGIAN



TEGANGAN PERMUKAAN'); grid on; hold on; end case 3 disp('



|OLI SAE 40|



disp('Densitas : 0.89 gr/cm^3');



');



DENGAN



r=input('Masukkan jari-jari bola yang akan dimasukkan kedalam fluida = '); disp('--------------------------------------------------------'); disp(' Tegangan Permukaan



| Ketinggian Permukaan



');



disp('--------------------------------------------------------'); for h=10:2:30 tpC=(rhoC*g*h*r)/2; fprintf('%14.2f %27.2f\n',tpC,h); plot(tpC,h,'-r*'); xlabel('Tegangan Permukaan (dyne/cm)'); ylabel('Ketinggian Permukaan (cm)'); title('GRAFIK



HUBUNGAN



KETINGGIAN



DENGAN



TEGANGAN PERMUKAAN'); grid on; hold on; end case 4 disp('



|OLI SAE 50|



');



disp('Densitas : 0.9 gr/cm^3'); r=input('Masukkan jari-jari bola yang akan dimasukkan kedalam fluida = '); disp('--------------------------------------------------------'); disp(' Tegangan Permukaan



| Ketinggian Permukaan



disp('--------------------------------------------------------'); for h=10:2:30 tpD=(rhoD*g*h*r)/2; fprintf('%14.2f %27.2f\n',tpD,h); plot(tpD,h,'-r*'); xlabel('Tegangan Permukaan (dyne/cm)'); ylabel('Ketinggian Permukaan (cm)');



');



title('GRAFIK



HUBUNGAN



TEGANGAN PERMUKAAN'); grid on; hold on; end end



KETINGGIAN



DENGAN



Hasil Run Program Perhitungan Tegangan Permukaan



3. Filtrasi merupakan suatu proses pemisahan zat padat dari fluida menggunakan media filter. Slurry CaCO3 23.47 kg/m3 dimasukkan dalam filter press pada tekanan konstan 338kN/m2 dengan temperatur 298.2 K. Luas filter plate and frame 0.873 m2 dan jumlah frame yang digunakan adalah 20 buah. Hambatan cake (α) 1.863 x 107 m/kg. Hambatan filter medium (Rm) 10.63 x 107 m-1. Viskositas air = 8,397 kg/m.s. Hitung waktu yang dibutuhkan untuk mendapatkan 3.37 m3 filtrat! Tampilkan grafik antara waktu per menit vs volume yang didapat setiap menitnya hingga mencapai yang diinginkan! Rumus :



𝐵=



µ x Rm A x (−Δp)



𝑡 𝐾𝑝 𝑥 𝑉 = +𝐵 𝑣 2 𝐾𝑝 =



µ x α x Cs 𝐴2 𝑥 (−𝛥𝑝)



Algoritma Program Perhitungan Laju Filtrasi Pada Proses Batch 1. Mulai 2. Menampilkan nilai-nilai untuk perhitungan yang diketahui yaitu konsentrasi, viskositas, tekanan, hambatan filter, luas filter dan hambatan cake 3. Memproses rumus perhitungan a. A=Lf x nf b. B=(u x Rm)/(A*P) c. Kp=(u x a x Cs)/(A^2 x P) d. t=((Kp x V^2)/2)+(B x V) e. tm=t/60 f. Q=V/tm 4. Menampilkan nilai hasil perhitungan yaitu A,B,Kp,waktu, t1 dan kelajuan 5. Mengulangi tm dari 1 hingga nilai tm 6. Memproses rumus perhitungan



a. V=Q x tm 7. Menampilkan hasil perhitungan V dan grafik perbandingan antara V dengan tm setiap menitnya 8. Selesai



Flowchart Program Laju Filtrasi Pada Proses Batch Mulai



Menampilkan nilai-nilai perhitungan



Memproses dengan rumus A=Lf*nF B=(u*Rm)/(A*dP) Kp=(u*a*Cs)/(A^2*dP) t=((Kp*V^2)/2)+(B*V) tm=t/60 Q=V/tm



Menampilkan nilai hasil perhitungan yaitu A,B,Kp,waktu, t1 dan kelajuan



For tm=1: 1:tm



Memproses dengan rumus V=Q*tm



Menampilkan hasil perhitungan V dan grafik perbandingan antara V dengan tm



Selesai



Listing Program Perhitungan Laju Filtrasi Pada Proses Batch clear all; clc; disp('================================================= =='); disp('Program Perhitungan Laju Filtrasi Pada Proses Batch'); disp('================================================= =='); disp(' ------------------------'); disp('|Slurry CaCO3 23.47 kg/m3|'); disp(' ------------------------'); disp('Cs = 23.47 kg/m3



u = 8.397 kg/m.s');



disp('dP = 338kN/m2



V = 3.37 m3');



disp('T = 298.2 K disp('Lf = 0.873 m2



a = 1.863 x 10^7 m/kg'); nF = 20');



disp('Rm = 10.63 x 10^7 m-1'); disp('___________________________________________________'); Cs=23.47; dP=338000; T=298.2; Lf=0.873; Rm=10.63*10^7; u=8.397; V=3.37; nF=20; a=1.863*10^7; A=Lf*nF; B=(u*Rm)/(A*dP); Kp=(u*a*Cs)/(A^2*dP); t=((Kp*V^2)/2)+(B*V); tm=t/60;



Q=V/tm; disp(['Nilai A



= ',num2str(A),' m^2']);



disp(['Nilai B



= ',num2str(B),' s/m^3']);



disp(['Nilai Kp



= ',num2str(Kp),' s/m^4']);



disp(['Nilai t(dalam sekon) = ',num2str(t),' s']); disp(['Nilai t(dalam menit) = ',num2str(tm),' menit']); disp(['Nilai Q



= ',num2str(Q),' m^3/menit']);



disp('---------------------------------------------------'); fprintf('%6s %14s\n','|Waktu|',' |Volume|'); disp('----------------------'); for tm=1:1:tm V=Q*tm; fprintf('%6.3f %14.3f\n',tm,V); plot(tm,V,'squarer'); title('GRAFIK



HUBUNGAN



VOLUME'); xlabel('Waktu, (menit)'); ylabel('Volume, (m^3)'); grid on; hold on; end



ANTARA



WAKTU



DENGAN



Hasil Run Program Perhitungan Laju Filtrasi Pada Proses Batch



4. Sebuah campuran A dan B (A lebih volatile) dengan Pa=11(2Npm terakhir) mmHg dan Pb sebesar 45(1 Npm terakhir) mmHg jika sebuah campuran memiliki nilai α>1 maka mudah dipisahkan sehingga tidak memiliki titik azeotrop. Buatlah kurva kesetimbangan dari campuran A dan B. sertakan flowchart, algoritma, script dan hasil run!



𝛼=



𝑃𝑎 𝑃𝑏



𝑦𝑎 =



𝛼 𝑥 𝑋𝑎 1 + 𝑋𝑎(𝛼 − 1)



Algoritma Program Destilasi Campuran 1. Mulai 2. Memasukkan Nilai Tekanan Pa dan Pb 3. Mengulangi xa sebanyak 10 kali dari 0 hingga 1 dengan interval 0.1 4. Memproses rumus perhitungan a. a=(Pa)/(Pb) b. ya=(a*xa)/(1+(xa*(a-1))) 5. Menampilkan Hasil perhitungan yaitu a, xa, dan ya serta menampilkan grafik perbandingannya 6. selesai



Flowchart Program Destilasi Campuran



Mulai



Memasukkan Nilai tekanan Pa dan Pb



for xa=0:0.1:1



Memproses Rumus : a=(Pa)/(Pb) ya=(a*xa)/(1+(xa*(a-1)))



Menampilkan Hasil perhitungan a, xa, ya serta grafik



Selesai



Listing Program Destilasi Campuran clear all; clc; disp('=========================='); disp('PROGRAM DESTILASI CAMPURAN'); disp('=========================='); disp('



');



Pa=input('Masukkan Nilai Tekanan A (dalam mmHg)= '); Pb=input('Masukkan Nilai Tekanan B (dalam mmHg)= '); a=Pa/Pb; disp(['Nilai a = ',num2str(a)]); fprintf('%1s %3s %5s\n','| a |','| xa |','| ya |'); disp('-------------------------'); for xa=0:0.1:1; a=(Pa)/(Pb); ya=(a*xa)/(1+(xa*(a-1))); fprintf('%6.2f %7.1f %9.4f\n',a,xa,ya); plot(xa,ya,'-ok'); title('KURVA KESETIMBANGAN'); xlabel('XA'); ylabel('YA'); hold on; xa=0:0.1:1; y=xa; plot(xa,y,'-r','LineWidth',2); grid on; end



Hasil Run Program Destilasi Campuran



5. Buatlah program dengan menghitung hukum – hukum gas ideal disertakan dengan grafiknya, lengkapi programnya dengan flowchart, algoritma dan hasil run!



Algoritma Program Perhitungan Gas Ideal 1. Mulai 2. Menampilkan dan memasukkan pilihan perhitungan gas ideal 3. Apabila pilihan 1 maka akan menghitung Hukum Charles a. Memasukkan Nilai Suhu dan Volume gas yang diketahui yaitu T1,V1,T2 b. Memproses rumus perhitungan V2=T2/T1*V1 c. Menampilkan Nilai Volume Keadaan 2 dan Grafiknya 4. Apabila pilihan 2 maka akan menghitung Hukum Boyle a.



Memasukkan Nilai Tekanan dan Volume gas yang diketahui yaitu P1,V1,V2



b.



Memproses rumus perhitungan P2=P1*V1/V2



c.



Menampilkan Nilai Tekanan Keadaan 2 dan Grafiknya



5. Apabila pilihan 3 maka akan menghitung Hukum Gay-Lussac a. Memasukkan Nilai Tekanan dan Suhu gas yang diketahui yaitu P1,T1,P2 b. Memproses rumus perhitungan T2=P2*T1/P1 c. Menampilkan Nilai Suhu Keadaan 2 dan Grafiknya 6. Selesai



Flowchart Program Perhitungan Gas Ideal Mulai



Menampilkan dan memasukkan pilihan perhitungan



Ya 1



Memasukkan Nilai Suhu dan Volume gas yang diketahui yaitu T1,V1,T2



Memproses rumus perhitungan V2=T2/T1*V1



Tidak



Menampilkan Nilai Volume Keadaan 2 dan Grafiknya



Ya 2



Tidak



Memasukkan Nilai Tekanan dan Volume gas yang diketahui yaitu P1,V1,V2



Memproses rumus perhitungan P2=P1*V1/V2



Menampilkan Nilai Tekanan Keadaan 2 dan Grafiknya



a



b



a



b



Ya 3



Tidak



Memasukkan Nilai Tekanan dan Suhu gas yang diketahui yaitu P1,T1,P2



Memproses rumus perhitungan T2=P2*T1/P1



Menampilkan Nilai Suhu Keadaan 2 dan Grafiknya



Selesai



Listing Program Perhitungan Gas Ideal clear all; clc; disp('============================='); disp('PROGRAM PERHITUNGAN GAS IDEAL'); disp('============================='); disp('



');



R=0.082; disp('HUKUM-HUKUM GAS IDEAL'); disp('1. Hukum Charles'); disp('2. Hukum Boyle'); disp('3. Hukum Gay-Lussac'); x=input('Pilihan perhitungan (1/2/3) = '); disp('============================='); switch x case 1 T1=input('Suhu Gas Keadaan 1 = '); V1=input('Volume Gas Keadaan 1 = '); T2=input('Suhu Gas Keadaan 2 = '); V2=T2/T1*V1; fprintf('%5s



%1.0f



%1s\n','Nilai



adalah',V2,'M^3'); V=[V1,V2]; T=[T1,T2]; plot(V,T); xlabel('Volume(m^3)'); ylabel('Suhu(K)'); title('Grafik Hukum Charles'); grid on; hold on; case 2



Volume



Gas



Keadaan



2



P1=input('Tekanan Gas Keadaan 1 = '); V1=input('Volume Gas Keadaan 1 = '); V2=input('Volume Gas Keadaan 2 = '); P2=P1*V1/V2; fprintf('%5s



%1.0f



%1s\n','Nilai



Tekanan



Gas



Keadaan



2



adalah',P2,'N/m^2'); P=[P1,P2]; V=[V1,V2]; plot(P,V); xlabel('Tekanan(N/m^2)'); ylabel('Volume(M^3)'); title('Grafik Hukum Boyle'); grid on; hold on; case 3 P1=input('Tekanan Gas Keadaan 1 = '); T1=input('Suhu Gas Keadaan 1 = '); P2=input('Tekanan Gas Keadaan 2 = '); T2=P2*T1/P1; fprintf('%5s %1.0f %1s\n','Nilai Suhu Gas Keadaan 2 adalah',T2,'K'); P=[P1,P2]; T=[T1,T2]; plot(P,T); xlabel('Tekanan(N/m^2)'); ylabel('Suhu(K)'); title('Grafik Hukum Gay-Lussac'); grid on; hold on; end



Hasil Run Program Perhitungan Gas Ideal



DAFTAR PUSTAKA Mufdholifah, Wiwin. 2012. “Cara Membuat Grafik Pada Matlab”. (http:// aribahwiwinimtinan.blogspot.co.id/2012/11/cara - membuat - grafik pada- matlab.html). Diakses pada tanggal 19 November pukul 13.35 WIB. Ndraha, Otoni. 2015. “Jenis-Jenis Matriks”. (http://otonindraha.blogspot.co.id/ 2015/ 03/jenis-jenis-matriks.html). Diakses pada 19 November pukul 13.50 WIB.