You are on page 1of 9

Polyfit ( Polynomial Curve Fit) merupakan sebuah fungsi dalam MATLAB.

Polyfit tersimpan dalam


direktori matlab dengan nama polyfit.m. Dengan polyfit sebuah data dapat diketahui polanya dengan menemukan
konstanta untuk pendekatan polynomial. Titik diskrit akan dijadikan acuan untuk mendapatkan nilai continue dari
pendekatan nilai diskrit tersebut. Syntax polyfit adalah
p = polyfit(x,y,n)
dimana :

p= variabel yang digunakan untuk minyimpan nilai polyfit


x,y= koordinat nilai diskrit yang dijadikan acuan untuk mencari trend dari persamaan polynomial
n= orde polynomial
Tabel 2.1 menunjukkan data karakteristik input (Btu/KWh) terhadap output generator (MW). Informasi lain
yang dapat diambil dari Tabel 2.1, adanya 3 jenis generator steam turbine yang beroperasi menggunakan 3 bahan
bakar yang berbeda yaitu batu bara, minyak dan gas. Selain itu, terdapat 5 pembangkit yang mempunyai rating yang
berbeda yaitu 50 MW, 200 MW, 400 MW, 600 MW, dan rating daya 800 1200 MW. Data bahan bakar diambil
saat 5 keadaan operasi, yakni saat 25%, 40%, 60%, 80%, dan 100% dari total rating daya. Dari semua data diatas
kemudian plot menggunakan fungsi polyfit dilakukan.
Plot-plot tabel masing-masing rating menggunakan matlab, program yang saya gunakan sudah terlampir pada folder
2214105009.rar dengan nama 2214105009.m

berikut program yang saya tulis :


%-------------------------------------------------------------------% plot karakteristik pembangkit termal
%-------------------------------------------------------------------% oleh : Christina Tio Trisnasari
% nrp : 2214105009
close all;
clear all;
clc;
a=input('Input Unit Ranting (50/200/400/600/800 MW)=');
Pout1=[1 0.8 0.6 0.4 0.25];%Daya Output (Dalam %)
Pout2=[1 0.8 0.6 0.4];%Daya Output (Dalam %)
%Data Input Pembangkit%
if(a==50)
P=a*Pout1;
Hcoal=[11000 11088 11429 12166 13409];%Unit Steam-Coal (Unit P1)
Hoil=[11500 11592 11949 12719 14019];%Unit Steam-Oil (Unit P2)
Hgas=[11700 11794 12156 12940 14262];%Unit Steam-Gas (Unit P3)
elseif(a==200)
P=a*Pout1;
Hcoal=[9500 9576 9871 10507 11581];%Unit Steam-Coal (Unit P1)
Hoil=[9900 9979 10286 10949 12068];%Unit Steam-Oil (Unit P2)
Hgas=[10050 10130 10442 11115 12251];%Unit Steam-Gas (Unit P3)
elseif(a==400)
P=a*Pout1;
Hcoal=[9000 9045 9252 9783 10674];%Unit Steam-Coal (Unit P1)
Hoil=[9400 9447 9663 10218 11148];%Unit Steam-Oil (Unit P2)
Hgas=[9500 9548 9766 10327 11267];%Unit Steam-Gas (Unit P3)
elseif(a==600)
P=a*Pout1;
Hcoal=[8900 8989 9265 9843 10814];%Unit Steam-Coal (Unit P1)
Hoil=[9300 9393 9681 10286 11300];%Unit Steam-Oil (Unit P2)
Hgas=[9400 9494 9785 10396 11421];%Unit Steam-Gas (Unit P3)
elseif(a==800)
P=a*Pout2;
Hcoal=[8750 8803 9048 9625];%Unit Steam-Coal (Unit P1)
Hoil=[9100 9155 9409 10010];%Unit Steam-Oil (Unit P2)
Hgas=[9200 9255 9513 10120];%Unit Steam-Gas (Unit P3)
end
b=input('karakteristik dalam satuan \n 1.Heat \n 2.Full Cost \n adalah ');
if(b==1)
G=1000;
%Merubah dari Btu/kWh ke Btu/MWh
H1=(Hcoal.*P)/G;
H2=(Hoil.*P)/G;
H3=(Hgas.*P)/G;
elseif(b==2)
G=1000;
%Asumsi saat 1 MBtu sama dengan 1 ($ atau R)
Uang=1;
%Merubah dari Btu/kWh ke R/h
H1=(Hcoal.*P*Uang)/G;
H2=(Hoil.*P*Uang)/G;
H3=(Hgas.*P*Uang)/G;
end

