summaryrefslogtreecommitdiff
path: root/ELECTRIC_MACHINERY_by_Fitzgerald_Kingsley_and_Umans/chapter5.ipynb
blob: e0897bf49b125542dec6384276ceb147239efd5d (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
{
 "metadata": {
  "name": "",
  "signature": "sha256:fdfb62ac44329d8ca6f9c44e55b110ca6276a0bf982882f2c43000518ecc6bb3"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "heading",
     "level": 1,
     "metadata": {},
     "source": [
      "Chapter 5: Synchronous Machines"
     ]
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 5.1, Page number: 254"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from __future__ import division\n",
      "import math\n",
      "import cmath\n",
      "\n",
      "#Varaible Declaration:\n",
      "pf=0.95                                 #Lagging power factor\n",
      "Vl=460                                  #Terminal voltage(V)\n",
      "I=120                                   #Terminal current(A)\n",
      "If=47                                   #Field current(A)\n",
      "X=1.68j                                 #Line syncchronous reactance(ohm)\n",
      "\n",
      "\n",
      "#Calculation:\n",
      "#Choosing motor reference direction:\n",
      "Va=Vl/math.sqrt(3)\n",
      "theta=math.acos(0.95)\n",
      "Ia=I*cmath.exp(-theta*1j)\n",
      "Eaf=Va-X*Ia\n",
      "wc=120*math.pi\n",
      "Laf=math.sqrt(2)*abs(Eaf)/(wc*If)\n",
      "P=3*Va*Ia*pf\n",
      "\n",
      "#Results:\n",
      "print \"Generated emf:\",round(abs(Eaf),1),\"V line to line\"\n",
      "print \"Fied to armature mutual inductance:\",round(Laf*1000,1),\"mH\"\n",
      "print \"Three phase power:\",round(abs(P/1000),1),\"kW or\",round(abs(P)/746),\"hp\"\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Generated emf: 278.8 V line to line\n",
        "Fied to armature mutual inductance: 22.3 mH\n",
        "Three phase power: 90.8 kW or 122.0 hp\n"
       ]
      }
     ],
     "prompt_number": 2
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 5.2, Page number: 255"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from __future__ import division\n",
      "import cmath \n",
      "from math import *\n",
      "\n",
      "#Variable Declaration:\n",
      "Pin=90.6*10**3                              #Input power(kW)\n",
      "Va=265.6                                    #Terninal voltage(V)\n",
      "X=1.68j                                     #Synchronous reactance(ohm)\n",
      "Laf=22.3*10**-3                             #Mutual inductance(H)\n",
      "wc=120*pi                                   #Angular frequency(rad/sec)\n",
      "\n",
      "\n",
      "#Calculations:\n",
      "Ia=Pin/(3*Va)\n",
      "Eaf=Va-X*Ia\n",
      "delta=degrees(cmath.phase(Eaf))\n",
      "I=sqrt(2)*Eaf/(wc*Laf)\n",
      "\n",
      "\n",
      "#Results:\n",
      "print\"The phase angle,delta:\",round(delta,1),\"degrees\"\n",
      "print\"Required field current:\",round(abs(I),2),\"A\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "The phase angle,delta: -35.7 degrees\n",
        "Required field current: 55.04 A\n"
       ]
      }
     ],
     "prompt_number": 4
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 5.3, Page number: 257"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from __future__ import division\n",
      "from math import *\n",
      "\n",
      "#Variable declaration:\n",
      "Eafl=13.8*10**3                             #Open circuit voltage(V)\n",
      "If1=318                                     #Field current(A)\n",
      "If2=263                              #Field current after extrapolation(A)\n",
      "wc=120*pi                            #Angular frequency(Hz)\n",
      "\n",
      "#Calculations:\n",
      "Eaf=Eafl/sqrt(3)\n",
      "La1=sqrt(2)*Eaf/(wc*If1)\n",
      "La2=sqrt(2)*Eaf/(wc*If2)\n",
      "\n",
      "#Results:\n",
      "print \"Saturated Laf1:\",round(La1*1000,0),\"mH\"    \n",
      "print \"Unsaturated Laf1:\",round(La2*1000,0),\"mH\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Saturated Laf1: 94.0 mH\n",
        "Unsaturated Laf1: 114.0 mH\n"
       ]
      }
     ],
     "prompt_number": 5
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 5.4, Page number: 262"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from __future__ import division\n",
      "from math import *\n",
      "\n",
      "#Variable declaration:\n",
      "Ia=[118, 152]                     #Armature current from SC Characteristics(A)\n",
      "If=[2.20, 2.84]                     #Field current from SC Characteristics(A)\n",
      "Vll=220                             #Line-to-line Voltage(V)\n",
      "V=202                               #Line-to-line air voltage(V) \n",
      "P=45*10**3                          #Power roted to motor(W)   \n",
      "Is_sc=1                             #per unit rated current(A)\n",
      "\n",
      "#Calculations:\n",
      "Va_ag=V/sqrt(3)                 #At field current of 2.20A,at air gap,(V)\n",
      "Ia_ag=Ia[0]\n",
      "Xs_u=Va_ag/Ia_ag\n",
      "Ia_rated=P/(sqrt(3)*Vll)\n",
      "Xa_g=Va_ag/1\n",
      "Xs_u_pu=Va_ag/Is_sc\n",
      "Xs=Vll/(Ia[1]*sqrt(3))\n",
      "Ia_pu=Ia[1]/Ia[0]\n",
      "SCR=If[1]/If[0]\n",
      "Xs=1/SCR\n",
      "\n",
      "\n",
      "\n",
      "#Results:\n",
      "print \"'All quantities are in per unit values'\"\n",
      "print\"Unsaturated value of synchronous reactance:\",round(Xs_u,3),\"ohm\"\n",
      "print \"Satureted value of synchronous reactance: \",round(Xs,3),\"ohm\"\n",
      "print\"Short circuit ratio:\",round(SCR,3)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "'All quantities are in per unit values'\n",
        "Unsaturated value of synchronous reactance: 0.988 ohm\n",
        "Satureted value of synchronous reactance:  0.775 ohm\n",
        "Short circuit ratio: 1.291\n"
       ]
      }
     ],
     "prompt_number": 6
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 5.5, Page number: 265"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from __future__ import division\n",
      "\n",
      "#Variable declaration:\n",
      "P_rated=45*10**3                        #Rated power(KV)\n",
      "Pl=1.80*10**3                           #Short circuit load loss(W)\n",
      "Ia_pu=1                                    #Per unit armature current\n",
      "Ia=118                                  #rated armature current(A)\n",
      "Ra_dc=0.0335                            #Dc resistance(ohm/phase)\n",
      "\n",
      "\n",
      "#Calculations:\n",
      "Pl_pu=Pl/P_rated    \n",
      "Ra_eff1=Pl_pu/Ia_pu**2                      #in per unit basis\n",
      "Ra_eff2=Pl/(3*(Ia)**2)\n",
      "\n",
      "#Results:\n",
      "print \"Armature resistance in per unit:\",round(Ra_eff1,3),\"per unit\" \n",
      "print \"Armature resistance in ohms/phase:\", round(Ra_eff2,3),\"ohms/phase\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Armature resistance in per unit: 0.04 per unit\n",
        "Armature resistance in ohms/phase: 0.043 ohms/phase\n"
       ]
      }
     ],
     "prompt_number": 4
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 5.6, Page number: 269"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from __future__ import division\n",
      "%matplotlib inline\n",
      "import cmath\n",
      "import math\n",
      "from pylab import *\n",
      "\n",
      "\n",
      "#Variable declaration:\n",
      "Veq=1.0                                 #Externalsupply(p.u)                                    \n",
      "Eaf=1.0                                 #Internal voltage(p.u)\n",
      "Xeq=0.23                                #Eqv.resistance of external system(p.u)\n",
      "Xs=1.35                                #Saturated synchronous reactance(p.u)\n",
      "\n",
      "\n",
      "#Calculations:\n",
      "#for part (a):\n",
      "P_max=Eaf*Veq/(Xs+Xeq)\n",
      "\n",
      "\n",
      "#for part (b):\n",
      "delta=[0]*500\n",
      "Ia=[0]*500\n",
      "Va=[0]*500\n",
      "degree=[0]*500\n",
      "for n in range(1,101,1):\n",
      "    delta[n-1]=(pi/2)*(n-1)/100\n",
      "    Ia[n-1] = (Eaf *exp(1j*delta[n-1]) - Veq)/(1j*(Xs + Xeq))\n",
      "    Va[n-1] = abs(Veq + 1j*Xeq*Ia[n-1])\n",
      "    degree[n-1]=180*delta[n-1]/pi\n",
      "plot(degree,Va,'r.')\n",
      "xlabel('Power angle,delta(degrees)')\n",
      "ylabel('Terminal voltage(per unit)')\n",
      "title('Terminal voltage vs. power angle for part (b)')\n",
      "show()\n",
      "#for part (c):\n",
      "Vterm=1.0\n",
      "P=[0]*500\n",
      "deltat=[0]*500\n",
      "Ia=[0]*500\n",
      "Eaf=[0]*500\n",
      "\n",
      "for n in range(1,101,1):\n",
      "    P[n-1]=(n-1)/100\n",
      "    deltat[n-1]=math.asin(P[n-1]*Xeq/(Vterm*Veq))\n",
      "    Ia[n-1]=(Vterm*exp(1j*deltat[n-1])-Veq)/(1j*Xeq)\n",
      "    Eaf[n-1]=abs(Vterm+1j*(Xs+Xeq)*Ia[n-1])\n",
      "plot(P,Eaf,'r.')\n",
      "xlabel('Power [per unit]')\n",
      "ylabel('Eaf [per unit]')\n",
      "title('Eaf vs. power for part (c)')\n",
      "show()\n",
      "\n",
      "\n",
      "\n",
      "#Results:\n",
      "print \"(a) Maximum power supplied to external system:\",round(P_max,2),\"p.u\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "iVBORw0KGgoAAAANSUhEUgAAAYQAAAEXCAYAAACtTzM+AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XdUFNfbB/C7VAHpIgJLUYpUAaWIKMWCaBQrCsYCYk1s\nSV5jYjSSGI3GmBhDrEFQY0WNYiOIUhQVLKggFlCWDoL0zu7e9w+c/DaEtsiyaL6fc+awM3P3zjOz\nyz47996ZZVFKCQAAgIS4AwAAgJ4BCQEAAAghSAgAAPAGEgIAABBCkBAAAOANJAQAACCEICH0eEuX\nLt393XffrXvbejgcjoGEhASfz+d36WseGBgYOGfOnMNdWSf0DG/7nvH39w9RU1MrGTp06O2ujq27\nFBUVaZiZmT2pr6+XJYQQNze3mODg4ICWyhYWFmqam5unNjQ0yHRvlF0HCaGDevfuXaWoqFipqKhY\nKSEhwZeXl69h5o8dO+Yrqu3u3r176bp1674TVf1vi8Vi/X0hi6iSDrx7rl+/PiIqKmp0Xl6e9u3b\nt4eKO56WSEhI8F++fDmgrTJbtmz5wt/fP0RWVraekKb3u+B7XpCmpmahu7t79L59+xaJIt7ugH/c\nDqqqqupdWVmpWFlZqaivr5954cKFCcy8r6/vsY7UweVypUQdZ3ejlLI6sgzeHqWU9a4c28zMTH0D\nAwNOr1696oR9rqj/TwTrb+t41tfXyx46dGju7Nmz/+ho3R9++OGRvXv3Ln7bGMUFCeEt8fl8iS1b\ntnxhZGSU3qdPn+KZM2eeKC0tVSXkf9+YDxw4MF9fXz9z1KhRVw8ePDjP2dk5/tNPP/1JVVW11MjI\nKP3mzZvDQkJC/PX09LI0NTULDx06NJep38/PL3T9+vUbCSEkJibGjc1m5/z000+fampqFmpra+eF\nhob6MWUvXrz4ga2tbZKysnK5np5e1jfffLOhI/uwdevWNd7e3mGCy1auXPnLypUrfyGEkLy8PG0v\nL69wdXX118bGxmm///77AsGyzDcmFxeXOEIIUVFRKVNUVKxMSEhwfPHiheHIkSOv9enTp1hDQ6No\n9uzZf5SXlyszz71///5gW1vbJCUlpYoZM2acnDlz5glmfwkh5MKFCxNsbGweqKqqljo7O8cnJydb\ntbQPS5cu3b169eptgssmTZp0bseOHauYfWSz2TlKSkoVpqamT69duzayI8fGwMCAs2XLli8sLCwe\nq6mplcyfP/8A03xACCH79+9faGxsnKaurv560qRJ5/Lz87UIIWTDhg3frFixYichhDQ2NkorKChU\nf/755z8QQkhtba1cr1696srKylQIIeT27dtDhw0bdlNVVbXUxsbmQWxsrCtTv5ubW8y6deu+c3Z2\njldQUKjOyMjo3zxG5v2npKRUYWFh8fjs2bOTmXWhoaF+w4cPv7F69eptampqJQMGDHgZERHhyazP\nyMjo7+LiEqekpFQxZsyYKx9//PFvrTUBlpeXKwcEBARra2vnsdnsnPXr129s6WwwODg4YOHChftv\n3brlpKioWMm8D1s7VoQ0fVvftWvXR8bGxmkDBw581rxO5n9p//79C3V0dHK1tbXztm/f/hmzPjEx\n0cHJyemWqqpqqba2dt7y5ct/bWxslG5ev4mJyXMTE5Pnrq6usYQQYm1t/VBRUbEyLCzMu/k2ExIS\nHFVUVMq0tbXzBJenp6cbOTo6JigrK5dPnjz5LPP/TgghDg4OiS9fvhyQnZ2t29Ix7PEopZiEnAwM\nDDKuXr06klJKduzYsdLJyelmbm6udkNDg/TixYv3+Pr6HqWUkoyMDAMWi8WfN29eaE1NjVxtbW2v\nkJAQPykpqcbQ0NB5fD6ftW7duo06Ojo5y5Yt+7WhoUE6MjJyjKKiYkV1dbU8pZT4+fmFrF+//ltK\nKYmOjnaTkpJq3LBhQyCXy5W8dOnSOHl5+eqysjJlSimJiYlxTUlJsaCUkkePHllpamoWnD17dpJg\nLDweT6L5/mRmZurJy8tXV1ZW9qaUEi6XK6mlpZWXkJDgQCklI0aMiPv444+D6uvrZR48eGCtoaHx\n6tq1a+6UUrJhw4bA2bNnH6aUEg6Ho998G+np6YZRUVGjGhoapIuKivq4uLjErlq16mdKKamvr5fR\n09PL3Llz53Iulyt55syZKTIyMvXM/t6/f9+2b9++hYmJifZ8Pp918ODBuQYGBhn19fUyzfchLi5u\nhK6ubhYzX1JSoionJ1eTn5/f7+nTpwN1dXWz8vPz+zH7++LFiwEdea319fU5VlZWj3JycnRKSkpU\nnZ2db6xbt24jpZRcvXp1ZJ8+fYqSkpJs6uvrZZYvX77TxcUlllJKrl275m5lZfWIUkri4+OHGRoa\npjs6Ot5mnmdjY5NEKSU5OTk66urqxZcvX/aklJIrV66MVldXLy4uLlanlBJXV9cYfX19TmpqqhmP\n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\nlqSkJC8oKGgZl8uVOnfu3KQ7d+7YM+sXLly4f8+ePUsSExMdKKWs6upqhYsXL37Q2tmTjY3Ngz59\n+hQvWLDgd09PzwglJaUKQpq+PV67dm1kfX29rKysbH2vXr3qJCUleR05LpRS1q5duz7Kzc3VKSkp\nUdu0adNXTELy9fU9FhIS4v/w4UPr+vp62bVr124eOnTobT09vSxCmhLCoUOH5lpYWDyWlpZudHNz\ni/n9998XDBgw4KW6uvprQgiZPXv2H+fPn58YGRnpwePxJOvq6noxiVkwhtbiq66uVmCxWLRPnz7F\nfD5fIiQkxD8lJcWyI/umr6+faWdndzcwMDCwsbFR+tatW04XLlyY0NJ7RktLK9/DwyPy008//amy\nslKRz+dLvHjxwjAuLs6lI9tq71h11HfffbeutrZW7vHjxxahoaF+zGtRVVXVW1FRsVJeXr7m6dOn\nprt3717aXl2ampqFgu/V5uzt7e+UlZWpMGchhDS9Fn/88cfsJ0+emNXU1Mh//fXX33p7e4cxxywx\nMdHBwMCAI+zZSE+BhPCWVq5c+YuXl1e4h4dHpJKSUoWTk9OtxMREB2Z983+ulsYxt/Wh3bx8W2V3\n7dr10ddff/2tkpJSxcaNG9c3/ybdXnKYNWvW0atXr45izg4Yx44d8+VwOAba2tp5U6dOPfPtt99+\nPXLkyGvN45OXl6/56quvNjk7O8erqamVJCYmOmzYsOGb+/fvD1ZWVi6fOHHi+WnTpp1mysvIyDSc\nOXNmanBwcICqqmrpkSNHPpwwYcIFGRmZBkIIGTJkyL39+/cvXLZsWZCamlqJsbFxmuAIrNb24dq1\nayMF96G+vl72yy+//F5DQ6NIS0srv7i4uM/333//JSGEHDly5ENLS8uU1upjsVh01qxZRz08PCIN\nDQ1fGBsbpzHXhYwaNerqxo0b10+bNu20trZ2XkZGRv/jx4/7MM91cnK6VVdX14s5GzAzM3siJydX\ny8wTQgibzc45d+7cpM2bN6/t27fvKz09vazt27d/JpgE2nrdzM3NUz/77LPtTk5Ot/r161eQkpJi\nOXz48BuCz23r/XbkyJEPb9265aSurv56/fr1G2fOnHmCOf7Nyx46dGhuQ0ODjLm5eaqamlqJt7d3\nmGDTVvNtCD63vWPV0S8urq6usUZGRumjR4+OWr169bbRo0dHEULIjz/++H9Hjx6dpaSkVLFo0aJ9\n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\nhCxevHjv+PHjL126dGm8kZFRuoKCQnVISIi/qOIBAIB2iKpTuSumy5cvew4cOPCpkZFR2pYtW9aI\nIwZ/f/8Dffv2LbS0tExmlr1+/Vpt9OjRV4yNjZ+PGTMmsrS0VKU7Y8rKytJ1c3OLNjc3f2xhYZHy\nyy+/rBB3XLW1tb0cHBwSrK2tH5iZmaV+8cUX34s7JmbicrmSNjY2SRMmTDjfU2LS19fnWFlZPbKx\nsUmyt7dP7AlxlZaWqkybNu2UqanpEzMzs9Tbt287ijOmp0+fDrSxsUliJiUlpfJffvllhbiP0+bN\nm780Nzd/bGlpmezr63u0rq5OVtwxUUrJjh07VlpaWiZbWFik7NixY2Vn3lPdGrAwE5fLlTQ0NEzP\nyMgwaGhokLa2tn6Qmppq1t1xxMXFjbh//76tYEJYvXr1D1u3bv2cUkq2bNmyZs2aNVu6M6b8/Px+\nSUlJNpRSUllZ2dvExORZamqqmbjjqq6ulqeUksbGRilHR8fb169fHy7umCilZPv27Z/OmjXryMSJ\nE8N7wutHKSUGBgYZr1+/VhNcJu645s6dezA4OHg+8xqWlZUpizsmZuLxeBL9+vXLz8rK0hVnTBkZ\nGQb9+/d/WVdXJ0spJTNmzDgRGho6T9zHKTk52dLS0jK5tra2F5fLlRw9evSV9PR0Q2Hj6vYXtqPT\nzZs3ncaOHRvBzH///fdffP/991+II5aMjAwDwYQwcODApwUFBZqUNn04Dxw48Kk4j9WkSZPOXrly\nZXRPiau6ulrezs7uTkpKioW4Y8rOzmaPGjUq6tq1a+7MGYK4Y6K0KSEUFxerCy4TZ1xlZWXK/fv3\nf9l8eU84VpRS8tdff3kMHz78urhjev36tZqJicmzkpIS1cbGRqkJEyacj4yMHCPu4xQWFjY9ICDg\nd2Z+48aN67Zu3fq5sHH12HsZ5ebm6ujq6mYz82w2Oyc3N1dHnDExCgsLNZnOb01NzcIWL6brJhwO\nxyApKcnW0dExQdxx8fl8CRsbmweampqF7u7u0RYWFo/FHdMnn3zy87Zt21ZLSEjwmWXijomQpuHV\no0ePjrKzs7u7f//+heKOKyMjo7+GhkaRv79/yODBg+8vXLhwf3V1tUJPOFaEEHL8+HEfX1/fY4SI\n9zipqamVfPbZZ9v19PSytLW181RUVMrGjBlzRdzHydLSMuX69esjSkpK1GpqauQvXbo0Picnhy1s\n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\n",
       "text": [
        "<matplotlib.figure.Figure at 0x34638d0>"
       ]
      },
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "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\ncv4f7PGByn7cLZQAAAAASUVORK5CYII=\n",
       "text": [
        "<matplotlib.figure.Figure at 0x3463890>"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "(a) Maximum power supplied to external system: 0.63 p.u\n"
       ]
      }
     ],
     "prompt_number": 1
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 5.7, Page number: 272"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from __future__ import division\n",
      "from math import *\n",
      "\n",
      "#Variable declaration:\n",
      "P_rated=2000*746/3                     #per phase rated power of motor(W)\n",
      "Xsm=1.95                                #Synchronous reactance(ohm)\n",
      "Vl=2300                                #Line to line voltage(V)\n",
      "f=60                                   #Angular frequency(Hz)\n",
      "p=30                                   #No. of poles\n",
      "Xsg=2.65                               #Synchronous reactance of generator(ohm)\n",
      "\n",
      "\n",
      "#Calculations:\n",
      "#for part (a):\n",
      "Vp=2300/sqrt(3)\n",
      "Ip=P_rated/Vp\n",
      "Eafm=sqrt(Vp**2+(Ip*Xsm)**2)\n",
      "Pm=3*Vp*Eafm/Xsm                             #Max power delivered to motor(W)\n",
      "ws=2*2*pi*f/p\n",
      "Tmax=Pm/ws                                  #MAx torque of motor(Nm)\n",
      "\n",
      "\n",
      "#for part (b):\n",
      "Eafg=sqrt(Vp**2+(Ip*Xsg)**2)\n",
      "Pm2=3*Eafm*Eafg/(Xsg+Xsm)                   #Max power delivered to motor(W)\n",
      "Tmax2=Pm2/ws                                #Max torque(Nm)\n",
      "\n",
      "\n",
      "\n",
      "#Results:\n",
      "print\"(a) Max power  :\",round(Pm/1000,0),\"kW,3-ph\"\n",
      "print\"    Max torque :\",round(Tmax/1000,1),\"kNm\"\n",
      "print \"(b) Max power :\", round(Pm2/1000,0),\"kW,3-ph\"\n",
      "print \"    Max torque:\", round(Tmax2/1000,1),\"Nm\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "(a) Max power  : 3096.0 kW,3-ph\n",
        "    Max torque : 123.2 kNm\n",
        "(b) Max power : 1639.0 kW,3-ph\n",
        "    Max torque: 65.2 Nm\n"
       ]
      }
     ],
     "prompt_number": 8
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 5.8, Page number: 279"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from __future__ import division\n",
      "from math import *\n",
      "\n",
      "\n",
      "#Variable declaration:\n",
      "P=45                                    #Power rated(KVA)\n",
      "Va=220                                  #Terminal voltage(V)\n",
      "Pin=45                                  #Power input to the armature(KVA)\n",
      "If=5.50                                 #field current(A)\n",
      "Rf=35.5                                 #Field winding resistance(ohm)\n",
      "Ra=0.0399                               #Armature dc resistance(ohm/phase)\n",
      "Xal=0.215                               #Leakage reactance of motor(ohm)\n",
      "pf=0.80                                 #Lagging power factor \n",
      "Pc=1.8                                  #Core loss(kW)\n",
      "Pw=0.91                                 #Friction & windage losses(kW)\n",
      "Ps=0.37                                 #Stray load loss(kW)\n",
      "\n",
      "\n",
      "#Calculations:\n",
      "Ia=P*10**3/(sqrt(3)*Va)\n",
      "P1=If**2*Rf/10**3                            #Loss in field winding(kW)\n",
      "P2=3*Ia**2*Ra/10**3                          #Loss in armature(kW)\n",
      "Pl=(Pc+Pw+Ps+P1+P2)\n",
      "Pi=Pin*pf+P1\n",
      "Po=Pi-Pl\n",
      "eff=(Po/Pi)*100\n",
      "\n",
      "#Results:\n",
      "print \"Efficiency of the synchronous machine:\",round(eff,1),\"%\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Efficiency of the synchronous machine: 84.3 %\n"
       ]
      }
     ],
     "prompt_number": 9
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 5.9, Page number: 287"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from __future__ import division\n",
      "import math\n",
      "import cmath\n",
      "\n",
      "#Variable declaration:\n",
      "Xd=1                              #Direct axis synchronus reactance(p.u)\n",
      "Xq=0.60                           #Quadrature axis synchronous reactance(p.u)\n",
      "Va=1                              #Terminal voltage(p.u)\n",
      "pf=0.8                              #Lagging power factor\n",
      "Ia=0.8-1j*math.sin(math.acos(0.8))       #Line current(p.u)\n",
      "\n",
      "\n",
      "#Calculations:\n",
      "phy=-math.acos(pf)\n",
      "E=Va+1j*Xq*Ia\n",
      "delta=cmath.phase(E)\n",
      "Id=abs(Ia)*math.sin(delta-phy)*cmath.exp(1j*(-pi/2+delta))\n",
      "Iq=abs(Ia)*math.cos(delta-phy)*cmath.exp(1j*delta)\n",
      "Eaf=Va+Xd*Id*1j+Xq*Iq*1j\n",
      "\n",
      "\n",
      "#Results:\n",
      "print \"Generated voltage:\",round(abs(Eaf),2),\"p.u Volt\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Generated voltage: 1.78 p.u Volt\n"
       ]
      }
     ],
     "prompt_number": 12
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 5.11, Page number: 291"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from pylab import *\n",
      "import cmath\n",
      "from sympy import *\n",
      "\n",
      "#Variable declaration:\n",
      "P_rated=2000*746                  #Rated power of motor(W)\n",
      "Xs=1.95                           #Synchronous reactance(ohm/phase)\n",
      "Xd=1.95                           #Direct axis synchronous reactance(ohm/ph)\n",
      "Xq=1.40                         #Quadrature axis synchronous reactance(ohm/ph)\n",
      "pf=1                            #Power factor of the machine\n",
      "Vl=2300                         #Line to line voltage(V)\n",
      "\n",
      "#Calculatons:\n",
      "Va=float(Vl/sqrt(3))              #volt\n",
      "Ia=float(P_rated/(Va*3))          #ampere\n",
      "E1=Va-1j*Ia*Xq                      #From phasor diagram\n",
      "delta=cmath.phase(E1)             #power angle\n",
      "Id=Ia*sin(abs(delta))             #direct axis current(A)\n",
      "Eaf=abs(E1)+Id*(Xd-Xq)\n",
      "r=symbols('r')\n",
      "def P(r):                           #Process for finding maximum power\n",
      "    return Eaf*Va*sin(r)/Xd + Va**2*(Xd-Xq)*sin(2*r)/(2*Xd*Xq)\n",
      "P1=diff(P(r),r)\n",
      "#On differentiation,\n",
      "#P1 = 1023732.58489791*cos(r) + 355250.305250306*(2*(cos(r))**2-1)\n",
      "l = solve(1023732.58489791*cos(r) + 355250.305250306*(2*(cos(r))**2-1),r)\n",
      "P_max = (P(round(l[0],5)))\n",
      "\n",
      "\n",
      "#Results:\n",
      "print \"Maximum mechanical power:\",math.ceil(3*P_max/10**3),\"kW,3-phase\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Maximum mechanical power: 3236.0 kW,3-phase\n"
       ]
      }
     ],
     "prompt_number": 1
    }
   ],
   "metadata": {}
  }
 ]
}