summaryrefslogtreecommitdiff
path: root/Generation_Of_Electrical_Energy_by_B._R._Gupta/Chapter2_1.ipynb
blob: 9495c2622cefbe246c1d511683d0b91aef057871 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Ch-2, Loads & Load Curves"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example - 2.1, page - 17"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    }
   ],
   "source": [
    "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"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.2, page - 19"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f6d88398890>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\njTYAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f6d701eeed0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    }
   ],
   "source": [
    "%matplotlib inline\n",
    "from matplotlib.pyplot import plot, subplot, title, title, show, hist\n",
    "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",
    "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"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.3 : page - 22"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    }
   ],
   "source": [
    "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)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.4 : page -28"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    },
    {
     "data": {
      "image/png": "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\nNNIAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f6d7032fe50>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f6d700abe90>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from __future__ import division\n",
    "%matplotlib inline\n",
    "from matplotlib.pyplot import plot, subplot, title, title, show, hist\n",
    "\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()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.5 : page - 29"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "capacity factor =0.473\n",
      "\n",
      "utilisation factor =0.80\n"
     ]
    }
   ],
   "source": [
    "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)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.6 : page - 29"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f6d8839b710>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f6d6bf86350>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from numpy import nditer\n",
    "%matplotlib inline\n",
    "from matplotlib.pyplot import plot, subplot, title, xlabel, ylabel, show\n",
    "\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",
    "\n",
    "for x, y in nditer([l, E]):\n",
    "    print '  ',x,'\\t\\t\\t ',y\n",
    "\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()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.7 : page 30"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    }
   ],
   "source": [
    "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)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.8 : pge 30"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "energy required required by the system in 24 hrs = 2060 MWh\n",
      "\n",
      "daily load factor = 0.572222 or 57.22 %\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f6d88369b90>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "%matplotlib inline\n",
    "from matplotlib.pyplot import plot, subplot, title, xlabel, ylabel, show\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",
    "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",
    "plot(a,b)\n",
    "title('Load Curve')\n",
    "xlabel(\"TIME -->\")\n",
    "ylabel(\"MW -->\")\n",
    "show()\n",
    "#xtitle(\"load curve\"%(\"time\"%(\"MW\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.9: page 31"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYcAAAEZCAYAAAB8culNAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XvcVXP6//HXuxJSVEJK5BDJoZooCd3jNA3jOEhICDOM\n4zjV8NDtO8PQMGp+DjOGklNEDlEoxq0ocigiRESlgxRFDh2u3x+fdde2730f23uvfbiej8f9aO21\n9lrrWt1r39den6PMDOeccy5RvbgDcM45l3s8OTjnnKvAk4NzzrkKPDk455yrwJODc865Cjw5OOec\nq8CTQxpImiPpkAwct1TS/bV4/1pJO6U7jirON05S32ydzzmXPQ3iDqBAWPSTiePmBEmlwM5mti4Z\nmNkR8UXknMskf3JwSPIvCS5WkurHHUOyYv9ceHJIM0kbSxoiaX70c6ukhtG2ppKekbRY0lJJT0tq\nnbDvjpJelrRc0nigRTXnukLSl5LmSToraVuZpP4Jr8+QNCnh9VpJ50v6GPgoWjdU0heSvpX0pqQD\novW9gIFAb0krJE1LPoeCa6IitkWSRkjaPNrWNjrf6ZI+l/SVpL9syP+zyw5JrSSNju7ZTyVdmLCt\nVNKo6He9XNJ7krrUYt/HJN0v6VugX3T/T4yONUHS7eXFqpLGSrogKbZ3JR1TSdwHSJosaVl0T58e\nra/p52IWMEvSHZL+kXTspyRdWt015jtPDul3NdAV6Bj9dAWuibbVA+4Bto9+fgBuS9j3IeANYEvg\nr0A/Kilaiv5gXwYcCuwa/ZuoJkVdxwD7Ah2i11OjmJtFsTwqqaGZPQfcADxsZk3MrHOKc5wZxVsC\n7AQ0Tro2gB5RrIcA10pqX018LkaS6gFPA9OAVoTf2yWSDk9421HASGALYAzR77yG+x4NPGpmWxDu\nt4eA14DmQClwGuvvr3uj1+WxdYyOOzZF3DsA44ChhC9YnYB3os01/Vx0BXaPrq13wrGbAYcBI2t4\njfnLzPxnA3+Az4CDo+VPgF4J2w4HPqtkv07A0mh5e2AVsGnC9geB+yvZdxhwQ8LrdsBaYKfo9UvA\nWQnbzwAmJbxeC5RUc11Lgb2i5dLkWBLPAbwI/DFh267Az4SE2DY6X6uE7a8DveP+3flPlb//bsDn\nSesGAsMS7onxCds6ACtrsW9Zwrby+3+ThHX3l99zwCbR/bhz9Ppm4LZK4h4IjK5kW60+F4CAz4ED\no9fnAC/U5Brz/aeoy9QypBXhZir3RbQOSY2AW4HfEL6dAzSWpOg9y8zsh4R9PwfaVHKebQlPGYnn\nqa25iS8kXQ6cFcViwOZUU7SVFE/ydTcAtklYtzBheSWwWS3jddm1A9BK0rKEdfWBiQmvFyUsrwQ2\nib5R12TfeQnLrQhflH5MWDeX6P43sx8ljQL6SroOOBn4fSVxbwd8Wt3FVWHd58LMTNLDQB9gEnAK\ncF+0uSbXmLc8OaTfl4Rvyh9Er7cH5kfLlxG+UXc1s8WSOgFvE76dLACaSWpkZiuj9+8ArKnkPAui\nY5fbPmn79/zyj2/LFMdY93gt6UDgCsIT0PvRuqVRbL94byXKrzsxntWEPx7Jsbn88AXhqXfXSrZX\ndU/MrcG+ifsvAJpL2jThC9L2Se8ZQfjD/CrhCeX1Ks7dtZJttfpcREYC4yXdFB23vJ6juv+fvOZ1\nDuk3ErhGUgtJLYBrgQeibY0J9QzfSmoODCrfycw+B94ErpO0UVQZ/LsqzjMKOEPS7tETyaCk7dOB\n4yVtKmkXoH+FI/xSE8If8yWSGkq6lvDkUG4h0DZ6yqnsui+NKp8bs76OYm0V56zsWC43TAVWSLoy\nuo/qS9pT0j7R9qp+f7XaN+H+L43u/+6E+98S3jMlen0z67+9p/IgcKikEyU1kLRlVEcBtf9cYGbT\ngSXA3cBzZra8hteY1zw5pN/fCDf5u9HPm9E6gCHApoQbbTLwLL/8lnIKoRxzKSGpjKjsJBYqiYcA\n/wNmEcr8E491K6HMfxEwnJCgErcnfzt6LvqZBcwhJLHEoqpHo3+/lvRmipCGEcqIJxIe6VcCiS03\nUn3LzJl+HK6iKLH/jlA39inwFXAX6780pKrctWjfNXXY91SgO/A1oUHGI4R7ONF9wF6s/8KVKu65\nwBGEJ/WvCRXGe0eba/u5KPcQcHD0b/l5qvv/yWuKKlHSf2BpGHAksNjM9kpYfyFwPqG4ZKyZXRWt\nH0go714DXGRm4zMSmHM1IKkN4Q/R1oQ/GHeZ2b8UOgOeTfhDAPAXM3s22iflPRw177yXUKk6zswu\nzuKl5C1JjwAzzey6hHV9gXPM7KD4IisSmarpBg4EOgMzEtb9GpgAbBS93srWt3KYDmxEKLf+BKgX\nd229/xTvD6EsulO03JjQF2R3QvHdn1O8P9U9XP7layqhnglCE8te2biGfPsB9gF2JpRo/Jbw9Nox\nYXsjQlPX0+KOtRh+MlasZGaTgGVJq88D/m5mq6L3lH/7OgYYaWarzGwO4YNVWYWScxlnZgstlDVj\nZt8RGhiUd1hMVdae6h7uJmlboImZTY3edx9wbEaDz18tCU1NVxCKf/5oZu8ASPoNsJhQcf1QpUdw\naZPtOod2wEGSXot6KpZX3LTil83a5rH+g+hcrCS1JTwFvxatulDSO5LukdQ0WlfZPZy8fj5+b6dk\nZs+Y2fZmtpmZtTezEQnbnjezxmZ2nFXdyMGlSbaTQwOgmZntR2g2OaqK93plpYtd1PLqMeDi6Ani\nTmBHQiXkAuCWGMNzLmOy3c9hHvA4gJm9EY1j0oLwbSqxs9d2rO8bsI4kTxgu48xMAJI2AkYDD5jZ\nk9G2xeXvk3Q3YfgESH0Pz4vWb5e03u9tl3Xl93VNZfvJ4UlCczAk7Qo0NLMlhDFZTo7a1+9IKH6a\nmuoAcVXODBo0qKjOW6zXXC7qz3EPobXMkIT12ybcjscBM6LllPewmS0ElkvqFh2zb/Q5yJl7O1d/\nFx5X+n7qImNPDpJGAj2BLSXNJbTbHwYMkzSD0Nb4dAAzmxl1jZ9J6Ih1vtX1ipxLjx6Egd7eVTQK\nLfAXoE/Us90IY2r9Aaq9h88nNGXdlNCU9bmsXYVzdZSx5GBmfSrZlHLmMDO7gdCr1rnYmdkrpH6y\nfraKfVLew2b2FqHjlnN5w3tI11BJSUlRnTfOc8d5ze6XcvV34XFlXsZ6SGeCJC9tchklCatlxV2a\nzuv3tsuYutzX/uTgnHOuAk8OzjnnKvDk4JxzrgJPDs455yrw5OCcc64CTw7OOecq8OTgnHOuAk8O\nzjnnKvDk4JxzrgJPDs455yrw5OCcc64CTw7OOecqyLvk8O23cUfgnHOFL++Sw6RJcUfgnHOFL++S\nw0svxR2Bc84VPk8OzjnnKsi75PDJJ7B0adxROOdcYcu75NC9O0ycGHcUzjlX2PIuOfz611605Jxz\nmebJwTnnXAXKp0nNJdmqVcaWW4a6h622ijsiV2jqMhF7ms5r+fRZdPmlLvd13j05NGgABxwAL78c\ndyTOOVe48i45gBctOedcpnlycM45V0FeJodOnWDBAli4MO5InHOuMOVlcqhfHw46CMrK4o7EOecK\nU8aSg6RhkhZJmpFi22WS1kpqnrBuoKSPJX0o6fDqju9FS845lzmZfHIYDvRKXimpDXAY8HnCug5A\nb6BDtM8dkqqMzZODc85lTsaSg5lNApal2PRP4MqkdccAI81slZnNAT4BulZ1/L32CmMszZ+fjmid\nc84lymqdg6RjgHlm9m7SplbAvITX84DWVR2rXj3o2dOfHpxzLhOylhwkNQL+AgxKXF3FLtV2F/Wi\nJeecy4wGWTzXzkBb4B1JANsBb0nqBswH2iS8d7toXQWlpaXrlnfYoYSXXirJSLCuOJSVlVHmzd6c\nqyCjYytJags8bWZ7pdj2GdDFzJZGFdIPEeoZWgMvALskDzaTPP6MGbRsCVOnwg47ZOwyXBHxsZVc\nvvnuO7j66vCz9dap35NTYytJGglMBnaVNFfSmUlvWfdJMLOZwChgJvAscH5NPikSlJR40ZJzrjjN\nnAldu8KKFdC4cXqPncnWSn3MrJWZbWxmbcxseNL2ncxsacLrG8xsFzNrb2bP1/Q8Xu/gMkFSG0kv\nSXpf0nuSLorWN5c0QdIsSeMlNU3YJ2VfHUldJM2Itg2N43pc4XnwwdAo54orYNgwaNQovcfPuyG7\nk+P96CM47DD4/PPwJOHchih//JbUEmhpZtMlNQbeAo4FzgSWmNlgSVcBzcxsQELR6L6sLxptZ+Fg\nU4ELzGyqpHHAv8zsuaTzerGSq5Eff4RLL4UXX4THHoO9965+n5wqVsqWXXeF1avh00/jjsQVEjNb\naGbTo+XvgA8If/SPBkZEbxtBSBiQuq9ON0nbAk3MbGr0vvsS9nGuVj79FHr0gCVL4M03a5YY6irv\nk4PkRUsus6KGFZ2B14FtzGxRtGkRsE20XFlfneT186mmD49zqYwZA927Q79+MGoUbL55Zs+Xzaas\nGVOeHM4+O+5IXKGJipRGAxeb2QollF1GRUZpKwtKbKZdUlJCSUlJug7t8tiqVaEl0iOPhATRrVv1\n+6SjiXbe1zkAzJ4NBx4YhtLwege3IRLLZiVtBDwDPGtmQ6J1HwIlZrYwKjJ6yczaSxoAYGY3Ru97\njtDh8/PoPbtH6/sAPc3sj0nn9ToHV8H8+XDyydCkCdx/P2y5Zd2OU5R1DgA77RSmD501K+5IXKFQ\neES4B5hZnhgiY4B+0XI/4MmE9SdLaihpR6AdMNXMFgLLJXWLjtk3YR/nKvXii7DvvtCrFzzzTN0T\nQ10VRLFSYr3DbrvFHY0rED2A04B3JU2L1g0EbgRGSeoPzAFOgtBXR1J5X53V/LKvzvnAvcCmwLjk\nlkrOJVq7Fq6/Hu68Ex54AA4+OJ44CqJYCeDee+HZZ0O5nHN15T2kXZyWLIHTToMffoCRI6FVq/Qc\nt2iLlSA8OZSVhSE1nHMu30yZAl26hGmQX3wxfYmhrgqiWAnC2EqbbRa6k++xR9zROOdczb36Khx7\nbOjpfNRRcUcTFMyTA3h/B+dc/vn6azjllNxKDODJwTnnYmMGZ50FJ5yQW4kBCqhCGkKb4I4dYfHi\nMFOcc7XlFdIum4YODQPovfIKNGyYufMUdYU0QOvW0Lw5zJgRdyTOOVe1N98MTVYffjiziaGuCio5\ngBctOedy37ffQu/ecPvtoRNvLvLk4JxzWWQG554Lhx8OJ54YdzSVK5imrOVKSuC882DNGqhfP+5o\nnHPul/77X/jwQ3jttbgjqVrBPTm0bAnbbgvTp8cdiXPO/dKMGetHWN1007ijqVrBJQfwoiXnXO75\n/ns46SS45RZo3z7uaKrnycE557LgggvCXAynnx53JDVTUP0cyi1ZAjvvHHoeNii4WhWXSd7PwWXC\nfffB3/8Ob7wBjRtn//xF38+hXIsWYaylt96KOxLnXLH76CO47LJQzxBHYqirgkwO4EVLzrn4/fBD\nqGf4299g773jjqZ2PDk451yGXHZZqHw+99y4I6m9gqxzAFi2LBQtLVmSm13TXW7yOgeXLo8+CgMG\nwNtvwxZbxBuL1zkkaNYM2rWDqVPjjsQ5V2w+/RT+9KdQzxB3Yqirgk0O4EVLzrns+/lnOPlk+Mtf\nYJ994o6m7jw5OOdcGg0cGEZpuPjiuCPZMAVb5wCwfHmYh3XJEthkkwwG5gqG1zm4DfHMM6E4adq0\nMH1ArsipOgdJwyQtkjQjYd0/JH0g6R1Jj0vaImHbQEkfS/pQ0uHpiGHzzcN80rk+wJVzLv/Nmwdn\nnw0PPZRbiaGuMlmsNBzolbRuPLCHmXUEZgEDASR1AHoDHaJ97pCUlti8aMk5l2nl033+6U/Qo0fc\n0aRHxpKDmU0CliWtm2Bma6OXrwPbRcvHACPNbJWZzQE+AbqmIw5PDs65TPv3v+Gbb0J9Q6GIc+Sh\ns4CR0XIrILHwZx7QOh0n6dEjtDNeuRIaNUrHEZ1zbr3Zs+Haa2HSpMIayy2WS5F0NfCzmT1UxdtS\n1s6VlpauWy4pKaGkpKTKczVuDB07wuTJcOihtY/VFbaysjLKysriDsPlqTVroF+/MEdDPgzDXRsZ\nba0kqS3wtJntlbDuDOAc4BAz+zFaNwDAzG6MXj8HDDKz15OOV6cWHddcE8oEr7++btfhioe3VnK1\n8Y9/wNix8L//Qb0c7hiQU62VUpHUC7gCOKY8MUTGACdLaihpR6AdkLa+zV7v4JxLt/ffh8GDYfjw\n3E4MdZWxJwdJI4GeQAtgETCI0DqpIbA0etsUMzs/ev9fCPUQq4GLzez5FMes07erH36ArbaChQvz\na8hcl33+5OBqYtUq2G8/+OMf4Zxz4o6menW5rwu6E1yinj1DS4JeyY1rnUvgycHVRGlpGLdt7FhQ\n1u+W2sv5YqU4edGScy4d3nwT7rwT7r47PxJDXXlycM65GvrxxzAH9JAhYWieQlY0xUo//RSmD503\nL3+H0HWZ58VKriqXXw5ffBGG4s6npwYvVqrCxhtD166ho4pzztXWpElh3KQ77sivxFBXRZMcwIuW\nnHN18913cMYZYZiMFi3ijiY7PDk4l0IlowqXSponaVr089uEbSlHFZbURdKMaNvQbF+HS48rroCD\nDoKjj447kuwpquSw777wySewdGn173VFL9Wowgb808w6Rz/PQqWjCpcXPNwJ9DezdkC7qCOoyyPP\nPw/jxoVK6GJSVMmhYUPo3h0mTow7EpfrUo0qHElV2pxqVOFukrYFmphZeW//+4BjMxGvy4xly8Ic\nDcOGFV9DlqJKDuBFS26DXRhNVnWPpKbRulaEkYTLlY8qnLx+Pmkabdhlx0UXwbHHwiGHxB1J9nly\ncK7m7gR2BDoBC4Bb4g3HZdLjj8Prr8NNN8UdSTwKaPTxmunSBT7/HL76Koy35FxNmdni8mVJdwNP\nRy/nA20S3rod4YlhPusntCpfP7+y49d2OHqXOYsXh1ndHn88P+eBScdQ9EXTCS7RkUfCmWfCCSek\nIShXUBI7CyUPOS9pWzNbEC1fCuxrZqdEFdIPEWYvbA28AOxiZibpdeAiwijDY4F/mdlzKc7rneBy\nhBkcf3yYn+Hvf487mvSoSye4ontygPVFS54cXGUSRxWWNJcwqnCJpE6EVkufAX8AMLOZkkYBMwmj\nCp+f8Jf+fOBeYFNgXKrE4HLLAw+E2d0efjjuSOJVlE8Ob70FffvCzJlpCMoVFB8+o7jNnRuKnseP\nh06d4o4mfXz4jBrq1AkWLAjzOzjnHIR5X046CS65pLASQ10VZXKoXz/0dvSpg51zAGvXhnrItm3D\nvC+uSJMDeJNW59x6gwaF0VaHDy+OQfVqwpODc66o3XcfPPggPPkkbLJJ3NHkjqKskIbwGLn11vDO\nO9Da+6y6iFdIF5eJE0OrxbIy6NAh7mgyxyuka6FevTCvtD89OFecPv44VEA/9FBhJ4a6KtrkAF60\n5FyxWro0dIb961/h0EPjjiY3eXLw5OBcUfn559AD+phj4Jxz4o4mdxV1cujQAb7/Poy15ArT6NGj\nadeuHZtvvjlNmjShSZMmbL755nGH5WJiBueeC82awY03xh1Nbivq5CBBSYk/PRSyK6+8kjFjxrB8\n+XJWrFjBihUrWL58edxhuZj8/e/w3nthiIz69eOOJrdVmhwkNctmIHHxoqXC1rJlS3bfffe4w3A5\nYNSoMAf0mDGw2WZxR5P7Km3KKukrYAnwCjAZeNXMZmUxtlQxpb2530cfwWGHhaIl7/xSOEaPHg3A\nxIkTWbhwIcceeywNGzYEQrO+448/PuV+3pS1ML32Wpj/ecIE6Ngx7miyry73dZX9HCTtBuwf/XQH\ntgamAJPNLOtTYGTiA2QW+jlMmgQ775zWQ7sYnXHGGZRP42xm65bLDR8+POV+nhwKz5w5sP/+8N//\nhhZKxSjtySHp4DsDRwIXA63NLOt9CTP1ATr11FC8dPbZaT+0i8nSpUtp3rx5rffz5FBYvv02JIY/\n/CFM+Vms0toJTlIPSVdIelzSG8ANQH3gVKDaqbYlDZO0SNKMhHXNJU2QNEvS+IQ5eJE0UNLHkj6U\ndHhtLmJDeb1D4Wnfvj0dOnTgnHPOYfjw4cyaFWuJqIvBqlVw4onh833hhXFHk3+qqnNYC0wDbgWe\nMLPva3Vg6UDgO+C+hJm0BgNLzGywpKuAZmY2IGEmrX1ZP5PWrma2NumYGfl2NXs2HHggzJ/v9Q6F\n5KOPPmLy5MlMnjyZKVOmsHjxYrp3787+++/PVVddlXIff3IoDGZw3nlhML0xY6BBUU5rtl5ai5Uk\nbcv6uoauwEbAW4Q6hylm9mkNAmrLL6dZ/BDoaWaLJLUEysysvaSBwNryegxJzwGlZvZa0vEy8gEy\ngx12CJVVu+2W9sO7HDB79mzGjh3L0KFDmT9/Pj/++GPK93lyKAy33hpGWH3lFfBuLWmeJjSaK3d0\n9IOkRsBZwHXAjoQiptraxswWRcuLgG2i5VZAYiKYR3iCyAopPHr++99w8MHZOmt+6tgRtt8+7iiq\n9+qrr657Ypg7dy477bQT++23Hw8++CCdO3eOOzyXQWPGwM03w5Qpnhg2RKXJQdIWrG+ptD/QGfgY\neBp4dUNPHE2+XtVXpZTbSktL1y2XlJRQUlKyoaEAcNZZ4Yb65JO0HK4grVoFs2bBjBm53078wAMP\npHPnzlx66aUcd9xxbFZJwGVlZZT5rE8F4+23oX9/GDcuP77E5LKqipWWEDVbJSSDN81sZa0OnrpY\nqcTMFkbFVi9FxUoDAMzsxuh9zwGDzOz1pOP5o3fM+vaFLbeEIUPijqRqCxYsWPfkMHXqVFatWkWX\nLl3o3r073bt3Z6eddkq5nxcr5a9586B793Bv/v73cUeTWzLalLUuUiSHwcDXZnZTlBCaJlVId2V9\nhfQuyZ8W/wDF7+uvYc894bHHoEePuKOpuZUrVzJs2DCGDBnCZ599xpo1a1K+z5NDfvruu9Co5OST\noZK2BkUtrXUOkp4mFO2kOqCZ2dHVBDMS6Am0kDQXuBa4ERglqT8wBzgpOthMSaOAmcBq4Hz/pOSm\nLbeE224Lj+7Tp+fuzFnffvvtupZKkydPZtq0abRr146jjjqKHvmU1Vy11qyBU06BLl3gyivjjqZw\nVDd8xjxgJFBevFOeKMzMXs58eBVi8pyRI044Adq1CwOZ5aIWLVqsa7bao0cP9tlnHxo1alTtfv7k\nkH/+/Ocwo+Ozz0I0QopLku6mrA2Aw4A+wF7AWGCkmb2/oYHWlX+AcsfChaHl0rhx4RtbofDkkF/u\nvBOGDg0tk5oVxVChdZOxOgdJGxOSxM2E/ge31S3EDeMfoNxy//2hhdcbb+TeN7ajjjqq/ANRYZsk\nxowZk3I/Tw754/nnoV8/ePVVHxetOpkYeG8TwnhKJwNtgTHAMDObvwFx1pl/gHKLGfzud9CtG1x7\nbdzR/NJWW23FdtttR58+fejWrRvAukQhiZ49e6bcz5NDfnjvvdA36Ykn4IAD4o4m96W7WOl+YA9g\nHPCImc1I+cYs8g9Q7pk7F371qzA21Z57xh3NeqtXr2bChAmMHDmSGTNmcOSRR9KnTx/22GOPKvfz\n5JD7Fi6E/faD668Pg2a66qU7OawFKhtPycws630P/QOUm+66C+6+GyZPzs0xbH766SdGjhzJ5Zdf\nTmlpKRdccEGl7/XkkNt++CHM3njEETBoUNzR5I+c6+eQbv4Byk1mcOih0KsXXHFF3NGs9+OPPzJ2\n7Fgefvhh5syZw9FHH81ZZ51F69aVj8ziySF3rV0b+jFstFGY5tMHyaw5Tw4uNp9+Cl27hqeHXXeN\nOxro27cv77//PkcccQS9e/dmr732qtF+nhxy19VXw8svwwsv5G7/mlzlycHFaujQ0HP65ZehXqUz\nhWRHvXr1Kh1PSRLLly+vdJsnh9wzfDj87W9hus+ttoo7mvzjycHFas2aMITBqafCn/4UdzR148kh\n97z0EvTuDRMnQvv2cUeTnzw5uNh9+GFoWvjmm9C2bdzR1J4nh9zy0Udw0EEwcqQPp78h0jpNqHN1\n0b49XHYZnHtuqKh2rq6WLAn9aG64wRNDHDw5uLS7/PIweuvw4XFH4vLVTz/B8ceHobf79487muLk\nxUouI955Bw47LIzc2qpV3NHUnBcrxc8MTj8dVq6ERx+Nv3FDIfBiJZczOnaEP/4x/OTj3zxJwyQt\nkjQjYV1zSRMkzZI0XlLThG0DJX0s6UNJhyes7yJpRrRtaLavIx/97W+h7ur++z0xxMn/613GXH11\n6P/w8MNxR1Inw4FeSesGABPMbFfgxeg10WRVvYEO0T53SOu6aN0J9DezdkA7ScnHdAlGjgy97ceM\ngRqMsO4yyJODy5iNN4Zhw+DSS+Grr+KOpnbMbBKwLGn10cCIaHkEcGy0fAxhOPtVZjYH+AToFk2F\n28TMpkbvuy9hH5dk8mS4+GJ45hnYdtu4o3GeHFxGde0a5p2+8MK4I0mLbcxsUbS8CNgmWm5FmBir\n3DzCdLfJ6+dH612STz8Nlc8jRkANO7O7DPPk4DLuuuvgrbfgySfjjiR9otrjPKxNyT3ffBOarF5z\nDfz2t3FH48rl4BiartA0agT33AN9+kDPnnk9Y9ciSS3NbGFUZLQ4Wj8faJPwvu0ITwzzo+XE9ZXO\nhVJaWrpuuaSkhJKSkvREncNWrQpTzh52WP72qs9FZWVllJWVbdAxvCmry5oLLgjNE4cNizuSyiU2\n+ZPUFnjazPaKXg8GvjazmyQNAJqa2YCoQvohoCuh2OgFYBczM0mvAxcBUwlT7f7LzJ5Lcd6iu7fN\nQmfJBQvgqaegfv24IypcPnyGy2krVoTy5P/8B37zm7ijSa38QyRpJNATaEGoX7gWeAoYBWwPzAFO\nMrNvov3+ApwFrAYuNrPno/VdgHuBTYFxZnZRJectunv75pvD0NuTJkGTJnFHU9g8ObicN358+LY4\nY0Zu/kHwTnDZ8cQToZHClCnQpk3173cbxpODywtnnQWbbgq33x53JBV5csi8t94KE0M99xx06RJ3\nNMXBk4M/oWGpAAARRElEQVTLC8uWheKlBx8MFdS5xJNDZs2dC927w223wbHe4yNrfPgMlxeaNQtP\nDWefHSqoXXFYsSI0Wb3kEk8M+cCfHFxs+vSB1q1DxWSu8CeHzFi9Go45Jvy+//Mfn/8527xYyeWV\nr74KxUtPPQXdusUdTeDJITMuvhhmzoRx42CjjeKOpvh4sZLLK1ttBUOGhArqn36KOxqXKbfdBhMm\nhOG3PTHkj1iSQzS88fvRUMYPSdq4quGQXeHq3RvatYPrr487EpcJ48aF3+3YsdDUP9F5JevFSlGv\n0/8Bu5vZT5IeAcYBewBLzGywpKuAZmY2IGnfgn70LlZffgmdOoVvlx07xhuLFyulz7vvwqGHhjG1\n9t8/7miKW74UKy0HVgGNJDUAGgFfUvlwyK7AtWoFN90EZ54Zxtpx+W/BAjjqKBg61BNDvsp6cjCz\npcAtwBeEpPCNmU2g8uGQXRE444xQB5FLLZdc3axcCUcfHZoq9+kTdzSurrI+KquknYFLgLbAt8Cj\nkk5LfE80YFnKZ+xiHLmyGEhw112hWOn882GLLbJz3nSMXunWW7s2zN+x++5hCG6Xv+Koc+gNHGZm\nZ0ev+wL7AQcDv04YDvklM2uftG/Blcu6XzrmmDDpy+mnx3N+r3PYMAMGhBndJkwIMwG63JAvdQ4f\nAvtJ2jSaZ/dQYCbwNNAvek8/oICmhnE11bs3PPJI3FG4urj7bhg9Ogyq54kh/8XSCU7SlYQEsBZ4\nGzgbaEIlwyEn7FcQ365c5VasgO22g88+g+bNs39+f3KomxdfhFNOgYkTYbfd4o7GJfMe0q4gnHBC\nmC6yf//sn9uTQ+198EEYQHHUKPAqwNyUL8VKzlXJi5byx1dfhcH0Bg/2xFBo/MnB5ZyVK0Pfh1mz\nYOuts3tuf3KouR9/DJ3cevb0Hu65zp8cXEFo1CgUK40eHXckrjJmodivVSv461/jjsZlgicHl5NO\nPtmLlnLZddfB7NkwYgTU878iBcmLlVxO+ukn2HZbeO+98O00W7xYqXoPPghXXw2vvw7b+DgGecGL\nlVzB2HjjMDbPY4/FHYlL9MorcOml8MwznhgKnScHl7O81VJumT07NDO+/37Yc8+4o3GZ5sVKLmf9\n/HMoUpo2Ddq0yc45vVgptWXLoHv3MKPbeefFHY2rLS9WcgWlYcMwEf2oUXFHUtx+/jmMd3XEEZ4Y\nioknB5fTeveGhx+OO4riZRYSQuPG8I9/xB2NyyZPDi6n/frX8PnnobzbZd/gwfD22/DQQ1C/ftzR\nuGzy5OByWoMGoRLUi5ay77HH4Lbb4Omnw5ODKy6eHFzO81ZL2Td1aihOGjMmjJLrio8nB5fzDjgA\nFi+Gjz6KO5Li8MUXcNxxcM890Llz3NG4uHhycDmvfn048UR/esiG5cvhyCPh8svDPNCueHlycHnB\ni5Yyb/Xq8P98wAFwySVxR+Pi5snB5YX99guzxL33XtyRFCaz0MFt7Vr4179AWe8G6HKNJweXF+rV\ng5NO8j4PmfL//h+8/HJoFbbRRnFH43KBJweXN8qH8c7hUSby0jPPwI03hn+32CLuaFyu8OTg8kaX\nLqHYY9q0uCMpHNOnw5lnwuOPQ9u2cUfjcoknB5c3JK+YTqcPPgjDot9+e6jTcS6RJweXV3r3DuXi\ncRctSZoj6V1J0yRNjdY1lzRB0ixJ4yU1TXj/QEkfS/pQ0uHxRR5MmgQlJWHu55NOijsal4s8Obi8\nsvfeYSKgqVPjjgQDSsyss5l1jdYNACaY2a7Ai9FrJHUAegMdgF7AHZJi++yNGhVGWX3gATj99Lii\ncLnOk4PLKzlWtJTc4PNoYES0PAI4Nlo+BhhpZqvMbA7wCdCVLDODW26Byy6DCRPgsMOyHYHLJ54c\nXN4pL1pauzbWMAx4QdKbks6J1m1jZoui5UVA+USarYB5CfvOA1pnJ8xgzZrQj+Hee2HyZOjYMZtn\nd/moQdwBOFdbHTpAs2bw6qtw4IGxhdHDzBZI2gqYIOnDxI1mZpKqqhmpsK20tHTdcklJCSUlJWkJ\n9Icf4NRT4ZtvQl1D06bV7+PyW1lZGWVlZRt0DJ8m1OWl66+HBQvCkNLpVJfpFCUNAr4DziHUQyyU\ntC3wkpm1lzQAwMxujN7/HDDIzF5POEZG7u0lS0KLpJ13DgPpbbxx2k/h8oBPE+qKRu/eYb6BNWuy\nf25JjSQ1iZY3Aw4HZgBjgH7R2/oBT0bLY4CTJTWUtCPQDsh4lfrs2bD//mHCpPvu88TgaieW5CCp\nqaTHJH0gaaakblU1A3Qu2S67QOvWYciHGGwDTJI0HXgdeMbMxgM3AodJmgUcHL3GzGYCo4CZwLPA\n+Zl+BJ46NQyg9+c/ww03hOFHnKuNWIqVJI0AXjazYZIaAJsBVwNLzGywpKuAZmY2IGk/L1Zy6wwe\nHL4d/+c/6TtmXR6/03TetN3bY8ZA//4wbFgoUnKuTsWl2f5jK2kLYJqZ7ZS0/kOgp5ktktQSKDOz\n9knv8eTg1pkzB/bdF778Mn2DxeV7crjzTvjrX+Gpp8L/jXOQP3UOOwJfSRou6W1J/43KbStrBuhc\nSm3bhorW//0v7kjit3YtDBwIt94aWiR5YnAbKo7k0AD4FXCHmf0K+J6oJ2m56CuUPyK4auVQh7jY\n/PQT9O0b6l8mTw4J07kNFUc/h3nAPDN7I3r9GDAQWCipZUIzwMWpds5UW3CXn048MRSj3Hln3Vrj\npKM9eJy++SbM99y8Obz4Imy6adwRuUIRV4X0ROBsM5slqRRoFG362sxuitqFN/UKaVcTBx0EV1yR\nnsrXfKpz+OILOOIIOOQQ+Oc/w1zbzqWSFxXSAJI6AncDDYHZwJlAfUJzv+2BOcBJZvZN0n6eHFwF\nt98OU6aEgeQ2VL4kh+nTQzK89NLw49N6uqrkTXKoK08OLpVFi6B9+9BqaUOLVfIhOUyYEIbDuO02\nH27b1Uy+tFZyLq222QZ+9St49tm4I8m8e++F006D0aM9MbjM8uTgCkKht1oyg//7P7juOigri3XA\nQVckvFjJFYQlS0ITzi+/hM02q/txcrFYadUqOO+8MHf22LHQsmWWg3N5z4uVXNFq0QK6d4enn447\nkvT67js4+uiQ9F5+2RODyx5PDq5gFFrR0sKF0LMnbLddGC+pceO4I3LFxIuVXMH45hvYYQeYOxc2\n37xux8iVYqUPPgh9GPr3h6uv9qaqbsN4sZIrak2bhm/aTz0VdyQbZtIkKCmB0lK45hpPDC4enhxc\nQcn3oqVRo+D3vw8d+vr1q/79zmWKFyu5grJiRSijnzMnzDNdW3EWK918szFkCDzzDHTsmO0IXCHz\nYiVX9Jo0gUMPhSeeiDuS2hs+PIyq6onB5QJPDq7g5GvR0iuvQJs2cUfhXODFSq7gfP89tGoFn3wC\nW21Vu31zpbWSc+nkxUrOEXpIH3FEGH/IOVc3nhxcQcrXoiXncoUnB1eQevUKQ2qsXh13JM7lJ69z\ncC6B1zm4QuR1Ds4559LCk4NzzrkKPDk455yrwJODc865Cjw5OOecq8CTg3POuQo8OTjnnKvAk4Nz\nzrkKPDk455yrwJODc865Cjw5OOecq8CTg3POuQpiSw6S6kuaJunp6HVzSRMkzZI0XlLTuGJzLt0k\n9ZL0oaSPJV0VdzzOVSfOJ4eLgZlA+VCUA4AJZrYr8GL0OmeUlZUV1XnjPHec15wJkuoDtwG9gA5A\nH0m7xxtVzeTq78LjyrxYkoOk7YAjgLuB8mFkjwZGRMsjgGNjCK1SxfiHshivOUO6Ap+Y2RwzWwU8\nDBwTc0w1kqu/C48r8+J6crgVuAJYm7BuGzNbFC0vArbJelTOZUZrYG7C63nROudyVtaTg6TfAYvN\nbBrrnxp+IZr1xGc+cYXC72WXd7I+E5ykG4C+wGpgE2Bz4HFgX6DEzBZK2hZ4yczaJ+3rHzKXceme\nCU7SfkCpmfWKXg8E1prZTQnv8XvbZVRt7+tYpwmV1BO43MyOkjQY+NrMbpI0AGhqZjlVKe1cXUhq\nAHwEHAJ8CUwF+pjZB7EG5lwVGsQdAOsfuW8ERknqD8wBTootIufSyMxWS7oAeB6oD9zjicHlulif\nHJxzzuWmvOkhHWcnIklzJL0bddqbmsHzDJO0SNKMhHUZ7xxYyXlLJc2LrnmapF7pPm90njaSXpL0\nvqT3JF0Urc/odVdx3qxcd1IsWbm/ahBHLPdfHePK+u8pRVyx3LsbEFft/s/MLOd/CI/inwBtgY2A\n6cDuWTz/Z0DzLJznQKAzMCNh3WDgymj5KuDGLJ13EPDnLFxzS6BTtNyYUDa/e6avu4rzZuW647i/\n6ngfZPz+q2NcWf891eIeivX/LF33dr48OeRCJ6K0tmBJxcwmAcuSVme8c2Al54XsXPNCM5seLX8H\nfEDoA5DR667ivJCF604hjnP+Qlz3X3XivD+rEte9uwFxQS3+z/IlOcTdiciAFyS9KemcLJ4X4u0c\neKGkdyTdk41HY0ltCd8QXyeL151w3teiVVm9buK9v6qTy51Ts/17qlRc9251NuTezpfkEHeteQ8z\n6wz8FviTpAPjCMLCc2K2/i/uBHYEOgELgFsyeTJJjYHRwMVmtiJxWyavOzrvY9F5vyPL1x3Jifur\nOlm+/6oTx+8ppbju3RrGVed7O1+Sw3ygTcLrNoSnh6wwswXRv18BTxCKubJlkaSWAFHnwMXZOKmZ\nLbYIYQysjF2zpI0IH677zezJaHXGrzvhvA+Unzeb110u5vurOrHcf9WJ4/eUSlz3bi3iqvO9nS/J\n4U2gnaS2khoCvYEx2TixpEaSmkTLmwGHAzOq3iutxgD9ouV+wJNVvDdtopu63HFk6JolCbgHmGlm\nQxI2ZfS6Kztvtq474Xxx31/VieX+q062f0+VxBDLvVvXuGr9f5bNWvQN+SE8cn9EaLU0MIvn3ZHQ\nOmo68F4mzw2MJPSg/ZlQx3Im0Bx4AZgFjCf0HM/0ec8C7gPeBd4h3NzbZOiaDyAMwDgdmBb99Mr0\ndVdy3t9m67rjuL9y9f7L5fszF+/dOsZV63vbO8E555yrIF+KlZxzzmWRJwfnnHMVeHJwzjlXgScH\n55xzFXhycM45V4EnB+eccxV4csgTUQfAXOoc5VxaSdpC0nnR8raSHo07pmLmyaGIKUxf6VyuaAac\nD2FIETM7MeZ4iponh/xSX9Jd0QQez0vaRFInSa9FIy0+Xj7SoqQySV2i5RaSPouWz5A0RtKLwARJ\nLSVNjCb/mCHpgBivzxW3G4Gdo3txVPmTcnTPPhlNnPOZpAskXS7pbUlTJDWL3rezpGej0W0nStot\n1qvJc54c8ks74DYz2xP4Bvg9Ybz4K8ysI2GslEHRe6saDbIz8Hsz+zVwKvCchVFB9yZ0uXcuDlcB\ns6N78YqkbXsQxgPaF7geWG5mvwKmAKdH77kLuNDM9on2vyMrURcoL1bIL5+Z2bvR8lvAzoRxWyZF\n60YANSmnHW9m30TLU4Fh0SiOT5rZO2mN2LmaUyXLAC+Z2ffA95K+AZ6O1s8A9o4GLdwfeDSMOwdA\nw0wGW+j8ySG//JSwvAZInqwj8QO1mvW/302S3reyfCFKLAcShkW/V1Lf9ITqXFol3vtrE16vJXzJ\nrQcsM7POCT97ZDvIQuLJIb99CyxNqCfoC5RFy3OAfaLlEyo7gKTtga/M7G7CGO+dMxKpc9VbATSp\n5T4CsDDJzmeSToAwbLWkvdMcX1HxYqX8klyHYMAZwL8lNQJmE4ZZBrgZGCXpXGBswr7JdRElwBWS\nVhE+nKfjXAzM7GtJr0YV0R9Q+T2bvFz++lTgTknXABsRhvp+F1cnPmS3c865CrxYyTnnXAWeHJxz\nzlXgycE551wFnhycc85V4MnBOedcBZ4cnHPOVeDJwTnnXAWeHJxzzlXw/wGo6EfWAVPtJwAAAABJ\nRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f6d7016aa50>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "%matplotlib inline\n",
    "from matplotlib.pyplot import plot, subplot, title, xlabel, ylabel, show\n",
    "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()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.10 : page 31"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    }
   ],
   "source": [
    "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)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.11: page 32"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    }
   ],
   "source": [
    "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)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.12 : page 32"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Weekly Load factor = 53.74 %\n",
      "Load Duration Curve is shown in figure.\n"
     ]
    },
    {
     "data": {
      "image/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/plain": [
       "<matplotlib.figure.Figure at 0x7f6d700681d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from __future__ import division\n",
    "%matplotlib inline\n",
    "from matplotlib.pyplot import plot, title, xlabel, ylabel, show\n",
    "\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",
    "plot(T,L) \n",
    "title('Load Duration Curve')\n",
    "xlabel('Time(Hours)')\n",
    "ylabel('Load(MW)') \n",
    "show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.13 : page 33"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "annual load factor = 0.825000x0.870000x0.780000 = 0.56\n"
     ]
    }
   ],
   "source": [
    "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)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## example -  2.14 : page 35"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "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"
     ]
    }
   ],
   "source": [
    "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)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}