%KOEFISIEN MBtu/h ORDE 2


X1=polyfit(P,H1,1);
X2=polyfit(P,H2,1);
X3=polyfit(P,H3,1);
%INTEGRAL DARI KOEFISIEN Btu/MWh ke MBtu/h
%INTEGRAL DARI R/MWh ke R/h
B1=polyint(X1);
B2=polyint(X2);
B3=polyint(X3);
%Penambahan nilai C
C=500;
B1(3)=C;
B2(3)=C;
B3(3)=C;
%HASIL PERSAMAAN KUADRAT
x1=poly2str(B1,'P');
x2=poly2str(B2,'P');
x3=poly2str(B3,'P');
R1=poly2str(X1,'P');
R2=poly2str(X2,'P');
R3=poly2str(X3,'P');
%KURVA KARAKTERISTIK
j=[0:1:a];
Y1=polyval(B1,j);
Y2=polyval(B2,j);
Y3=polyval(B3,j);
S1=polyval(X1,j);
S2=polyval(X2,j);
S3=polyval(X3,j);
%GAMBAR KURVA KARAKTERISTIK INPUT-OUPUT H terhadap P
if(b==1)
figure
plot(j,S1,':r',j,S2,'--g',j,S3,'-b')
title (['Kurva Karakteristik Kenaikan Panas Unit Rating ', num2str(a),' MW'])
legend(['Coal=',num2str(R1)],['Oil=',num2str(R2)],['Gas=',num2str(R3)],2);
xlabel 'P (MW)'
ylabel 'dH/dP(BTu/MWh)'
grid on
figure
plot(j,Y1,':r',j,Y2,'--g',j,Y3,'-b')
title(['Kurva Karakteristik Input-Output Unit Rating ' , num2str(a),'MW']);
xlabel('P (MW)')
ylabel('H (MBtu/h)')
legend(['Coal=',num2str(x1)],['Oil=',num2str(x2)],['Gas=',num2str(x3)],2);
grid on
elseif(b==2)
figure
plot(j,S1,':r',j,S2,'--g',j,S3,'-b')
title (['Kurva Karakteristik Kenaikan Biaya Unit Rating ', num2str(a),' MW'])
legend(['Coal=',num2str(R1)],['Oil=',num2str(R2)],['Gas=',num2str(R3)],2);
xlabel 'P (MW)'
ylabel 'dF/dP(R/MWh)'
grid on
figure
plot(j,Y1,':r',j,Y2,'--g',j,Y3,'-b')

title(['Kurva Karakteristik Input-Output Unit Rating ' , num2str(a),'MW']);


xlabel('P (MW)')
ylabel('F (R/h)')
legend(['Coal=',num2str(x1)],['Oil=',num2str(x2)],['Gas=',num2str(x3)],2);
grid on
end
Berikut hasil simulasi yang telah saya lakukan :
1.

Rating 50 MW

2.

Rating 200 MW

3.

Rating 400 MW

4.

Rating 600 MW

5.

Rating 800 MW

Hasil simulasi antara 5 rating generator dengan input bahan bakar yang berbeda menghasilkan nilai yang
sama. Input bahan bakar yang terdiri dari batu bara, minyak dan gas. Batu bara ini memiliki daya output yang lebih
kecil dibandingkan minyak dan gas jika sama-sama diberikan input yang sama. Dan output yang memiliki nilai
terbesar adalah gas, selanjutnya ada minyak yang berada di antara bahan bakar batu bara dan gas.
Data pada tabel 2.1 diplot menggunakan polyfit dan dievaluasi menggunakan polyval sehingga didapatkan
pendekatan dari data yang ada di dalam tabel guna untuk mencari nilai biaya yang optimal agar pembangkit bisa
bekerja dengan baik.

Bila harga bahan bakar dalam satuan panas dan uang ($ atau R) sama, plot karakteristik input output
panas (orde 2) dan karakteristik perubahan/kenaikan panas dari unit-unit pembangkit termal diatas
1.

Rating 50 MW

2.

Rating 200 MW

3.

Rating 400 MW

4.

Rating 600 MW

5.

Rating 800 MW

You might also like