Objective: Short Range Fixed Head Hydrothermal Scheduling Approximate Newton-Raphson Method
Objective: Short Range Fixed Head Hydrothermal Scheduling Approximate Newton-Raphson Method
Objective
Short range fixed head hydrothermal scheduling approximate Newton-Raphson method.
Theory
Fixed Head hydrothermal Scheduling
The head of the reservoirs assumed to be fixed if hydro plants have reservoirs of large capacity.
Test System
Matlab Code
Code:
clear all
M=1;N=1;t1=12;t2=12;
% thermal unit
a=0.00184;b=9.2;c=575;ptmax=50;ptmin=10;
% hydro unit
x=0;y=4.97;z=330;
%B-cofficient losses
B11=0;B12=0;B21=0;B22=0.00008;B10=0;B20=0;B00=0;
phmax=200;phmin=200;v1=100000;
%initial guess
pd1=1200;pd2=1500;
p11=(pd1/(M+N));
p12=(pd2/(M+N));
p21=(pd1/(M+N));
p22=(pd2/(M+N));
lumbda1=2*a*p11+b;
lumbda2=2*a*p12+b;
vj1=(lumbda1/(2*x*p21+y));
disp('
p1 p12 p21 p22 lumbda1 lumbda2 vj1')
disp([p11 p12 p21 p22 lumbda1 lumbda2 vj1])
delvj=1;
%itteration start from here
%for k=1;
iter=0;
disp('
p11 p12 p21 p21 lumbda1 lumbda2 vj1')
while abs(delvj)>=0.0001
iter=iter+1;
p11h=600;p11l=300;p21h=675;p21l=300;
p12h=600;p12l=300;p22h=880;p22l=300;
K11=2*B11*p11+2*B12*p21;
K21=2*B21*p11+2*B22*p21;
a11=t1*(2*a*p11+b);
X11=2*(t1*a+lumbda1*B11);
b11=t1*(2*x*p21+y);
Y11=2*(vj1*t1*x+lumbda1*B22);
C1=(((1-K11)^2)/(X11))+(((1-K21)^2)/(Y11));
D11=((1-K21)/(Y11))*b11;
PL1=B00+B10*p11+B20*p21+B11*p11^2+B22*p21^2+2*B12*p11*p12;
F1=pd1+PL1-(p11+p21)+(((1-K11)^2)/(X11))*a11;
% now for k=2;
K12=2*B11*p12+2*B12*p22;
K22=2*B21*p12+2*B22*p22;
a12=t2*(2*a*p12+b);
X12=2*(t2*a+lumbda2*B11);
b12=t2*(2*x*p22+y);
Y12=2*(vj1*t2*x+lumbda2*B22);
C2=(((1-K12)^2)/(X12))+(((1-K22)^2)/(Y12));
D12=((1-K22)/(Y12))*b12;
PL2=B00+B10*p12+B20*p22+B11*p12^2+B22*p22^2+2*B12*p12*p22;
F2=pd2+PL2-(p12+p22)+(((1-K12)^2)/(X12))*a12;
H1=((b11^2)/(Y11))+((b11^2)/(Y12));
O1=v1-((t1*(x*p21^2+y*p21+z))+(t2*(x*p22+y*p22+z)));
Q11=(((D11*D11)/(C1))+((D12*D12)/(C2)))-H1;
R1=O1-(((D11*F1)/(C1))+((D11*F1)/(C1)));
delvj=(R1/Q11)-vj1;
vj1=delvj+vj1;
lumbda1=(F1/C1)+((D11/C1)*vj1);
lumbda2=(F2/C2)+((D12/C2)*vj1);
delp11=(((1-K11)*lumbda1)-a11)/X11;
delp21=(((1-K21)*lumbda1)-b11)/Y11;
delp12=(((1-K12)*lumbda2)-a12)/X12;
delp22=(((1-K22)*lumbda2)-b12)/Y12;
p11=p11+delp11;
p12=p12+delp12;
p21=p21+delp21;
p22=p22+delp22;
if p11<p11l
p11=p11l
elseif p11>p11h
p11=p11h;
else p11;
end
if p12<p12l
p12=p12l;
elseif p12>p12h
p12=p12h;
else p12;
end
if p21<p21l
p21=p21l;
elseif p21>p21h
p21=p21h;
else p21;
end
if p22<p22l
p22=p22l;
elseif p22>p22h
p22=p22h;
else p22;
end
disp([p11 p12 p21 p22 lumbda1 lumbda2 vj1])
end
totalcost=(((a*(p11^2)+b*(p11)+c)+(a*(p12^2)+b*p12+c)))*12;
disp('Total operating Cost=')
disp(totalcost)
Results
p1 p12 p21 p22 lumbda1 lumbda2 vj1
600
p11
750
600
p12
750
p21
11.408
p21
11.96
2.2954
lumbda1 lumbda2
vj1
470.76
556.9
675
880
131.19
134.99
1.9832
532.81
600
675
880
133.93
139.16
1.9918
537.3
600
675
880
134.13
139.36
1.9963
537.35
600
675
880
134.13
139.36
1.9964
Conclusion
Newton-Raphson method fast as compared to Classical method because less number of iterations are taken
in order to reach the desire result. But it consumes large time as compared to classical method due to complexity
in coding and algo.