Ch-8, Hydro-Electric Plants

example 8.1 Page 134

In [1]:
h=100 #given height
q=200 #discharge
e=0.9 #efficiency
p=(735.5/75)*q*h*e
print "\npower developed by hydro plant is %0.2f MW"%(p/1e3)
power developed by hydro plant is 176.52 MW

example 8.2 page 134

In [2]:
from __future__ import division
%matplotlib inline
from matplotlib.pyplot import plot, title, xlabel, ylabel, show

flow=[0, 1000, 800, 600 ,400 ,400 ,1200, 2400 ,2400, 1000 ,400 ,400 ,1000] #flow in matrix from in the order of months
y=range(0,13)
yy = [(0,1),(1,2),(2,3),(3,4),(4,5)]
xx = [(0,1),(1,2),(2,3),(3,4),(4,5)]
h=150
e=0.85
avg=sum(flow)/12
print "\naverage rate of inflow is %dcu-m/sec"%(avg)
p=(735.5/75)*avg*h*e
print "\npower developed is %0.2f MW"%(p/1e3)
plot(y,flow)
title('hydrograph')
xlabel('months')
ylabel('run in cu-m/sec')
show()
print "hydrograph is ploted in figure"
flow1 = range(0,12)
for x in range(0,12):
    t=flow[x]
    a=avg
    if t<a or t==avg:
        t=0
    else:
        t=t-1000
       #end
    flow1[x]=t 
    #end
sto=sum(flow1)
print "\nstorage capacity of given plant is %dsec-m-month"%(sto)
average rate of inflow is 1000cu-m/sec

power developed is 1250.35 MW
hydrograph is ploted in figure

storage capacity of given plant is 3000sec-m-month

example 8.3 Page 135

In [3]:
%matplotlib inline
from matplotlib.pyplot import plot, title, xlabel, ylabel, show

flow=[1500, 1000, 500, 500, 500, 1200, 2900, 2900, 1000, 400 ,600 ,1600]
cod=1000#constant demand
#plot2d2(flow)
plot(flow)
title('hydrograph for exp 8.3')
xlabel('months')
ylabel('run off in m**3/sec')
avg=sum(flow)/12
if cod<avg:
    flow1 = range(0,6)
    for x in range(0,6):
        t=flow[x]
        if t>cod|t==avg:
            t=0
        else:
            t=cod-t
     #end  
        flow1[x]=t 
 #end
 
    else:
         flow = range(0,12)
         flow1 = range(0,12)
         for x in range(0,12):
            t=flow[x]
            a=cod
            if t>a|t==avg:
                t=0
            else:
                t=t-cod
            #end
            flow1[x]=t 
    #end
#end

sto=sum(flow1)
print "storage capacity of plant is %dsec-m-month"%(sto)
storage capacity of plant is -11934sec-m-month

example 8.4 Page 135

In [4]:
%matplotlib inline
from matplotlib.pyplot import plot, title, xlabel, ylabel, show

flow=[1500, 1000, 500, 500, 500, 1200, 2900, 2900, 1000, 400 ,600 ,1600]
cod=1000#constant demand
#[m n]=size(flow)len
n=len(flow)
mf = range(0,n)
mf[0]=1500
for i in range(2,n):
    mf[i]=mf[i-1]+flow[i]

plot(mf)
from numpy import arange
dd= arange(1,mf[n-1],cod)

avg=sum(flow)/12
if cod<avg:
    for x in range(0,6):
        t=flow[x]
        if t>cod|t==avg:
            t=0
        else:
            t=cod-t
       #end
        flow1[x]=t 
 #end
 
else:   
    for x in range(0,12):
        t=flow[x]
        a=cod
        if t>a|t==avg:
            t=0
        else:
            t=t-cod
       #end
        flow1[x]=t 
    #end
#end

sto=sum(flow1)
print "storage capacity of plant is %dsec-m-month"%(sto)
storage capacity of plant is -5149sec-m-month

example 8.5 Page 154

In [5]:
%matplotlib inline
from matplotlib.pyplot import plot, title, xlabel, ylabel, show, subplot
flow=[80, 50 ,40 ,20 ,0 ,100, 150 ,200 ,250 ,120 ,100, 80]
h=100; e=80

subplot(211)
plot(flow)
title('hydrograph')
xlabel('months')
ylabel('run off,millon m**3/month' )
fd=sorted(flow)

subplot(212)
plot(fd)
title('flow duration')
xlabel('months')
ylabel('run off')

t= range(0,12)
for x in range(1,10):
    d=fd[x]
    ad=fd[(x-1)]
    if d==ad:
        t[x]=[]
        t[x-1]=t[x-1]+1
        fd[x]=[]
    #end
#end
ffw=fd+t
print "load duration data is as under"
print ffw
mf=sum(flow)*10**6/(30*24*3600)
print "(a)"
print "meanflow is %fm**3-sec"%(mf)
print "(b)"
p=(735.5/75)*mf*h*e
print "power delevered in %dkW=%.3fMW"%(p,p/1000)
load duration data is as under
[0, 20, 40, 50, 80, [], 100, [], 120, 150, 200, 250, 0, 1, 2, 3, 5, [], 7, [], 8, 9, 10, 11]
(a)
meanflow is 459.104938m**3-sec
(b)
power delevered in 36018312kW=36018.313MW

example 8.6 Page 156

In [6]:
mh=205#mean height
a=1000*10**6#in miters
r=1.25#annual rain fall
er=0.8#efficiency
lf=0.75#load factor
hl=5#head loss
et=0.9#efficiency of turbine
eg=0.95#efficiency of generator
wu=a*r*er/(365*24*3600)
print "\nwater used is \t\t%fm**3/sec"%(wu)
eh=mh-hl
print "\neffective head is \t%dm"%(eh)
p=(735.5/75)*(wu*eh*et*eg)
print "\npower generated is \t%fkW =\t%fMW"%(p,p/1000)
pl=p/lf
print "\npeak load is \t\t%fMw \ntherefore the MW rating of station is \t%fMW"%(pl/1000,pl/1000)
if eh<=200:
    print "\nfor a head above 200m pelton turbine is suitable,\nfrancis turbine is suitable in the range of 30m-200m.,\nhowever pelton is most suitable"
else:
    print "only pelton turbine is most suitable"
water used is 		31.709792m**3/sec

effective head is 	200m

power generated is 	53175.418569kW =	53.175419MW

peak load is 		70.900558Mw 
therefore the MW rating of station is 	70.900558MW

for a head above 200m pelton turbine is suitable,
francis turbine is suitable in the range of 30m-200m.,
however pelton is most suitable