summaryrefslogtreecommitdiff
path: root/Generation_Of_Electrical_Energy_by_B._R._Gupta
diff options
context:
space:
mode:
authorTrupti Kini2016-02-08 23:30:15 +0600
committerTrupti Kini2016-02-08 23:30:15 +0600
commitee3f9ba4c4e92a8c0df92e30b48e042d7cd5324c (patch)
tree0c47f6e8c6734af3310bc9d0cd06ae816513f618 /Generation_Of_Electrical_Energy_by_B._R._Gupta
parentbcae634a8e0a602f72c22933377bb13fdfe8361c (diff)
downloadPython-Textbook-Companions-ee3f9ba4c4e92a8c0df92e30b48e042d7cd5324c.tar.gz
Python-Textbook-Companions-ee3f9ba4c4e92a8c0df92e30b48e042d7cd5324c.tar.bz2
Python-Textbook-Companions-ee3f9ba4c4e92a8c0df92e30b48e042d7cd5324c.zip
Added(A)/Deleted(D) following books
A Generation_Distribution_and_Utilization_of_Electrical_Energy_by_C._L._Wadhwa/README.txt A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chaper12.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter10.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter11.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter13.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter14.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter15.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter17.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter2.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter20.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter23.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter3.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter4.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter5.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter7.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter8.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter9.ipynb A Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/EnergyLoadnMassCurve.png A Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/loadCurve2.png A Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/loadDurnECur.png A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/Chapter11_Control_of_DC_Motors.ipynb A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/Chapter12_Controllers_and_Their_Optimisation.ipynb A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/Chapter13_Choppers_and_Transportation_system_Application.ipynb A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/Chapter15_The_AC_motor_control.ipynb A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/Chapter16_Faults_and_Protection.ipynb A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/Chapter3_Fabrication_and_Thermal_characteristics.ipynb A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/Chapter4_Series_and_Parallel_Connection_of_Thyristors.ipynb A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/Chapter5_Line_Commutated_converters.ipynb A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/Chapter7_Inverter_Circuits.ipynb A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/Chapter8_Harmonic_and_PowerFactor_with_the_converter_system.ipynb A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/Chapter_2_The_Device_.ipynb A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/screenshots/11.png A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/screenshots/13.png A Thyristors_Theory_And_Applications_by_R._K._Sugandhi_And_K._K._Sugandhi/screenshots/8.png A Turbomachines_by_A._V._Arasu/README.txt A sample_notebooks/UmangAgarwal/Sample_Notebook_Umang.ipynb A "sample_notebooks/Vishwajith VRao/Chapter1_1.ipynb"
Diffstat (limited to 'Generation_Of_Electrical_Energy_by_B._R._Gupta')
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chaper12.ipynb343
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter10.ipynb674
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter11.ipynb140
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter13.ipynb522
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter14.ipynb907
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter15.ipynb495
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter17.ipynb359
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter2.ipynb935
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter20.ipynb158
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter23.ipynb177
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter3.ipynb525
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter4.ipynb1202
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter5.ipynb406
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter7.ipynb68
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter8.ipynb416
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter9.ipynb296
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/EnergyLoadnMassCurve.pngbin0 -> 27727 bytes
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/loadCurve2.pngbin0 -> 18008 bytes
-rw-r--r--Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/loadDurnECur.pngbin0 -> 14511 bytes
19 files changed, 7623 insertions, 0 deletions
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chaper12.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chaper12.ipynb
new file mode 100644
index 00000000..e57b4fb8
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chaper12.ipynb
@@ -0,0 +1,343 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b9d84b1a6a0dbb810fc6a5bae05f1ff37f6ce977a8c979c290e417ab5d5dbdef"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-12, Parallel Operation of alternators"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 12.1 Page 243"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "p=4000 #given kva of alternator\n",
+ "fnl1=50 #frequency on no load\n",
+ "fl1=47.5 #frequency on load\n",
+ "fnl2=50 #frequency on no load on second alternator\n",
+ "fl2=48 #frequency on load on second alternator\n",
+ "l=6000 #load given two to alternator\n",
+ "df1=fnl1-fl1 #change in 1 alternator frequency\n",
+ "df2=fnl2-fl2 #change in 2 alternator frequency\n",
+ "l1=df2*(l)/(df2+df1) #load on 1 alternator\n",
+ "print 'a'\n",
+ "l2=l-l1\n",
+ "print \" load on 1 alternator %.2fkW \\n load on 2 alternator %.2fkW\"%(l1,l2)\n",
+ "ml1=df2*p/df1 #load on 1 machine when machine 2 on full load\n",
+ "ll=ml1+p \n",
+ "print 'b'\n",
+ "print \" load supplied by machine 1 with full load on machine2 %dkW \\n total load is %dkW\"%(ml1,l1) "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a\n",
+ " load on 1 alternator 2666.67kW \n",
+ " load on 2 alternator 3333.33kW\n",
+ "b\n",
+ " load supplied by machine 1 with full load on machine2 3200kW \n",
+ " total load is 2666kW\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 12.2 page 243"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import sqrt, atan, acos, pi, sin\n",
+ "l1=3000 #load on 1 machine\n",
+ "pf1=0.8 #pf on 1 machine\n",
+ "i2=150 #current on 2 machine\n",
+ "z1=0.4+12*1J #synchronour impedence\n",
+ "z2=0.5+10*1J\n",
+ "vt=6.6 #terminal voltage\n",
+ "al=l1/2 #active load on each machine\n",
+ "cosdb=al/(vt*i2*sqrt(3)) #cos db\n",
+ "db=acos(cosdb)*180/pi #angle in digree\n",
+ "ib=i2*complex(cosdb,-sin(db*pi/180)) #current in complex number\n",
+ "it=l1/(vt*pf1*sqrt(3)) #total current\n",
+ "itc=complex(it*pf1,-it*sin(acos(pf1))) #total current in complex\n",
+ "ia=itc-ib \n",
+ "pfa=atan(ia.imag/ia.real) #pf of current a\n",
+ "ea=(vt/sqrt(3))+ia*(z1)/1000 #voltage a\n",
+ "pha=atan(ea.imag/ea.real)*180/pi #phase angle of unit a\n",
+ "print \"induced emf of a machine a %.2f+%.2fi =%fkV per phase\"%(ea.real,ea.imag,abs(ea))\n",
+ "eb=(vt/sqrt(3))+ib*(z2)/1000 #voltage b\n",
+ "phb=atan(eb.imag/eb.real)*180/pi #phase angle of unit b\n",
+ "print \"\\ninduced emf of a machine b %.2f+%.2fi =%fkV per phase\"%(eb.real,eb.imag,abs(eb))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "induced emf of a machine a 5.35+1.52i =5.565708kV per phase\n",
+ "\n",
+ "induced emf of a machine b 4.60+1.28i =4.776461kV per phase\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 12.3 Page 244"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import cos\n",
+ "e1=3000 ;ph1=20 ;e2=2900; ph2=0 #given induced emf of two machines\n",
+ "z1=2+20*1J ;z2=2.5+30*1J #impedence of two synchronous machine\n",
+ "zl=10+4*1J #load impedence\n",
+ "e11=e1*(cos(ph1*pi/180)+sin(ph1*pi/180)*1J)\n",
+ "e22=e2*(cos(ph2*pi/180)+sin(ph2*pi/180)*1J)\n",
+ "Is=(e11-e22)*zl/(z1*z2+(z1+z2)*zl)\n",
+ "print \"current is %.2f%.2fiA =%.2fA\"%((Is).real,(Is).imag,abs(Is))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "current is 10.37-4.56iA =11.33A\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 12.4 Page 244"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "z=10+5*1J #load\n",
+ "e1=250 ;e2=250 #emf of generator\n",
+ "z1=2*1J; z2=2*1J #synchronous impedence\n",
+ "v=(e1*z2+z1*e2)/((z1*z2/z)+z1+z2) \n",
+ "vph=atan(v.imag/v.real)*180/pi #substitution the value in equation 12.10\n",
+ "i1=(z2*e1+(e1-e2)*z)/(z1*z2+(z1+z2)*z); iph=atan((i1).imag/(i1).real)*180/pi #substitution the value in equation 12.7\n",
+ "pf1=cos(pi/180*(vph-iph))\n",
+ "pd=v*i1*pf1\n",
+ "z=10+5*1J #load\n",
+ "e1=250 ;e2=250 #emf of generator\n",
+ "z1=2*1J; z2=2*1J #synchronous impedence\n",
+ "v=(e1*z2+z1*e2)/((z1*z2/z)+z1+z2) \n",
+ "vph=atan(v.imag/v.real)*180/pi #substitution the value in equation 12.10\n",
+ "i1=(z2*e1+(e1-e2)*z)/(z1*z2+(z1+z2)*z) \n",
+ "iph=atan(i1.imag/i1.real)*180/pi #substitution the value in equation 12.7\n",
+ "pf1=cos(pi/180*(vph-iph))\n",
+ "pd=v*i1*pf1\n",
+ "print \"terminal voltage %.2fV \\ncurrent supplied by each %.2fA \\npower factor of each %.3f lagging \\npower delivered by each %.4fKW\"%(abs(v),abs(i1),abs(pf1),abs(pd))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "terminal voltage 239.68V \n",
+ "current supplied by each 10.72A \n",
+ "power factor of each 0.894 lagging \n",
+ "power delivered by each 2297.7941KW\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 12.5 Page 247"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "po=5 #mva rating\n",
+ "v=10 #voltage in kv\n",
+ "n=1500 ;ns=n/60 #speed\n",
+ "f=50 #freaquency\n",
+ "pfb=0.8#power factor in b\n",
+ "x=0.2*1J #reactance of machine\n",
+ "md=0.5 #machanical displacement\n",
+ "#no load\n",
+ "v=1 ;e=1 \n",
+ "p=4\n",
+ "spu=v*e/abs(x); sp=spu*po*1000 ;mt=(pi*p)/(180*2)\n",
+ "spm=sp*mt #synchronous power in per mech.deree\n",
+ "st=spm*md*1000/(2*ns*pi)\n",
+ "print '(a)'\n",
+ "print \" synchronous power %dkW \\n synchronous torque for %.1f displacement %dN-M\"%(spm,md,st)\n",
+ "print '(b) full load'\n",
+ "ee=e+x*(pfb-sin(acos(pfb))*1J)\n",
+ "spb=v*abs(ee)*cos(atan(ee.imag/ee.real))/abs(x) #synchronous power \n",
+ "sppm=spb*po*1000*mt #synchronous power per mech.degree\n",
+ "stp=sppm*md*1000/(2*pi*ns)#synchrounous torque under load\n",
+ "print \" synchronous power %dkW \\n synchronous torque for %.1f displacement %dN-M\"%(sppm,md,stp)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ " synchronous power 872kW \n",
+ " synchronous torque for 0.5 displacement 2777N-M\n",
+ "(b) full load\n",
+ " synchronous power 977kW \n",
+ " synchronous torque for 0.5 displacement 3111N-M\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 12.6 page 248"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "po=2*10**6 ;p=8 ;n=750; v=6000 ;x=6*1J ;pf=0.8 #given \n",
+ "i=po/(v*sqrt(3))\n",
+ "e=(v/sqrt(3))+i*x*(pf-sin(acos(pf))*1J)\n",
+ "mt=p*pi/(2*180)\n",
+ "cs=cos(atan(e.imag/e.real))\n",
+ "ps=abs(e)*v*sqrt(3)*cs*mt/(1000*abs(x))\n",
+ "ns=n/60\n",
+ "ts=ps*1000/(2*pi*ns)\n",
+ "print \" synchronous power %.1fkW per mech.degree \\n synchrounous torque %dN-m\"%(ps,ts)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " synchronous power 502.7kW per mech.degree \n",
+ " synchrounous torque 6666N-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 12.7 page 248"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "i=100 ;pf=-0.8 ;v=11*1000 ;x=4*1J ;ds=10; pfc=-0.8 #given,currents,power factor,voltage,reactance,delta w.r.t steem supply,pf of alternator\n",
+ "e=(v/sqrt(3))+(i*x*(pf-sin(acos(pf))*1J))\n",
+ "print 'a'\n",
+ "ph=atan(e.imag/e.real)*180/pi\n",
+ "print \" open circuit emf %dvolts per phase and %.2f degree\"%(abs(e),ph)\n",
+ "d=ds-ph\n",
+ "eee=round(abs(e)/100)*100\n",
+ "ic=round(abs(eee)*sin(d*pi/180)/abs(x))\n",
+ "iis=(eee**2-(abs(x)*ic)**2)**(0.5)\n",
+ "Is=(iis-v/sqrt(3))/abs(x)\n",
+ "tad=Is/ic\n",
+ "d=atan(tad)*180/pi\n",
+ "ii=ic/cos(d*pi/180)\n",
+ "pff=cos(d*pi/180)\n",
+ "print 'b.'\n",
+ "print \" current %.1fA \\n power factor %.3f\"%(ii,pff)\n",
+ "print 'c.'\n",
+ "ia=ii*pff/abs(pfc)\n",
+ "print \"current %.2fA\"%(ia)\n",
+ "\n",
+ "ia=ii*pff/abs(pfc)\n",
+ "print \"current %.2fA\"%(ia)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a\n",
+ " open circuit emf 6598volts per phase and -2.78 degree\n",
+ "b.\n",
+ " current 365.6A \n",
+ " power factor 0.998\n",
+ "c.\n",
+ "current 456.25A\n",
+ "current 456.25A\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter10.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter10.ipynb
new file mode 100644
index 00000000..cdaa827a
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter10.ipynb
@@ -0,0 +1,674 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b75473f9f4345efd6ca0ec6782f30e07c9e95389ed3851945260a1b3129ea6b2"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-10, Economic Operations of Steam Plants"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 10.2 Page 193"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "mp=250 #from example 10.1\n",
+ "def unit1(p1):\n",
+ " ic=0.2*p1+30\n",
+ " return ic\n",
+ "def unit2(p2):\n",
+ " ic=0.15*p2+40\n",
+ " return ic\n",
+ "mil=20\n",
+ "ttt=225\n",
+ "def un(ic):\n",
+ " p1=(ic-30)/0.2\n",
+ " p2=(ic-40)/0.15\n",
+ " return [p1, p2]\n",
+ "from numpy import arange\n",
+ "for x in arange(40,61,5):\n",
+ " [e,r]=un(x)\n",
+ " if ttt==e+r:\n",
+ " print \"for the same incremental costs unit1 should supply %dMW and unit 2 shold supply %dMW,for equal sharing each unit should supply %3.1fMW\"%(e,r,ttt/2)\n",
+ " break\n",
+ " \n",
+ "\n",
+ "opo=ttt/2\n",
+ "from sympy.mpmath import quad\n",
+ "u1=quad(unit1,[opo,e])\n",
+ "u2=quad(unit2,[r,opo])\n",
+ "uuu=(u1+u2)*8760\n",
+ "print \"\\nyearly extra cost is (%3.2f-%3.2f)8760 =%dper year\"%(u1,u2,uuu)\n",
+ "print \"\\nthis if the load is equally shared by the two units an extra cost of Rs.%d will be incurred.in other words economic loading would result in saving of Rs.%dper year\"%(uuu,uuu)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "for the same incremental costs unit1 should supply 125MW and unit 2 shold supply 100MW,for equal sharing each unit should supply 112.0MW\n",
+ "\n",
+ "yearly extra cost is (698.10-670.80)8760 =11991564per year\n",
+ "\n",
+ "this if the load is equally shared by the two units an extra cost of Rs.11991564 will be incurred.in other words economic loading would result in saving of Rs.11991564per year\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 10.3 Page 198"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "def unit1(p1):\n",
+ " ic=0.2*p1+30\n",
+ " return ic\n",
+ "def unit2(p2):\n",
+ " ic=0.15*p2+40\n",
+ " return ic\n",
+ "tol=400\n",
+ "pd=50\n",
+ "u1c=5\n",
+ "u2c=1/0.15#from example10_1\n",
+ "p1pd=u1c/(u1c+u2c)\n",
+ "p2pd=u2c/(u1c+u2c)\n",
+ "pi=p1pd*pd\n",
+ "pt=p2pd*pd\n",
+ "print \"p1=%1.5fMW\\np2=%1.5fMW\"%(pi,pt)\n",
+ "p11=pi+tol/2\n",
+ "p22=pt+tol/2\n",
+ "up1=unit1(p11)\n",
+ "up2=unit2(p22)\n",
+ "print \"\\nthe total load on 2 units would be %3.2fMW and %3.2fMW respectevily. it is easy to check that incremental cost will be same for two units at these loading.\\n incremental cost of unit1 is %3.2fRs.MW,\\n incremantal cost of unit 2 is %3.2fRs./MW\"%(p11,p22,up1,up2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "p1=21.42857MW\n",
+ "p2=28.57143MW\n",
+ "\n",
+ "the total load on 2 units would be 221.43MW and 228.57MW respectevily. it is easy to check that incremental cost will be same for two units at these loading.\n",
+ " incremental cost of unit1 is 74.29Rs.MW,\n",
+ " incremantal cost of unit 2 is 74.29Rs./MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example10.5 Page 200"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "i1=0.8\n",
+ "i2=1.0\n",
+ "l1=complex(0.04,0.12)\n",
+ "l2=complex(0.03,0.1)\n",
+ "l3=complex(0.03,0.12)\n",
+ "vl=1\n",
+ "\n",
+ "i3=i1+i2\n",
+ "v1=vl+i3*(l1)+i1*(l2)\n",
+ "v2=vl+i3*(l1)+i2*(l3)\n",
+ "p1=(i1*v1).real\n",
+ "p2=(i2*v2).real\n",
+ "cos1=(v1).real/abs(v1)\n",
+ "cos2=(v2).real/abs(v2)\n",
+ "b11=abs(((l1).real+(l2).real)/(v1**2*cos1**2))\n",
+ "b22=abs(((l1).real+(l3).real)/(v2**2*cos2**2))\n",
+ "b12=abs(((l1).real/(v1*v2*cos1*cos2)))\n",
+ "pl=(p1**2)*b11+(p2**2)*b22+2*p1*p2*b12\n",
+ "print \"i1+i3=%dpu\\nv1=%1.3f+%1.3fp.u\\nv2=%1.3f+%1.3fp.u\\np1=%1.3fp.u\\np2=%1.3fp.u\\ncos(ph1)=%1.3f\\ncos(ph2)=%1.3f\\nb11=%1.5fp.u\\nb22=%1.5fp.u\\nb12=%1.5fp.u\\npl=%1.6fp.u\"%(i3,v1.real,(v1).imag,v2.real,(v2).imag,p1,p2,cos1,cos2,b11,b22,b12,pl)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "i1+i3=1pu\n",
+ "v1=1.096+0.296p.u\n",
+ "v2=1.102+0.336p.u\n",
+ "p1=0.877p.u\n",
+ "p2=1.102p.u\n",
+ "cos(ph1)=0.965\n",
+ "cos(ph2)=0.957\n",
+ "b11=0.05827p.u\n",
+ "b22=0.05764p.u\n",
+ "b12=0.03312p.u\n",
+ "pl=0.178800p.u\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example10.7 Page 206"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import atan, cos\n",
+ "za=complex(0.03,0.09)\n",
+ "zb=complex(0.1,0.3)\n",
+ "zc=complex(0.03,0.09)\n",
+ "zd=complex(0.04,0.12)\n",
+ "ze=complex(0.04,0.12)\n",
+ "ia=complex(1.5,-0.4)\n",
+ "ib=complex(0.5,-0.2)\n",
+ "ic=complex(1,-0.1)\n",
+ "id=complex(1,-0.2)\n",
+ "ie=complex(1.5,-0.3)\n",
+ "il1=.4\n",
+ "il2=.6\n",
+ "na1=1 ;nb1=0.6; nc1=0; nd1=.4; ne1=.6\n",
+ "na2=0 ;nb2=-0.4; nc2=1 ;nd2=.4; ne2=.6\n",
+ "vl=1\n",
+ "#some thing is messed\n",
+ "v1=vl+za*ia\n",
+ "v2=vl-zb*ib+zc*ic\n",
+ "a1=atan((ia).imag/(ia).real)\n",
+ "a2=atan((ic).imag/(ic).real)\n",
+ "cosa=cos(a1-a2)\n",
+ "cosph1=cos(atan((v1).imag/(v1).real)-a1)\n",
+ "cosph2=cos(atan((v2).imag/(v2).real)-a2)\n",
+ "b11=(na1**2*(za).real+nb1**2*(zb).real+nc1**2*(zc).real+nd1**2*(zd).real+ne1**2*(ze).real)/(abs(v1)**2*cosph1)\n",
+ "b22=(na2**2*(za).real+nb2**2*(zb).real+nc2**2*(zc).real+nd2**2*(zd).real+ne2**2*(ze).real)/((abs(v2)**2)*cosph2)\n",
+ "bb12=(abs(v1)*abs(v2)*cosph1*cosph2)\n",
+ "ab12=(na2*na1*(za).real+nb2*nb1*(zb).real+nc1*nc2*(zc).real+nd2*nd1*(zd).real+ne2*ne1*0.03)\n",
+ "b12=cosa*ab12/bb12\n",
+ "print \"bus voltages at 2 buses are \\nv1=%1.3f+i%1.3f,\\nv2=%1.3f+i%1.3f\"%((v1).real,(v1).imag,(v2).real,(v2).imag)\n",
+ "print \"\\nloss coffecients are \\nb11=%1.5fp.u\\nb22=%1.5fp.u\\nb12=%1.5fp.u \\n\"%(b11,b22,b12)\n",
+ "print \"loss coffecients in actual values is \\nb11=%eM(W)-1\\nb22=%eM(W)-1\\nb12=%eM(W)-1\\n\"%(b11/100,b22/100,b12/100)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "bus voltages at 2 buses are \n",
+ "v1=1.081+i0.123,\n",
+ "v2=0.929+i-0.043\n",
+ "\n",
+ "loss coffecients are \n",
+ "b11=0.07877p.u\n",
+ "b22=0.07735p.u\n",
+ "b12=-0.00714p.u \n",
+ "\n",
+ "loss coffecients in actual values is \n",
+ "b11=7.877236e-04M(W)-1\n",
+ "b22=7.734557e-04M(W)-1\n",
+ "b12=-7.136298e-05M(W)-1\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 10.8 Page 207"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "r1=22 ;r2=30 ;q1=0.2 ;q2=0.15\n",
+ "b22=0; b12=0 ;p1=100 ;pl=15#transmission losses are 0\n",
+ "b11=pl/(p1)**2\n",
+ "def power(x): #mathematical computation\n",
+ " p1=(x-r1)/(q1+2*b11*x)\n",
+ " p2=(x-r2)/q2\n",
+ " return [p1, p2]\n",
+ "[a,b]=power(60)\n",
+ "print \"l1=1/(1-%.3f*p1)\\nl2=[1/(1-0)]=1\\ngiven lamda=60\\nsince ic1*l1=lamda ic2*l2=lamda\\ntotal load=%dMW\"%(b11*2,a+b-(b11*a**2))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "l1=1/(1-0.000*p1)\n",
+ "l2=[1/(1-0)]=1\n",
+ "given lamda=60\n",
+ "since ic1*l1=lamda ic2*l2=lamda\n",
+ "total load=390MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 10.9 Page 208"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "r1=22 ;r2=30 ;q1=0.2 ;q2=0.15\n",
+ "b22=0; b12=0 ;p1=100 ;pl=15#transmission losses are 0\n",
+ "b11=pl/(p1)**2\n",
+ "def power(x): #mathematical computation\n",
+ " p1=(x-r1)/(q1+2*b11*x)\n",
+ " p2=(x-r2)/q2\n",
+ " return [p1,p2]\n",
+ "[a,b]=power(60)\n",
+ "pt=a+b-(b11*a**2)\n",
+ "from sympy.mpmath import quad\n",
+ "#z=quad('q1*u+r1','u',a,161.80)\n",
+ "z=quad(lambda u:q1*u+r1,[a,161.80])\n",
+ "#y=quad('q2*v+r2','v',b,162.5)\n",
+ "y=quad(lambda v:q2*v+r2,[b,162.5])\n",
+ "m=z+y\n",
+ "print \"net change in cost =Rs.%dper hour\"%(m)\n",
+ "print \"\\nthus scheduling the generation by taking transmission losses into account would mean a saving of Rs.%dper hour in fuel cost\"%(m)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "net change in cost =Rs.-3757per hour\n",
+ "\n",
+ "thus scheduling the generation by taking transmission losses into account would mean a saving of Rs.-3757per hour in fuel cost\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 10.10 Page 208"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "b11=0.001\n",
+ "b12=-0.0005\n",
+ "b22=0.0024\n",
+ "q1=0.08\n",
+ "r1=16\n",
+ "q2=0.08\n",
+ "r2=12\n",
+ "lamda=20\n",
+ "\n",
+ "p2=0\n",
+ "for x in range(1,5):\n",
+ " p1=(1-(r1/lamda)-(2*p2*b12))/((q1/lamda)+2*b11)\n",
+ " p2=(1-(r2/lamda)-(2*p1*b12))/((q2/lamda)+2*b22)\n",
+ "\n",
+ "pl=b11*p1**2+2*b12*p1*p2+b22*p2**2\n",
+ "pr=p1+p2-pl\n",
+ "print \"p1=%2.1fMW,p2=%2.1fMW\\npl=%1.1fMW\\npower recevied %2.1fMW\"%(p1,p2,pl,pr)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "p1=189.2MW,p2=135.1MW\n",
+ "pl=54.1MW\n",
+ "power recevied 270.3MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 10.11 Page 209"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "a1=561 ;b1=7.92 ;c1=0.001562\n",
+ "a2=310 ;b2=7.85 ;c2=0.00194\n",
+ "ce=c1*c2/(c1+c2)\n",
+ "print \"ce=%e\"%(ce)\n",
+ "be=((b1/c1)+(b2/c2))*ce\n",
+ "print \"be=%1.4f\"%(be)\n",
+ "ae=a1-((b1**2)/4*c1)+a2-((b2**2)/4*c2)+((be**2)/4*ce)\n",
+ "print \"ae=%3.3f \\ncost characteristics of composite unit for demand pt is \\nct=%3.3f+%1.4f*p1+%ep1**2\"%(ae,ae,be,ce)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "ce=8.652998e-04\n",
+ "be=7.8888\n",
+ "ae=870.959 \n",
+ "cost characteristics of composite unit for demand pt is \n",
+ "ct=870.959+7.8888*p1+8.652998e-04p1**2\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 10.12 Page 210"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "a1=7700 ;b1=52.8 ;c1=5.5*10**-3\n",
+ "a2=2500; b2=15 ;c2=0.05#given eqution\n",
+ "plo=200 ;pup=800\n",
+ "ct=1000\n",
+ "l=[500,900,1200,500] ;t=[6, 16 ,20 ,24]#from given graph\n",
+ "def cost(y):\n",
+ " p1=(2*c2*y-(b1-b2))/(2*(c1+c2))\n",
+ " p2=y-p1\n",
+ " return [p1,p2]\n",
+ "ma=max(l)\n",
+ "mi=min(l)\n",
+ "for x in range(0,3):\n",
+ " [e ,g]=cost(l[x])\n",
+ " if e<plo or g<plo or e>pup or g>pup:\n",
+ " if e<plo or g<plo:\n",
+ " v=min(e,g)\n",
+ " [u for u, j in enumerate((e,g)) if j == v]\n",
+ " if u==0:\n",
+ " e=plo\n",
+ " g=l(x)-e\n",
+ " else:\n",
+ " g=plo\n",
+ " e=l[x]-g\n",
+ " \n",
+ " \n",
+ "print \"\\np1=%3.2fMW\\tp2=%3.2fMW\"%(e,g)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "p1=1000.00MW\tp2=200.00MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 21
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 10.13 Page 211"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "a1=2000 ;b1=20 ;c1=0.05; p1=350; p2=550\n",
+ "a2=2750 ;b2=26 ;c2=0.03091\n",
+ "def cost(a,b,c,p):\n",
+ " co=a+b*p+c*p**2\n",
+ " return co\n",
+ "print \"(a)\"\n",
+ "toco=cost(a1,b1,c1,p1)+cost(a2,b2,c2,p2)\n",
+ "print \"total cost when each system supplies its own load Rs%.3f per hour\"%(toco)\n",
+ "l=p1+p2\n",
+ "p11=(b2-b1+2*c2*l)/(2*(c1+c2))\n",
+ "p22=l-p11\n",
+ "totco=cost(a1,b1,c1,p11)+cost(a2,b2,c2,p22)\n",
+ "sav=toco-totco\n",
+ "tilo=p11-p1\n",
+ "print \"(b)\"\n",
+ "print \"\\n total cost when load is supplied in economic load dispatch method Rs%d per hour \\n saving %.3f \\n tie line load %.3f MW\"%(totco,sav,tilo)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "total cost when each system supplies its own load Rs41525.275 per hour\n",
+ "(b)\n",
+ "\n",
+ " total cost when load is supplied in economic load dispatch method Rs41447 per hour \n",
+ " saving 77.277 \n",
+ " tie line load 30.905 MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example10.14 Page 212"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "a1=5000 ;b1=450 ;c1=0.5 #for system 1 \n",
+ "e1=0.02 ;e2=-0.02#error\n",
+ "a1c=a1*(1-e1); b1c=b1*(1-e1) ;c1c=c1*(1-e1)\n",
+ "a2c=a1*(1-e2) ;b2c=b1*(1-e2) ;c2c=c1*(1-e2)\n",
+ "tl=200\n",
+ "def cost(a,b,c,p):\n",
+ " co=a+b*p+c*p**2\n",
+ " return co\n",
+ "p11=(b2c-b1c+2*c2c*tl)/(2*(c1c+c2c))\n",
+ "p22=tl-p11\n",
+ "totco=cost(a1c,b1c,c1c,p11)+cost(a2c,b2c,c2c,p22)\n",
+ "print \"\\npower at station 1 is %dMW \\t power at station 2 is %dMW \\n total cost on economic critieria method Rs%d per hour\"%(p11,p22,totco)\n",
+ "tocoe=cost(a1c,b1c,c1c,tl/2)+cost(a2c,b2c,c2c,tl/2)\n",
+ "eop=tocoe-totco\n",
+ "print \"\\nextra operating cost due to erroneous scheduling Rs.%d per hour\"%(eop)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "power at station 1 is 111MW \t power at station 2 is 89MW \n",
+ " total cost on economic critieria method Rs109879 per hour\n",
+ "\n",
+ "extra operating cost due to erroneous scheduling Rs.121 per hour\n"
+ ]
+ }
+ ],
+ "prompt_number": 23
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 10.16 Page 215"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#given\n",
+ "ia=32 ;ib=32 ;ic=1.68; f=10**5\n",
+ "wt=18; rt=24-wt\n",
+ "p=30\n",
+ "def inpu(a,b,c,f,t,p):\n",
+ " In=(a+b*p+c*p**2)*f*t\n",
+ " return In\n",
+ "hi1=inpu(ia,ib,ic,f,wt,p); hi2=inpu(ia,ib,ic,f,rt,p/2)\n",
+ "print \"(a)\"\n",
+ "print \"for full load condition for %d hours is %ekj \\n for half load condition for%d s %ekj \\n total load %ekj\"%(wt,hi1,rt,hi2,hi1+hi2)\n",
+ "print \"(b)\"\n",
+ "te=p*wt+(p/2)*rt\n",
+ "ul=te/24\n",
+ "hin=inpu(ia,ib,ic,f,24,ul)\n",
+ "sav=hi1+hi2-hin\n",
+ "savp=sav/(te*1000)\n",
+ "print \"\\n total energy produced\\t%dMW \\n unifor load\\t%dMW \\n heat input under uniform load condition %ekj \\n saving in heat energy %ekj \\n saving in heat energy per kWh %dkj/kWh\"%(te,ul,hin,sav,savp)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "for full load condition for 18 hours is 4.507200e+09kj \n",
+ " for half load condition for6 s 5.340000e+08kj \n",
+ " total load 5.041200e+09kj\n",
+ "(b)\n",
+ "\n",
+ " total energy produced\t630MW \n",
+ " unifor load\t26MW \n",
+ " heat input under uniform load condition 4.799232e+09kj \n",
+ " saving in heat energy 2.419680e+08kj \n",
+ " saving in heat energy per kWh 384kj/kWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 24
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 10.17 Page 216"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#given\n",
+ "a1=450 ;b1=6.5 ;c1=0.0013\n",
+ "a2=300 ;b2=7.8 ;c2=0.0019\n",
+ "a3=80 ;b3=8.1 ;c3=0.005\n",
+ "tl=800#total load\n",
+ "ma = [600, 400, 200]\n",
+ "mi = [100, 50, 50]\n",
+ "d=np.mat([[1 ,1, 1] ,[2*c1, -2*c2, 0], [0, -2*c2, 2*c3]])\n",
+ "p=np.mat([[tl], [(b2-b1)], [(b2-b3)]]) \n",
+ "pp=(d**-1)*p #matrix inversion method\n",
+ "print \"\\nloads on generaating station by economic creatirian method isp1=%fMW,p2=%fMW,p3=%fMW\"%(pp[0],pp[1],pp[2])\n",
+ "for i in range(0,3):\n",
+ " if pp[i]<mi[i]:\n",
+ " pp[i]=mi[i]\n",
+ " \n",
+ " if pp[i]>mi[i]:\n",
+ " pp[i]=ma[i]\n",
+ " \n",
+ "\n",
+ "pp[1] = tl-pp[0] - pp[2]\n",
+ "print \"\\nloads on generating station under critical conditions p1=%dMW p2=%dMW p3=%dMW\"%(pp[0],pp[1],pp[2])"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "loads on generaating station by economic creatirian method isp1=669.734705MW,p2=116.134272MW,p3=14.131023MW\n",
+ "\n",
+ "loads on generating station under critical conditions p1=600MW p2=150MW p3=50MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 25
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter11.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter11.ipynb
new file mode 100644
index 00000000..60b17609
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter11.ipynb
@@ -0,0 +1,140 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:efee43f3cff9fdca8c69d559c1c84e6f19cd4b3e6da3711c7567d0790f5b7290"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-11, Hydro-Thermal Co-Ordination"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 11.2 Page 234"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#given\n",
+ "l1=700 ;t1=14 ;l2=500; t2=10\n",
+ "ac=24 ;bc=0.02#variables of cost equation\n",
+ "aw=6 ;bw=0.0025 #variables of watere quantity equation\n",
+ "b22=0.0005 #loss coefficient\n",
+ "r2=2.5\n",
+ "from numpy import arange, mat\n",
+ "lam=arange(1,40,0.001)\n",
+ "gg=1; q=1\n",
+ "for lam in arange(25,4,0.0010):\n",
+ " a=[2*bc, 0, 0, r2*bw*2+2*b22*lam]\n",
+ " b=[lam-ac ,lam-aw*r2]\n",
+ " p=inv(a)*b\n",
+ " g=round(p(1)+p(2))\n",
+ " l=round(l1+b22*p(2)**2)\n",
+ " lq=round(l2+b22*p(2)**2)\n",
+ " if g>=l:\n",
+ " print \"\\nfor load condition %dMW \\n then, \\n \\t lamda %f \\t p1=%fMW \\n \\t p2=%fMW \\t pl=%fMW\"%(l1,lam,p[0],p[1],2*b22*p[1])\n",
+ " break\n",
+ " #end\n",
+ "#end\n",
+ "for lam in arange(25,40,0.001):\n",
+ " a=mat([[2*bc ,0],[0, r2*bw*2+2*b22*lam]])\n",
+ " b=([[lam-ac] ,[lam-aw*r2]])\n",
+ " pq=(a**-1)*b\n",
+ " \n",
+ " g=round(pq[0]+pq[1])\n",
+ " lq=round(l2+b22*pq[1]**2)\n",
+ "\n",
+ " if g>=lq:\n",
+ " print \"\\nfor load condition %dMW \\n then, \\n \\t lamda %f \\t p1=%fMW \\n \\t p2=%fMW \\t pl=%fMW\"%(l2,lam,pq[0],pq[1],2*b22*pq[1])\n",
+ " break\n",
+ " #end\n",
+ "#end\n",
+ "dwu=[(aw+bw*p)*p*t1+t2*(aw+bw*pq[1])*pq[1]]*3600\n",
+ "doc=[(ac+bc*p)*p*t1+(ac+bc*pq[0])*pq[0]*t2]\n",
+ "print \"\\ndaily water used %fm**3 \\ndaily operating cost of thermal plant Rs%f\"%(dwu[0],doc[0])\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "for load condition 500MW \n",
+ " then, \n",
+ " \t lamda 31.705000 \t p1=192.625000MW \n",
+ " \t p2=377.898428MW \t pl=0.377898MW\n",
+ "\n",
+ "daily water used 26664.961210m**3 \n",
+ "daily operating cost of thermal plant Rs55337.878125\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 11.3 Page "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import sqrt\n",
+ "#given \n",
+ "p=250#load\n",
+ "rt=14 #run time\n",
+ "t=24#total time\n",
+ "ac=5 ;bc=8; cc=0.05 #variables of cost equation\n",
+ "bw=30; cw=0.05 #variables of water per power\n",
+ "qw=500#quantity of water\n",
+ "lam=bc+cc*2*p #lambda\n",
+ "a=-qw*(10**6)/(3600*rt)\n",
+ "inn=sqrt(bw**2-4*cw*a)\n",
+ "phh1=(-bw+inn)/(2*cw)#solution of quadratic equation\n",
+ "phh2=(-bw-inn)/(2*cw)\n",
+ "if phh1>0 :\n",
+ " r=lam/(bw+cw*phh1) \n",
+ " print \" hydro plant power is %fMW \\n the cost of water is %fRs.per hour/m**3/sec\"%(phh1,r) \n",
+ "\n",
+ "if phh2>0 :\n",
+ " r=lam/(bw+cw*phh2) \n",
+ " print \" hydro plant power is %fMW \\n the cost of water is %fRs.per hour/m**3/sec\"%(phh2,r) "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " hydro plant power is 237.047484MW \n",
+ " the cost of water is 0.788486Rs.per hour/m**3/sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter13.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter13.ipynb
new file mode 100644
index 00000000..2ff5f29b
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter13.ipynb
@@ -0,0 +1,522 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:e3f5e499dcd1ee49e675b7d331eadcbb56a69331fd31c0617d103de1bd691963"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-13, Major Electrical Equipment in Power Plant"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 13.1 Page 277"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "pg=3000 #kva rating of generators single phase\n",
+ "xg=0.1 #10%reactanse of generator\n",
+ "vg=11 #voltage at the terminals of generator\n",
+ "xbf=5 #reactanse of feeder fron bus to fault\n",
+ "pb=pg ;vb=vg ;ib=pg/vg #let power and voltage of as respective base then current base\n",
+ "zb=(vb*10**3)/ib #base impedence\n",
+ "xpu=xbf/zb #per unit reactance of feeder\n",
+ "tx=(xg/2)+(xpu) #total reactance \n",
+ "sckva=pg/tx #short circuit kva is ratio ofpower to total reactance\n",
+ "sci=sckva/vg #short circuit current\n",
+ "print 'a'\n",
+ "print \" p.u.feeder reactor %.3fp.u \\n total reactance is %.3fp.u \\n short circuit kVA %dkVA \\n short circuit current %.1fA\"%(xpu,tx,sckva,sci)\n",
+ "gz=zb*xg #generator impedence\n",
+ "tz=(gz/2)+xbf #total impedence\n",
+ "scc=(vg*10**3)/tz #short circuit current in ampears\n",
+ "print 'b' \n",
+ "print \" generator impedence %.3fohm \\n total impedence %.3f ohm \\n short circuit current %.1fA\"%(gz,tz,scc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a\n",
+ " p.u.feeder reactor 0.000p.u \n",
+ " total reactance is 0.050p.u \n",
+ " short circuit kVA 60000kVA \n",
+ " short circuit current 5454.5A\n",
+ "b\n",
+ " generator impedence 4.000ohm \n",
+ " total impedence 7.000 ohm \n",
+ " short circuit current 1571.4A\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 13.2 page 277"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import sqrt\n",
+ "pa1=20000 ; pa2=30000 #kva in in 3 ph power\n",
+ "va1=11 ; va2=11 #voltage in kilo volts\n",
+ "pt1=20000 ; pt2=30000#kva of 3 ph transformer\n",
+ "vpt1=11 ; vpt2=11#voltage of primery of transformer\n",
+ "vst1=132 ; vst2=132#voltage of secondary of transformer\n",
+ "xg1=0.5 ; xg2=0.65 #reactance of generator\n",
+ "xt1=0.05 ;xt2=0.05 #reactance of transformer with their own kva\n",
+ "pb=pa2; vbg=va2 ;vbt=vpt2 #assumeing base quantoties\n",
+ "xtn1=xt1*pb/pa1 ;xtn2=xt2*pb/pa2 #transformer reactance with new base\n",
+ "xgn1=xg1*pb/pa1; xgn2=xg2*pb/pa2\n",
+ "xn1=xtn1+xgn1 ;xn2=xtn2+xgn2 #reactancee up to fault from each generator\n",
+ "xn=(xn1*xn2)/(xn1+xn2) #equalent reactance between generator and fault\n",
+ "sckva=pb/xn #short circuit KVA\n",
+ "print '(a)'\n",
+ "print \" equivalent reactance is %.4f p.u \\n short circuit KVA %dKVA\"%(xn,sckva)\n",
+ "print '(b)'\n",
+ "sccb=sckva/(vst1*sqrt(3))\n",
+ "sccg1=sccb*(xn2/(xn1+xn2))*vst1/vpt1\n",
+ "sccg2=sccb*(xn1/(xn1+xn2))*vst2/vpt2\n",
+ "print \" short circuit current on bus bar side %.1fA \\n short circuit current of generator 1 is %.1fA \\n short circuit current of generator 2 is %.1fA \\n\"%(sccb,sccg1,sccg2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ " equivalent reactance is 0.3787 p.u \n",
+ " short circuit KVA 79220KVA\n",
+ "(b)\n",
+ " short circuit current on bus bar side 346.5A \n",
+ " short circuit current of generator 1 is 1908.6A \n",
+ " short circuit current of generator 2 is 2249.4A \n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 13.3 Page 278"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "pa1=20000 ; pa2=30000 #kva in in 3 ph power\n",
+ "va1=11 ; va2=11 #voltage in kilo volts\n",
+ "pt1=20000 ; pt2=30000#kva of 3 ph transformer\n",
+ "vpt1=11 ; vpt2=11#voltage of primery of transformer\n",
+ "vst1=132 ; vst2=132#voltage of secondary of transformer\n",
+ "xg1=0.5 ;xg2=0.65 #reactance of generator\n",
+ "xt1=0.05 ;xt2=0.05 #reactance of transformer with their own kva\n",
+ "pb=pa2 ;vbg=va2 ;vbt=vpt2 #assumeing base quantoties\n",
+ "xtn1=xt1*pb/pa1 ;xtn2=xt2*pb/pa2 #transformer reactance with new base\n",
+ "xgn1=xg1*pb/pa1 ;xgn2=xg2*pb/pa2\n",
+ "xn1=xtn1+xgn1 ;xn2=xtn2+xgn2 #reactancee up to fault from each generator\n",
+ "xn=(xn1*xn2)/(xn1+xn2) #equalent reactance between generator and fault\n",
+ "sckva=pb/xn #short circuit KVA\n",
+ "pf=50000 #fault kva rating\n",
+ "xf=pb/pf #reactance from fault\n",
+ "xx=xf*xn1/(xn1-xf)\n",
+ "x=xx-xn2 #reactance to be added \n",
+ "bi=(vst1**2)*1000/(pb)\n",
+ "xo=x*bi\n",
+ "print \" reactance to be added in circuit of generator 2 have %.1f p.u. \\n reactance in ohms %.1f\"%(x,xo)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " reactance to be added in circuit of generator 2 have -0.7 p.u. \n",
+ " reactance in ohms -406.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 13.4 Page 278"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "pa=50; xgb=0.5; xb=0.1 #given power,reactance of generator\n",
+ "x1=xgb+xb \n",
+ "x=x1*x1*xgb/(x1*x1+x1*xgb+x1*xgb)\n",
+ "f=pa/x\n",
+ "print \" total reactance %.4f.p.u \\n fault MVA %.1fMVA\"%(x,f)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " total reactance 0.1875.p.u \n",
+ " fault MVA 266.7MVA\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example13_5 Page 279"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "vb=33\n",
+ "pb=20 ;zb=vb**2/pb #base voltage and base power\n",
+ "pa1=10 ;pa2=10; xa1=0.08; xa2=0.08 #given power and reactance for different branches\n",
+ "pbb=20 ;xb=0.06 ;pc=15 ;xc=0.12; pd=20; xd=0.08 \n",
+ "xab=2.17; xbc=3.26; xcd=1.63; xda=4.35 \n",
+ "xap1=xa1*pb/pa1 \n",
+ "xap2=xa2*pb/pa2 ;xap=xap1*xap2/(xap1+xap2)\n",
+ "xbp=xb*pb/pbb \n",
+ "xcp=xc*pb/pc \n",
+ "xdp=xd*pb/pd #generators reactance in per unit\n",
+ "xabp=round(xab*100/zb)/100 \n",
+ "xbcp=round(xbc*100/zb)/100 \n",
+ "xcdp=round(xcd*100/zb)/100 \n",
+ "xdap=round(xda*100/zb)/100 #reactance in per unit between bus\n",
+ "def del2star(d12,d23,d31):\n",
+ " dsum=d12+d23+d31\n",
+ " s1=d12*d31/(dsum)\n",
+ " s2=d12*d23/(dsum)\n",
+ " s3=d31*d23/dsum\n",
+ " return [s1,s2,s3]\n",
+ "def star2del(s1,s2,s3):\n",
+ " d12=s1+s2+(s1*s2)/s3\n",
+ " d23=s2+s3+(s2*s3)/s1\n",
+ " d31=s3+s1+(s3*s1)/s2\n",
+ " return [d12,d31,d23]\n",
+ "[xac,xrc,xra]=star2del(xcdp,xdap,xdp)\n",
+ "rc=xrc*xcp/(xrc+xcp)\n",
+ "ra=xra*xap/(xra+xap)\n",
+ "[xpr,xpc,xpa]=del2star(xac,rc,ra)\n",
+ "xf1=xbcp+xpc\n",
+ "xf2=xpr+xabp\n",
+ "xf=xf1*xf2/(xf1+xf2)\n",
+ "xfr=xf+xpa\n",
+ "xx=xfr*xbp/(xfr+xbp)\n",
+ "netr=xx #net reactance\n",
+ "fkva=pb*1000/xx\n",
+ "print \"the rating of circuit breaker should be %d KVA, or %d MVA\"%(fkva,fkva/1000)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the rating of circuit breaker should be 671200 KVA, or 671 MVA\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 13_6 Page 285"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "p=150 #given ,power\n",
+ "v=11 #given voltage\n",
+ "xg=0.12 #reactance of generator\n",
+ "xb=0.08 #reactance of line\n",
+ "scca=1/xg\n",
+ "ms=scca**2\n",
+ "sccb=1/(xg+xb)\n",
+ "ms1=sccb**2\n",
+ "print 'a'\n",
+ "print \"short circuit current is %.3fp.u \\n ratio of mechanical stress on short circuit to aech. stresses on full load %.2f\"%(scca,ms)\n",
+ "print 'b'\n",
+ "print \"short circuit current is with reactor %.3fp.u \\n ratio of mechanical stress on short circuit to aech. stresses on full load with reactor %.f\"%(sccb,ms1)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a\n",
+ "short circuit current is 8.333p.u \n",
+ " ratio of mechanical stress on short circuit to aech. stresses on full load 69.44\n",
+ "b\n",
+ "short circuit current is with reactor 5.000p.u \n",
+ " ratio of mechanical stress on short circuit to aech. stresses on full load with reactor 25\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example13_7 Page 286"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import acos, pi, sin, cos, atan\n",
+ "xf=complex(0,0.04)\n",
+ "pf=0.8 ;ph=acos(pf)*180/pi\n",
+ "v=1 ;i=1 #let v and i\n",
+ "vb=v+i*xf*(complex(cos(ph*pi/180),-sin(ph*pi/180)))\n",
+ "iv=vb-abs(v) \n",
+ "print \"bus bar voltage %.4f.p.u at angle %.1f\\nincrease in voltage %.4f =%.4f percent\"%(abs(vb),atan(vb.imag/vb.real)*180/pi,abs(iv),abs(iv*100))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "bus bar voltage 1.0245.p.u at angle 1.8\n",
+ "increase in voltage 0.0400 =4.0000 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 13.8 page 286"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "p1=30 ;x1=0.3 #power and reactance of different sets\n",
+ "p2=30 ;x2=0.3\n",
+ "p3=20 ;x3=0.3\n",
+ "l=10 ;xl=0.04\n",
+ "pb=p1 ;xp3=x3*pb/p3\n",
+ "tr=(xp3*x1*x2)/(xp3*x1+xp3*x2+x1*x2)\n",
+ "sc=pb/tr\n",
+ "print 'a'\n",
+ "print \"total reactance %.4f p.u \\n short circuit MVA on l.v.bus %.2fMVA\"%(tr,sc)\n",
+ "print 'b'\n",
+ "xlp=xl*pb/l\n",
+ "trr=tr+xlp\n",
+ "scc=pb/trr\n",
+ "print \"total reactance seen from h.v.side of transformer %.2fp.u \\n short circuit MVA %.2fMVA\"%(trr,scc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a\n",
+ "total reactance 0.1125 p.u \n",
+ " short circuit MVA on l.v.bus 266.67MVA\n",
+ "b\n",
+ "total reactance seen from h.v.side of transformer 0.23p.u \n",
+ " short circuit MVA 129.03MVA\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 13.9 Page 287"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "p1=30 ;x1=0.15; p2=10; x2=0.125 \n",
+ "pt=10 ;vs=3.3 ;pm=100\n",
+ "pb=p1 #let base as power of unit 1\n",
+ "x22=x2*pb/p2; x11=x1*pb/p1\n",
+ "xx=1/((1/x22)+(1/x11)+(1/x11))\n",
+ "xl=(pb/pm)-xx\n",
+ "xt2=xl*pt/pb\n",
+ "bi=vs**2/pt\n",
+ "xtt=xt2*bi\n",
+ "print \" reactance of transformer is %.4f.p.u \\n reactance of transformer on %dMVA base is %.5fp.u. \\n reactance of transformer %.4fohm\"%(xl,pt,xl,xtt)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " reactance of transformer is -0.0625.p.u \n",
+ " reactance of transformer on 10MVA base is -0.06250p.u. \n",
+ " reactance of transformer -0.0227ohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 13.10 Page 287"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#given #p=power/v=voltage/f=frequency/x=reactance/iff=feeder reactance take off\n",
+ "pa=20 ;va=11 ;f=50 ;xa=0.2 ;pb=30 ;xb=0.2 ;pf=10 ;xf=0.06; iff=0.5\n",
+ "pba=20 ;vba=11\n",
+ "xap=xa*pba/pb\n",
+ "xfp=xf*pba/pf\n",
+ "nx=xfp+(xa/2)*(xa/2+xap)/(xa+xap)\n",
+ "fcp=nx**(-1)\n",
+ "bc=pba*1000/(va*sqrt(3))\n",
+ "fc=fcp*bc\n",
+ "print 'a'\n",
+ "print \"fault current %.2fohm\"%(fc)\n",
+ "ic=iff*fcp\n",
+ "xtx=ic**(-1)\n",
+ "xn=xtx-nx\n",
+ "zb=va**2/pba\n",
+ "xnn=xn*zb\n",
+ "print 'b'\n",
+ "print \"reactance required %.4fohm\"%(xnn)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a\n",
+ "fault current 5524.88ohm\n",
+ "b\n",
+ "reactance required 1.1400ohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 13 11 Page 288"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "n1=5 ;x=0.4 ;d=0.1; g=20 #given\n",
+ "mva=(g/x)+(g*(n1-1)/(x+n1*d))\n",
+ "n2=10 #given\n",
+ "mva2=(g/x)+(g*(n2-1)/(x+n2*d))\n",
+ "print 'a'\n",
+ "print \"fault MVA =(g/x)+(g*(n-1)/(x+nd)) \\n fault level is to equal to fault MVA if n=infinity\"\n",
+ "print 'b'\n",
+ "print \" MVA=%.2fMVA if n=%d \\n MVA=%.2fMVA if n=%d\"%(mva,n1,mva2,n2)\n",
+ "fl=g*((1/x)+(1/d))\n",
+ "print 'c'\n",
+ "print \"\\nfault level %dMVA\"%(fl)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a\n",
+ "fault MVA =(g/x)+(g*(n-1)/(x+nd)) \n",
+ " fault level is to equal to fault MVA if n=infinity\n",
+ "b\n",
+ " MVA=138.89MVA if n=5 \n",
+ " MVA=178.57MVA if n=10\n",
+ "c\n",
+ "\n",
+ "fault level 250MVA\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter14.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter14.ipynb
new file mode 100644
index 00000000..a2681fd4
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter14.ipynb
@@ -0,0 +1,907 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:7ee8895bf918e29dc996fcc120f35aefc5913500e53b4df4d74c03c3d0bc218c"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-14, System Interconnections"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.1 Page 302"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "p=100 #rating of alternater\n",
+ "sd=0.04 #speed of alrternator drops \n",
+ "df=-0.1 #change in frequency and drops so -ve\n",
+ "f=50 #frequency is 50hz\n",
+ "r=sd*f/p #r in hz/MW\n",
+ "dp=-(df)/r \n",
+ "print \" speed regulation of alternator is %.2fHz/MW \\n change in power output %dMW\"%(r,dp)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " speed regulation of alternator is 0.02Hz/MW \n",
+ " change in power output 5MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example14.2 Page 302"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "p=100 #power of alternator\n",
+ "f=50 #frequency\n",
+ "h=5 #h constant of machine kW-sec kVA\n",
+ "inl=50 #load suddenly increase by\n",
+ "de=0.5 #time delay\n",
+ "ke=h*p*10**3 #kinetic energy\n",
+ "lke=inl*10**3*de #loss in kinetic energy\n",
+ "nf=((1-(lke/ke))**(de))*f #now frequency \n",
+ "fd=(1-nf/f)*100 #frequency deviation\n",
+ "print \"kinetic energy stored at rated speed %.1e kW-sec \\nloss in kinetic energy due to increase in load %.1e kW-sec \\nnew frequency %.3fHz \\nfrequency deviation %.3f\"%(ke,lke,nf,fd)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "kinetic energy stored at rated speed 5.0e+05 kW-sec \n",
+ "loss in kinetic energy due to increase in load 2.5e+04 kW-sec \n",
+ "new frequency 48.734Hz \n",
+ "frequency deviation 2.532\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.3 Page 303"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "ar1=500 #alternator rating1\n",
+ "pl=0.5 #each alternator is operating at half load \n",
+ "ar2=200 #alternator rating2\n",
+ "f=50 #frequency\n",
+ "il=140 #load increase by 140 MW\n",
+ "fd=49.5 #frequency drops\n",
+ "fdd=-f+fd #frequency deviation \n",
+ "dp1=(ar1*pl)-il #change in load alternator 1\n",
+ "dp2=-(ar2*pl)+il #change in load of alternator 2\n",
+ "r1=-fdd/dp1 \n",
+ "r2=-fdd/dp2\n",
+ "print \" R1=%.3fohm \\n R2=%.4fohm\"%(r1,r2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " R1=0.005ohm \n",
+ " R2=0.0125ohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example14.4 Page 303"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "rc=10000 #rated capacity\n",
+ "r=2 #regulation in all units\n",
+ "li=0.02 #load increase\n",
+ "f=50 #frequency\n",
+ "d=rc/(2*f) #d=partial derevative with respect to frequency\n",
+ "d=d/rc\n",
+ "b=d+1/r\n",
+ "m=li*rc/2\n",
+ "mpu=m/rc\n",
+ "df=-mpu/b \n",
+ "dff=-mpu/d\n",
+ "print \"static frequency drop %fHz \\nfrequency drop %dHz\"%(df,dff)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "static frequency drop -0.019608Hz \n",
+ "frequency drop -1Hz\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.5 Page 303"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "cac=10000 #control area capacity\n",
+ "nol=5000 #normal operating\n",
+ "h=5 #inertial constent\n",
+ "r=3 #regulation\n",
+ "cf=1 #1%change in corresponds to 1% change in load\n",
+ "f=50 #frequency\n",
+ "d=cac/(2*f)\n",
+ "dpu=d/(cac)\n",
+ "kp=1/dpu\n",
+ "tp=2*h/(f*dpu)\n",
+ "print \"d=%.2fp.u.MW/hz, \\nkp=%dhz/p.u.MW \\ntp=%dsecond\"%(dpu,kp,tp)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "d=0.01p.u.MW/hz, \n",
+ "kp=100hz/p.u.MW \n",
+ "tp=20second\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.6 Page 304"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "rc=10000 #rated capacity\n",
+ "r=2 #regulation in all units\n",
+ "li=0.02 #load increase\n",
+ "f=50 #frequency\n",
+ "d=rc/(2*f) #d=partial derevative with respect to frequency\n",
+ "dd=d/rc\n",
+ "b=dd+1/r\n",
+ "m=li*rc/2\n",
+ "mpu=m/rc\n",
+ "df=-mpu/b \n",
+ "dff=-mpu/dd\n",
+ "cf=abs(df*d)\n",
+ "inc=-(df/r)*10**4\n",
+ "print \"the contribution of frequency drop to meet increase in load %.3fMW \\nincrease in generation cost Rs%.2f\"%(cf,inc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the contribution of frequency drop to meet increase in load 1.961MW \n",
+ "increase in generation cost Rs98.04\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.7 Page 307"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "p=100 #MVA of generated\n",
+ "f=50 #frequency\n",
+ "rpm=3000 #no load rpm\n",
+ "lad=25 #load applied to the machiene\n",
+ "t=0.5 #time delay \n",
+ "h=4.5 #inertia constent\n",
+ "ke=h*p #kinetic energy is product of h*p\n",
+ "lke=lad*t #loss of ke\n",
+ "nf=(((ke-lke)/ke)**t)*f #new frequency ((1-lke/ke)**t)*f\n",
+ "fd=(1-(nf/f))*100 #frequency deviation\n",
+ "print \"ke at no load %dMW-sec \\nloss in k.e due to load %.1fMW-sec \\nnew frequency %.1fHz \\nfrequency deviation %.1fpercent\"%(ke,lke,nf,fd)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "ke at no load 450MW-sec \n",
+ "loss in k.e due to load 12.5MW-sec \n",
+ "new frequency 49.3Hz \n",
+ "frequency deviation 1.4percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.8 Page 307"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "c=4000#capacity\n",
+ "f=50 #frequency\n",
+ "ol=2500 #operating load\n",
+ "r=2 #speed regulation\n",
+ "h=5 #inertial constant\n",
+ "dl=0.02 #change in load\n",
+ "df=0.01 #change in frequency\n",
+ "dff=-0.2 #change in steady state frequency\n",
+ "d=(dl*ol)/(df*f) #\n",
+ "dpu=d/c #din pu\n",
+ "b=dpu+(1/r)\n",
+ "m=-dff*b\n",
+ "print \"largest chang in load is %.3fp.u.MW=%dMW\"%(m,m*c)\n",
+ "kp=(1/dpu)\n",
+ "tp=(kp)*2*h/f\n",
+ "tt=(r+kp)/(r*tp) #time constant \n",
+ "print \"\\ndf=(dff)(1-e**%f*t)\"%(tt)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "largest chang in load is 0.105p.u.MW=420MW\n",
+ "\n",
+ "df=(dff)(1-e**2.625000*t)\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example14.9 Page 307"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "c=4000 #capacity of system\n",
+ "f=50 #frequency #operatingload=rated area capacity\n",
+ "h=5 #time constent\n",
+ "r=0.025 #\n",
+ "dl=0.01 #change in load\n",
+ "df=0.01 #change in frequency\n",
+ "rr=r*f #\n",
+ "d=(dl*c)/(df*f) \n",
+ "dpu=d/c\n",
+ "kp=1/dpu\n",
+ "tp=(kp)*(2*h/f)\n",
+ "tt=(rr+kp)/(rr*tp)\n",
+ "sfe=(kp*rr*dpu)/(rr+kp)\n",
+ "ki=(1+(kp/r))**2/(4*tp*kp)\n",
+ "print \" df=-%.5f(1-e**(-%.1f)) \\n ki=%.4fp.u.MW/Hz\"%(sfe,tt,ki)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " df=-0.02439(1-e**(-4.1)) \n",
+ " ki=2002.0005p.u.MW/Hz\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example14.10 Page 308"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "tg=0.2 #time constent of steam turbine\n",
+ "t=2 #time constant of turbine\n",
+ "h=5 #inertia constent\n",
+ "r=0.04 #given\n",
+ "dl=0.01 #change in load\n",
+ "df=0.01 #change in frequency\n",
+ "c=1500 #capacity\n",
+ "f=50 #frequency\n",
+ "adl=0.01 #max allowable change in load\n",
+ "print '(a)'\n",
+ "print \"\\ntransfer function of governor gr= 1/(1+%.1f*s) \\n transfer function of turbine gt=1/(1+%d*s)\"%(tg,t)\n",
+ "rr=r*f\n",
+ "d=(dl*c)/(df*f)\n",
+ "dpu=(d/c)\n",
+ "kp=(1/dpu)\n",
+ "tp=(kp*(2*h)/(f))\n",
+ "print \"\\ntransfer function of power system \\n Gp=(%d/(1+%d*s)\\n Df=-gp/(1+(0.5*(gr*gt*gp)))\"%(kp,tp)\n",
+ "ddf=-(kp)/(1+kp/r)\n",
+ "dff=df*f\n",
+ "m=dff/(ddf)\n",
+ "mm=m*c\n",
+ "print '(b)'\n",
+ "print \"\\nthe largest step in the load if the frequency change by more than %.2f in steady state %dMW\"%(adl,mm)\n",
+ "if mm<0:\n",
+ " print \"\\nthe minu sign is becose of the that if frequency is to increase by %f \\nthe change in load be negative.\"%(adl)\n",
+ "else:\n",
+ " print \"\\nthe largest step in load if the frequency is to decrease by %f /n the change in load be positive\"%(adl)\n",
+ "print '(c)'\n",
+ "\n",
+ "print 'when integral controller is used,static frequency error is zero'"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "\n",
+ "transfer function of governor gr= 1/(1+0.2*s) \n",
+ " transfer function of turbine gt=1/(1+2*s)\n",
+ "\n",
+ "transfer function of power system \n",
+ " Gp=(50/(1+10*s)\n",
+ " Df=-gp/(1+(0.5*(gr*gt*gp)))\n",
+ "(b)\n",
+ "\n",
+ "the largest step in the load if the frequency change by more than 0.01 in steady state -18765MW\n",
+ "\n",
+ "the minu sign is becose of the that if frequency is to increase by 0.010000 \n",
+ "the change in load be negative.\n",
+ "(c)\n",
+ "when integral controller is used,static frequency error is zero\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.11 Page 312"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "pa=5000 #power of unit a\n",
+ "pb=10000 #power of unit b\n",
+ "r=2 #given speed regulation in p.uMW\n",
+ "d=0.01 #d in p.u.MW/Hz\n",
+ "dpa=0 #change in power in unit a\n",
+ "dpb=-100 #change in power in unit b \n",
+ "pbas=10000 #assume base as 10000 \n",
+ "ra=r*pbas/pa #speed regulation of the unit a\n",
+ "da=d*pa/pbas #da of unit b\n",
+ "rb=r*pbas/pb #speed regulation of unit b\n",
+ "db=d*pb/pbas #db of unit b\n",
+ "ba=da+(1/ra) #area frequency response of a\n",
+ "bb=db+(1/rb) #area frequency response of b\n",
+ "ma=dpa/pbas #change in power a in per unit in unit a \n",
+ "mb=dpb/pbas #change in power a in per unit in unit b\n",
+ "df=(ma+mb)/(ba+bb) #change in frequency\n",
+ "dpab=(ba*mb-bb*ma)/(ba+bb) #change in power between ab\n",
+ "print \"change in frequency is %.5fHz \\nchange in power %.6f p.u.MW\"%(df,dpab)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "change in frequency is -0.01307Hz \n",
+ "change in power -0.003333 p.u.MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.12 page 314"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "pa=500 #power of unit a\n",
+ "pb=2000 #power of unit b\n",
+ "ra=2.5 #speed regulation of a\n",
+ "rb=2 #speed regulation of b\n",
+ "dl=0.01 #change in load\n",
+ "df=0.01 # change in frequency\n",
+ "pt=20 #change in tie line power \n",
+ "ptl=0 #let other power station has zero \n",
+ "pbas=2000 #assume base as 2000MW\n",
+ "f=50 #assume frequency\n",
+ "da=(dl*pa)/(df*f) #change in power w.r.t frequency\n",
+ "dapu=da/(pbas) # change in power w.r.t frequency in per unit\n",
+ "db=(dl*pb)/(df*f) #change in power in unit b\n",
+ "dbpu=db/pbas #change in power w.r.t frequency in per unit\n",
+ "raa=ra*pbas/pa #speed regulation with pbase\n",
+ "rbb=rb*pbas/pb #speed regulation with pbase\n",
+ "ba=dapu+(1/raa) #area frequency response a\n",
+ "bb=dbpu+(1/rbb) #area frequency response b\n",
+ "ma=pt/pbas #assume change in power in unit a alone due to tie power\n",
+ "mb=ptl/pbas #change in power in unit b\n",
+ "df=-(ma+mb)/(ba+bb) #change in frequency\n",
+ "dpp=(ba*mb-bb*ma)/(ba+bb) #change in power\n",
+ "print '(a)'\n",
+ "print \"change in frequency is %.3fHz \\n change in power between ab %.5fp.u.MW \\n \\t\\t%.2fMW\"%(df,dpp,dpp*pbas)\n",
+ "ma2=ptl/pbas #assume change in power in unit a alone due to tie power\n",
+ "mb2=pt/pbas #change in power in unit b\n",
+ "df2=-(ma2+mb2)/(ba+bb) #change in frequency\n",
+ "dpp2=(ba*mb2-bb*ma2)/(ba+bb) #change in power\n",
+ "print '(b)'\n",
+ "dpba=dpp2*pbas\n",
+ "print \" change in frequency is %.3fHz \\n change in power between ab %.5fp.u.MW \\n\"%(df2,dpp2)\n",
+ "print \" change in power %fMW\"%(dpba)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "change in frequency is -0.016Hz \n",
+ " change in power between ab -0.00832p.u.MW \n",
+ " \t\t-16.64MW\n",
+ "(b)\n",
+ " change in frequency is -0.016Hz \n",
+ " change in power between ab 0.00168p.u.MW \n",
+ "\n",
+ " change in power 3.360000MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.13 Page 315"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import cos, pi\n",
+ "p=4000 #power area\n",
+ "n=2 #number of units\n",
+ "r=2 #speed regulation\n",
+ "h=5 \n",
+ "pt=600 #given tie power\n",
+ "pan=40 #power angle\n",
+ "stp=100\n",
+ "f=50\n",
+ "t=(pt/p)*cos(pan*pi/180)\n",
+ "wo=((2*pi*f*t/h)**2-(f/(4*r*h))**2)**(0.5)\n",
+ "print '(a)'\n",
+ "print \" the damped angular frequency is %.2fradians/sec if speed govenor loop is closed\"%(wo)\n",
+ "print '(b)'\n",
+ "print \" since the two area are imilier ,each area will supply half of increase in load .this also evident besause ba=bb \\n change in power %dMW \\n speed regulation is infininy\"%(stp/2)\n",
+ "wo1=(2*pi*f*t/h)**(0.5) #if govenor loop is open alpha is zero\n",
+ "print \" damped angular frequency if speed governor loop is open %.3frad/sec \"%(wo1)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ " the damped angular frequency is 7.11radians/sec if speed govenor loop is closed\n",
+ "(b)\n",
+ " since the two area are imilier ,each area will supply half of increase in load .this also evident besause ba=bb \n",
+ " change in power 50MW \n",
+ " speed regulation is infininy\n",
+ " damped angular frequency if speed governor loop is open 2.687rad/sec \n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example14.14 Page 325"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import cos, acos, sin\n",
+ "Aa=0.98; Ap=3 #magnitude and angle of constant A\n",
+ "Ba=110 ;Bp=75 #magnitude and angle of constant B\n",
+ "p=50 #given power 50\n",
+ "pf=0.8 #given power factor is 0.8\n",
+ "vr=132 #voltage at reseving station\n",
+ "vs=132 #voltage at source station to be maintained\n",
+ "vsr1=p*pf+(Aa*(vr**2)/Ba)*cos(pi/180*(Bp-Ap))\n",
+ "ph=vsr1*Ba/(vs*vr)\n",
+ "phh=acos(ph)*180/pi\n",
+ "Del=Bp-phh\n",
+ "qrr=((vs*vr/Ba)*sin(phh*pi/180))-((Aa*(vr)**(2)/Ba)*sin((Bp-Ap)*pi/180)) #reactive power to maintain voltage equal\n",
+ "qrre=p*sin(acos(pf)) #reactive power for the load\n",
+ "qrc=qrre-qrr\n",
+ "print \"the reactive power supply and reseving power is %dkV \\nreactive power %.2fMvar\"%(vs,qrr)\n",
+ "print \"\\nthe required compensator network neeeded %.2fMvar\"%(qrc)\n",
+ "print '(b)'\n",
+ "cosb=(Aa*cos(pi/180*(Bp-Ap))*(vr)**(2)/Ba)*(Ba/(vs*vr)) #under no oad condition\n",
+ "phb=acos(cosb)*180/pi\n",
+ "qrb=(vs*vr*sin(phb*pi/180)/Ba)-(Aa*vr*vr*sin(pi/180*(Bp-Ap))/Ba)\n",
+ "if qrb>0 :\n",
+ " print \"thus under no load condition the line delivers %.2fMvar at receiving end.the reactive power must be absorbed by shunt reactor at receving end. thus the capacity of shunt reactor, for no load condition is %.2fMvar. \"%(qrb,qrb)\n",
+ "else:\n",
+ " print \"thus under no load condition the line absorbs %.2fMvar at receiving end.the reactive power must be delivered by shunt reactor at receving end. or reactive must suppiled by the source thus the capacity of shunt reactor, for no load condition is %.2fMvar. \"%(qrb,qrb)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the reactive power supply and reseving power is 132kV \n",
+ "reactive power -15.91Mvar\n",
+ "\n",
+ "the required compensator network neeeded 45.91Mvar\n",
+ "(b)\n",
+ "thus under no load condition the line delivers 3.33Mvar at receiving end.the reactive power must be absorbed by shunt reactor at receving end. thus the capacity of shunt reactor, for no load condition is 3.33Mvar. \n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.15 Page 326"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import sqrt\n",
+ "v=220 #line voltage\n",
+ "ps=11 ; ss=220; pr=220 ;sr=11 #primer and secondary end terminal voltages of tapping transformer\n",
+ "zr=20; zi=60 #impedence of line in real ndimagenary parts\n",
+ "p=100 #power at recieving end is 100MVA\n",
+ "pf=0.8 #power factor at recievin t=1 #prodect of 2 off terminal tap setting is 1\n",
+ "vt=11 #tap setting for 11 kv voltage bus\n",
+ "P=(p*pf*10**6)/3 #real power \n",
+ "Q=(p*sin(acos(pf))*10**6)/3 #reactance power\n",
+ "v1=v*(10**3)/sqrt(3)\n",
+ "ts=(1/(1-(zr*P+zi*Q)/(v1**2)))**(0.5)\n",
+ "print \" tapping ratio at the source %.3f \\n tapping ratio at the receving end %.2f\"%(ts,1/ts)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " tapping ratio at the source 1.058 \n",
+ " tapping ratio at the receving end 0.94\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.16 page 327"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "vp=132; vs=33; vt=11 #voltage at primary ,secondary ,teritiory\n",
+ "pp=75; ps=50; pt=25 #MVA rating at prinary ,secondary,teritiory \n",
+ "rpr=0.12 ;rv=132; rp=75 #reactance power of primary under rv and rp as voltage and power base\n",
+ "poa=60 ;rea=50 #load real and reactive power a\n",
+ "pva=125 ;svaa=33 #primary and secondary voltage a\n",
+ "svsb=25 ;pvb=140; svbb=33 #primary and secondary voltage at no load\n",
+ "print '(a)'\n",
+ "vbas=132 ;mvabas=75 #assume voltage and MVA base \n",
+ "v1pu=pva/vbas #voltage in per unit\n",
+ "v1apu=round(v1pu*1000)/1000 #rounding off \n",
+ "qre=rea/mvabas #reactive power in per unit\n",
+ "vn1a=(v1apu+sqrt(v1apu**2-4*rpr*qre))/2 #voltage using quadratic equation formulae\n",
+ "vn2a=(v1apu-sqrt(v1apu**2-4*rpr*qre))/2\n",
+ "vnaa=vn1a*vbas\n",
+ "v12=pvb/vbas\n",
+ "q=svsb/mvabas\n",
+ "vn1b=(v12+sqrt(v12**2-4*rpr*q))/2 #voltage using quadratic equation formulae\n",
+ "vn1b=round(vn1b*1000)/1000\n",
+ "vnbb=vn1b*vbas #vn in no load condition\n",
+ "print \"vn=%.3f.p.u \\n vn=%.3fkV\"%(vn1a,vnaa)\n",
+ "print '(b)'\n",
+ "print \"vn=%.3f.p.u \\n vn=%.3fkV\"%(vn1b,vnbb)\n",
+ "z=vnaa/svaa ;x=vnbb/svbb \n",
+ "print \"\\n transformation ratio under load condition %.3f \\n transformation ratio under no load condition %.3f \\n the actual ratio can be taken as mean of the above value i.e.%.3fpercent\\n varying by (+/-)%.3fpercent\"%(z,x,(z+x)/2,x-(z+x)/2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "vn=0.853.p.u \n",
+ " vn=112.628kV\n",
+ "(b)\n",
+ "vn=1.021.p.u \n",
+ " vn=134.772kV\n",
+ "\n",
+ " transformation ratio under load condition 3.413 \n",
+ " transformation ratio under no load condition 4.084 \n",
+ " the actual ratio can be taken as mean of the above value i.e.3.748percent\n",
+ " varying by (+/-)0.336percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.7 page 331"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "ca=200 #capacity of unit a\n",
+ "cb=100 #capacity of unit b\n",
+ "ra=1.5 #speed regulation of unit a \n",
+ "rb=3 #speed regulation of unit b\n",
+ "f=50 #frequency\n",
+ "pla=100 #load on each bus\n",
+ "plb=100\n",
+ "raa=ra*f/(pla*ca)\n",
+ "rbb=rb*f/(plb*cb)\n",
+ "pa=rbb*(pla+plb)/(raa+rbb)\n",
+ "pb=pla+plb-pa\n",
+ "tp=pa-pla\n",
+ "print \" generation at the plant a is %dMW and \\n generation at the plant b is %dMW \\n transfer power from plant a to b is %dMW\"%(pa,pb,tp)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " generation at the plant a is 160MW and \n",
+ " generation at the plant b is 40MW \n",
+ " transfer power from plant a to b is 60MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.18 Page 332"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "za=1.5 ;zb=2.5 #impedence between two lines \n",
+ "v=11 #plant operatio\\ng voltage\n",
+ "l=20 ; pf=0.8 #load at 20 MW at 0.8 pf\n",
+ "i=l*10**3/(v*pf*sqrt(3)) ;ph=-acos(pf)*180/pi #current and phase angle of transfrming current\n",
+ "vd=complex(za,zb)*complex(i*cos(ph*pi/180),i*sin(ph*pi/180)) #voltage drop due to loss\n",
+ "print \"the current transfer is %.1fA at an angle %.2f\"%(i,ph)\n",
+ "print \"\\nvoltage drop in the interconnector is %.2f+j%.2fV \\nso voltage boost needed is %.2f+j%.2fV \"%(vd.real,vd.imag,vd.real,vd.imag)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the current transfer is 1312.2A at an angle -36.87\n",
+ "\n",
+ "voltage drop in the interconnector is 3542.83+j1443.38V \n",
+ "so voltage boost needed is 3542.83+j1443.38V \n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 14.19 Page 332"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import atan, cos\n",
+ "zaa=3 ;zbb=9 #impedence given between line\n",
+ "pas=1 #power at two units are equal to 1p.u \n",
+ "par=1 \n",
+ "pbs=1.05 #power at sending end is 1.05 and power at receiving end is 1p.u\n",
+ "pbr=1\n",
+ "i=1 #assume current is 1p.u\n",
+ "los=i*complex(zaa/100,zbb/100)\n",
+ "csd=((abs(los)**2)-pas**2-par**2)/(2*pas*par) #load angle between two stations\n",
+ "csa=(pas**2+abs(los)**2-par**2)/(2*pas*abs(los)) #angle between source and loss\n",
+ "ta=180-atan(zbb/zaa)*180/pi-acos(csa)*180/pi #transfering power factor angle\n",
+ "print \"(a)\"\n",
+ "print \"load angle is %.2f\\n\"%(cos(csd*pi/180))\n",
+ "if sin(ta*pi/180)<0:\n",
+ " print \"real power is %.3fp.u \\nreactive power %.3fp.u lagging\"%(cos(ta*pi/180),abs(sin(ta*pi/180)))\n",
+ "else:\n",
+ " print \"real power is %.3fp.u \\nreactive power %.3fp.u leading\"%(cos(ta*pi/180),sin(ta*pi/180))\n",
+ "\n",
+ "csd2=(abs(los)**2-pbs**2-pbr**2)/(2*pbs*pbr) #load angle between two stations\n",
+ "csa2=(pbr**2-pbs**2+abs(los)**2)/(2*pbr*abs(los)) #angle between source and loss\n",
+ "f=180-atan(zbb/zaa)*180/pi-acos(csa2)*180/pi #transfering power factor angle\n",
+ "print '(b)'\n",
+ "\n",
+ "print \"load angle is %.2f\\n\"%(cos(csd2*pi/180))\n",
+ "if sin(f*pi/180)<0 :\n",
+ " print \"real power is %.3fp.u \\nreactive power %.3fp.u lagging\"%(cos(f*pi/180),abs(sin(f*pi/180)))\n",
+ "else:\n",
+ " print \"real power is %.3fp.u \\nreactive power %.3fp.u leading\"%(cos(f*pi/180),sin(f*pi/180))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "load angle is 1.00\n",
+ "\n",
+ "real power is 0.933p.u \n",
+ "reactive power 0.361p.u leading\n",
+ "(b)\n",
+ "load angle is 1.00\n",
+ "\n",
+ "real power is 0.981p.u \n",
+ "reactive power 0.192p.u lagging\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter15.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter15.ipynb
new file mode 100644
index 00000000..737eae87
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter15.ipynb
@@ -0,0 +1,495 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:543241e2957635d03b859da9db1a20b76f4037f0de553827d6103edb92a77b0c"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-15, New Energy Sources"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 15.1 Page 345"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "a=0.1 #plate area\n",
+ "b=3 #flux density\n",
+ "d=0.5 #distence between plates\n",
+ "v=1000 #average gas velosity\n",
+ "c=10 #condectivity\n",
+ "e=b*v*d\n",
+ "ir=d/(c*a) #internal resistence\n",
+ "mapo=e**2/(4*ir) #maximum power output\n",
+ "print \"E=%dV \\ninternal resistence %.1fohm \\nmaximum power output %dW =%.3fMW\"%(e,ir,mapo,mapo/10**6)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "E=1500V \n",
+ "internal resistence 0.5ohm \n",
+ "maximum power output 1125000W =1.125MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 15.2 Page 345"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "b=4.2 #flux density\n",
+ "v=600 #gas velocity\n",
+ "d=0.6 #dimension of plate\n",
+ "k=0.65 #constent\n",
+ "e=b*v*d #open circuit voltage\n",
+ "vg=e/d #voltage gradient\n",
+ "v=k*e #voltage across load\n",
+ "vgg=v/d #voltage gradient due to load voltage\n",
+ "print \" voltage E=%dV \\n voltage gradient %dV/m \\n voltage across load %.1fV \\n voltage gradient due to load voltage %dv\"%(e,vg,v,vgg)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " voltage E=1512V \n",
+ " voltage gradient 2520V/m \n",
+ " voltage across load 982.8V \n",
+ " voltage gradient due to load voltage 1638v\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 15.3 Page 346"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "b=4.2 #flux density\n",
+ "v=600 #gas velocity\n",
+ "d=0.6 #dimension of plate\n",
+ "k=0.65 #constent\n",
+ "sl=0.6 #length given\n",
+ "sb=0.35 #breath given\n",
+ "sh=1.7 #height given\n",
+ "c=60 #given condectivity\n",
+ "e=b*v*d #open circuit voltage\n",
+ "vg=e/d #voltage gradient\n",
+ "v=k*e #voltage across load\n",
+ "vgg=v/d #voltage gradient due to load voltage\n",
+ "rg=d/(c*sb*sh)\n",
+ "vd=e-v #voltage drop in duct\n",
+ "i=vd/rg #current due to voltage drop in duct\n",
+ "j=i/(sb*sh) #current density\n",
+ "si=e/(rg) #short circuit current\n",
+ "sj=si/(sb*sh) #short circuit current density\n",
+ "pd=j*vg #power density\n",
+ "p=pd*sl*sh*sb #power \n",
+ "pp=e*i #also power\n",
+ "pde=v*i #power delevered is V*i\n",
+ "los=p-pde #loss\n",
+ "eff=pde/p #efficiency\n",
+ "maxp=e**2/(4*rg)\n",
+ "print \" resistence of duct %fohms \\n voltage drop in duct %.1fV \\n current %.1fA \\n current density %fA/m**2 \\n short circuit current %.1fA \\n short current density %fA/m**2 \\n power %fMW \\n power delivered to load %fW \\n loss in duct %fW \\n efficiency is %f \\n maximum power delivered to load %dMW\"%(rg,vd,i,j,si,sj,p/10**6,pde/10**6,los/10**6,eff,maxp/10**6) "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " resistence of duct 0.016807ohms \n",
+ " voltage drop in duct 529.2V \n",
+ " current 31487.4A \n",
+ " current density 52920.000000A/m**2 \n",
+ " short circuit current 89964.0A \n",
+ " short current density 151200.000000A/m**2 \n",
+ " power 47.608949MW \n",
+ " power delivered to load 30.945817W \n",
+ " loss in duct 16.663132W \n",
+ " efficiency is 0.650000 \n",
+ " maximum power delivered to load 34MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 15.4 Page 347"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "c=50 #conduntance\n",
+ "a=0.2 #area\n",
+ "d=0.24 #distence between electrodes\n",
+ "v=1800 #gas velosity\n",
+ "b=1 #flux density\n",
+ "k=0.7 \n",
+ "ov=k*b*v*d\n",
+ "tp=c*d*a*b**2*v**2*(1-k)\n",
+ "eff=k\n",
+ "op=eff*tp\n",
+ "e=b*v*d\n",
+ "rg=d/(c*a)\n",
+ "si=e/rg\n",
+ "maxp=e**2/(4*rg)\n",
+ "print \" output voltage %.1fV \\n total power %.4fMW \\n efficiency %.1f \\n output power %fMW \\n open circuit voltage %dV \\n internal resistence %.3fohm \\n short circuit current %dA \\n maximum power output is %.3fMW\"%(ov,tp/10**6,eff,op/10**6,e,rg,si,maxp/10**6)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " output voltage 302.4V \n",
+ " total power 2.3328MW \n",
+ " efficiency 0.7 \n",
+ " output power 1.632960MW \n",
+ " open circuit voltage 432V \n",
+ " internal resistence 0.024ohm \n",
+ " short circuit current 18000A \n",
+ " maximum power output is 1.944MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 15.5 Page 363"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import cos, pi\n",
+ "a=100 #area\n",
+ "spd=0.7 #sun light power density\n",
+ "m=1000 #weight of water collector\n",
+ "tp=30 #temperature of water\n",
+ "th2=60 #angle of incidence\n",
+ "cp=4186 #specific heat of water\n",
+ "sp=spd*cos(th2*pi/180)*a #solar power collected by collector\n",
+ "ei=sp*3600*10**3 #energy input in 1 hour\n",
+ "temp=ei/(cp*10**3)\n",
+ "tw=tp+temp\n",
+ "print \" solar power collected by collector %dkW \\n energy input in one hour %e J \\n rise in temperature is %.1f`C \\n temperature of water %.1f`c\"%(sp,ei,temp,tw)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " solar power collected by collector 35kW \n",
+ " energy input in one hour 1.260000e+08 J \n",
+ " rise in temperature is 30.1`C \n",
+ " temperature of water 60.1`c\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 15.6 Page 364"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import sqrt, ceil\n",
+ "vo=100 #motor rated voltage\n",
+ "efm=0.4 #efficiency of motor pump\n",
+ "efi=0.85 #efficiency of inverter\n",
+ "h=50 #head of water\n",
+ "v=25 #volume of water per day\n",
+ "ov=18 #pv pannel output module\n",
+ "pr=40 #power rating\n",
+ "ao=2000 #annual output of array\n",
+ "dw=1000 #density of water\n",
+ "en=v*dw*h*9.81 #energy needed to pump water every day\n",
+ "enkw=en/(3.6*10**6) #energy in kilo watt hour\n",
+ "oe=efm*efi #overall efficiency\n",
+ "epv=round(enkw/oe) #energy out of pv system\n",
+ "de=ao/365 #daily energy output\n",
+ "pw=epv*10**3/de #peak wattage of pv array\n",
+ "rv=vo*(pi)/sqrt(2) #rms voltage\n",
+ "nm=rv/ov #number of modules in series\n",
+ "nm=ceil(nm)\n",
+ "rpp=nm*pr #rated peak power output\n",
+ "np=pw/rpp #number of strings in parallel\n",
+ "np=round(np)\n",
+ "print \" energy needed o pump water every day %fkWh/day \\n overall efficiency %.2f \\n energy output of pv system %dkWh/day \"%(enkw,oe,epv)\n",
+ "print \"\\n annual energy out of array %dWh/Wp \\n daily energy output of array %.3fWh/Wp \\n peak wattage of pv array %.2fWp \\n rms output voltage %.2fV\\n number of modules in series %d \\n rated peak power output of each string %.2fW \\n number of strings in parallel %d\"%(epv,de,pw,rv,nm,rpp,np)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " energy needed o pump water every day 3.406250kWh/day \n",
+ " overall efficiency 0.34 \n",
+ " energy output of pv system 10kWh/day \n",
+ "\n",
+ " annual energy out of array 10Wh/Wp \n",
+ " daily energy output of array 5.000Wh/Wp \n",
+ " peak wattage of pv array 2000.00Wp \n",
+ " rms output voltage 222.14V\n",
+ " number of modules in series 13 \n",
+ " rated peak power output of each string 520.00W \n",
+ " number of strings in parallel 4\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 15.7 Page 373"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "ws=20 #wind speed\n",
+ "rd=10 #rotor diameter\n",
+ "ros=30 #rotor speed\n",
+ "ad=1.293 #air density\n",
+ "mc=0.593 #maximum value of power coefficient\n",
+ "p1=0.5*ad*(pi)*(rd**2)*(ws**3)/4 #power\n",
+ "p=p1/10**3\n",
+ "pd=p/((pi)*(rd/2)**2) #power density\n",
+ "pm=p*(mc) #maximum power\n",
+ "mt=(pm*10**3)/((pi)*rd*(ros/60))\n",
+ "print \" power %.fkW \\n power density %.3fkW/m**3 \\n maximum power %fkW \\n maximum torque %.1fN-m\"%(p,pd,pm,mt)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " power 406kW \n",
+ " power density 5.172kW/m**3 \n",
+ " maximum power 240.881303kW \n",
+ " maximum torque 15335.0N-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 15.8 Page 373"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "cp=0.593\n",
+ "d=1.293\n",
+ "s=15\n",
+ "a=2/3\n",
+ "dp=2*d*(s**2)*a*(1-a)\n",
+ "dlp=760*dp/(101.3*10**3) #760 mmhg=101.3*10**3pascal then pressure in mm of hg\n",
+ "dpa=dlp/760 #pressure in atmosphere\n",
+ "print \"pressure in pascal %.1fpascal \\npressure in height of mercury %.2fmm-hg \\npressure in atmosphere %.5fatm\"%(dp,dlp,dpa)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "pressure in pascal 129.3pascal \n",
+ "pressure in height of mercury 0.97mm-hg \n",
+ "pressure in atmosphere 0.00128atm\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 15.9 Page 385"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import floor\n",
+ "ng=50 #number of generator\n",
+ "r=30 #rated power \n",
+ "mah=10 #maximum head\n",
+ "mih=1 #minimum head\n",
+ "tg=12 #duration of generation\n",
+ "efg=0.9 #efficiency of generated\n",
+ "g=9.81 #gravity\n",
+ "le=5 #lenght of embankment\n",
+ "ro=1025 #density\n",
+ "ti=r/(0.9)**2\n",
+ "q=ti*10**(6)/(ro*g*mah) #maximum input\n",
+ "q=floor(q*10**2)/10**2\n",
+ "qw=q*ng #total quantity of water\n",
+ "tcr=qw*tg*3600/2 #total capacity of resevoir\n",
+ "sa=tcr/mah #surface area \n",
+ "wbe=sa/(le*10**6) #wash behind embankment\n",
+ "avg=r/2\n",
+ "te=avg*tg*365*ng #total energy output\n",
+ "print \"quantity of water for maximum output %fm**3-sec \"%(q)\n",
+ "print \"\\nsurface area of reservoir %fkm**3 \"%(sa/10**6)\n",
+ "print \"\\nwash behind embankment %fkm \\ntotal energy output %eMWh\"%(wbe,te) \n",
+ "\n",
+ "print \"area of reservoir %fkm**3 \"%(sa/10**6)\n",
+ "print \"\\nwash behind embankment %fkm \\ntotal energy output %eMWh\"%(wbe,te) "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "quantity of water for maximum output 368.330000m**3-sec \n",
+ "\n",
+ "surface area of reservoir 39.779640km**3 \n",
+ "\n",
+ "wash behind embankment 7.955928km \n",
+ "total energy output 3.285000e+06MWh\n",
+ "area of reservoir 39.779640km**3 \n",
+ "\n",
+ "wash behind embankment 7.955928km \n",
+ "total energy output 3.285000e+06MWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 15.10 Page 385"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "tc=2100 #total capacity of plant\n",
+ "n=60 #number of generaed\n",
+ "p=35 #power of generated by each generator\n",
+ "h=10 #head of water\n",
+ "d=12 #duration of generation\n",
+ "cee=2.1 #cost of electrical energy per kWh\n",
+ "efft=0.85 #efficiency of turbine\n",
+ "effg=0.9 #efficiency of generator\n",
+ "g=9.81 #gravity\n",
+ "ro=1025 #density\n",
+ "acc=0.7 #assuming coal conumotion\n",
+ "pi=p/(efft*effg) #power input\n",
+ "q=pi*10**6/(h*g*ro) #quantity of water\n",
+ "tqr=q*n*d*3600/2 #total quantity of water in reservoir\n",
+ "avp=tc/2 #average output during 12h\n",
+ "toe=avp*d #total energy in 12 hours\n",
+ "eg=toe*365 #energy generated for totel year\n",
+ "coe=eg*cee*10**3 #cost of electrical energy generated\n",
+ "sc=eg*10**3*acc #saving cost \n",
+ "print \"total quantity of water in reservoir %em**3 \\nenergy generated per year %eMW \\ncost of electrical energy Rs%e \\nsaving in cost Rs.%e \"%(tqr,eg,coe,sc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "total quantity of water in reservoir 5.896832e+08m**3 \n",
+ "energy generated per year 4.599000e+06MW \n",
+ "cost of electrical energy Rs9.657900e+09 \n",
+ "saving in cost Rs.3.219300e+09 \n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter17.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter17.ipynb
new file mode 100644
index 00000000..dccece3a
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter17.ipynb
@@ -0,0 +1,359 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:95ea4a7b39974854edf27cd54ce8388d8f0d40efb44e4e2ed2e5394147a23212"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-17, Generating Capacity Reliability Evaluation"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 17.1 Page 421"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import factorial\n",
+ "#given\n",
+ "n=2 #number of generating station\n",
+ "f=0.03 #F.O.R\n",
+ "a=1-f\n",
+ "p=40 #generation station power \n",
+ "g = range(0,3)\n",
+ "Pg = range(0,3) \n",
+ "def comb(m,r):\n",
+ " y = factorial(m)/(factorial(m-r)*factorial(r))\n",
+ " return y\n",
+ "print \"No. of Units out\\t\\tCapacity Out MW\\t\\tCapacity Available MW\\t\\tProbability\"\n",
+ "for i in g:\n",
+ " Pg[i] = comb(n,i)*f**i*a**(n-i)\n",
+ " \n",
+ " print i,'\\t\\t\\t\\t',p*i,'\\t\\t\\t\\t',p*(n-i),'\\t\\t\\t',Pg[i]\n",
+ " \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "No. of Units out\t\tCapacity Out MW\t\tCapacity Available MW\t\tProbability\n",
+ "0 \t\t\t\t0 \t\t\t\t80 \t\t\t0.9409\n",
+ "1 \t\t\t\t40 \t\t\t\t40 \t\t\t0.0582\n",
+ "2 \t\t\t\t80 \t\t\t\t0 \t\t\t0.0009\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 17.2 Page: 422"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#given\n",
+ "n1=2 #number of generating station\n",
+ "f1=0.03 #F.O.R\n",
+ "a1=1-f1\n",
+ "p1=40 #genetaion station power\n",
+ "n2=1 #number of genreting station \n",
+ "f2=0.03 #F.O.R for second set\n",
+ "a2=1-f2\n",
+ "p2=30 #generating station power in second set \n",
+ "def comb(m,r):\n",
+ " y=factorial(m)/(factorial(m-r)*factorial(r))\n",
+ " return y\n",
+ "pg2=range(0,n2+1)\n",
+ "co2=range(0,n2+1)\n",
+ "ca2=range(0,n2+1)\n",
+ "print \"Part(a):\"\n",
+ "for i in range(0,n2+1):\n",
+ " pg2[i]=comb(n2,i)*((f2)**i)*((a2)**(n2-i))\n",
+ " co2[i]=p2*i ;ca2[i]=p2*(n2-i)\n",
+ " print \"\\nnumber of units out %d ,capacity out %dMW ,capacity available %dMW ,probability %0.2f \"%(i,co2[i],ca2[i],pg2[i])\n",
+ "\n",
+ "pg1=range(0,n1)\n",
+ "co1=range(0,n1)\n",
+ "ca1=range(0,n1)\n",
+ "print \"Part(b):\"\n",
+ "print \"\\nfor exp 17 1 \"\n",
+ "for i in range(0,n1):\n",
+ " pg1[i]=comb(n1,i)*((f1)**i)*((a1)**(n1-i))\n",
+ " co1[i]=p1*i ;ca1[i]=p1*(n1-i)\n",
+ " print \"\\nnumber of units out %d ,capacity out %dMW ,capacity available %dMW ,probability %4f \"%(i,co1[i],ca1[i],pg1[i])\n",
+ "\n",
+ "print \"combination of 2 set of stations\"\n",
+ "tp=1\n",
+ "pocg=0\n",
+ "for i in range(0,n1):\n",
+ " \n",
+ " for j in range(0,n2):\n",
+ " og=co1[i]+co2[j] #now total system capacity out\n",
+ " cg=ca1[i]+ca2[j] #now total system capacity available\n",
+ " tp=tp-pocg\n",
+ " pocg=pg1[i]*pg2[j] #individual stste probability\n",
+ " print \"\\ncapacity out %dMW ,capacity available %dMW ,individual state probability %.6f ,cumulative probability %.6f\"%(og,cg,pocg,tp)\n",
+ " \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Part(a):\n",
+ "\n",
+ "number of units out 0 ,capacity out 0MW ,capacity available 30MW ,probability 0.97 \n",
+ "\n",
+ "number of units out 1 ,capacity out 30MW ,capacity available 0MW ,probability 0.03 \n",
+ "Part(b):\n",
+ "\n",
+ "for exp 17 1 \n",
+ "\n",
+ "number of units out 0 ,capacity out 0MW ,capacity available 80MW ,probability 0.940900 \n",
+ "\n",
+ "number of units out 1 ,capacity out 40MW ,capacity available 40MW ,probability 0.058200 \n",
+ "combination of 2 set of stations\n",
+ "\n",
+ "capacity out 0MW ,capacity available 110MW ,individual state probability 0.912673 ,cumulative probability 1.000000\n",
+ "\n",
+ "capacity out 40MW ,capacity available 70MW ,individual state probability 0.056454 ,cumulative probability 0.087327\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 17.3: Page 423"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#given\n",
+ "n=4 #number of generating station\n",
+ "f=0.05 #F.O.R\n",
+ "a=1-f\n",
+ "p=50 #generation station power \n",
+ "mp=150 #maximum alowable power\n",
+ "lf=50 #load factor in persentage\n",
+ "def comb(m,r):\n",
+ " y=factorial(m)/(factorial(m-r)*factorial(r))\n",
+ " return y\n",
+ "pg = range(0,n)\n",
+ "co = range(0,n)\n",
+ "ca = range(0,n)\n",
+ "for i in range(0,n):\n",
+ " pg[i]=comb(n,i)*((f)**i)*((a)**(n-i))\n",
+ " co[i]=p*i ;ca[i]=p*(n-i)\n",
+ " print \"\\nnumber of units out %d ,capacity out %dMW ,capacity available %dMW ,probability %4f \"%(i,co[i],ca[i],pg[i])\n",
+ "from numpy import arange\n",
+ "ld=arange(mp,0,-lf)\n",
+ "#[m n]=size(ld)\n",
+ "n =len(ld)\n",
+ "\n",
+ "%matplotlib inline\n",
+ "from matplotlib import pyplot as plt\n",
+ "plt.plot(ld)\n",
+ "plt.title('Load Duration Curve')\n",
+ "plt.xlabel('Time -->')\n",
+ "plt.ylabel('MW -->')\n",
+ "plt.show()\n",
+ "tg = range(0,n+1)\n",
+ "tg[n-2]=round(10000/(n-2))/100\n",
+ "tg[n-1]=tg[n-2]*2\n",
+ "tg[n]=100\n",
+ "tg[1]=0 ;tg[0]=0 #maximum load limit\n",
+ "el = range(0,n)\n",
+ "for i in range(0,n):\n",
+ " el[i]=pg[i]*tg[i]\n",
+ " print \"\\nnumber of units out %d ,capacity out %dMW ,capacity available %dMW ,probability %4f ,tg in persentage %.2f ,expected load %.6fMW\"%(i,co[i],ca[i],pg[i],tg[i],el[i])\n",
+ "\n",
+ "lt=sum(el)\n",
+ "print \"\\n\\nexpected loss of load is %.6fMW percent of time. assuming 365 days in a year, then expected loss of load is %.3fMW days per year\"%(lt,lt*365/100)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "number of units out 0 ,capacity out 0MW ,capacity available 200MW ,probability 0.814506 \n",
+ "\n",
+ "number of units out 1 ,capacity out 50MW ,capacity available 150MW ,probability 0.171475 \n",
+ "\n",
+ "number of units out 2 ,capacity out 100MW ,capacity available 100MW ,probability 0.013538 \n",
+ "\n",
+ "number of units out 3 ,capacity out 150MW ,capacity available 50MW ,probability 0.000475 \n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\nmVlN/wkVxRcaayYErQAAAABJRU5ErkJggg==\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f056d41bb90>"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "number of units out 0 ,capacity out 0MW ,capacity available 200MW ,probability 0.814506 ,tg in persentage 0.00 ,expected load 0.000000MW\n",
+ "\n",
+ "number of units out 1 ,capacity out 50MW ,capacity available 150MW ,probability 0.171475 ,tg in persentage 0.00 ,expected load 0.000000MW\n",
+ "\n",
+ "number of units out 2 ,capacity out 100MW ,capacity available 100MW ,probability 0.013538 ,tg in persentage 200.00 ,expected load 2.707500MW\n",
+ "\n",
+ "\n",
+ "expected loss of load is 2.707500MW percent of time. assuming 365 days in a year, then expected loss of load is 9.882MW days per year\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 17.4 Page 425"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#given\n",
+ "n=4 #number of generating station\n",
+ "f=0.02 #F.O.R\n",
+ "a=1-f\n",
+ "p=50 #generation station power \n",
+ "mp=150 #maximum alowable power\n",
+ "minp=30 #minimum power \n",
+ "lf=60 #load factor in persentage\n",
+ "def comb(m,r):\n",
+ " y=factorial(m)/(factorial(m-r)*factorial(r))\n",
+ " return y\n",
+ "\n",
+ "pg = range(0,n)\n",
+ "co = range(0,n)\n",
+ "ca = range(0,n)\n",
+ "for i in range(0,n):\n",
+ " pg[i]=comb(n,i)*((f)**i)*((a)**(n-i))\n",
+ " co[i]=p*i ;ca[i]=p*(n-i)\n",
+ " print \"\\nnumber of units out %d ,capacity out %dMW ,capacity available %dMW ,probability %.7f \"%(i,co[i],ca[i],pg[i])\n",
+ "\n",
+ "from numpy import arange\n",
+ "ld=arange(mp,minp,-lf)\n",
+ "#[m n1]=size(ld)\n",
+ "n1=len(ld)\n",
+ "#[mm m]=max(co)\n",
+ "m=max(co)\n",
+ "\n",
+ "%matplotlib inline\n",
+ "from matplotlib import pyplot as plt\n",
+ "plt.plot(ld)\n",
+ "plt.title('Load Duration Curve')\n",
+ "plt.xlabel('Time -->')\n",
+ "plt.ylabel('MW -->')\n",
+ "plt.show()\n",
+ "\n",
+ "tg = range(0,n)\n",
+ "tg[0]=0\n",
+ "for i in range(1,n):\n",
+ " \n",
+ " tg[i]=(mp-ca[i])*100/(2*lf) #percentage time \n",
+ "\n",
+ "print \"\"\n",
+ "el = range(0,n)\n",
+ "for i in range(0,n):\n",
+ " el[i]=pg[i]*tg[i]\n",
+ " print \"\\nnumber of units out %d ,capacity out %dMW ,capacity available %dMW ,probability %4f ,tg in persentage %.2f ,expected load %.6fMW\"%(i-1,co[i],ca[i],pg[i],tg[i],el[i])\n",
+ "\n",
+ "lt=sum(el)\n",
+ "print \"\\n\\nexpected loss of load is %.6fMW percent of time. assuming 365 days in a year, then expected loss of load is %.3fMW days per year ,some times the loss of load is also expressed as reciprocal of this figure and then the units are years per day this result is %.4fMW years per day.\"%(lt,lt*365/100,100/(lt*365))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "number of units out 0 ,capacity out 0MW ,capacity available 200MW ,probability 0.9223682 \n",
+ "\n",
+ "number of units out 1 ,capacity out 50MW ,capacity available 150MW ,probability 0.0752954 \n",
+ "\n",
+ "number of units out 2 ,capacity out 100MW ,capacity available 100MW ,probability 0.0023050 \n",
+ "\n",
+ "number of units out 3 ,capacity out 150MW ,capacity available 50MW ,probability 0.0000314 \n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f0576ba1810>"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ "number of units out -1 ,capacity out 0MW ,capacity available 200MW ,probability 0.922368 ,tg in persentage 0.00 ,expected load 0.000000MW\n",
+ "\n",
+ "number of units out 0 ,capacity out 50MW ,capacity available 150MW ,probability 0.075295 ,tg in persentage 0.00 ,expected load 0.000000MW\n",
+ "\n",
+ "number of units out 1 ,capacity out 100MW ,capacity available 100MW ,probability 0.002305 ,tg in persentage 41.00 ,expected load 0.094503MW\n",
+ "\n",
+ "number of units out 2 ,capacity out 150MW ,capacity available 50MW ,probability 0.000031 ,tg in persentage 83.00 ,expected load 0.002603MW\n",
+ "\n",
+ "\n",
+ "expected loss of load is 0.097106MW percent of time. assuming 365 days in a year, then expected loss of load is 0.354MW days per year ,some times the loss of load is also expressed as reciprocal of this figure and then the units are years per day this result is 2.8214MW years per day.\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter2.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter2.ipynb
new file mode 100644
index 00000000..7d5827eb
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter2.ipynb
@@ -0,0 +1,935 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:44ae6f2363996556e5b7037bd7c1155f8bdd64b6afae6e0bd73f2af88b36b33a"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-2, Loads & Load Curves"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.1, page - 17"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "print \"solution for (a)\"\n",
+ "nb=8; nf=2; nl=2 #given number of equipments is 8 bulbs 2 fans 2plugs\n",
+ "lb=100 ;lf=60 ;ll=100 #corresponding wattages\n",
+ "cl=nb*lb+nf*lf+nl*ll #total connected load\n",
+ "print \"connected load = %dW\\n\"%(cl) \n",
+ "print \"solution for (b)\"\n",
+ "t1=5 ;t2=2 ;t3=2; t4=9; t5=6; # time periods in hours\n",
+ "# let = [bulb, fan, light]\n",
+ "w1=1*lf #12 to 5am period of duration 5h\n",
+ "w2=2*lf+1*ll #5am to 7am period of duration 2h\n",
+ "w3=0 #7am to 9am period of duration 2h\n",
+ "w4=2*lf #9am to 6pm period of duration 9h\n",
+ "w5=4*lb+2*lf #6pm to 12pm period of duration 6h\n",
+ "w=[w1 ,w2 ,w3, w4, w5]\n",
+ "print \"\\nthe maximum demand is %d W\\n\"%(max(w))\n",
+ "m=max(w)\n",
+ "print \"solution for (c)\"\n",
+ "df=m/cl\n",
+ "print \"\\ndemand factor =%0.3f\\n\"%(df)\n",
+ "print \"solution for (d)\"\n",
+ "#energy consumed is power multiply by corresponding time\n",
+ "energy=[w1*t1 ,w2*t2 ,w3*t3 ,w4*t4, w5*t5]\n",
+ "e=sum(energy)\n",
+ "print \"\\ntotal energy consumed during 24 hours = %d Wh = %0.2f kWh\\n\"%(e,e/1e3)\n",
+ "print \"solution for (e)\" \n",
+ "ec=cl*24 \n",
+ "print \"\\nif all devices are used throughout the day the energy consumed = %d Wh = %.2fkWh\"%(ec,ec/1000) \n",
+ "#for 24 hours of max. load\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "solution for (a)\n",
+ "connected load = 1120W\n",
+ "\n",
+ "solution for (b)\n",
+ "\n",
+ "the maximum demand is 520 W\n",
+ "\n",
+ "solution for (c)\n",
+ "\n",
+ "demand factor =0.464\n",
+ "\n",
+ "solution for (d)\n",
+ "\n",
+ "total energy consumed during 24 hours = 4940 Wh = 4.94 kWh\n",
+ "\n",
+ "solution for (e)\n",
+ "\n",
+ "if all devices are used throughout the day the energy consumed = 26880 Wh = 26.88kWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.2, page - 19"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "print \"(a)\" \n",
+ "mca=1.1 ;cla=2.5; mcb=1; clb=3; #mca=maximum demand of consumera cla=connected load of a mcb=maximum load of consumer b clb=connected load of consumer b\n",
+ "print \"maximum demand of consumer A = %0.1fkW \\n \\ndemand factor of consumer A = %0.2f \\n \\nmaximum demand of consumer B = %dkW\\n \\ndemand factor of consumer B = %0.3f\"%(mca,mca/cla,mcb,mcb/clb)\n",
+ "print \"(b)\"\n",
+ "print \"The variation in demand versus time curves are plotted and shown in Fig This is known as chronological load curve.\"\n",
+ "a=([100]*5,[1100]*1,[200]*2,[0]*9,[500]*7)\n",
+ "i=0\n",
+ "A=range(1,25)\n",
+ "for x in a:\n",
+ "\n",
+ " for y in x:\n",
+ " \n",
+ " A[i]=y\n",
+ " i+=1\n",
+ "\n",
+ " \n",
+ "b=([0]*(7),[300]*(1),[1000]*(2),[200]*(8),[600]*(5),[0]*(1)) #time line of different periods by a and b consumers\n",
+ "i=0\n",
+ "B=range(1,25)\n",
+ "for x in b:\n",
+ "\n",
+ " for y in x:\n",
+ " \n",
+ " B[i]=y\n",
+ " i+=1\n",
+ "from numpy import arange, nditer\n",
+ "t=arange(1,25,1) #for 24 hours ploting\n",
+ "ma=max(A) ;mb=max(B) \n",
+ "%matplotlib inline\n",
+ "from matplotlib.pyplot import plot, subplot, title, title, show, hist\n",
+ "\n",
+ "subplot(211) #matrix plotting\n",
+ "plot(t,A) \n",
+ "plot(t,B) \n",
+ "title(\"load curves of A and B: fig(1) \\n\")\n",
+ "show()\n",
+ "C=range(1,25)\n",
+ "i=0\n",
+ "for x,y in nditer([A,B]):\n",
+ " C[i]=x+y \n",
+ " i+=1 \n",
+ "subplot(222) \n",
+ "plot(t,C) \n",
+ "title(\"chronological load of group : fig(2) \\n\")\n",
+ "show()\n",
+ "mg=max(C) #maximum demand of group\n",
+ "print \"(c)\"\n",
+ "print \"maximum demand of the group is %dW\"%(mg) \n",
+ "gd=(ma+mb)/mg \n",
+ "print \"group diversity factor = %.3f\"%(gd) #group diversity factor is sum of individual maximum consumaer load to the group max load \n",
+ "print \"(d)\"\n",
+ "sa=sum(A)\n",
+ "print \"energy consumed by A during 24 hours is = %d Wh = %0.2f kWh\"%(sa,sa/1e3)\n",
+ "sb=sum(B) \n",
+ "print \"(e)\" \n",
+ "print \"maximum energy which A could consume in 24hours = %.2fkWh \\nmaximum energy which B consume in 24 hours is =%.2fkWh\"%(mca*24,mcb*24 ) \n",
+ "print \"(f)\" \n",
+ "print \"actual energy/maximum energy\" \n",
+ "mca=mca*10**3; mcb=mcb*10**3\n",
+ "aemea=sa/(mca*24)\n",
+ "aemeb=sb/(mcb*24)\n",
+ "print \"\\nfor A = %0.4f \\nfor b = %.4f\"%(sa/(mca*24),aemeb) \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "maximum demand of consumer A = 1.1kW \n",
+ " \n",
+ "demand factor of consumer A = 0.44 \n",
+ " \n",
+ "maximum demand of consumer B = 1kW\n",
+ " \n",
+ "demand factor of consumer B = 0.333\n",
+ "(b)\n",
+ "The variation in demand versus time curves are plotted and shown in Fig This is known as chronological load curve.\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f31dcdedc90>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\njTYAAAAASUVORK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f31dcadf050>"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(c)\n",
+ "maximum demand of the group is 1100W\n",
+ "group diversity factor = 1.909\n",
+ "(d)\n",
+ "energy consumed by A during 24 hours is = 5500 Wh = 5.50 kWh\n",
+ "(e)\n",
+ "maximum energy which A could consume in 24hours = 26.40kWh \n",
+ "maximum energy which B consume in 24 hours is =24.00kWh\n",
+ "(f)\n",
+ "actual energy/maximum energy\n",
+ "\n",
+ "for A = 0.2083 \n",
+ "for b = 0.2875\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.3 : page - 22"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "cola=5 ;na=600; ns=20 \n",
+ "cls=2 ;clfm=10 ;clsm=5; cll=20; i=80 \n",
+ "dffl=0.7; dfsm=0.8; dfl=0.65; dfci=0.5 \n",
+ "nsl=200 ;clsl=0.04 ;dfa=0.5; gdfa=3.0 \n",
+ "pdfa=1.25; gdfc=2 ;pdfc=1.6; dfs=0.8 #given col||cl=connected load,n=number,df=demand factor,gdf=group diversity factor,pdf=peak diversity factor,a=appartement,c=commertials,s=shop,sl=streetlight,fm=flourmill,sm=saw mill,l=laundry,ci=cinema complex.\n",
+ "mdea=cola*dfa\n",
+ "print \"maximum demand of each appartment =%.2fkWh \\n\"%(mdea)\n",
+ "mda=(na*mdea)/gdfa\n",
+ "print \"maximum demand of 600 apatments =%.2fkW \\n\"%(mda) \n",
+ "datsp=mda/pdfa\n",
+ "print \"demand of 600 apartments at time of the system peak =%dkW \\n\"%(datsp) \n",
+ "mdtcc=((cls*ns*dfs)+(clfm*dffl)+(clsm*dfsm)+(cll*dfl)+(i*dfci))/gdfc\n",
+ "print \"maximum demand of total commertial complex=%dkW \\n\"%(mdtcc)\n",
+ "dcsp=mdtcc/pdfc\n",
+ "print \"demand of the commertial load at the time of the peak = %dkW\\n\"%(dcsp) \n",
+ "dsltsp=nsl*clsl\n",
+ "print \"demand of the street lighting at the time of the system peak =%dkW\"%(dsltsp) \n",
+ "ispd=datsp+dcsp+dsltsp\n",
+ "print \"\\nincrease in system peak deamand =%dkW \"%(ispd)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "maximum demand of each appartment =2.50kWh \n",
+ "\n",
+ "maximum demand of 600 apatments =500.00kW \n",
+ "\n",
+ "demand of 600 apartments at time of the system peak =400kW \n",
+ "\n",
+ "maximum demand of total commertial complex=48kW \n",
+ "\n",
+ "demand of the commertial load at the time of the peak = 30kW\n",
+ "\n",
+ "demand of the street lighting at the time of the system peak =8kW\n",
+ "\n",
+ "increase in system peak deamand =438kW \n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.4 : page -28"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "print \"the chronological load curve is plotted in fig 1 the durition of loads is as under :\"\n",
+ "LC=([20]*(5),[40]*4,[80]*9,[100]*4,[20]*2)\n",
+ "\n",
+ "i=0\n",
+ "lc=range(1,25)\n",
+ "for x in LC:\n",
+ " for y in x:\n",
+ " lc[i] = y\n",
+ " i+=1\n",
+ "lc.sort()\n",
+ "\n",
+ "nn=len(lc)\n",
+ "\n",
+ "e=sum(lc)\n",
+ "print lc\n",
+ "print \"\\nthe load duration curve is ploted in 2 the energy produced by plant in 24 hours = %d MWh \\n\"%(e) \n",
+ "lff=e/(24*max(lc)) \n",
+ "print \"load factor = %0.4f= %.2f %%\"%(lff,lff*100)\n",
+ "t=range(1,25)\n",
+ "subplot(211) \n",
+ "plot(t,lc) \n",
+ "show()\n",
+ "title(\"chronological curve\")\n",
+ "subplot(212) \n",
+ "plot(t,lc) \n",
+ "title(\"load duration curve\")\n",
+ "show()"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the chronological load curve is plotted in fig 1 the durition of loads is as under :\n",
+ "[20, 20, 20, 20, 20, 20, 20, 40, 40, 40, 40, 80, 80, 80, 80, 80, 80, 80, 80, 80, 100, 100, 100, 100]\n",
+ "\n",
+ "the load duration curve is ploted in 2 the energy produced by plant in 24 hours = 1420 MWh \n",
+ "\n",
+ "load factor = 0.5917= 59.17 %\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\nNNIAAAAASUVORK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f31f86db090>"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f31dc8e5090>"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.5 : page - 29"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "lf=0.5917; ml=100; ic=125 #lf=load factor,ic=installed capacity,ml=maximum load,cf=capacity factor,uf=utillization factor\n",
+ "cf=(ml*lf)/ic; uf=ml/ic\n",
+ "print \"capacity factor =%0.3f\"%(cf)\n",
+ "print \"\\nutilisation factor =%.2f\"%(uf)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "capacity factor =0.473\n",
+ "\n",
+ "utilisation factor =0.80\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.6 : page - 29"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "t=[24, 24-7, 24-11, 4] # Periods for running load 20,40,80,100\n",
+ "l = [20,40,80,100] # different loads\n",
+ "E= range(0,len(l))\n",
+ "E[0] = t[0]*l[0] # MWh\n",
+ "i=1\n",
+ "for x in E[1:]:\n",
+ " E[i] = E[i-1]+(l[i]-l[i-1])*t[i]\n",
+ " i+=1\n",
+ "\n",
+ "print \"Energy at different load levels:\\nLoad(MW)\\t\\tEnergy(MWh)\\n\"\n",
+ "from numpy import nditer\n",
+ "for x, y in nditer([l, E]):\n",
+ " print ' ',x,'\\t\\t\\t ',y\n",
+ "\n",
+ "%matplotlib inline\n",
+ "from matplotlib.pyplot import plot, subplot, title, xlabel, ylabel, show\n",
+ "subplot(211)\n",
+ "plot(E,l,'bo')\n",
+ "plot(E,l)\n",
+ "title('Energy Load Curve')\n",
+ "xlabel('Energy MW Hrs')\n",
+ "ylabel('Load MW')\n",
+ "show()\n",
+ "######### Mass Curve #######\n",
+ "\n",
+ "\n",
+ "t = [5,4,9,4,2]\n",
+ "l = [20,40,80,100,20] # loads on different time of day\n",
+ "Es= range(0,len(l))\n",
+ "Es[0] = t[0]*l[0] # MWh\n",
+ "i=1\n",
+ "for x in Es[1:]:\n",
+ " Es[i] = Es[i-1]+(l[i])*t[i]\n",
+ " i+=1\n",
+ "\n",
+ "\n",
+ "print \"Energy supplied uto different times of day:\\nTime\\t\\tEnergy(MWh)\\n\"\n",
+ "times = ['5am', '9am', '6pm','10pm','12pm']\n",
+ "for x, y in nditer([times, Es]):\n",
+ " print x,'\\t\\t\\t ',y\n",
+ "\n",
+ " \n",
+ "td= range(0,len(t))\n",
+ "td[0] = t[0] # MWh\n",
+ "i=1\n",
+ "for x in td[1:]:\n",
+ " td[i] = td[i-1]+t[i]\n",
+ " i+=1\n",
+ " \n",
+ "subplot(212)\n",
+ "plot(td,Es,'bo')\n",
+ "plot(td,Es)\n",
+ "title('Mass Curve')\n",
+ "xlabel('Time')\n",
+ "ylabel('Load MW')\n",
+ "show()"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Energy at different load levels:\n",
+ "Load(MW)\t\tEnergy(MWh)\n",
+ "\n",
+ " 20 \t\t\t 480\n",
+ " 40 \t\t\t 820\n",
+ " 80 \t\t\t 1340\n",
+ " 100 \t\t\t 1420\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f31f86a5790>"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Energy supplied uto different times of day:\n",
+ "Time\t\tEnergy(MWh)\n",
+ "\n",
+ "5am \t\t\t 100\n",
+ "9am \t\t\t 260\n",
+ "6pm \t\t\t 980\n",
+ "10pm \t\t\t 1380\n",
+ "12pm \t\t\t 1420\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f31dc9118d0>"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.7 : page 30"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "md=40 ;cf=0.5; uf=0.8 #maximum demand in MW capacity factor utility factor\n",
+ "print \"(a)\"\n",
+ "lf=cf/uf #load factor is ratio of capacity factor to the utility factor\n",
+ "print \"load factor = capacity factor/utilisation factor =%0.3f\"%(lf)\n",
+ "print \"(b)\"\n",
+ "pc=md/uf #plant capacity is ratio of maximum demand to utility factor\n",
+ "print \"plant capacity = maximum demand/utilisation factor =%dMW\"%(pc)\n",
+ "print \"(c)\"\n",
+ "rc=pc-md #reserve capacity is plant capacity minus maximum demand \n",
+ "print \"reserve capacity =%dMW\"%(rc)\n",
+ "print \"(d)\"\n",
+ "print \"annual energy production =%dMWh\"%(md*lf*8760)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "load factor = capacity factor/utilisation factor =0.625\n",
+ "(b)\n",
+ "plant capacity = maximum demand/utilisation factor =50MW\n",
+ "(c)\n",
+ "reserve capacity =10MW\n",
+ "(d)\n",
+ "annual energy production =219000MWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.8 : pge 30"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "a=[0, 5, 9 ,18, 20, 22, 24] #time in matrix format\n",
+ "b=[50 ,50 ,100 ,100 ,150 ,80 ,50]#load in matrix format\n",
+ "z= range (1,7)\n",
+ "for x in range (1,6):\n",
+ " \n",
+ " z[x]=((b[x]+b[x+1])/2)*(a[(x+1)])-a[x]\n",
+ "\n",
+ "e = b[0]*a[1]+(b[2]+b[1])*(a[2]-a[1])/2+(b[3]*a[2])+(b[3]+b[4])+(b[4]+b[5])+(b[5]+b[6]) # MWh\n",
+ "\n",
+ "print \"energy required required by the system in 24 hrs = %d MWh\"%(e)\n",
+ "#50x5MWh+((100+50)/2)x4MWh +(100x9)MWh+(100+150)MWh+(150+80)MWh+(80+50)MWh \\n =\n",
+ "dlf=e/(max(b)*24)\n",
+ "print \"\\ndaily load factor = %f or %0.2f %%\"%(dlf,dlf*100)\n",
+ "\n",
+ "#########PLOT##############\n",
+ "%matplotlib inline\n",
+ "from matplotlib.pyplot import plot, subplot, title, xlabel, ylabel, show\n",
+ "plot(a,b)\n",
+ "title('Load Curve')\n",
+ "xlabel(\"TIME -->\")\n",
+ "ylabel(\"MW -->\")\n",
+ "show()\n",
+ "#xtitle(\"load curve\"%(\"time\"%(\"MW\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "energy required required by the system in 24 hrs = 2060 MWh\n",
+ "\n",
+ "daily load factor = 0.572222 or 57.22 %\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f31fa1d4f50>"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.9: page 31"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "print \"load duration curve in fig1\"\n",
+ "print \"the energy consumed upto different times is as \"\n",
+ "a=[0, 5 ,9 ,18, 20, 22, 24] #time in matrix format\n",
+ "b=[50, 50 ,100 ,100 ,150 ,80 ,50] #load in matrix format\n",
+ "\n",
+ "z = range(0,6)\n",
+ "for x in range (0,6):\n",
+ " z[x]=((b[x]+b[x+1])/2)*(a[x+1]-a[x])\n",
+ "\n",
+ "et=0\n",
+ "q = range(0,7)\n",
+ "m = range(0,7)\n",
+ "ett = range(0,6)\n",
+ "for x in range(0,6):\n",
+ " et=et+z[x] \n",
+ " A=a[(x)]\n",
+ " ett[x]=et \n",
+ " q[x]=a[x+1]\n",
+ " print \"\\nfrom mid night upto %d,energy=%dMWh\"%(A,et)\n",
+ "n = sorted(range(len(b)), key=lambda k: b[k], reverse=True)\n",
+ "m = sorted(b, reverse=True)\n",
+ "print \"energy curve in fig 2\"\n",
+ "t=[0, 3.88, 15.88 ,19.88, 23]\n",
+ "k = range(0,6)\n",
+ "for j in range(0,6):\n",
+ " k[j]=a[(j+1)]\n",
+ "M =range(0,5)\n",
+ "#rearranging for mass curve\n",
+ "for i in range(0,5):\n",
+ " M[i] = m[i]\n",
+ "Q = range(0,6)\n",
+ "for i in range(0,6):\n",
+ " Q[i] = q[i]\n",
+ " \n",
+ " \n",
+ "subplot(121) \n",
+ "plot(t,M) \n",
+ "title(\"load duration\")\n",
+ "xlabel(\"hours\")\n",
+ "ylabel(\"MW\")\n",
+ "subplot(122) \n",
+ "plot(Q,ett) \n",
+ "title(\"energy curve\")\n",
+ "xlabel(\"time\")\n",
+ "ylabel(\"MWh\")\n",
+ "show()"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "load duration curve in fig1\n",
+ "the energy consumed upto different times is as \n",
+ "\n",
+ "from mid night upto 0,energy=250MWh\n",
+ "\n",
+ "from mid night upto 5,energy=550MWh\n",
+ "\n",
+ "from mid night upto 9,energy=1450MWh\n",
+ "\n",
+ "from mid night upto 18,energy=1700MWh\n",
+ "\n",
+ "from mid night upto 20,energy=1930MWh\n",
+ "\n",
+ "from mid night upto 22,energy=2060MWh\n",
+ "energy curve in fig 2\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\nRU5ErkJggg==\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f31dc93f790>"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.10 : page 31"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "egd1=438*10**4 ;plp=0.2; pcf=0.15 #annual load duration annual load factor plant capacity factor\n",
+ "pml=egd1/(plp*8760)\n",
+ "pc=(pml*plp)/pcf\n",
+ "print \"annual load factor =energy generated during 1 year/(max. load)x8760=%.1f \\n maximum load =%dkW\"%(plp,pml)\n",
+ "print \"\\ncapacity factor =(max.load/plant capacity)x(load factor)\\n plant capacity =max.load/0.75 =%fMW \\n reserve capacity =3.333-2.5=%fMW\"%(pc,pc-pml)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "annual load factor =energy generated during 1 year/(max. load)x8760=0.2 \n",
+ " maximum load =2500kW\n",
+ "\n",
+ "capacity factor =(max.load/plant capacity)x(load factor)\n",
+ " plant capacity =max.load/0.75 =3333.333333MW \n",
+ " reserve capacity =3.333-2.5=833.333333MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.11: page 32"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "p1=10; p2=6; p3=8; p4=7 #peak demands of 4 areas\n",
+ "df=1.5 ;lf=0.65 ;imdp=0.6 #diversity factor annual load factor ratio of maximum demand\n",
+ "p=p1+p2+p3+p4\n",
+ "md=p/df\n",
+ "ae=md*lf*8760\n",
+ "imd=imdp*md\n",
+ "ic=md+imd\n",
+ "print \" sum of maximum=%dMW\"%(p)\n",
+ "print \"\\n maximum demand = sum of max.demands/diversity factor =%d/%f = %fMW\"%(p,df,md)\n",
+ "print \"\\n annual energy =%fMWh \\n increase in maximum demand =%fMW \\n installed capacity =%fMW\"%(ae,imd,ic)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " sum of maximum=31MW\n",
+ "\n",
+ " maximum demand = sum of max.demands/diversity factor =31/1.500000 = 20.666667MW\n",
+ "\n",
+ " annual energy =117676.000000MWh \n",
+ " increase in maximum demand =12.400000MW \n",
+ " installed capacity =33.066667MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.12 : page 32"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "#Arranging data for Load Duration Curve\n",
+ "#week days 5-9pm load\n",
+ "L1=350 #MW\n",
+ "t1=4*5 #hours\n",
+ "#week days 8-12am & 1-5pm load\n",
+ "L2=250 #MW\n",
+ "t2=t1+8*5 #hours\n",
+ "#saturday & sunday 5-9pm load\n",
+ "L3=200 #MW\n",
+ "t3=t2+4*2 #hours\n",
+ "#All days 150MW load\n",
+ "L4=150 #MW\n",
+ "t4=t3+6*5+15*2 #hours\n",
+ "#All days 100MW load\n",
+ "L5=100 #MW\n",
+ "t5=t4+6*5+5*2 #hours\n",
+ "A=31600 #Total Load Curve Area\n",
+ "LF=A/L1/24/7*100 #%#Weekly load factor\n",
+ "print \"Weekly Load factor = %0.2f %%\"%LF\n",
+ "print \"Load Duration Curve is shown in figure.\" \n",
+ "#Load Duration Curve\n",
+ "L=[L1 ,L2, L3, L4, L5] #MW\n",
+ "T=[t1 ,t2 ,t3 ,t4 ,t5] #hours\n",
+ "%matplotlib inline\n",
+ "from matplotlib.pyplot import plot, title, xlabel, ylabel, show\n",
+ "plot(T,L) \n",
+ "title('Load Duration Curve')\n",
+ "xlabel('Time(Hours)')\n",
+ "ylabel('Load(MW)') \n",
+ "show()"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Weekly Load factor = 53.74 %\n",
+ "Load Duration Curve is shown in figure.\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n1bUwM2sGuXZmZ81Ge0naGrhB0sGdtoekWu1IXW6bOnXqW8ttbW20tbX1Pdh+UKllceSRqZbFpZem\nBGJmVm/t7e20t7f3y7HqVuFO0teB14DPAW0R8ZSk4aQrjd0knQ0QERdk+18PTImIOzsdp3R9FJ29\n8kq6bXbcuNQkpV61CpqZ9Z9S9lFI2q5yR5OkzYFDgYXAPODUbLdTgbnZ8jzgREmDJI0GdgXuyiu+\nPLmWhZk1kzybnoYD0yQNICWk6RFxs6SFwBWSJgKPAscDRMRSSVcAS4F1wOmlv3SowbUszKxZ1K3p\nqb80QtNTteXLU7I47zzXsjCz4vSl6ckjs3PmWhZm1uicKOrAtSzMrJH55s06cS0LM2tUThR15FoW\nZtaInCjqzLUszKzRuI+iAK5lYWaNxImiIK5lYWaNwomiQJMnpxoWhx+eRnEPHbrh15iZ1ZsH3BXM\ntSzMrB76MuDOiaIEOjpg4kRYuRLmzYPBg4uOyMyajRNFE1i3Dk44Ic00e/nlacpyM7P+UsrZY23j\nVGpZrF6dall0dGz4NWZm9eBEUSKDB8OcOfDAA3Dmman/wsysaE4UJeNaFmZWNm4JLyHXsjCzMnGi\nKKlhw2D+/PXJwrUszKwoThQl5loWZlYGThQl51oWZlY0d2Y3ANeyMLMiOVE0CNeyMLOiOFE0ENey\nMLMiuI+iwbiWhZnVmxNFA3ItCzOrJyeKBuVaFmZWL549toG5loWZ9ZSnGW9hrmVhZj3hRNHiXMvC\nzDbE9ShanGtZmFmenCiahGtZmFlenCiaiGtZmFke3JrdZFzLwsz6mxNFE3ItCzPrT04UTcq1LMys\nvzhRNDHXsjCz/uDO7CbnWhZm1le5JQpJIyUtkHSfpHslTcrWT5W0QtLC7PGJqtecI+khSfdL8vff\nfuJaFmbWF7mNzJa0PbB9RCySNAT4PfAp4HhgTURc1Gn/scBMYD9gB2A+MCYiOjrt55HZvXTllTBp\nErS3w5gxRUdjZvXUl5HZufVRRMRTwFPZ8suS/khKAABdBXs0MCsi1gKPSloGjAPuyCvGVuNaFmbW\nG3Xpo5C0M7A36z/0vyBpsaTLJFUmyB4BrKh62QrWJxbrJxMmpCnKDz0Unn666GjMrBH0KFFI2l3S\nJyQdLmm3jTlB1ux0JfDFiHgZ+E9gNLAX8CRwYY2Xu40pB5Mnw0knpVoWa9cWHY2ZlV23TU+SRgNn\n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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f31f86a5950>"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.13 : page 33"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "dlf=0.825 #daily load factor\n",
+ "lptmlp=0.87 #average daily peak load to monthly load peak\n",
+ "mlptalp=0.78 #average monthly peak load to annual load peak\n",
+ "print \"annual load factor = %fx%fx%f = %0.2f\"%(dlf,lptmlp,mlptalp,dlf*lptmlp*mlptalp)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "annual load factor = 0.825000x0.870000x0.780000 = 0.56\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example - 2.14 : page 35"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "print \"(a)\"\n",
+ "#given\n",
+ "transformer1_motorload=300 \n",
+ "transformer1_demandfactorm=0.6 \n",
+ "tarnsformer1_commercialload=100 \n",
+ "transformer1_demandfactorc=0.5 \n",
+ "transformer1_diversityfactor=2.3\n",
+ "transformer2_residentalload=500 \n",
+ "transformer2_demandfactor=0.4 \n",
+ "transformer2_diversitryfactor=2.5 \n",
+ "transformer3_residentalload=400 \n",
+ "transformer3_demandfactor=0.5 \n",
+ "transformer3_diversityfactor=2.0 \n",
+ "diversitybtwxmer=1.4\n",
+ "peakloadoftransformer1=((transformer1_motorload*transformer1_demandfactorm)+(tarnsformer1_commercialload*transformer1_demandfactorc))/transformer1_diversityfactor\n",
+ "peakloadonxmer=(transformer2_residentalload*transformer2_demandfactor)/transformer2_diversitryfactor\n",
+ "peakloadonxmer3=(transformer3_residentalload*transformer3_demandfactor)/(transformer3_diversityfactor)\n",
+ "print \"peak load on transformer 1 =(300x0.6+100x0.5)/2.3 =%dkW \\npeak load on transformer 2 =%dkW \\n peak load on transformer 3 =%dkW\"%(peakloadoftransformer1,peakloadonxmer,peakloadonxmer3)\n",
+ "print \"(b)\"\n",
+ "peakloadonfeeder=(peakloadoftransformer1+peakloadonxmer+peakloadonxmer3)/diversitybtwxmer\n",
+ "print \"peak load on feeder =(100+80+100)/1.4 =%dkW\"%(peakloadonfeeder)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "peak load on transformer 1 =(300x0.6+100x0.5)/2.3 =100kW \n",
+ "peak load on transformer 2 =80kW \n",
+ " peak load on transformer 3 =100kW\n",
+ "(b)\n",
+ "peak load on feeder =(100+80+100)/1.4 =200kW\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter20.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter20.ipynb
new file mode 100644
index 00000000..c676065f
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter20.ipynb
@@ -0,0 +1,158 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:cd162bdb1fe196cb47bf3eb77e7ebc05430fce626f0c2cb37a8e99707eb3d120"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-20, Energy Audit"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example:20.1 Page:461"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import asin, cos, acos, tan\n",
+ "lod=1 #industrial installation load\n",
+ "pf=0.78 #power factor\n",
+ "tf=200 #tariff \n",
+ "md=3.5 #extra maximum demand\n",
+ "ic=500 #installation of capacitor\n",
+ "id=0.15 #interest and depreciation\n",
+ "lf=0.8 #load factor\n",
+ "sinp=ic*id/tf\n",
+ "ph2=asin(sinp)\n",
+ "epf2=cos(ph2)\n",
+ "ph1=acos(pf)\n",
+ "ph1=round(ph1*10**2)/10**2\n",
+ "ph2=round(ph2*10**2)/10**2\n",
+ "q=lod*(tan(ph1)-tan(ph2))\n",
+ "q=round(q*10**4)/10**4\n",
+ "ikva=lod/pf\n",
+ "ikv=round(ikva*(10**5))/10**2\n",
+ "aeu=lod*lf*8760*10**6\n",
+ "eb=ikv*tf+aeu*md\n",
+ "print \"(a)\\neconomic power factor %.3flagging \\n(b) \\ncapacitor kVAr to improve the power factor %.4f \\n(c) \\ninitial kVA %.2fKVA \\nannual energy used %0.3ekWh \\nelectrical bill Rs%e per year\"%(epf2,q,ikv,aeu,eb)\n",
+ "kvc=round((lod*10**3/(round(epf2*1000)/10**3))*10**2)/10**2\n",
+ "ebc=kvc*tf+aeu*md\n",
+ "aidc=q*10**3*ic*id\n",
+ "te=ebc+aidc\n",
+ "asc=eb-te\n",
+ "print \"(d)\\nKVA after installation of capacitors %.2fKVA \\n\"%kvc\n",
+ "print \"energy bill after installation of capacitor Rs%e per year\"%ebc\n",
+ "print \"annual interest and depreciation of capacitor bank Rs%.1fper year \\ntotal expendition after installation of capacitors Rs%e per year \\nannual savings due to installation of capacitors Rs%d per year\"%(aidc,te,asc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "economic power factor 0.927lagging \n",
+ "(b) \n",
+ "capacitor kVAr to improve the power factor 0.4092 \n",
+ "(c) \n",
+ "initial kVA 1282.05KVA \n",
+ "annual energy used 7.008e+09kWh \n",
+ "electrical bill Rs2.452826e+10 per year\n",
+ "(d)\n",
+ "KVA after installation of capacitors 1078.75KVA \n",
+ "\n",
+ "energy bill after installation of capacitor Rs2.452822e+10 per year\n",
+ "annual interest and depreciation of capacitor bank Rs30690.0per year \n",
+ "total expendition after installation of capacitors Rs2.452825e+10 per year \n",
+ "annual savings due to installation of capacitors Rs9970 per year\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example:20.2 Page:468"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "ee=5*10**16 #electrical energy requirement\n",
+ "eer=0.1 #energy requirement\n",
+ "i=5*10**6 #investement\n",
+ "n=20 #life time\n",
+ "ec=4.1 #energy cost\n",
+ "r=0.13 #interest rate\n",
+ "dr=r/((1+r)**(n)-1) #depreciation rate\n",
+ "dr=round(dr*10**5)/10**5\n",
+ "tfc=r+dr #total fixed cost\n",
+ "ace=i*tfc #annual cost\n",
+ "ace=round(ace/10**2)*10**2\n",
+ "eb=i*ec #electrical bill with present motor\n",
+ "teb=eb*(1-eer) #electrical bill with efficiency motor\n",
+ "tac=teb+ace #total annual cost with efficiency cost\n",
+ "As=eb-tac #annual saving\n",
+ "print 'part (a)'\n",
+ "print \" depreciation rate %.5f \\n total fixed charge rate %f\\n annual cost of efficiency motor Rs%eper year \\n total electrical bill with present motors Rs%eper year \\n total electrical bill with efficiency motor Rs.%e \\n total annual cost if motors are replaced by high efficiency motors Rs%e per year \\n annual saving Rs%d per year\"%(dr,tfc,ace,eb,teb,tac,As)\n",
+ "print 'part (b)'\n",
+ "pwf=r/(1-((1+r)**-n)) #present worth factor\n",
+ "pwf=round(pwf*10**5)/10**5\n",
+ "pwm=teb/pwf #present worth annual cost with existing motors\n",
+ "pwm=round(pwm/10**4)*10**4 #present worth with existing motors\n",
+ "pwem=eb/pwf #present worth with efficiency motor\n",
+ "pwem=round(pwem/10**4)*10**4\n",
+ "pwam=teb/pwf\n",
+ "pwam=round(pwam/10**4)*10**4\n",
+ "tpw=pwam+i #total persent worth\n",
+ "print \" present worth factor %.5f \\n present worth of annual cost with existing motors Rs%e \\n present worth of annual cost with new motor Rs%e \\n total present worth %e per year\"%(pwf,pwem,pwam,tpw)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "part (a)\n",
+ " depreciation rate 0.01235 \n",
+ " total fixed charge rate 0.142350\n",
+ " annual cost of efficiency motor Rs7.118000e+05per year \n",
+ " total electrical bill with present motors Rs2.050000e+07per year \n",
+ " total electrical bill with efficiency motor Rs.1.845000e+07 \n",
+ " total annual cost if motors are replaced by high efficiency motors Rs1.916180e+07 per year \n",
+ " annual saving Rs1338200 per year\n",
+ "part (b)\n",
+ " present worth factor 0.14235 \n",
+ " present worth of annual cost with existing motors Rs1.440100e+08 \n",
+ " present worth of annual cost with new motor Rs1.296100e+08 \n",
+ " total present worth 1.346100e+08 per year\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter23.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter23.ipynb
new file mode 100644
index 00000000..939a2b1a
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter23.ipynb
@@ -0,0 +1,177 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:787894feae8b9f9d4e62ecf0f6a482facb95a154f8e7d91d492783a33e4a8cc8"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-23, Captive Power Generation"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example:23.1 Page:500"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "sp=11*10**3;pc=300*10**6 ; ir=0.15 ;lp=15 ;fc=7 ;eff=0.35; cv=10100; mc=0.02; lf=0.8 ;er=860 #let the given variable be --sp=size of plant ,pc=project cost,ir=interest rate,lp=life of the plant,fc=fuel cost,eff=efficiency,cv=calorific value,er=860,mc=maintenance cost,lf=load factor,\n",
+ "cac=pc/sp #let the variable cac be captel cost\n",
+ "print \"capitel cost is %.1f/kW\"%(cac)\n",
+ "crfd1=(1+ir)**(-lp)\n",
+ "crfd=1-crfd1\n",
+ "crf=ir/crfd #crf=capitel cost recovery factor\n",
+ "print \"CRF=%.3f\"%(crf)\n",
+ "anfc=cac*crf #anual fixed cost is prodect of capitel cost and capitel recovery factor\n",
+ "print \"annual fixed cost is Rs%.2f/kW\"%(anfc)\n",
+ "hr=er/eff #heat rate is energy ratedivided by efficiency\n",
+ "print \"heat rate is %fcal/kWh\"%(hr) \n",
+ "gpf=cv/hr #kW generated per liter is division of calorific value to hr\n",
+ "print \"number of kWh generated per liter of fuel is %.2fkWh/litre\"%(gpf)\n",
+ "fcp=fc/gpf #fuel cost per unit is fuel cost divided by generated per liter\n",
+ "print \"fuel cost per unit Rs%fper kWh\"%(fcp)\n",
+ "aomc=cac*mc #annual operation and maintenence cost\n",
+ "print \"annual operation cost Rs.%.4f/kW\"%(aomc)\n",
+ "afom=anfc+aomc \n",
+ "print \"annual fixed, operation and maintence cost Rs.%.2f/kW\"%(afom)\n",
+ "egpy=8760*lf #energy generated is 24*12*60\n",
+ "print \"energygenerated per year is %dkWh\"%(egpy)\n",
+ "afomc=afom/egpy\n",
+ "print \"annual fixed operation and maintenence cost per kWh of energy %.4f/kWh\"%(afomc)\n",
+ "gco=fcp+afomc #generated cost is sum of fuel cost and maintenence cost\n",
+ "print \"generated cost is Rs%.4f/kWh\"%(gco)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "capitel cost is 27272.0/kW\n",
+ "CRF=0.171\n",
+ "annual fixed cost is Rs4663.98/kW\n",
+ "heat rate is 2457.142857cal/kWh\n",
+ "number of kWh generated per liter of fuel is 4.11kWh/litre\n",
+ "fuel cost per unit Rs1.702970per kWh\n",
+ "annual operation cost Rs.545.4400/kW\n",
+ "annual fixed, operation and maintence cost Rs.5209.42/kW\n",
+ "energygenerated per year is 7008kWh\n",
+ "annual fixed operation and maintenence cost per kWh of energy 0.7434/kWh\n",
+ "generated cost is Rs2.4463/kWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example:23.2 page:501"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "sp=25*10**3 #size of the plant\n",
+ "cc=800*10**6 #capital cost\n",
+ "ir=0.1 #interest rate\n",
+ "lp=20 #life of the plant\n",
+ "mc=0.05 #maintence cost\n",
+ "lf=0.6 #load factor \n",
+ "sub=0.3 #subsidy\n",
+ "nc=cc*(1-sub)\n",
+ "nck=nc/sp \n",
+ "crf=ir/(1-(1+ir)**(-lp))\n",
+ "afc=nck*crf\n",
+ "aomc=nck*mc\n",
+ "tac=afc+aomc\n",
+ "aeg=8760*lf\n",
+ "gc=tac/aeg\n",
+ "print \"net capital cost Rs%d*10**6 \\nnet capital cost per KW Rs%f/kW \\ncrf %f \\nannual fixed cost Rs%d per kW \\nannual operation and maintenance cost Rs%dper kW \\nTotal annual cost Rs%dper kW \\nAnnual energy generated per kW of plant capacity %.1fkWh \\ngeneration cost Rs%.3fkWh\"%(nc/(10**6),nck,crf,afc,aomc,tac,aeg,gc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "net capital cost Rs560*10**6 \n",
+ "net capital cost per KW Rs22400.000000/kW \n",
+ "crf 0.117460 \n",
+ "annual fixed cost Rs2631 per kW \n",
+ "annual operation and maintenance cost Rs1120per kW \n",
+ "Total annual cost Rs3751per kW \n",
+ "Annual energy generated per kW of plant capacity 5256.0kWh \n",
+ "generation cost Rs0.714kWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Problem:23.11.2 Page:505"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "pp=11 #power capacity\n",
+ "cost=35 #cost of the system\n",
+ "In=0.14 #interest\n",
+ "lis=30 #life of system\n",
+ "sv=0.15 #salvage value\n",
+ "es=13.5*10**6 #energy sent\n",
+ "los=0.05 #losses\n",
+ "omc=0.02 #O&M charges\n",
+ "gr=0.006 #general revenue\n",
+ "rd=(1-sv)*100/lis\n",
+ "rdd=rd/100\n",
+ "tac=cost*(In+omc+rdd+gr)\n",
+ "ery=es*(1-los)\n",
+ "wc=(tac/ery)*10**5\n",
+ "print \"rate of depreciation is %.3fpercent \\ntotal annual cost is Rs.%.5f lakhs/year \\nenergy received per year %ekWh/year \\nwheeling charges Rs%f\"%(rd,tac,ery,wc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "rate of depreciation is 2.833percent \n",
+ "total annual cost is Rs.6.80167 lakhs/year \n",
+ "energy received per year 1.282500e+07kWh/year \n",
+ "wheeling charges Rs0.053034\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter3.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter3.ipynb
new file mode 100644
index 00000000..581f21ef
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter3.ipynb
@@ -0,0 +1,525 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:d6e7f2f9dbbec04ab6ce85a655cc4a2febb0f8dbb382c2ed7a309b8620f6b4b2"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-3, Power Plant Economics"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 3.1 - pg 43"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "totpow=110*10**3 #(kW)\n",
+ "uc1=18000; fcr1=0.1; cf1=0.55; fuelcons1=0.7; fuelcost1=1500/1000; om1=0.2; utilizationf1=1 \n",
+ "uc2=30000 ;fcr2=0.1; cf2=0.60 ;fuelcons2=0.65 ;fuelcost2=1500/1000 ;om2=0.15 ;utilizationf2=1 \n",
+ "#given uck=unit capital cost k fcrk= fixed charge rate of kth unit cfk=capacity factor at k th unit omk=annual cost of operating labour totpow=total power rating of units\n",
+ "afc1=fcr1*uc1*totpow; afc2=fcr2*uc2*totpow \n",
+ "e1=8760*cf1*totpow; e2=8760*cf2*totpow \n",
+ "annualfuel1=e1*fuelcons1 ;annualfuel2=e2*fuelcons2 \n",
+ "fc1=annualfuel1*fuelcost1 ;fc2=annualfuel2*fuelcost2 \n",
+ "om11=om1*fc1; om22=om2*fc2 \n",
+ "aoc1=fc1+om1 ;aoc2=fc2+om22 \n",
+ "apc1=aoc1+afc1; apc2=aoc2+afc2 \n",
+ "gc1=apc1/fc1 ;gc2=apc2/fc2\n",
+ "print \" solution for (a)\"\n",
+ "print \" afc1=Rs.%0.2e\\n e1=%0.4e kWh\\n annualfual1=%0.5e kg \\n fc1=Rs.%0.5e \\n om1=Rs.%0.6e \\n aoc1=Rs.%0.6e \\n apc1=Rs.%0.5e \\n gc1=%0.4f kWh\\n\"%(afc1,e1,annualfuel1,fc1,om11,aoc1,apc1,gc1)\n",
+ "print \" solution for (b)\"\n",
+ "print \" afc2=Rs.%0.2e \\n e2=%0.4e kWh\\n annualfual2=%0.5e kg \\n fc2=Rs.%d \\n om22=Rs.%d \\n aoc2=Rs.%.f \\n apc2=Rs.%.f \\n gc2=%.fkWh\\n\"%(afc2,e2,annualfuel2,fc2,om22,aoc2,apc2,gc1)\n",
+ "ogc=(apc1+apc2)/(e1+e2)\n",
+ "\n",
+ "print \" solution of (c)\\n ogc=Rs.%0.3f/kWh\"%(ogc)\n",
+ "# Ans in the textbook are not accurate."
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " solution for (a)\n",
+ " afc1=Rs.1.98e+08\n",
+ " e1=5.2998e+08 kWh\n",
+ " annualfual1=3.70986e+08 kg \n",
+ " fc1=Rs.5.56479e+08 \n",
+ " om1=Rs.1.112958e+08 \n",
+ " aoc1=Rs.5.564790e+08 \n",
+ " apc1=Rs.7.54479e+08 \n",
+ " gc1=1.3558 kWh\n",
+ "\n",
+ " solution for (b)\n",
+ " afc2=Rs.3.30e+08 \n",
+ " e2=5.7816e+08 kWh\n",
+ " annualfual2=3.75804e+08 kg \n",
+ " fc2=Rs.563706000 \n",
+ " om22=Rs.84555900 \n",
+ " aoc2=Rs.648261900 \n",
+ " apc2=Rs.978261900 \n",
+ " gc2=1kWh\n",
+ "\n",
+ " solution of (c)\n",
+ " ogc=Rs.1.564/kWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 3.2 - pg 45"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "c=2*10**8 #cost\n",
+ "s=0.15 #salvage value\n",
+ "ul=25 #/useful value\n",
+ "i=0.08 #life of plant\n",
+ "print \"solution for (a)\"\n",
+ "print \"annual straight line depreciation reserve =Rs. %.1e per year\\n\"%(c*(1-s)/ul)\n",
+ "print \"solution for (b)\"\n",
+ "it=(i+1)**25-1\n",
+ "iit=i/it\n",
+ "asdr=c*(1-s)*iit*100\n",
+ "print \"annual sinking fund depreciation reserve is =Rs. %.3e per year\"%(asdr)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "solution for (a)\n",
+ "annual straight line depreciation reserve =Rs. 6.8e+06 per year\n",
+ "\n",
+ "solution for (b)\n",
+ "annual sinking fund depreciation reserve is =Rs. 2.325e+08 per year\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 3.3 - pg 45"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "cost=2*10**8\n",
+ "sal=0.15\n",
+ "use=25\n",
+ "t=(1-(sal**(1/use)))\n",
+ "print \"rate of depretion by fixed percentage method = %0.1f %%\"%(t*100)\n",
+ "rd=cost*(1-t)**10\n",
+ "print \"remaining depreciation at the end of 10th year = Rs.%0.3e\"%(rd)\n",
+ "print \"accumulated depreciation at the end of 10 year is Rs.%0.3e\"%(cost-rd)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "rate of depretion by fixed percentage method = 7.3 %\n",
+ "remaining depreciation at the end of 10th year = Rs.9.364e+07\n",
+ "accumulated depreciation at the end of 10 year is Rs.1.064e+08\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 3.4 - pg 46"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "p=100 #ratring of steam station\n",
+ "fc=3000 #fixed cost of plant per year\n",
+ "rg=0.9 #90 paise per kv generation\n",
+ "uf=1 #utilization factor 1\n",
+ "import numpy as np\n",
+ "lf=np.arange(20,101,20) #let load factor be 5 discreate units\n",
+ "lm=uf*lf #lwt load MW is as same as lf as utilisation factor is 1\n",
+ "n=len(lm)\n",
+ "fc=[fc*1e5]*n\n",
+ "op=[rg*100]*n\n",
+ "negp = range(0,n)\n",
+ "fcgp = range(0,n)\n",
+ "tgc = range(0,n)\n",
+ "for i in range(0,n):\n",
+ " negp[i]=lm[i]*8760 * 1e3 # kW-hrs/year\n",
+ " fcgp[i]=fc[i]*10000/negp[i]* 1e2 # Paisa/unit\n",
+ " tgc[i]=fcgp[i]+op[i]\n",
+ "\n",
+ "print \"negp : \",tgc\n",
+ " \n",
+ " \n",
+ "%matplotlib inline\n",
+ "from matplotlib.pyplot import plot\n",
+ "plot(lf,tgc)\n",
+ "print \"load factor\"\n",
+ "print lf\n",
+ "print \"load MW\\n\"\n",
+ "#fcgp=fcgp/100 ;op=op/100; tgc=tgc/100\n",
+ "print \"%dMW\\t%dMW\\t%dMW\\t%dMW\\t%dMW\"%(lm[0],lm[1],lm[2],lm[3],lm[4])\n",
+ "print \"fixed cost\"\n",
+ "print \"Rs%d\\tRS%d\\tRs%d\\tRs%d\\tRs%d\"%(fc[0],fc[1],fc[2],fc[3],fc[4])\n",
+ "print \"number of KW hrs of energy generated in paise per unit of energy\"\n",
+ "print \"%dkWh\\t%dkWh\\t%dkWh\\t%dkWh\\t%dkWh\"%(negp[0],negp[1],negp[2],negp[3],negp[4])\n",
+ "print \"fixed cost in paise per unit of energy\"\n",
+ "print \"Rs%.3f\\tRS%.3f\\tRs%.3f\\tRs%.3f\\tRs%.3f\"%(fcgp[0],fcgp[1],fcgp[2],fcgp[3],fcgp[4])\n",
+ "print \"operating cost in paise per unit of energy\"\n",
+ "print \"Rs%.3f\\tRS%.3f\\tRs%.3f\\tRs%.3f\\tRs%.3f\"%(op[0],op[1],op[2],op[3],op[4])\n",
+ "print \"total generation cost in paise per unit of energy\"\n",
+ "print \"Rs%.3f\\tRS%.3f\\tRs%.3f\\tRs%.3f\\tRs%.3f\"%(tgc[0],tgc[1],tgc[2],tgc[3],tgc[4])"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "negp : [1712418.7671232875, 856254.38356164377, 570866.25570776255, 428172.19178082189, 342555.75342465751]\n",
+ "load factor"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "[ 20 40 60 80 100]\n",
+ "load MW\n",
+ "\n",
+ "20MW\t40MW\t60MW\t80MW\t100MW\n",
+ "fixed cost\n",
+ "Rs300000000\tRS300000000\tRs300000000\tRs300000000\tRs300000000\n",
+ "number of KW hrs of energy generated in paise per unit of energy\n",
+ "175200000kWh\t350400000kWh\t525600000kWh\t700800000kWh\t876000000kWh\n",
+ "fixed cost in paise per unit of energy\n",
+ "Rs1712328.767\tRS856164.384\tRs570776.256\tRs428082.192\tRs342465.753\n",
+ "operating cost in paise per unit of energy\n",
+ "Rs90.000\tRS90.000\tRs90.000\tRs90.000\tRs90.000\n",
+ "total generation cost in paise per unit of energy\n",
+ "Rs1712418.767\tRS856254.384\tRs570866.256\tRs428172.192\tRs342555.753\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f2bafc6d9d0>"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 3.5 page 47"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "ic=120 #installed capacity\n",
+ "ccppkw=40000 #/capital cost of plant\n",
+ "iand=0.15 #interest and depreciation\n",
+ "fco=0.64 #fuel consumption\n",
+ "fc=1.5#fuel cost\n",
+ "oc=50*10**6 #operating cost\n",
+ "pl=100#peak load\n",
+ "lf=0.6 #load factor\n",
+ "al=lf*pl#avarrage load\n",
+ "print \"average load %dMW\"%(al)\n",
+ "eg=al*8760*10**3#energy generated\n",
+ "print \"energy generated =%ekWhr\"%(eg)\n",
+ "ti=ic*ccppkw #total investiment\n",
+ "print \"total investement Rs.%e\"%(ti)\n",
+ "ind=ti*iand*10**3#interest and depreciation\n",
+ "print \"investement amd depression is Rs.%e\"%(ind)\n",
+ "fcons=eg*fco #fual consumption\n",
+ "print \"fuel consumtion is %ekgper year\"%(fcons)\n",
+ "fcost=fcons*fc#fuel cost\n",
+ "aco=ti+fcost+ind+oc#annual cost\n",
+ "print \"fuel cost Rs.%eper year \\nannual plant cost Rs%eper year \\ngeneration cost Rs%fper year\"%(fcost,aco,aco/eg)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "average load 60MW\n",
+ "energy generated =5.256000e+08kWhr\n",
+ "total investement Rs.4.800000e+06\n",
+ "investement amd depression is Rs.7.200000e+08\n",
+ "fuel consumtion is 3.363840e+08kgper year\n",
+ "fuel cost Rs.5.045760e+08per year \n",
+ "annual plant cost Rs1.279376e+09per year \n",
+ "generation cost Rs2.434125per year\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 3.6 page 47"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "md=50*10**3 #maximum demand in kW\n",
+ "ecy=0\n",
+ "pst=600*md+2.5*ecy#public supply tariff equation\n",
+ "lfr=0.5 #load factor\n",
+ "rc=20*10**3 #reserve capacity\n",
+ "cik=30000 #capital investiment\n",
+ "inad=0.15 #/interest and depreciation\n",
+ "fuc=0.6 ;fuco=1.4; oct=0.8#fuel consumption#fuel cost#other cost\n",
+ "avl=md*lfr #average load\n",
+ "ecy=avl*8760 #energy cosumption per year\n",
+ "print \"solution of (a)\"\n",
+ "print \" average load = %dkW \\n energy consumton =%dkWh\\n annual expenditure is Rs%dperyear\\n\"%(avl,ecy,pst)\n",
+ "print \"(b) private steam plant\"\n",
+ "ict=md+rc #installed capacity\n",
+ "caint=cik*ict #capital investiment\n",
+ "iande=inad*caint #interest and depreciation\n",
+ "fuelcon=ecy*fuc #fuel consumption\n",
+ "fucost=fuelcon*fuco #fuel cost\n",
+ "opwe=oct*ecy #other expenditure\n",
+ "totex=iande+fucost+opwe#total expenditure\n",
+ "print \" installed capacity is Rs%d \\n capital investiment is Rs%d \\n interest and depreciation is Rs.%d \\n fuel consumption is Rs.%f \\n fuel cost is Rs.%f per year \\n wage,repair and other expenses are Rs%f per year \\n total expenditure is Rs%e per year\"%(ict,caint,iande,fuelcon,fucost,opwe,totex)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "solution of (a)\n",
+ " average load = 25000kW \n",
+ " energy consumton =219000000kWh\n",
+ " annual expenditure is Rs30000000peryear\n",
+ "\n",
+ "(b) private steam plant\n",
+ " installed capacity is Rs70000 \n",
+ " capital investiment is Rs2100000000 \n",
+ " interest and depreciation is Rs.315000000 \n",
+ " fuel consumption is Rs.131400000.000000 \n",
+ " fuel cost is Rs.183960000.000000 per year \n",
+ " wage,repair and other expenses are Rs175200000.000000 per year \n",
+ " total expenditure is Rs6.741600e+08 per year\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 3.7 page 48"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "md=500 #given maximum demand\n",
+ "lf=0.5 #load factor\n",
+ "hp=7200 ;he=0.36#operating cost of hydro plant\n",
+ "tp=3600; te=1.56 #operating cost of thermal plant\n",
+ "teg=md*1000*lf*8760 #total energy generated\n",
+ "print \"total energy generated per year %2.2eW\"%(teg)\n",
+ "t=(hp-tp)/(te-he) #time of operating useing (de/dp)\n",
+ "ph=md*(1-t/8760) #from triangle adf\n",
+ "pt=md-ph\n",
+ "et=pt*t*1000/2\n",
+ "eh=teg-et\n",
+ "co=hp*ph*1000+he*eh+tp*pt*1000+te*et\n",
+ "ogc=co/teg\n",
+ "print \"capacity of hydro plant is %dMW \\n capacity of thermal plant %dMW\\n energy generatede by hydro plant %dkWh\\n energy generated by thermal plant %dkWh\\n over all generation cost is %.3f/kWh\"%(ph,pt,eh,et,ogc)\n",
+ "\n",
+ "\n",
+ " "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "total energy generated per year 2.19e+09W\n",
+ "capacity of hydro plant is 328MW \n",
+ " capacity of thermal plant 171MW\n",
+ " energy generatede by hydro plant 1933150684kWh\n",
+ " energy generated by thermal plant 256849315kWh\n",
+ " over all generation cost is 1.863/kWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Data 3.16 page 52"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "pu=500*10**3 ; pc=2*pu #plant unit,plant capacity\n",
+ "land=11.865*10**9\n",
+ "cicost=30.135*10**9\n",
+ "ccost=land+cicost #capital cost =land cost+civil cost\n",
+ "plife=25 #plant life\n",
+ "ir=0.16 #interest rate\n",
+ "ond=1.5*10**-2 # o and mof capital cost\n",
+ "gr=0.5*10**-2 #grneral reserve of capital cost\n",
+ "calv=4158 #calorific value kj per kg\n",
+ "coalcost=990 #caol cost per ton\n",
+ "heat=2500#heat rate kcal/kWh\n",
+ "retur=0.08 #return\n",
+ "salvage=0\n",
+ "plf=0.69 ;auxcons=0.075 #auxiliary consumption\n",
+ "print \"cost calculation \"\n",
+ "print \"using sinking fund depreciation\"\n",
+ "ande=(ir/((ir+1)**(plife)-1))*100\n",
+ "afixcost=ccost*(ir+ond+retur+gr+(ande/100))\n",
+ "afcppc=afixcost/pc\n",
+ "print \"annual depretion reserve is %fpersent \\n annual fixed cost Rs%f \\n annual fixed cost per Rs%dkWh\"%(ande,afixcost,afcppc)\n",
+ "fo=(heat*coalcost)/(calv*1000)\n",
+ "engepc=24*365*plf\n",
+ "enavil=engepc*(1-auxcons)\n",
+ "gencost=(afcppc/enavil)+fo\n",
+ "print \"fuel cost Rs.%f/kWh \\nenergy generated per kW of plant capacity Rs.%fkWh \\nenergy available bus bar %fkWh \\n generation cost Rs%f perkWh\"%(fo,engepc,enavil,gencost)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "cost calculation \n",
+ "using sinking fund depreciation\n",
+ "annual depretion reserve is 0.401262persent \n",
+ " annual fixed cost Rs11088529841.947702 \n",
+ " annual fixed cost per Rs11088kWh\n",
+ "fuel cost Rs.0.595238/kWh \n",
+ "energy generated per kW of plant capacity Rs.6044.400000kWh \n",
+ "energy available bus bar 5591.070000kWh \n",
+ " generation cost Rs2.578495 perkWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "data 3.17 page 53"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "pco=120*10**3 #3 units of 40MW\n",
+ "caco=68*10**8 #6 year of consumption\n",
+ "inr=0.16 #intrest rate\n",
+ "de=2.5*10**-2 #depreciation\n",
+ "oanm=1.5*10**-2#OandM\n",
+ "ger=0.5*10**-2#general reserve\n",
+ "pllf=0.6 #plant load facot\n",
+ "aucon=0.5*10**-2 #auxiliary consumption\n",
+ "tac=caco*(inr+de+oanm+aucon) #/total cost\n",
+ "engpy=pco*pllf*24*365 #energy generatedper year\n",
+ "eabb=engpy*(1-ger) #energy available at bus bar\n",
+ "geco=tac/eabb #generation cost\n",
+ "print \" total annual costs is Rs%e per year \\n energy generated per year =%ekWh/year \\n energy available at bus bar %ekWh/year \\n generation cost is Rs.%fper kWh\"%(tac,engpy,eabb,geco)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " total annual costs is Rs1.394000e+09 per year \n",
+ " energy generated per year =6.307200e+08kWh/year \n",
+ " energy available at bus bar 6.275664e+08kWh/year \n",
+ " generation cost is Rs.2.221279per kWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter4.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter4.ipynb
new file mode 100644
index 00000000..18d6d7fd
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter4.ipynb
@@ -0,0 +1,1202 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:fb68f886b3c2cdc28623218c177a66cd2a93d17c7bf83ed92891b0a04da2f4c6"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-4, Tariffs & Power Factor Improvement"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.1 page 59"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "day=30 #days \n",
+ "pll=40 ;nll=5; tll=3 #light load \n",
+ "pfl=100; nfl=3 ;tfl=5 #fan load\n",
+ "prl=1*1000 #refrigerator\n",
+ "pml=1*1000; nml=1 #misc. load \n",
+ "t1=2.74 ;t11=15#tariff\n",
+ "t2=2.70 ;t22=25 #tariff on 25 units\n",
+ "tr=2.32 #reamaining units\n",
+ "tc=7.00 #constant charge\n",
+ "dis=0.05#discount for prompt payment\n",
+ "te=(pll*nll*tll+pfl*nfl*tfl)*day+prl*day+pml*day\n",
+ "tee=te/1000\n",
+ "mb=tc+tr*(tee-t11-t22)+t1*t11+t2*t22\n",
+ "nmb=mb*(1-dis)\n",
+ "print \"total energy consumption in %d day %dunits \\nthe monthly bill Rs%.2f \\nnet monthly bill Rs%.2f\"%(day,tee,mb,nmb)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "total energy consumption in 30 day 123units \n",
+ "the monthly bill Rs308.16 \n",
+ "net monthly bill Rs292.75\n"
+ ]
+ }
+ ],
+ "prompt_number": 75
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.2 Page 59"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "l=100 #connected load\n",
+ "md=80 #maximum demand\n",
+ "wt=0.6 #working time\n",
+ "c=6000 #constant cost\n",
+ "t=700 #cost on per kW\n",
+ "re=1.8 #rate\n",
+ "ec=l*wt*8760#electricity consumption per year\n",
+ "teb=c+md*t+re*ec #total electricity bill per year\n",
+ "print \" energy consumption %dkWh \\n total electricity bill per year Rs%d\"%(ec,teb)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " energy consumption 525600kWh \n",
+ " total electricity bill per year Rs1008080\n"
+ ]
+ }
+ ],
+ "prompt_number": 76
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.3 Page 60"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "md=160 ;lff=0.7 ;dfc=1.7#maximum demand #load factor#diversity factor bt consumers\n",
+ "ic=200 #installed capacity\n",
+ "ccp=30000#capital cost of plant per kW\n",
+ "ctds=1800*10**6 #capital cost of transmission and distribution\n",
+ "idi=0.11 #interest,depreciation insurance and taxes on capital investiment\n",
+ "fmc=30*10**6 #fixed managerial and general maintanance cost\n",
+ "ol=236*10**6 #operating labour,maintanance and suppies\n",
+ "cm=90*10**6 #cost of metering,billing and collection\n",
+ "eca=0.05 #energy consumed by auxillary\n",
+ "el=0.15#energy loss and maintanance\n",
+ "p=0.25\n",
+ "lf=0.8#load factor\n",
+ "ap=0.5 #addition energy for profit\n",
+ "print 'a'\n",
+ "print \" capital cost of plant Rs%e \\n total capital cost Rs%e\\n interest,depereiation system Rs%e \"%(ccp*ic*10**3,ccp*ic*10**3+ctds,(ccp*ic*10**3+ctds)*idi)\n",
+ "print \"\\n sum of maximum demand of consumers energy prodused %dMW \\n energy produced %ekWh \\n energy consumed by auxilliries %ekWh\\n energy output %ekWH \\n energy sold to consumer %ekWh\\n\"%(md*dfc,md*8760*lff*10**3,md*8760*lff*eca*10**3,md*8760*lff*10**3*(1-eca),md*8760*lff*10**3*(1-eca)*(1-el))\n",
+ "print '(b)fixed cost'\n",
+ "idetc=(ccp*ic*10**3+ctds)*idi\n",
+ "tot=idetc+fmc \n",
+ "print \" interest, deprecition etc Rs%e per year\\n managerial and maintence Rs%.eper year \\n total \\t Rs%e \"%(idetc,fmc,tot)\n",
+ "pro=p*tot\n",
+ "gtot=tot+pro\n",
+ "print \"\\n profit@%d \\tRs%eper year \\n grand total Rs%e per year\"%(p*100,pro,gtot)\n",
+ "print 'Operating cost'\n",
+ "tot2=ol+cm\n",
+ "pro2=tot2*p\n",
+ "gtot2=tot2+pro2\n",
+ "print \" Operating labour,supplies maintenance etc Rs.%eper year \\n metering,billing etc Rs%eper year\\n total\\t\\tRs%e per year\\n profit \\t Rs%eper year \\n grand total \\t Rs%e per year\"%(ol,cm,tot2,pro2,gtot2)\n",
+ "print 'tariff'\n",
+ "co=gtot/(md*dfc*1000)\n",
+ "es=md*8760*lff*10**3*(1-eca)*(1-el)\n",
+ "cs=gtot2/es\n",
+ "print \" cost per kW \\tRs%e \\n cost per kWh \\tRs%e\"%(co,cs)\n",
+ "print '(b)'\n",
+ "ep=md*1000*8760*lf\n",
+ "print \" energy produced %ekWh \\n energy consumed by auxiliaries %ekWh/year \\n energy output of plant %ekWh \\n energy sold to consumer %ekWh\"%(ep,ep*eca,ep*(1-eca),ep*(1-eca)*(1-el))\n",
+ "estc=ep*(1-eca)*(1-el)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a\n",
+ " capital cost of plant Rs6.000000e+09 \n",
+ " total capital cost Rs7.800000e+09\n",
+ " interest,depereiation system Rs8.580000e+08 \n",
+ "\n",
+ " sum of maximum demand of consumers energy prodused 272MW \n",
+ " energy produced 9.811200e+08kWh \n",
+ " energy consumed by auxilliries 4.905600e+07kWh\n",
+ " energy output 9.320640e+08kWH \n",
+ " energy sold to consumer 7.922544e+08kWh\n",
+ "\n",
+ "(b)fixed cost\n",
+ " interest, deprecition etc Rs8.580000e+08 per year\n",
+ " managerial and maintence Rs3e+07per year \n",
+ " total \t Rs8.880000e+08 \n",
+ "\n",
+ " profit@25 \tRs2.220000e+08per year \n",
+ " grand total Rs1.110000e+09 per year\n",
+ "Operating cost\n",
+ " Operating labour,supplies maintenance etc Rs.2.360000e+08per year \n",
+ " metering,billing etc Rs9.000000e+07per year\n",
+ " total\t\tRs3.260000e+08 per year\n",
+ " profit \t Rs8.150000e+07per year \n",
+ " grand total \t Rs4.075000e+08 per year\n",
+ "tariff\n",
+ " cost per kW \tRs4.080882e+03 \n",
+ " cost per kWh \tRs5.143550e-01\n",
+ "(b)\n",
+ " energy produced 1.121280e+09kWh \n",
+ " energy consumed by auxiliaries 5.606400e+07kWh/year \n",
+ " energy output of plant 1.065216e+09kWh \n",
+ " energy sold to consumer 9.054336e+08kWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 77
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.4 Page 61"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "v=230 ;ec=2020 #voltage #energy consumption\n",
+ "i=40; pf=1 ;t=2; c=3.5; rc=1.8 ;mon=30 #current/power factor/time/cost/reamining cost/month\n",
+ "ecd=v*i*pf*t*mon/1000 #energy corresponding to maximum demand\n",
+ "cost=ecd*c\n",
+ "ren=ec-ecd\n",
+ "rcost=ren*rc\n",
+ "tmb=cost+rcost\n",
+ "at=tmb/ec\n",
+ "print \" energy corresponding to maximum demand %dkWh \\n cost of above energy Rs%d \\n remaining energy %dkWh \\n cost of reamaining energy Rs%.1f \\n total monthly bill Rs.%.1f\\n avarage tariff Rs%.3fper kWh\"%(ecd,cost,ren,rcost,tmb,at)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " energy corresponding to maximum demand 552kWh \n",
+ " cost of above energy Rs1932 \n",
+ " remaining energy 1468kWh \n",
+ " cost of reamaining energy Rs2642.4 \n",
+ " total monthly bill Rs.4574.4\n",
+ " avarage tariff Rs2.265per kWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 78
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.5 Page 62"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "t1=3000 ;t11=0.9 #cost equation \n",
+ "t2=3 #rate\n",
+ "x=t1/(t2-t11)\n",
+ "print \"if energy consumption per month is more than %.1fkWh,\\ntariff is more suitable\"%(x)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "if energy consumption per month is more than 1428.6kWh,\n",
+ "tariff is more suitable\n"
+ ]
+ }
+ ],
+ "prompt_number": 79
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.6 Page 62"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "aec=201500 #annual energy consumption\n",
+ "lf=0.35#load factor constnt\n",
+ "t=4000#tariff\n",
+ "tmd=1200#tariff for maximum demand\n",
+ "t3=2.2\n",
+ "lfb=0.55 #load factor improved\n",
+ "ecd=0.25#energy consumption reduced\n",
+ "md=aec/(8760*lf)\n",
+ "yb=t+md*tmd+t3*aec\n",
+ "mdb=aec/(8760*lfb)\n",
+ "ybb=t+mdb*tmd+t3*aec\n",
+ "ne=aec*(1-ecd)\n",
+ "md3=ne/(8760*lf)\n",
+ "ybc=t+md3*tmd+t3*ne\n",
+ "aeca=yb/aec\n",
+ "aecb=ybb/aec\n",
+ "aecc=ybc/ne\n",
+ "print 'a'\n",
+ "print \"maximum demand %.2fkW \\n yearly bill Rs.%d per year \\n(b)\\n maximum demand %.2fkW \\n yearly bill Rs.%dper year\"%(md,yb,mdb,ybb)\n",
+ "print \"c\"\n",
+ "print \" new energy %dkWh \\n maximum demand %.2fkW \\n yearly bill Rs.%dper year \\n average energy cost in case a Rs%.4fper kWh \\n average energy cost in case b Rs%.3fper kWh\\n average energy cost in case c Rs%.3fper kWh \"%(ne,md3,ybc,aeca,aecb,aecc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a\n",
+ "maximum demand 65.72kW \n",
+ " yearly bill Rs.526164 per year \n",
+ "(b)\n",
+ " maximum demand 41.82kW \n",
+ " yearly bill Rs.497486per year\n",
+ "c\n",
+ " new energy 151125kWh \n",
+ " maximum demand 49.29kW \n",
+ " yearly bill Rs.395623per year \n",
+ " average energy cost in case a Rs2.6112per kWh \n",
+ " average energy cost in case b Rs2.469per kWh\n",
+ " average energy cost in case c Rs2.618per kWh \n"
+ ]
+ }
+ ],
+ "prompt_number": 80
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.7 Page 66"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "pl1=20 ;pf1=0.8; t1=2000#load in MVA #power factor #duration\n",
+ "pl2=10 ;pf2=0.8 ;t2=1000#load in MVA #power factor #duration\n",
+ "pl3=2 ;pf3=0.8 ;t3=500#load in MVA #power factor #duration\n",
+ "pt=20 #/transformar power rating\n",
+ "fte=0.985 ;ste=0.99 #/full load efficiency for first and second transformer\n",
+ "ftl=120 ;stl=90 #core loss inKW for first and second transformer\n",
+ "cst=200000 #cost of second transformer with compared with first transformer\n",
+ "aid=0.15 #annual interest and depreciation\n",
+ "ce=0.8 #cost of energy\n",
+ "tfl=pt*(1-fte)*1000#total full load\n",
+ "fle=tfl-ftl #full load copper loss\n",
+ "elc=fle*t1+(fle*t2/(pt/pl2)**2)+(fle*t3/(pt/pl3)**2) #energy loss due to copper loss\n",
+ "eli=ftl*(t1+t2+t3)#energy loss due to iron loss\n",
+ "celo=(elc+eli)*ce #cost of energy loss\n",
+ "print \" \\nfirst transformer : \"\n",
+ "print \" total full load losses %dkW \\n full load copper losses %dkW \\n energy loss due to copper losses %dkWh/year\\n energy loss due to iron losses %dkWh/year \\n cost of energy losses Rs%dper year\"%(tfl,fle,elc,eli,celo)\n",
+ "stfl=pt*(1-ste)*1000#total full load\n",
+ "sle=stfl-stl#full load copper loss\n",
+ "selc=sle*t1+(sle*t2/(pt/pl2)**2)+(sle*t3/(pt/pl3)**2)#energy loss due to copper loss\n",
+ "seli=stl*(t1+t2+t3)#energy loss due to iron loss\n",
+ "scelo=(selc+seli)*ce#cost of energy loss\n",
+ "print \" \\nsecond transformer :\"\n",
+ "print \" total full load losses %dkW \\n full load copper losses %dkW \\n energy loss due to copper losses %dkWh/year\\n energy loss due to iron losses %dkWh/year \\n cost of energy losses Rs%dper year\"%(stfl,sle,selc,seli,scelo)\n",
+ "aidc=stfl*aid*1000\n",
+ "tybc=aidc+scelo\n",
+ "print \" additional interest and depreciation due to higher cost of second transformer Rs%d \\n total yearly charges for second transformer Rs%d per year\"%(aidc,tybc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " \n",
+ "first transformer : \n",
+ " total full load losses 300kW \n",
+ " full load copper losses 180kW \n",
+ " energy loss due to copper losses 405900kWh/year\n",
+ " energy loss due to iron losses 420000kWh/year \n",
+ " cost of energy losses Rs660720per year\n",
+ " \n",
+ "second transformer :\n",
+ " total full load losses 200kW \n",
+ " full load copper losses 110kW \n",
+ " energy loss due to copper losses 248050kWh/year\n",
+ " energy loss due to iron losses 315000kWh/year \n",
+ " cost of energy losses Rs450440per year\n",
+ " additional interest and depreciation due to higher cost of second transformer Rs30000 \n",
+ " total yearly charges for second transformer Rs480440 per year\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.8 Page 67"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import asin, acos, tan, cos\n",
+ "p=500 #load\n",
+ "pf=0.8#power factor\n",
+ "t=400 #tariff\n",
+ "md=100 #maximum demand tariff\n",
+ "ccb=600 #cost of capacitor bank\n",
+ "id=0.11#interest and deprecistion\n",
+ "sd=ccb*id/t#sin(ph2)\n",
+ "d2=asin(sd)\n",
+ "pf2=cos(d2)\n",
+ "kva=p*(tan(acos(pf))-tan(d2))\n",
+ "print \" the most economic power factor %.3f lagging \\n kvar requirement %.2fkVAR\"%(pf2,kva)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " the most economic power factor 0.986 lagging \n",
+ " kvar requirement 291.35kVAR\n"
+ ]
+ }
+ ],
+ "prompt_number": 82
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.9 Page 68"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "l1=300 #load and power factor for three different loads\n",
+ "pf1=1 \n",
+ "l2=1000 \n",
+ "pf2=0.9 \n",
+ "l3=1500 \n",
+ "pf3=0.8\n",
+ "print \" for %dkW unit power factor load \\n power factor angle %.f\\n reactive power %.fkvr\"%(l1,acos(pf1),l1*(tan(acos(pf1))))\n",
+ "print \" \\nfor %dkW unit power factor load \\n power factor angle %.2f\\n reactive power %.2fkvr\"%(l2,acos(pf2),l2*(tan(acos(pf2))))\n",
+ "print \" \\nfor %dkW unit power factor load \\n power factor angle %.2f\\n reactive power %.2fkvr\"%(l3,acos(pf3),l3*(tan(acos(pf3))))\n",
+ "tl=l1+l2+l3\n",
+ "tt=l3*(tan(acos(pf3)))+l2*(tan(acos(pf2)))+l1*(tan(acos(pf1)))\n",
+ "print \"\\n total kW \\t%dkW\\n total kVAR %.1fkVAR \\n total kVA %.2fkVA \\n overall power factor %.3flagging\"%(tl,tt,(tl**2+tt**2)**0.5,tl/(tl**2+tt**2)**0.5)\n",
+ "print \"\\n the maximum unity power factor load which yhe station can supply is equal to the kVA i.e.%.2fkVR\"%((tl**2+tt**2)**0.5)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " for 300kW unit power factor load \n",
+ " power factor angle 0\n",
+ " reactive power 0kvr\n",
+ " \n",
+ "for 1000kW unit power factor load \n",
+ " power factor angle 0.45\n",
+ " reactive power 484.32kvr\n",
+ " \n",
+ "for 1500kW unit power factor load \n",
+ " power factor angle 0.64\n",
+ " reactive power 1125.00kvr\n",
+ "\n",
+ " total kW \t2800kW\n",
+ " total kVAR 1609.3kVAR \n",
+ " total kVA 3229.54kVA \n",
+ " overall power factor 0.867lagging\n",
+ "\n",
+ " the maximum unity power factor load which yhe station can supply is equal to the kVA i.e.3229.54kVR\n"
+ ]
+ }
+ ],
+ "prompt_number": 83
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.10 Page 68"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import sqrt, pi\n",
+ "v=400#voltage\n",
+ "i=25#/current\n",
+ "pf=0.8#at power factor\n",
+ "pf2=0.9#over all power factor\n",
+ "kw=v*i*pf*sqrt(3)/1000\n",
+ "print \"kw rating of induction motor %.2fkW\"%(kw)\n",
+ "dm=acos(pf)\n",
+ "rp=kw*tan(dm)\n",
+ "print \"\\n power factor angle %.2f \\n reactive power %.2fkVR\"%(dm,rp)\n",
+ "fdm=acos(pf2)\n",
+ "rp2=kw*tan(fdm)\n",
+ "print \"\\n final power factor %.2f \\n final reactance power %.2fkVR\"%(fdm,rp2)\n",
+ "ckvb=rp-rp2\n",
+ "cc=ckvb*1000/(sqrt(3)*v)\n",
+ "vc=v/sqrt(3)\n",
+ "xc=vc/cc\n",
+ "f=50\n",
+ "cec=1*10**(6)/(xc*2*pi*f)\n",
+ "print \"\\n kvar rating of capacitor bank %.4f \\n current through each capacitor %.2fA\\n voltage across each capacitor %.2f \\n reactance of each capacitor %.2fohm \\n capacitance of each capacitance %.2fuf\"%(ckvb,cc,vc,xc,cec)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "kw rating of induction motor 13.86kW\n",
+ "\n",
+ " power factor angle 0.64 \n",
+ " reactive power 10.39kVR\n",
+ "\n",
+ " final power factor 0.45 \n",
+ " final reactance power 6.71kVR\n",
+ "\n",
+ " kvar rating of capacitor bank 3.6813 \n",
+ " current through each capacitor 5.31A\n",
+ " voltage across each capacitor 230.94 \n",
+ " reactance of each capacitor 43.46ohm \n",
+ " capacitance of each capacitance 73.24uf\n"
+ ]
+ }
+ ],
+ "prompt_number": 84
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.11 Page 69"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "v=400#line voltage\n",
+ "i=50 #line current\n",
+ "pf=0.8 #at power factor\n",
+ "pf2=0.95 # overall power factor\n",
+ "sm=25 #hp of synchronous motor \n",
+ "e=0.9#efficiency\n",
+ "kwri=v*i*pf*sqrt(3)/1000\n",
+ "kvari=v*i*sqrt(3)/1000\n",
+ "karri=(-kwri**2+kvari**2)**0.5\n",
+ "kwsm=sm*735.5/(e*1000)\n",
+ "tkw=kwri+kwsm\n",
+ "print \" kw rating of installation %.1fkW \\n kVA rating of installation %.2fkva \\n kVAR rating %.2fkvar \\n kw input to synchrounous motor %.2fkw \\n total kw=%.2f\\n\"%(kwri,kvari,karri,kwsm,tkw)\n",
+ "pd=acos(pf2)\n",
+ "tkr=tkw*tan(pd)\n",
+ "krsm=tkr-karri\n",
+ "kasm=(kwsm**2+krsm**2)**0.5\n",
+ "pfsm=kwsm/kasm\n",
+ "if krsm<0:\n",
+ " ch='capacitor'\n",
+ " ich='leading'\n",
+ "else:\n",
+ " ch='inductive'\n",
+ " ich='lagging'\n",
+ "\n",
+ "print \" overall power factor angle %.2fkw \\n total kvar %.2fkvar \\n kvar of synchrounous motor %.2fkvar %s \\n kva of synchrounous motor %.2fkva \\n power factor of synchrounous motor %.2f %s\"%(pd,tkr,krsm,ch,kasm,pfsm,ich)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " kw rating of installation 27.7kW \n",
+ " kVA rating of installation 34.64kva \n",
+ " kVAR rating 20.78kvar \n",
+ " kw input to synchrounous motor 20.43kw \n",
+ " total kw=48.14\n",
+ "\n",
+ " overall power factor angle 0.32kw \n",
+ " total kvar 15.82kvar \n",
+ " kvar of synchrounous motor -4.96kvar capacitor \n",
+ " kva of synchrounous motor 21.02kva \n",
+ " power factor of synchrounous motor 0.97 leading\n"
+ ]
+ }
+ ],
+ "prompt_number": 85
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.12 page 69"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import sin, atan\n",
+ "psm=100 #power of synchrounous motors\n",
+ "pim=200 #power of inducion motor\n",
+ "v=400 #voltage \n",
+ "pff=0.71; pp=-1#power factor\n",
+ "rsm=0.1 #resistance of synchrounous motor\n",
+ "rt=0.03 #resistance of cable\n",
+ "#pf(1)=1 ;p(1)=1 #power factor in a\n",
+ "#pf(2)=0.8 ;p(2)=1 #power factor in b\n",
+ "#pf(3)=0.6 ;p(3)=1 #power factor in c\n",
+ "pf =[1,0.8,0.6]\n",
+ "p = [1,1,1]\n",
+ "\n",
+ "i1=pim*1000/(v*pff*sqrt(3))\n",
+ "i11=i1*(complex(pff,pp*sin(acos(pff))))\n",
+ "i2f=psm*1000/(v*sqrt(3))\n",
+ "ch=['a', 'b', 'c']\n",
+ "it = range(0,3)\n",
+ "opf = range(0,3)\n",
+ "for i in range(0,3):\n",
+ " print \"\\n (%s)\"%(ch[i])\n",
+ " d=acos(pf[i])\n",
+ " #it(i)=i11(1)+complex(i2f,(p(i)*i2f*tand(d)))\n",
+ " it[i]=i11+complex(i2f,(p[i]*i2f*tan(d)))\n",
+ " opf[i]=cos(atan((it[i]).imag/(it[i]).real))\n",
+ " clsm=3*((i2f)**2)*rsm\n",
+ " clt=3*(abs(it[i])**2)*rt/1000\n",
+ " print \"\\n total current =\",it[i]\n",
+ " print \"\\n overall power factor %.3f lagging \\n copper losses in synchrounous motor %.fW \\n copper losses in cable %.2fKW\"%(opf[i],clsm,clt)\n",
+ "\n",
+ "print \"(d)\"\n",
+ "print \"copper loss of synchronous motor this is evidently minimum when tand=%d cosd=%d\"%(0,1)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " (a)\n",
+ "\n",
+ " total current = (433.012701892-286.317624651j)\n",
+ "\n",
+ " overall power factor 0.834 lagging \n",
+ " copper losses in synchrounous motor 6250W \n",
+ " copper losses in cable 24.25KW\n",
+ "\n",
+ " (b)\n",
+ "\n",
+ " total current = (433.012701892-178.064449178j)\n",
+ "\n",
+ " overall power factor 0.925 lagging \n",
+ " copper losses in synchrounous motor 6250W \n",
+ " copper losses in cable 19.73KW\n",
+ "\n",
+ " (c)\n",
+ "\n",
+ " total current = (433.012701892-93.8675349216j)\n",
+ "\n",
+ " overall power factor 0.977 lagging \n",
+ " copper losses in synchrounous motor 6250W \n",
+ " copper losses in cable 17.67KW\n",
+ "(d)\n",
+ "copper loss of synchronous motor this is evidently minimum when tand=0 cosd=1\n"
+ ]
+ }
+ ],
+ "prompt_number": 86
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.13 Page 71"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import atan\n",
+ "p=2#constant output in MW\n",
+ "pf=0.9#power factor\n",
+ "pa=10#load\n",
+ "pb=5\n",
+ "pfb=0.8#power factor at load of 5MW\n",
+ "td=tan(acos(pf))\n",
+ "go=p*(1-td*1J)\n",
+ "op=0.8\n",
+ "tp=tan(acos(pfb))\n",
+ "print \"power factor of indection generator is leading therefor induction generator output %d%.2fiMVA /n (a) \\n\"%(go.real,go.imag)\n",
+ "tl=pa*(1+tp*1J)\n",
+ "sg=tl-go\n",
+ "da=atan(sg.imag/sg.real)\n",
+ "print \" total load %d+%.1fiMW \\n synchronous generator load %d+%.3fiMW \\n\\t\\t=%.2fMW at angle %.2f \\n power factor of synchronous generator is %.2flagging\"%(tl.real,tl.imag,sg.real,sg.imag,abs(sg),da,cos(da))\n",
+ "tl1=pb*(1+tp*1J)\n",
+ "sg1=tl1-go\n",
+ "da1=atan(sg1.imag/sg1.real)\n",
+ "print \"(b)\"\n",
+ "print \" total load %d+%.1fiMW \\n synchronous generator load %d+%.3fiMW \\n\\t\\t=%.2fMW at angle %.2f \\n power factor of synchronous generator is %.2flagging\"%(tl1.real,(tl1).imag,sg1.real,(sg1).imag,abs(sg1),da1,cos(da1))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "power factor of indection generator is leading therefor induction generator output 2-0.97iMVA /n (a) \n",
+ "\n",
+ " total load 10+7.5iMW \n",
+ " synchronous generator load 8+8.469iMW \n",
+ "\t\t=11.65MW at angle 0.81 \n",
+ " power factor of synchronous generator is 0.69lagging\n",
+ "(b)\n",
+ " total load 5+3.7iMW \n",
+ " synchronous generator load 3+4.719iMW \n",
+ "\t\t=5.59MW at angle 1.00 \n",
+ " power factor of synchronous generator is 0.54lagging\n"
+ ]
+ }
+ ],
+ "prompt_number": 87
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.14 page 71"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "c=40*10**(-6) #bank of capacitors in farads\n",
+ "v=400 #line voltage\n",
+ "i=40#/line current\n",
+ "pf=0.8#power factor\n",
+ "f=50#line frequency\n",
+ "xc=1/(2*pi*f*c)\n",
+ "ic=v/(sqrt(3)*xc)\n",
+ "il=i*(pf-sin(acos(pf))*1J)\n",
+ "til=il+1J*ic\n",
+ "od=atan(til.imag/til.real)\n",
+ "opf=cos(od)\n",
+ "nlol=(abs(od)/i)**2\n",
+ "print \"(a)\"\n",
+ "print \" line current of capacitor bank %.1fA \\n load current %d%diA \\n total line current %d%.1fjA \\n overall p.f %.3f \\n new line loss to old line loss %.3f\"%(ic,il.real,il.imag,(til).real,(til).imag,opf,nlol)\n",
+ "pcb=(v/xc)\n",
+ "print \"\\n phase current of capacitor bank %.3fA\"%(pcb)\n",
+ "lcb=pcb*sqrt(3)\n",
+ "print \"\\n line current of capacitor bank %.1fA\"%(lcb)\n",
+ "tcu=il+lcb*1J\n",
+ "print \"\\n total current =\",tcu\n",
+ "print \"%.1fjA =%.2fA at an angle %.2f\"%(tcu.imag,abs(tcu),atan(tcu.imag/tcu.real))\n",
+ "pf2=cos(atan(tcu.imag/(tcu).real))\n",
+ "print \"\\n power factor %.1f \\n ratio of new line loss to original loss %.3f\"%(pf2,(abs(tcu)/i)**2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ " line current of capacitor bank 2.9A \n",
+ " load current 32-23iA \n",
+ " total line current 32-21.1jA \n",
+ " overall p.f 0.835 \n",
+ " new line loss to old line loss 0.000\n",
+ "\n",
+ " phase current of capacitor bank 5.027A\n",
+ "\n",
+ " line current of capacitor bank 8.7A\n",
+ "\n",
+ " total current = (32-15.2937630517j)\n",
+ "-15.3jA =35.47A at an angle -0.45\n",
+ "\n",
+ " power factor 0.9 \n",
+ " ratio of new line loss to original loss 0.786\n"
+ ]
+ }
+ ],
+ "prompt_number": 88
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.15 Page 72"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "p=30 #b.h.p of induction motor\n",
+ "f=50#line frequency\n",
+ "v=400#line voltage\n",
+ "e=0.85#effiency\n",
+ "pf=0.8 #power factor\n",
+ "i=p*746/(v*e*pf*sqrt(3))\n",
+ "i=i*complex(pf,-sin(acos(pf)))\n",
+ "ccb=(i).imag/sqrt(3)\n",
+ "xc=v/ccb\n",
+ "c=10**6/(2*f*pi*xc)\n",
+ "prl=((abs(i)**2-i.real**2)/abs(i)**2)*100\n",
+ "print \" current drawn by motor is %.1fA \\n \"%abs(i)\n",
+ "print \"the line loss will be minimum when i is munimum.the minimum value of i is\",i,\"A\"\n",
+ "print \" and occurs when the capacitor bank draws a line current of %djA \\n capacitor C %.2fuf \\n percentage loss reduction %d\"%(i.imag,abs(c),prl)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " current drawn by motor is 47.5A \n",
+ " \n",
+ "the line loss will be minimum when i is munimum.the minimum value of i is (38.0032324249-28.5024243187j) A\n",
+ " and occurs when the capacitor bank draws a line current of -28jA \n",
+ " capacitor C 130.95uf \n",
+ " percentage loss reduction 35\n"
+ ]
+ }
+ ],
+ "prompt_number": 89
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.16 page 72"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "po=666.66 #power\n",
+ "f=50 #frequency\n",
+ "v=400 #voltage\n",
+ "pf=0.8 ;p=-1#power factor\n",
+ "pf2=0.95 ;p2=-1#improved power factor\n",
+ "vc=2200 #capacitor voltage \n",
+ "rc=vc\n",
+ "il=po*1000/(v*pf*sqrt(3))\n",
+ "il1=il*(complex(pf,p*sin(acos(pf))))\n",
+ "i2c=il*pf\n",
+ "tad=tan(acos(pf2))\n",
+ "i2=complex(i2c,i2c*tad*p2)\n",
+ "print \" load current i1 =\",il1,\"A \"\n",
+ "print \"\\n load current current on improved power factor =\",i2,\"A\"\n",
+ "print \"(a)\"\n",
+ "ic=abs(il1-i2)\n",
+ "ilc=ic*v/vc\n",
+ "pic=ilc/sqrt(3)\n",
+ "xc=vc/pic\n",
+ "ca=10**6/(2*pi*f*xc)\n",
+ "print \" line current of %dV capacitor bank %.2fA\\n line current of %d capacitor bank %.2fA \\n phase current of capacitor bank %.2fA \\n reactance %.2f \\n capacitance %.2fF*10**(-6)\"%(v,ic,vc,ilc,pic,xc,ca)\n",
+ "print \"(b)\"\n",
+ "kr=3*vc*pic/1000\n",
+ "print \" kVA rating %.1fkVA \\n kVA rating of transformer to convert %dV to %dV will be the same as the kVA rating of capacitor bank\"%(kr,v,vc)\n",
+ "pl=100*(abs(il1)**2-abs(i2)**2)/abs(il1)**2\n",
+ "print \"percentage reduction in losses %d percent\"%(pl)\n",
+ "print \"(d)\"\n",
+ "pi=ic/sqrt(3)\n",
+ "xcc=v/pi\n",
+ "cc=1*10**6/(2*pi*f*xcc)\n",
+ "roc=ca/cc\n",
+ "print \" phase current %.1fA \\n reactance %.2fohm \\n capasitance %.2f*10**-6F \\n ratio of capacitance %.3f\"%(pi,xcc,cc,roc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " load current i1 = (962.240826145-721.680619609j) A \n",
+ "\n",
+ " load current current on improved power factor = (962.240826145-316.273264908j) A\n",
+ "(a)\n",
+ " line current of 400V capacitor bank 405.41A\n",
+ " line current of 2200 capacitor bank 73.71A \n",
+ " phase current of capacitor bank 42.56A \n",
+ " reactance 51.70 \n",
+ " capacitance 61.57F*10**(-6)\n",
+ "(b)\n",
+ " kVA rating 280.9kVA \n",
+ " kVA rating of transformer to convert 400V to 2200V will be the same as the kVA rating of capacitor bank\n",
+ "percentage reduction in losses 29 percent\n",
+ "(d)\n",
+ " phase current 234.1A \n",
+ " reactance 1.71ohm \n",
+ " capasitance 25.00*10**-6F \n",
+ " ratio of capacitance 2.463\n"
+ ]
+ }
+ ],
+ "prompt_number": 90
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.17 Page 74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "v1=132#line voltage at primary\n",
+ "v2=11#line voltage at secondary\n",
+ "p=10 #power\n",
+ "pf=0.8 #power factor\n",
+ "mva=p*(complex(pf,sin(acos(pf))))\n",
+ "print \" MVA rating of secondary = %dMVA =%d+%djMVA \\n \"%(p,abs(mva),mva.imag)\n",
+ "print \"\\n since the power factor at primary terminals is unity,rating of primary need be %dMVA only \\n the tertiary will supply capacitor curren.since p.f is to be raised to 1 ,the mav compensation needed is 6MVA so rating of teritiary is %dMVA\"%(abs(mva),mva.imag)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " MVA rating of secondary = 10MVA =9+5jMVA \n",
+ " \n",
+ "\n",
+ " since the power factor at primary terminals is unity,rating of primary need be 9MVA only \n",
+ " the tertiary will supply capacitor curren.since p.f is to be raised to 1 ,the mav compensation needed is 6MVA so rating of teritiary is 5MVA\n"
+ ]
+ }
+ ],
+ "prompt_number": 91
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.18 Page 74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "v=11 #line voltage\n",
+ "f=50#line frequency\n",
+ "l=400 #load of alternator\n",
+ "pf=0.8 #power factor\n",
+ "e=0.85#efficiency\n",
+ "p=l/pf\n",
+ "lo=l+p*sin(acos(pf))*1J\n",
+ "print \"a\"\n",
+ "print \"when pf is rased to 1 the alternator can supply %dkW for the same value of armture current hence it can supply %dKW to synchronous motor\"%(p,p-l)\n",
+ "print \"b\"\n",
+ "print \"b.h.p =%.2fHP\"%(100*e/0.746)\n",
+ "kvam=p-lo\n",
+ "td=atan((kvam).imag/(kvam).real)\n",
+ "pff=cos(td)\n",
+ "print \"\\ncosd=%.3fleading\"%(pff)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a\n",
+ "when pf is rased to 1 the alternator can supply 500kW for the same value of armture current hence it can supply 100KW to synchronous motor\n",
+ "b\n",
+ "b.h.p =113.94HP\n",
+ "\n",
+ "cosd=0.316leading\n"
+ ]
+ }
+ ],
+ "prompt_number": 92
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.19 Page 74"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "kw=100 #let kw=100kw\n",
+ "pf=0.6 #power foctor\n",
+ "pf2=0.8 #power factor\n",
+ "kvar=kw*tan(acos(pf))\n",
+ "kvar2=kw*tan(acos(pf2))\n",
+ "ckar=((kvar-kvar2))/10\n",
+ "ck=round(ckar)*10\n",
+ "print \" capacitor kVAR required for %dkW\\n load for same power factor improvement %dKVAR\"%(round(ckar),ck)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " capacitor kVAR required for 6kW\n",
+ " load for same power factor improvement 60KVAR\n"
+ ]
+ }
+ ],
+ "prompt_number": 93
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.20 Page 75"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "p=160 #kva for transformer \n",
+ "pf=0.6 #power factor\n",
+ "el=96 #effective load\n",
+ "eli=120 #effective load increase\n",
+ "rc=eli*(tan(acos(pf))-tan(acos(eli/p)))\n",
+ "opf=eli/p\n",
+ "print \" required capacitor kVAR %dKVAR \\n overall power factor %.2f \\n it is seen that point d is on %.2f line\"%(rc,opf,opf)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " required capacitor kVAR 54KVAR \n",
+ " overall power factor 0.75 \n",
+ " it is seen that point d is on 0.75 line\n"
+ ]
+ }
+ ],
+ "prompt_number": 94
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.21 page 76"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "md=800 #maximum demand\n",
+ "pf=0.707 #power factor\n",
+ "c=80 #cost\n",
+ "p=200 #power\n",
+ "e=0.99#efficiency\n",
+ "pff=0.8 #fulload pf\n",
+ "ikva=md/pf\n",
+ "iafc=(round(ikva*100)*(c)/100)\n",
+ "rsm=ikva*pf\n",
+ "act=p*(0.7355)/e\n",
+ "at=-act*sin(acos(pff))\n",
+ "tkw=rsm+act\n",
+ "tkvr=rsm+at\n",
+ "tkva=(tkw**2+tkvr**2)**0.5\n",
+ "ikvad=tkva-ikva\n",
+ "infc=ikvad*c\n",
+ "print \" initial kVA %.2fkVA \\n initial annual fixed charges Rs%.1f \\n after installation of synchronous motor reactive power of induction motor %dkVars\\n active power input of synchrounous motor %.2fkW\\n reactive power input to synchrounous motor %.2fKVAR \\n total kW %.2fKW \\n total kVars %.2fkVARS \\n total kVA %.2fkVA \\n increase in KVA demand %.2fkVA\\n increase in annual fixed charges Rs%.1f \"%(ikva,iafc,rsm,act,at,tkw,tkvr,tkva,ikvad,infc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " initial kVA 1131.54kVA \n",
+ " initial annual fixed charges Rs90523.2 \n",
+ " after installation of synchronous motor reactive power of induction motor 800kVars\n",
+ " active power input of synchrounous motor 148.59kW\n",
+ " reactive power input to synchrounous motor -89.15KVAR \n",
+ " total kW 948.59KW \n",
+ " total kVars 710.85kVARS \n",
+ " total kVA 1185.38kVA \n",
+ " increase in KVA demand 53.84kVA\n",
+ " increase in annual fixed charges Rs4306.9 \n"
+ ]
+ }
+ ],
+ "prompt_number": 95
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 4.22 Page 77"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "t=16#working time\n",
+ "d=300 #working days\n",
+ "hv=1 ;hvmd=50 #tariff on high voltage\n",
+ "lv=1.1 ;lvmd=60 #tariff on low voltage\n",
+ "al=250#avarage load\n",
+ "pf=0.8#power factor\n",
+ "md=300 #maximum demand\n",
+ "hvec=500#cost of hv equipment\n",
+ "l=0.05 #loss of hv equipment\n",
+ "id=0.12 #interest and deprecistion\n",
+ "ter=al*md*t \n",
+ "mdv=md/pf\n",
+ "print \" total energy requirement %2.2ekWH \\n maximum demand %dKVA\"%(ter,mdv)\n",
+ "print \"(a)HV supply\"\n",
+ "chv=mdv*hvec\n",
+ "idc=chv*id\n",
+ "ere=ter/(1-l)\n",
+ "dch=mdv*hvmd\n",
+ "ech=round(ere*hv/1000)*1000\n",
+ "tanc=ech+dch+idc\n",
+ "print \" cost of HV equipment Rs%e\\n interest and depreciation charges Rs%d \\n energy received %ekWh\\n demand charges Rs%d \\n energy charges Rs%2e \\n total annual cost Rs%d\"%(chv,idc,ere,dch,ech,tanc)\n",
+ "print \"(b) LV supply\"\n",
+ "lvdc=mdv*lvmd\n",
+ "lvec=ter*lv\n",
+ "lvtac=lvec+lvdc\n",
+ "lvdac=lvtac-tanc\n",
+ "print \" demand charges Rs%d \\n energy charges Rs%2.e \\n total annual cost Rs%d \\n difference in annual cost Rs%d\"%(lvdc,lvec,lvtac,lvdac)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " total energy requirement 1.20e+06kWH \n",
+ " maximum demand 375KVA\n",
+ "(a)HV supply\n",
+ " cost of HV equipment Rs1.875000e+05\n",
+ " interest and depreciation charges Rs22500 \n",
+ " energy received 1.263158e+06kWh\n",
+ " demand charges Rs18750 \n",
+ " energy charges Rs1.263000e+06 \n",
+ " total annual cost Rs1304250\n",
+ "(b) LV supply\n",
+ " demand charges Rs22500 \n",
+ " energy charges Rs1e+06 \n",
+ " total annual cost Rs1342500 \n",
+ " difference in annual cost Rs38250\n"
+ ]
+ }
+ ],
+ "prompt_number": 96
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter5.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter5.ipynb
new file mode 100644
index 00000000..94d5fce1
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter5.ipynb
@@ -0,0 +1,406 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:06110b459e793fe6a13fb1d3a89d2d5ed8547f434fe98d182911c57050d94ef4"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-5, Selection of Plant"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 5.1 Page 87"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "aerpe=100*10**6\n",
+ "md=25*10**3\n",
+ "def ucc(dd,e):\n",
+ " u=600*dd+0.3*e #rs per kW\n",
+ " return u\n",
+ "sc=30*10**3\n",
+ "\n",
+ "a_cci=9000#per kW\n",
+ "a_shr=4000\n",
+ "b_cci=10500\n",
+ "b_shr=3500\n",
+ "c_cci=12000\n",
+ "c_shr=3000\n",
+ "salc=3000\n",
+ "sal=2280\n",
+ "sh=10\n",
+ "tax=0.04\n",
+ "ins=0.5*10**-2\n",
+ "cir=0.07\n",
+ "hv=5000#l cal per kg\n",
+ "fuc=225#rs per ton\n",
+ "acsnm=150000#for each plan\n",
+ "pl=20\n",
+ "dr=cir/((cir+1)**pl-1)\n",
+ "tfcr=cir+dr+tax+ins\n",
+ "print \"depreciation rate %f \\ntotal fixed rate =%f\"%(dr,tfcr)\n",
+ "a_ci=a_cci*sc ;b_ci=b_cci*sc ;c_ci=c_cci*sc\n",
+ "a_afca=a_ci*tfcr ;b_afca=b_ci*tfcr ;c_afca=c_ci*tfcr\n",
+ "a_afuc=a_shr*fuc*10**8/(hv*10**3)\n",
+ "b_afuc=b_shr*fuc*10**8/(hv*10**3)\n",
+ "c_afuc=c_shr*fuc*10**8/(hv*10**3)\n",
+ "ass=12*(salc+sh*sal)\n",
+ "tota=a_afca+ass+a_afuc+acsnm\n",
+ "totb=b_afca+ass+b_afuc+acsnm\n",
+ "totc=c_afca+ass+c_afuc+acsnm\n",
+ "print \"\\nannual fixed cost of a is Rs%d fuel cost of plan a is Rs%d and total cost of a is Rs%d\"%(a_afca,a_afuc,tota)\n",
+ "print \"\\nannual fixed cost of b is Rs%d fuel cost of plan b is Rs%d and total cost of b is Rs%d\"%(b_afca,b_afuc,totb)\n",
+ "print \"\\nannual fixed cost of c is Rs%d fuel cost of plan c is Rs%d and total cost of c is Rs%d\"%(c_afca,c_afuc,totc)\n",
+ "\n",
+ "ppt=ucc(md,aerpe)\n",
+ "print \"\\nannual cost of purchasing electricty from utility is Rs600x%d+0.3x%.1e is Rs%d\"%(md,aerpe,ppt)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "depreciation rate 0.024393 \n",
+ "total fixed rate =0.139393\n",
+ "\n",
+ "annual fixed cost of a is Rs37636089 fuel cost of plan a is Rs18000000 and total cost of a is Rs56095689\n",
+ "\n",
+ "annual fixed cost of b is Rs43908771 fuel cost of plan b is Rs15750000 and total cost of b is Rs60118371\n",
+ "\n",
+ "annual fixed cost of c is Rs50181453 fuel cost of plan c is Rs13500000 and total cost of c is Rs64141053\n",
+ "\n",
+ "annual cost of purchasing electricty from utility is Rs600x25000+0.3x1.0e+08 is Rs45000000\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 5.2 Page 88"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "aer=100*10**6\n",
+ "md=25*10**3\n",
+ "def ucc(dd,e):\n",
+ " u=600*dd+0.3*e #rs per kW\n",
+ " return u\n",
+ "p=30*10**3\n",
+ "ap=9000#per kW\n",
+ "ahr=4000\n",
+ "bp=10500\n",
+ "bhr=3500\n",
+ "cp=12000\n",
+ "Chr=3000\n",
+ "salc=3000\n",
+ "sal=2280\n",
+ "sh=10\n",
+ "t=0.04\n",
+ "i=0.5*10**-2\n",
+ "r=0.07\n",
+ "hv=5000#l cal per kg\n",
+ "fuc=225#rs per ton\n",
+ "mc=150000#for each plan\n",
+ "n=20\n",
+ "dr=r/((r+1)**n-1)\n",
+ "pwf=r/(1-(r+1)**(-n))\n",
+ "print \"persent of worth factor is %f\"%(pwf)\n",
+ "afc=ahr*fuc*10**8/(hv*10**3)\n",
+ "bfc=bhr*fuc*10**8/(hv*10**3)\n",
+ "cfc=Chr*fuc*10**8/(hv*10**3)\n",
+ "ass=12*(salc+sh*sal)\n",
+ "aaoc=ass+mc+afc\n",
+ "baoc=ass+mc+bfc\n",
+ "caoc=ass+mc+cfc\n",
+ "ai=ap*p ;bi=bp*p ;ci=cp*p\n",
+ "atac=(t+i)*ap*p+aaoc\n",
+ "btac=(i+t)*bp*p+baoc\n",
+ "ctac=(i+t)*cp*p+caoc\n",
+ "uts=ucc(md,aer)\n",
+ "apw=atac/pwf ;bpw=btac/pwf ;cpw=ctac/pwf; utss=uts/pwf\n",
+ "ta=apw+ai ;tb=bpw+bi; tc=cpw+ci\n",
+ "print \"\\nannual cost excludinding interest and \\ndepreciation of a \\t\\tRs%d \\npersent worth factor \\t\\t %f \\npresent worth annual cost of a is Rs%d \\n investement of a is \\tRs%d \\n total persent worth of a is \\t%d\"%(atac,pwf,apw,ai,ta)\n",
+ "print \"\\n\\n annual cost excludinding interest and \\ndepreciation of b \\t\\tRs%d \\npersent wort factor \\t\\t%f \\npresent worth annual cost of b is Rs%d \\n investement of b is \\tRs%d \\n total persent worth of b is \\t%d\"%(btac,pwf,bpw,bi,tb)\n",
+ "print \"\\n \\nannual cost excludinding interest and \\ndepreciation of c \\t\\tRs%d \\npersent wort factor \\t\\t%f \\npresent worth annual cost of c is Rs%d \\n investement of c is \\tRs%d \\n total persent worth of c is \\t%d\"%(ctac,pwf,cpw,ci,tc)\n",
+ "print \"\\n \\nannual cost excludinding interest and \\ndepreciation of utility service \\tRs%d \\npersent wort factor \\t\\t\\t%f \\npresent worth annual cost of utility service is Rs%d \\n investement of utility service is \\t\\t nill \\n total persent worth of utility service is %d\"%(uts,pwf,utss,utss)\n",
+ "print \"\\n\\n\\tsince the present worth of the utility service is the minimum,it is the obvious choice \\nout of the other plans,plan A is the best since it has the lowest present worth\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "persent of worth factor is 0.094393\n",
+ "\n",
+ "annual cost excludinding interest and \n",
+ "depreciation of a \t\tRs30609600 \n",
+ "persent worth factor \t\t 0.094393 \n",
+ "present worth annual cost of a is Rs324278538 \n",
+ " investement of a is \tRs270000000 \n",
+ " total persent worth of a is \t594278538\n",
+ "\n",
+ "\n",
+ " annual cost excludinding interest and \n",
+ "depreciation of b \t\tRs30384600 \n",
+ "persent wort factor \t\t0.094393 \n",
+ "present worth annual cost of b is Rs321894885 \n",
+ " investement of b is \tRs315000000 \n",
+ " total persent worth of b is \t636894885\n",
+ "\n",
+ " \n",
+ "annual cost excludinding interest and \n",
+ "depreciation of c \t\tRs30159600 \n",
+ "persent wort factor \t\t0.094393 \n",
+ "present worth annual cost of c is Rs319511232 \n",
+ " investement of c is \tRs360000000 \n",
+ " total persent worth of c is \t679511232\n",
+ "\n",
+ " \n",
+ "annual cost excludinding interest and \n",
+ "depreciation of utility service \tRs45000000 \n",
+ "persent wort factor \t\t\t0.094393 \n",
+ "present worth annual cost of utility service is Rs476730641 \n",
+ " investement of utility service is \t\t nill \n",
+ " total persent worth of utility service is 476730641\n",
+ "\n",
+ "\n",
+ "\tsince the present worth of the utility service is the minimum,it is the obvious choice \n",
+ "out of the other plans,plan A is the best since it has the lowest present worth\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 5.3 Page 89"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "aer=100*10**6 #from example 5.1\n",
+ "md=25*10**3\n",
+ "def ucc(dd,e):\n",
+ " u=600*dd+0.3*e #rs per kW\n",
+ " return u\n",
+ "p=30*10**3\n",
+ "ap=9000#per kW\n",
+ "ahr=4000\n",
+ "bp=10500\n",
+ "bhr=3500\n",
+ "cp=12000\n",
+ "Chr=3000\n",
+ "salc=3000\n",
+ "sal=2280\n",
+ "sh=10\n",
+ "t=0.04\n",
+ "i=0.5*10**-2\n",
+ "r=0.07\n",
+ "hv=5000#l cal per kg\n",
+ "fuc=225#rs per ton\n",
+ "mc=150000#for each plan\n",
+ "n=20\n",
+ "dr=r/((r+1)**n-1)\n",
+ "pwf=r/(1-(r+1)**(-n))\n",
+ "uts=ucc(md,aer)\n",
+ "afc=ahr*fuc*10**8/(hv*10**3)\n",
+ "bfc=bhr*fuc*10**8/(hv*10**3)\n",
+ "cfc=Chr*fuc*10**8/(hv*10**3)\n",
+ "ass=12*(salc+sh*sal)\n",
+ "aaoc=ass+mc+afc\n",
+ "baoc=ass+mc+bfc\n",
+ "caoc=ass+mc+cfc\n",
+ "aw=(((dr+t+i)*ap*p+aaoc)/r)+ap*p\n",
+ "bw=(((dr+t+i)*bp*p+baoc)/r)+bp*p\n",
+ "cw=(((dr+t+i)*cp*p+caoc)/r)+cp*p\n",
+ "utt=uts/r+p\n",
+ "print \"\\n plan A is \\t\\tRs.%d \\n plan B is \\t\\tRs.%d \\n planC is \\t\\tRs.%d \\nutility services is \\tRs%d\"%(aw,bw,cw,utt)\n",
+ "print \"the utility service has the lowest capitalized cost and is the obvious choice. Out of the other plans,plan A is the best\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " plan A is \t\tRs.801366999 \n",
+ " plan B is \t\tRs.858833880 \n",
+ " planC is \t\tRs.916300760 \n",
+ "utility services is \tRs642887142\n",
+ "the utility service has the lowest capitalized cost and is the obvious choice. Out of the other plans,plan A is the best\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 5.4 page 90"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "aer=100*10**6\n",
+ "md=25*10**3\n",
+ "utse=6600*10**4\n",
+ "p=30*10**3\n",
+ "ap=9000#per kW\n",
+ "ahr=4000\n",
+ "bp=10500\n",
+ "bhr=3500\n",
+ "cp=12000\n",
+ "Chr=3000\n",
+ "salc=3000\n",
+ "sal=2280\n",
+ "sh=10\n",
+ "t=0.04\n",
+ "i=0.5*10**-2\n",
+ "r=0.07\n",
+ "hv=5000#l cal per kg\n",
+ "fuc=225#rs per ton\n",
+ "mc=150000#for each plan\n",
+ "n=20\n",
+ "dr=r/((r+1)**n-1)\n",
+ "pwf=r/(1-(r+1)**(-n))\n",
+ "afc=ahr*fuc*10**8/(hv*10**3)\n",
+ "bfc=bhr*fuc*10**8/(hv*10**3)\n",
+ "cfc=Chr*fuc*10**8/(hv*10**3)\n",
+ "ass=12*(salc+sh*sal)\n",
+ "aaoc=ass+mc+afc\n",
+ "baoc=ass+mc+bfc\n",
+ "caoc=ass+mc+cfc\n",
+ "\n",
+ "sol_a_totalannualcost=(t+i)*ap*p+aaoc\n",
+ "sol_b_totalannualcost=(i+t)*bp*p+baoc\n",
+ "sol_c_totalannualcost=(i+t)*cp*p+caoc\n",
+ "\n",
+ "sol_a_pinvestement=ap*p \n",
+ "sol_b_pinvestement=bp*p \n",
+ "sol_c_pinvestement=cp*p\n",
+ "\n",
+ "sol_a_annuity=utse-sol_a_totalannualcost \n",
+ "sol_b_annuity=utse-sol_b_totalannualcost \n",
+ "sol_c_annuity=utse-sol_c_totalannualcost \n",
+ "\n",
+ "sol_a_ratioaandp=sol_a_annuity/sol_a_pinvestement \n",
+ "sol_b_ratioaandp=sol_b_annuity/sol_b_pinvestement \n",
+ "sol_c_ratioaandp=sol_c_annuity/sol_c_pinvestement \n",
+ "def alt(r):\n",
+ " R=abs(r/(1-wr))\n",
+ " return R\n",
+ "ra=round((sol_a_ratioaandp)*100)\n",
+ "rb=round((sol_b_ratioaandp)*100)\n",
+ "rc=round((sol_c_ratioaandp)*100)\n",
+ "from numpy import arange\n",
+ "for x in arange(-0.12,-0.07,0.001): #for itration\n",
+ " wr=(1+x)**n\n",
+ " re=alt(x)\n",
+ " re=(round(re*100))\n",
+ " if re==ra :\n",
+ " sol_a_return=(abs(x)*100)\n",
+ " #end\n",
+ " if re==rb :\n",
+ " sol_b_return=(abs(x)*100)\n",
+ " #end\n",
+ " if re==rc :\n",
+ " sol_c_return=(abs(x)*100)\n",
+ " #end\n",
+ " #end\n",
+ "print \"for (a)\"\n",
+ "print \"total annual cost Rs.%d\\ninvestement Rs.%d\\nannuity Rs%d \\nratio of a and b %f \\nrate of return %.1fpercent\"%(sol_a_totalannualcost,sol_a_pinvestement,sol_a_annuity,sol_a_ratioaandp,sol_a_return)\n",
+ "print \"for (b)\"\n",
+ "print \"total annual cost Rs.%d\\ninvestement Rs.%d\\nannuity Rs%d \\nratio of a and b %f \\nrate of return %.1fpercent\"%(sol_b_totalannualcost,sol_b_pinvestement,sol_b_annuity,sol_b_ratioaandp,sol_b_return)\n",
+ "print \"for (c)\"\n",
+ "print \"total annual cost Rs.%d\\ninvestement Rs.%d\\nannuity Rs%d \\nratio of a and b %f \\nrate of return %.1fpercent\"%(sol_c_totalannualcost,sol_c_pinvestement,sol_c_annuity,sol_c_ratioaandp,sol_c_return)\n",
+ "sb=sol_b_annuity-sol_a_annuity\n",
+ "sc=sol_c_annuity-sol_b_annuity\n",
+ "ib=sol_b_pinvestement-sol_a_pinvestement\n",
+ "ic=sol_b_pinvestement-sol_a_pinvestement\n",
+ "rcb=sb/ib; rcc=sc/ic \n",
+ "print \"\\nsaving in annual cost excluding interest and depreciation B over A \\t %d C over A \\t %d\"%(sb,sc)\n",
+ "print \"\\nadditional investement P is \\t\\t\\t\\tB over A \\t %d C over A \\t %d\"%(ib,ic)\n",
+ "print \"\\nrate of saving to investement \\t\\t\\t\\tAoverB \\t\\t %f BoverC \\t%f\"%(rcb,rcc)\n",
+ "print \"\\nrate of return on capital investement\\n evidently plan A is the best \\t\\t\\t\\tA over B \\tNegative B over C \\tNegative\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "for (a)\n",
+ "total annual cost Rs.30609600\n",
+ "investement Rs.270000000\n",
+ "annuity Rs35390400 \n",
+ "ratio of a and b 0.131076 \n",
+ "rate of return 11.4percent\n",
+ "for (b)\n",
+ "total annual cost Rs.30384600\n",
+ "investement Rs.315000000\n",
+ "annuity Rs35615400 \n",
+ "ratio of a and b 0.113065 \n",
+ "rate of return 8.9percent\n",
+ "for (c)\n",
+ "total annual cost Rs.30159600\n",
+ "investement Rs.360000000\n",
+ "annuity Rs35840400 \n",
+ "ratio of a and b 0.099557 \n",
+ "rate of return 7.6percent\n",
+ "\n",
+ "saving in annual cost excluding interest and depreciation B over A \t 225000 C over A \t 225000\n",
+ "\n",
+ "additional investement P is \t\t\t\tB over A \t 45000000 C over A \t 45000000\n",
+ "\n",
+ "rate of saving to investement \t\t\t\tAoverB \t\t 0.005000 BoverC \t0.005000\n",
+ "\n",
+ "rate of return on capital investement\n",
+ " evidently plan A is the best \t\t\t\tA over B \tNegative B over C \tNegative\n"
+ ]
+ }
+ ],
+ "prompt_number": 21
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter7.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter7.ipynb
new file mode 100644
index 00000000..5639c996
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter7.ipynb
@@ -0,0 +1,68 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:4bf0487ef61060d74c76e88260cd9371bbf64a818ec5d960914c1be96c7eb7a6"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-7, Thermal Power Plants"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example7.1 Page 127"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "pow=100*10**6\n",
+ "calv=6400\n",
+ "threff=0.3\n",
+ "elceff=0.92\n",
+ "kcal=0.239*10**-3\n",
+ "eo=pow*3600\n",
+ "ei=eo/(threff*elceff)\n",
+ "eikc=ei*kcal\n",
+ "colreq=eikc/6400\n",
+ "print \" energy output in 1 hour is %eWatt.sec \"%eo\n",
+ "print \"\\n energy input in one hour is %ejoules Watt.sec\\n\"%ei\n",
+ "print \" energy input in 1 hour is %ekcal.\"%eikc\n",
+ "print \"\\n coal required is %.3fkg per hour\"%colreq"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " energy output in 1 hour is 3.600000e+11Watt.sec \n",
+ "\n",
+ " energy input in one hour is 1.304348e+12joules Watt.sec\n",
+ "\n",
+ " energy input in 1 hour is 3.117391e+08kcal.\n",
+ "\n",
+ " coal required is 48709.239kg per hour\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter8.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter8.ipynb
new file mode 100644
index 00000000..8e55bc2d
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter8.ipynb
@@ -0,0 +1,416 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:89d211f2bab9ed7eb89e6e1658fcc2ecaf90b3f2ef927e14d02a2cb79920c159"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-8, Hydro-Electric Plants"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 8.1 Page 134"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "h=100 #given height\n",
+ "q=200 #discharge\n",
+ "e=0.9 #efficiency\n",
+ "p=(735.5/75)*q*h*e\n",
+ "print \"\\npower developed by hydro plant is %0.2f MW\"%(p/1e3)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "power developed by hydro plant is 176.52 MW\n"
+ ]
+ }
+ ],
+ "prompt_number": 33
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 8.2 page 134"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "flow=[0, 1000, 800, 600 ,400 ,400 ,1200, 2400 ,2400, 1000 ,400 ,400 ,1000] #flow in matrix from in the order of months\n",
+ "y=range(0,13)\n",
+ "yy = [(0,1),(1,2),(2,3),(3,4),(4,5)]\n",
+ "xx = [(0,1),(1,2),(2,3),(3,4),(4,5)]\n",
+ "h=150\n",
+ "e=0.85\n",
+ "avg=sum(flow)/12\n",
+ "print \"\\naverage rate of inflow is %dcu-m/sec\"%(avg)\n",
+ "p=(735.5/75)*avg*h*e\n",
+ "print \"\\npower developed is %0.2f MW\"%(p/1e3)\n",
+ "%matplotlib inline\n",
+ "from matplotlib.pyplot import plot, title, xlabel, ylabel, show\n",
+ "plot(y,flow)\n",
+ "title('hydrograph')\n",
+ "xlabel('months')\n",
+ "ylabel('run in cu-m/sec')\n",
+ "show()\n",
+ "print \"hydrograph is ploted in figure\"\n",
+ "flow1 = range(0,12)\n",
+ "for x in range(0,12):\n",
+ " t=flow[x]\n",
+ " a=avg\n",
+ " if t<a or t==avg:\n",
+ " t=0\n",
+ " else:\n",
+ " t=t-1000\n",
+ " #end\n",
+ " flow1[x]=t \n",
+ " #end\n",
+ "sto=sum(flow1)\n",
+ "print \"\\nstorage capacity of given plant is %dsec-m-month\"%(sto)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "average rate of inflow is 1000cu-m/sec\n",
+ "\n",
+ "power developed is 1250.35 MW\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7fb702908bd0>"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "hydrograph is ploted in figure\n",
+ "\n",
+ "storage capacity of given plant is 3000sec-m-month\n"
+ ]
+ }
+ ],
+ "prompt_number": 34
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 8.3 Page 135"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "flow=[1500, 1000, 500, 500, 500, 1200, 2900, 2900, 1000, 400 ,600 ,1600]\n",
+ "cod=1000#constant demand\n",
+ "#plot2d2(flow)\n",
+ "%matplotlib inline\n",
+ "from matplotlib.pyplot import plot, title, xlabel, ylabel, show\n",
+ "plot(flow)\n",
+ "title('hydrograph for exp 8.3')\n",
+ "xlabel('months')\n",
+ "ylabel('run off in m**3/sec')\n",
+ "avg=sum(flow)/12\n",
+ "if cod<avg:\n",
+ " flow1 = range(0,6)\n",
+ " for x in range(0,6):\n",
+ " t=flow[x]\n",
+ " if t>cod|t==avg:\n",
+ " t=0\n",
+ " else:\n",
+ " t=cod-t\n",
+ " #end \n",
+ " flow1[x]=t \n",
+ " #end\n",
+ " \n",
+ " else:\n",
+ " flow = range(0,12)\n",
+ " flow1 = range(0,12)\n",
+ " for x in range(0,12):\n",
+ " t=flow[x]\n",
+ " a=cod\n",
+ " if t>a|t==avg:\n",
+ " t=0\n",
+ " else:\n",
+ " t=t-cod\n",
+ " #end\n",
+ " flow1[x]=t \n",
+ " #end\n",
+ "#end\n",
+ "\n",
+ "sto=sum(flow1)\n",
+ "print \"storage capacity of plant is %dsec-m-month\"%(sto)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "storage capacity of plant is -11934sec-m-month\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7fb702908050>"
+ ]
+ }
+ ],
+ "prompt_number": 35
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 8.4 Page 135"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "flow=[1500, 1000, 500, 500, 500, 1200, 2900, 2900, 1000, 400 ,600 ,1600]\n",
+ "cod=1000#constant demand\n",
+ "#[m n]=size(flow)len\n",
+ "n=len(flow)\n",
+ "mf = range(0,n)\n",
+ "mf[0]=1500\n",
+ "for i in range(2,n):\n",
+ " mf[i]=mf[i-1]+flow[i]\n",
+ "%matplotlib inline\n",
+ "from matplotlib.pyplot import plot, title, xlabel, ylabel, show\n",
+ "\n",
+ "plot(mf)\n",
+ "from numpy import arange\n",
+ "dd= arange(1,mf[n-1],cod)\n",
+ "\n",
+ "avg=sum(flow)/12\n",
+ "if cod<avg:\n",
+ " for x in range(0,6):\n",
+ " t=flow[x]\n",
+ " if t>cod|t==avg:\n",
+ " t=0\n",
+ " else:\n",
+ " t=cod-t\n",
+ " #end\n",
+ " flow1[x]=t \n",
+ " #end\n",
+ " \n",
+ "else: \n",
+ " for x in range(0,12):\n",
+ " t=flow[x]\n",
+ " a=cod\n",
+ " if t>a|t==avg:\n",
+ " t=0\n",
+ " else:\n",
+ " t=t-cod\n",
+ " #end\n",
+ " flow1[x]=t \n",
+ " #end\n",
+ "#end\n",
+ "\n",
+ "sto=sum(flow1)\n",
+ "print \"storage capacity of plant is %dsec-m-month\"%(sto)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "storage capacity of plant is -5149sec-m-month\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7fb702585410>"
+ ]
+ }
+ ],
+ "prompt_number": 36
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 8.5 Page 154"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "flow=[80, 50 ,40 ,20 ,0 ,100, 150 ,200 ,250 ,120 ,100, 80]\n",
+ "h=100; e=80\n",
+ "%matplotlib inline\n",
+ "from matplotlib.pyplot import plot, title, xlabel, ylabel, show, subplot\n",
+ "\n",
+ "subplot(211)\n",
+ "plot(flow)\n",
+ "title('hydrograph')\n",
+ "xlabel('months')\n",
+ "ylabel('run off,millon m**3/month' )\n",
+ "fd=sorted(flow)\n",
+ "\n",
+ "subplot(212)\n",
+ "plot(fd)\n",
+ "title('flow duration')\n",
+ "xlabel('months')\n",
+ "ylabel('run off')\n",
+ "\n",
+ "t= range(0,12)\n",
+ "for x in range(1,10):\n",
+ " d=fd[x]\n",
+ " ad=fd[(x-1)]\n",
+ " if d==ad:\n",
+ " t[x]=[]\n",
+ " t[x-1]=t[x-1]+1\n",
+ " fd[x]=[]\n",
+ " #end\n",
+ "#end\n",
+ "ffw=fd+t\n",
+ "print \"load duration data is as under\"\n",
+ "print ffw\n",
+ "mf=sum(flow)*10**6/(30*24*3600)\n",
+ "print \"(a)\"\n",
+ "print \"meanflow is %fm**3-sec\"%(mf)\n",
+ "print \"(b)\"\n",
+ "p=(735.5/75)*mf*h*e\n",
+ "print \"power delevered in %dkW=%.3fMW\"%(p,p/1000)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "load duration data is as under\n",
+ "[0, 20, 40, 50, 80, [], 100, [], 120, 150, 200, 250, 0, 1, 2, 3, 5, [], 7, [], 8, 9, 10, 11]\n",
+ "(a)\n",
+ "meanflow is 459.104938m**3-sec\n",
+ "(b)\n",
+ "power delevered in 36018312kW=36018.313MW\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\nJg4AAAAASUVORK5CYII=\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7fb70255f810>"
+ ]
+ }
+ ],
+ "prompt_number": 37
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 8.6 Page 156"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "mh=205#mean height\n",
+ "a=1000*10**6#in miters\n",
+ "r=1.25#annual rain fall\n",
+ "er=0.8#efficiency\n",
+ "lf=0.75#load factor\n",
+ "hl=5#head loss\n",
+ "et=0.9#efficiency of turbine\n",
+ "eg=0.95#efficiency of generator\n",
+ "wu=a*r*er/(365*24*3600)\n",
+ "print \"\\nwater used is \\t\\t%fm**3/sec\"%(wu)\n",
+ "eh=mh-hl\n",
+ "print \"\\neffective head is \\t%dm\"%(eh)\n",
+ "p=(735.5/75)*(wu*eh*et*eg)\n",
+ "print \"\\npower generated is \\t%fkW =\\t%fMW\"%(p,p/1000)\n",
+ "pl=p/lf\n",
+ "print \"\\npeak load is \\t\\t%fMw \\ntherefore the MW rating of station is \\t%fMW\"%(pl/1000,pl/1000)\n",
+ "if eh<=200:\n",
+ " 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\"\n",
+ "else:\n",
+ " print \"only pelton turbine is most suitable\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "water used is \t\t31.709792m**3/sec\n",
+ "\n",
+ "effective head is \t200m\n",
+ "\n",
+ "power generated is \t53175.418569kW =\t53.175419MW\n",
+ "\n",
+ "peak load is \t\t70.900558Mw \n",
+ "therefore the MW rating of station is \t70.900558MW\n",
+ "\n",
+ "for a head above 200m pelton turbine is suitable,\n",
+ "francis turbine is suitable in the range of 30m-200m.,\n",
+ "however pelton is most suitable\n"
+ ]
+ }
+ ],
+ "prompt_number": 38
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter9.ipynb b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter9.ipynb
new file mode 100644
index 00000000..fab737f3
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter9.ipynb
@@ -0,0 +1,296 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:5804a8cf03ec2dc9fe48e7282fc5bb2ad9c57bb262c9f4fea9720f853cbc6882"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ch-9, Nuclear Power Stations"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.1 Page 169"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "m=1*10**-3#mass of 1 grm in kgs\n",
+ "c=3*10**8\n",
+ "e=m*c**2 \n",
+ "E=e/(1000*3600)\n",
+ "print \"energy equivalent of 1 gram is %dkWh\"%E"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "energy equivalent of 1 gram is 25000000kWh\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.2 Page 169"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "amu=1.66*10**-27#mass equvalent in kgs\n",
+ "c=3*10**8\n",
+ "j=6.242*10**12\n",
+ "e=amu*c**2\n",
+ "E=e*j \n",
+ "print \" energy evalent in joules is %ejoules \\n energy equvalent in Mev is %dMeV \\n hense shown\"%(e,E)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " energy evalent in joules is 1.494000e-10joules \n",
+ " energy equvalent in Mev is 932MeV \n",
+ " hense shown\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.3 Page 169"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "hm=2.0141\n",
+ "hp=1.007825\n",
+ "hn=1.008665\n",
+ "nm=58.9342\n",
+ "np=28\n",
+ "nn=59\n",
+ "um=235.0439\n",
+ "up=92\n",
+ "un=235\n",
+ "hmd=hp+hn-hm ;nmd=np*hp+(nn-np)*hn-nm ;umd=up*hp+(un-up)*hn-um \n",
+ "hbe=931*hmd ;nbe=931*nmd; ube=931*umd \n",
+ "ahbe=hbe/2 ;anbe=nbe/nn ;aube=ube/un \n",
+ "print \"\\t(a)\\n mass defect is for hydrogen %famu \\n total binding energy for hydrogens %fMev \\n average binding energy for hydrogen is %fMeV\"%(hmd,hbe,ahbe)\n",
+ "print \"\\n\\t(b)\\n mass defect is for nickel %famu \\n total binding energy for nickel is %fMev \\n average binding energy for nickelis %fMeV\"%(nmd,nbe,anbe)\n",
+ "print \"\\n\\t(c)\\n mass defect of uranium is %famu \\n total binding energy uranium is %fMev \\n average binding energy uranium is %fMeV\"%(umd,ube,aube)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\t(a)\n",
+ " mass defect is for hydrogen 0.002390amu \n",
+ " total binding energy for hydrogens 2.225090Mev \n",
+ " average binding energy for hydrogen is 1.112545MeV\n",
+ "\n",
+ "\t(b)\n",
+ " mass defect is for nickel 0.553515amu \n",
+ " total binding energy for nickel is 515.322465Mev \n",
+ " average binding energy for nickelis 8.734279MeV\n",
+ "\n",
+ "\t(c)\n",
+ " mass defect of uranium is 1.915095amu \n",
+ " total binding energy uranium is 1782.953445Mev \n",
+ " average binding energy uranium is 7.587036MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.4 Page 170"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from math import exp\n",
+ "no=1.7*10**24\n",
+ "hl=7.1*10**8\n",
+ "t=10*10**8\n",
+ "lm=0.693/(hl)\n",
+ "lmda=lm/(8760*3600)\n",
+ "ia=lmda*no\n",
+ "n=no*(exp(-lm*t))\n",
+ "print \"(lamda) disintegrations per sec is %ebq \\n initial activity is lamda*na is %ebq \\n final number of atoms is %eatoms\"%(lmda,ia,n)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(lamda) disintegrations per sec is 3.095054e-17bq \n",
+ " initial activity is lamda*na is 5.261592e+07bq \n",
+ " final number of atoms is 6.405500e+23atoms\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.5 Page 170"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "um=5\n",
+ "owp=2.6784*10**15\n",
+ "an=6.023*10**23\n",
+ "na1g=an/235\n",
+ "na5g=an*5/235\n",
+ "p=na5g/owp\n",
+ "print \" 1 watt power requvires %efussions per day \\n number of atoms in 5 gram is %eatoms \\n power is %eMW \"%(owp,na5g,p)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " 1 watt power requvires 2.678400e+15fussions per day \n",
+ " number of atoms in 5 gram is 1.281489e+22atoms \n",
+ " power is 4.784533e+06MW \n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.6 Page 171"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "pp=235\n",
+ "pe=0.33\n",
+ "lf=1\n",
+ "teo=pp*8760*3600*10**6\n",
+ "ei=teo/pe\n",
+ "nfr=3.1*10**10#fessions required\n",
+ "tnfr=nfr*ei\n",
+ "t1gu=2.563*10**21 #total uranium atoms in 1 grm\n",
+ "fure=tnfr/t1gu\n",
+ "print \"total energy input %eWatt sec \\n energy input is %eWatt-sec\\n total number of fissions required is %efissions \\n fuel required is %e grams %dkg\"%(teo,ei,tnfr,fure,fure/1000)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "total energy input 7.410960e+15Watt sec \n",
+ " energy input is 2.245745e+16Watt-sec\n",
+ " total number of fissions required is 6.961811e+26fissions \n",
+ " fuel required is 2.716274e+05 grams 271kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.7 Page 171"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "from math import log\n",
+ "en=3*10**6\n",
+ "a=12\n",
+ "fen=0.1\n",
+ "Es=2/(12+2/3)\n",
+ "re=exp(Es)\n",
+ "print \"(a)\\nratio of energies per collision is %f\"%(re)\n",
+ "rietf=en/fen\n",
+ "ldie=log(rietf)\n",
+ "nc=ldie/Es\n",
+ "print \"(b)\\npatio of iniial to final energies is %e \\nlogarithemic decrement in energy is %f \\nnumber of collisions is %d\"%(rietf,ldie,nc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "ratio of energies per collision is 1.171043\n",
+ "(b)\n",
+ "patio of iniial to final energies is 3.000000e+07 \n",
+ "logarithemic decrement in energy is 17.216708 \n",
+ "number of collisions is 109\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/EnergyLoadnMassCurve.png b/Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/EnergyLoadnMassCurve.png
new file mode 100644
index 00000000..9993d13d
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/EnergyLoadnMassCurve.png
Binary files differ
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/loadCurve2.png b/Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/loadCurve2.png
new file mode 100644
index 00000000..be07af4b
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/loadCurve2.png
Binary files differ
diff --git a/Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/loadDurnECur.png b/Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/loadDurnECur.png
new file mode 100644
index 00000000..c21d78a0
--- /dev/null
+++ b/Generation_Of_Electrical_Energy_by_B._R._Gupta/screenshots/loadDurnECur.png
Binary files differ