diff options
author | hardythe1 | 2015-04-07 15:58:05 +0530 |
---|---|---|
committer | hardythe1 | 2015-04-07 15:58:05 +0530 |
commit | 92cca121f959c6616e3da431c1e2d23c4fa5e886 (patch) | |
tree | 205e68d0ce598ac5caca7de839a2934d746cce86 /Power_Electronics/Power_electronics_ch_9.ipynb | |
parent | b14c13fcc6bb6d01c468805d612acb353ec168ac (diff) | |
download | Python-Textbook-Companions-92cca121f959c6616e3da431c1e2d23c4fa5e886.tar.gz Python-Textbook-Companions-92cca121f959c6616e3da431c1e2d23c4fa5e886.tar.bz2 Python-Textbook-Companions-92cca121f959c6616e3da431c1e2d23c4fa5e886.zip |
added books
Diffstat (limited to 'Power_Electronics/Power_electronics_ch_9.ipynb')
-rwxr-xr-x | Power_Electronics/Power_electronics_ch_9.ipynb | 1272 |
1 files changed, 1272 insertions, 0 deletions
diff --git a/Power_Electronics/Power_electronics_ch_9.ipynb b/Power_Electronics/Power_electronics_ch_9.ipynb new file mode 100755 index 00000000..1b652a14 --- /dev/null +++ b/Power_Electronics/Power_electronics_ch_9.ipynb @@ -0,0 +1,1272 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 9: DC and AC Motor Drives"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.1, Page No. 377"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Field current, firing angle and power factor\n",
+ "\n",
+ "import math\n",
+ "# Variable delcaration\n",
+ "V= 230.0 # input supply voltage\n",
+ "f = 50.0 # supply frequency\n",
+ "alfa_f = 0 # firing angle for semi-converter for field\n",
+ "Rf = 200.0 # field resistance\n",
+ "Ra = 0.3 # Armature resistance\n",
+ "T = 50.0 # torque\n",
+ "r = 900.0 # rpm\n",
+ "vc = 0.8 # voltage constant\n",
+ "tc = 0.8 # torque constant\n",
+ "\n",
+ "#Calculations\n",
+ "#(a)\n",
+ "sqrt_2 = math.floor(math.sqrt(2)*1000)/1000\n",
+ "Vm = V*sqrt_2\n",
+ "Vf = (2*Vm/math.pi)*math.cos(alfa_f)\n",
+ "If = Vf/Rf\n",
+ "If = math.floor(If*10**4)/10**4\n",
+ "#(b)\n",
+ "Ia = T/(tc*If)\n",
+ "Ia = math.ceil(Ia*1000)/1000\n",
+ "w = r*2*math.pi/60\n",
+ "w = math.ceil(w*1000)/1000\n",
+ "back_emf =vc*w*If\n",
+ "back_emf = math.floor(back_emf*100)/100\n",
+ "Va = back_emf+Ia*Ra\n",
+ "Va = math.floor(Va*1000)/1000\n",
+ "alfa = math.acos((Va*math.pi/(Vm))-1)\n",
+ "alfa_a = alfa*180/math.pi\n",
+ "alfa_a = math.floor(alfa_a*1000)/1000\n",
+ "#(c)\n",
+ "P = Va*Ia\n",
+ "Ii = Ia*math.sqrt((180-alfa_a)/180)\n",
+ "Ii = math.floor(Ii*100)/100\n",
+ "VA = V*Ii\n",
+ "pf = P/VA\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print(\"(a) Field current = %.4f A\\n(b) Alfa_a = %.3f\u00b0\\n(c) Input power factor = %.3f lagging\"%(If,alfa_a,pf))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a) Field current = 1.0352 A\n",
+ "(b) Alfa_a = 94.076\u00b0\n",
+ "(c) Input power factor = 0.605 lagging\n"
+ ]
+ }
+ ],
+ "prompt_number": 45
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.2, Page No.378"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Torque developed and motor speed\n",
+ "\n",
+ "import math\n",
+ "# Variable delcaration\n",
+ "V= 230.0 # input supply voltage\n",
+ "f = 50.0 # supply frequency\n",
+ "alfa_f = 0 # firing angle of converter in the field\n",
+ "Rf = 200.0 # field resistance\n",
+ "Ra = 0.25 # Armature resistance\n",
+ "Ia = 50 # Armature current\n",
+ "vc = 1.1 # voltage constant\n",
+ "tc = 1.1 # torque constant\n",
+ "alfa_a = 45 # firing angle of armature ciruit\n",
+ "\n",
+ "#Calculations\n",
+ "alfa_a = alfa_a*math.pi/180\n",
+ "sqrt_2 = math.floor(math.sqrt(2)*1000)/1000\n",
+ "Vm = V*sqrt_2\n",
+ "Vf = 2*Vm*math.cos(alfa_f)/math.pi\n",
+ "Va = 2*Vm*math.cos(alfa_a)/math.pi\n",
+ "If = Vf/Rf\n",
+ "If = math.floor(If*10**4)/10**4\n",
+ "T = tc*Ia*If\n",
+ "bemf = Va- Ia*Ra - 2\n",
+ "w = bemf/(vc*If)\n",
+ "N = w*60/(2*math.pi)\n",
+ "\n",
+ "#Result\n",
+ "print(\"Torque = %.3f N-m\\n\\nMotor Speed = %.1f rpm\"%(T,N))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Torque = 56.936 N-m\n",
+ "\n",
+ "Motor Speed = 1106.1 rpm\n"
+ ]
+ }
+ ],
+ "prompt_number": 52
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.3, Page No. 378"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# firing angle of the converter in the armature circuit\n",
+ "\n",
+ "import math\n",
+ "V = 400 # input 3-phase supply\n",
+ "alfa_f = 0 # firing angle of field converter\n",
+ "Ra = 0.3 # Armature resistance\n",
+ "Rf = 250 # field resistance\n",
+ "Ia = 50 # Armature current\n",
+ "vc = 1.3 # motor voltage constant\n",
+ "N = 1200 # speed in rpm\n",
+ "\n",
+ "#Calculations\n",
+ "Vf = 3*math.sqrt(3)*V*math.sqrt(2)*math.cos(alfa_f)/(math.sqrt(3)*math.pi)\n",
+ "If = Vf/Rf\n",
+ "w = N*2*math.pi/60\n",
+ "Eb = vc*If*w\n",
+ "Va = Eb+Ia*Ra\n",
+ "alfa_a = math.acos(Va*math.sqrt(3)*math.pi/(3*V*math.sqrt(2)*math.sqrt(3)))\n",
+ "alfa_a = alfa_a*180/math.pi\n",
+ "alfa_a = math.ceil(alfa_a*100)/100\n",
+ "#Result\n",
+ "print(\"Alfa_a = %.2f\u00b0\"%alfa_a)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Alfa_a = 47.07\u00b0\n"
+ ]
+ }
+ ],
+ "prompt_number": 55
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.4, Page No. 378"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# input power, speed and torque\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "V = 500 # input supply voltage\n",
+ "Ra = 0.1 # Armature resistance\n",
+ "Ia = 200.0 # Armature current\n",
+ "vc = 1.4 # Volatage constant\n",
+ "tc = 1.4 # Torque constant\n",
+ "If = 2 # Field current\n",
+ "d = 0.5 # chopper duty cycle\n",
+ "\n",
+ "# Calculations\n",
+ "#(a)\n",
+ "Pi = d*V*Ia\n",
+ "#(b)\n",
+ "Va = V*d\n",
+ "Eb = Va - Ia*Ra\n",
+ "w = Eb/(vc*If)\n",
+ "w = math.floor(w*100)/100\n",
+ "N = w*60/(2*math.pi)\n",
+ "#(c)\n",
+ "T = tc*Ia*If\n",
+ "\n",
+ "#Result\n",
+ "print(\"(a) Power input = %.0f kW \\n(b) Speed = %.2f rpm\\n(c) Torque = %.0f N-m\"%(Pi/1000,N,T))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a) Power input = 50 kW \n",
+ "(b) Speed = 784.38 rpm\n",
+ "(c) Torque = 560 N-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 71
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.5, Page No. 379"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Braking DC motor using one quadrant chopper\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "Ra = 0.1 # Armature resistance\n",
+ "Rb = 7.5 # Breaking resistance\n",
+ "vc = 1.4 # voltage constant\n",
+ "Ia = 120 # armature current\n",
+ "If = 1.6 # field current\n",
+ "d = 0.35 # chopper duty cycle\n",
+ "\n",
+ "#calculations\n",
+ "#(a)\n",
+ "Vavg = Rb*Ia*(1-d)\n",
+ "#(b)\n",
+ "Pb = (Ia**2)*Rb*((1-d)**2)\n",
+ "#(c)\n",
+ "Eb = Vavg+Ra*Ia\n",
+ "w = Eb/(vc*If)\n",
+ "w = math.ceil(w*100)/100\n",
+ "N = w*60/(2*math.pi)\n",
+ "\n",
+ "#Result\n",
+ "print(\"(a) Average voltage across chopper = %.0f V\\n(b) Pb = %.0f W\\n(c) Speed = %.4f rpm \"%(Vavg,Pb,N))\n",
+ "#Answer for Pb and Speed is wrong in the book"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a) Average voltage across chopper = 585 V\n",
+ "(b) Pb = 45630 W\n",
+ "(c) Speed = 2545.0785 rpm \n"
+ ]
+ }
+ ],
+ "prompt_number": 87
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.6, Page No. 379"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Speed -Torque characteristics\n",
+ "\n",
+ "import math\n",
+ "from pylab import *\n",
+ "#variable declaration\n",
+ "V = 220.0 # per phase input voltage\n",
+ "f = 50 # frequency\n",
+ "L = 0.012 # motor inductance\n",
+ "R = 0.72 # Resistance\n",
+ "a = 2 # Armature constant\n",
+ "alfa = 90 # firing angle\n",
+ "\n",
+ "#Calculations\n",
+ "sqrt_2=math.floor(math.sqrt(2)*1000)/1000\n",
+ "sqrt_3=math.floor(math.sqrt(3)*1000)/1000\n",
+ "Va = 3*sqrt_3*V*sqrt_2*(1+math.cos(alfa*math.pi/180))/(2*math.pi)\n",
+ "Va = math.floor(Va*100)/100\n",
+ "Ia1 = 5 # Armature current for case 1\n",
+ "T1 = Ia1*a\n",
+ "Eb1 =Va-Ia1*R\n",
+ "Speed1 = Eb1*60/(a*2*math.pi) \n",
+ "Speed1 = math.floor(Speed1*100)/100\n",
+ "\n",
+ "Ia2 = 10 # Armature current for case 2\n",
+ "T2 = Ia2*a\n",
+ "Eb2 =Va-Ia2*R\n",
+ "Speed2 = Eb2*60/(a*2*math.pi) \n",
+ "Speed2 = math.floor(Speed2*100)/100\n",
+ "\n",
+ "Ia3 = 20 # Armature current for case 3\n",
+ "T3 = Ia3*a\n",
+ "Eb3 =Va-Ia3*R\n",
+ "Speed3 = Eb3*60/(a*2*math.pi) \n",
+ "Speed3 = math.floor(Speed3*100)/100\n",
+ "\n",
+ "Ia4 = 30 # Armature current for case 4\n",
+ "T4 = Ia4*a\n",
+ "Eb4 =Va-Ia4*R\n",
+ "Speed4 = Eb4*60/(a*2*math.pi) \n",
+ "Speed4 = math.floor(Speed4*100)/100\n",
+ "\n",
+ "#Result\n",
+ "print(\"Armature Voltage =%f V\"%Va)\n",
+ "print(\"For Ia =0%d A, Torque = %d N-m and Speed = %.2f rpm\"%(Ia1,T1,Speed1))\n",
+ "print(\"For Ia =%d A, Torque = %d N-m and Speed = %.2f rpm\"%(Ia2,T2,Speed2))\n",
+ "print(\"For Ia =%d A, Torque = %d N-m and Speed = %.2f rpm\"%(Ia3,T3,Speed3))\n",
+ "print(\"For Ia =%d A, Torque = %d N-m and Speed = %.2f rpm\"%(Ia4,T4,Speed4))\n",
+ "#################-----PLOT-----#####################\n",
+ "%pylab inline\n",
+ "import matplotlib.pyplot as plt\n",
+ "t = [T1, T2, T3, T4]\n",
+ "S = [Speed1, Speed2, Speed3, Speed4 ]\n",
+ "plt.plot(t,S)\n",
+ "plt.plot(t,S,'ro')\n",
+ "plt.axis([0,70,0,1500])\n",
+ "plt.xlabel('Torque(N-m)')\n",
+ "plt.ylabel('Speed(RPM)')\n",
+ "plt.title('Speed torque characteristics')\n",
+ "plt.show()"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Armature Voltage =257.250000 V\n",
+ "For Ia =05 A, Torque = 10 N-m and Speed = 1211.08 rpm\n",
+ "For Ia =10 A, Torque = 20 N-m and Speed = 1193.90 rpm\n",
+ "For Ia =20 A, Torque = 40 N-m and Speed = 1159.52 rpm\n",
+ "For Ia =30 A, Torque = 60 N-m and Speed = 1125.14 rpm\n",
+ "Populating the interactive namespace from numpy and matplotlib"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stderr",
+ "text": [
+ "WARNING: pylab import has clobbered these variables: ['f', 'info', 'linalg', 'draw_if_interactive', 'random', 'fft', 'power']\n",
+ "`%pylab --no-import-all` prevents importing * from pylab and numpy\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x9749208>"
+ ]
+ }
+ ],
+ "prompt_number": 121
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.7, Page No. 380"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Firing angle and no load speed\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "V = 400 # input 3-phase voltage\n",
+ "f = 50 # frequency\n",
+ "Ia = 50 # motor armature current\n",
+ "Ra = 0.1 # armature resistance\n",
+ "bec = 0.3 # back emf constant\n",
+ "alfa = 30.0 # firing angle\n",
+ "Inl = 5 # no load current\n",
+ "n = 1600 # speed in rpm \n",
+ "\n",
+ "#Calculations\n",
+ "#(a)\n",
+ "sqrt_2=math.floor(math.sqrt(2)*1000)/1000\n",
+ "sqrt_3=math.floor(math.sqrt(3)*100)/100\n",
+ "Va = 3*sqrt_3*V*sqrt_2*(1+math.cos(alfa*math.pi/180))/(sqrt_3*2*math.pi)\n",
+ "Bemf = Va-Inl*Ra\n",
+ "Speed = Bemf/bec\n",
+ "#(b)\n",
+ "Bemf2 = n*bec\n",
+ "Vi = Bemf2+(Ra*Ia)\n",
+ "alfa2= math.acos((Vi/(3*sqrt_3*V*sqrt_2/(sqrt_3*2*math.pi)))-1)\n",
+ "alfa2 = alfa2*180/math.pi\n",
+ "\n",
+ "#Result\n",
+ "print(\"(a)\\nAverage output voltage of rectifier = %.1f V\\nBack emf = %.1f V\\nSpeed = %d rpm\"%(math.floor(Va*10)/10,Bemf,Speed))\n",
+ "print(\"\\n(b)\\nBack emf = %.0f V\\nInput voltage to motor = %.0f V\\nfiring angle = %.2f\u00b0\"%(Bemf2,Vi,alfa2))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "Average output voltage of rectifier = 503.9 V\n",
+ "Back emf = 503.4 V\n",
+ "Speed = 1678 rpm\n",
+ "\n",
+ "(b)\n",
+ "Back emf = 480 V\n",
+ "Input voltage to motor = 485 V\n",
+ "firing angle = 37.26\u00b0\n"
+ ]
+ }
+ ],
+ "prompt_number": 147
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.8, Page No. 381"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#firing angle of converter and power fed back to source(refering ex.9.2)\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "V= 230.0 # input supply voltage\n",
+ "f = 50.0 # supply frequency\n",
+ "alfa_f = 0 # firing angle of converter in the field\n",
+ "Rf = 200.0 # field resistance\n",
+ "Ra = 0.25 # Armature resistance\n",
+ "Ia = 50 # Armature current\n",
+ "vc = 1.1 # voltage constant\n",
+ "tc = 1.1 # torque constant\n",
+ "alfa_a = 45 # firing angle of armature ciruit\n",
+ "\n",
+ "#Calculations\n",
+ "alfa_a = alfa_a*math.pi/180\n",
+ "sqrt_2 = math.floor(math.sqrt(2)*1000)/1000\n",
+ "Vm = V*sqrt_2\n",
+ "Vf = 2*Vm*math.cos(alfa_f)/math.pi\n",
+ "Va1 = 2*Vm*math.cos(alfa_a)/math.pi\n",
+ "bemf = Va1- Ia*Ra - 2\n",
+ "Eg = -bemf\n",
+ "Va = Eg + Ia*Ra +2\n",
+ "alfa = math.acos(Va*math.pi/(2*sqrt_2*V))\n",
+ "alfa = alfa*180/math.pi\n",
+ "P = -Va*Ia\n",
+ "\n",
+ "#Result\n",
+ "print(\"When field current is reversed, the direction of back emf is reversed. The motor now acts as generator.\\n\\nEg = %f\"%Eg)\n",
+ "print(\"\\nAlfa = %.2f\u00b0\\n\\nPower fed back to source = %d W\"%(alfa,P))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "When field current is reversed, the direction of back emf is reversed. The motor now acts as generator.\n",
+ "\n",
+ "Eg = -131.900436\n",
+ "\n",
+ "Alfa = 124.54\u00b0\n",
+ "\n",
+ "Power fed back to source = 5870 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 152
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.9, Page No.381"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Half controlled single phase bridge converter\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "V = 240 # input DC voltage\n",
+ "alfa = 100 # firing angle \n",
+ "Ra = 6 # armature Resistance\n",
+ "Ia = 1.8 # armature current\n",
+ "\n",
+ "#Calculations\n",
+ "alfa = alfa*math.pi/180\n",
+ "sqrt_2=math.floor(math.sqrt(2)*1000)/1000\n",
+ "Vdc = sqrt_2*V*(1+math.cos(alfa))/math.pi\n",
+ "Vdc = math.floor(Vdc*100)/100\n",
+ "Bemf = Vdc-Ra*Ia\n",
+ "\n",
+ "#Result\n",
+ "print(\"Back emf = %.2f V\"%Bemf)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Back emf = 78.46 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 96
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.10, Page No.381"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Speed and Torue\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "V = 230.0 # input voltage\n",
+ "N = 1500.0 # rpm \n",
+ "Ra = 1.0 # armature resistance\n",
+ "Ia = 10 # Armature current\n",
+ "T1 = 5 # Torque for case-1\n",
+ "alfa1 = 30 # Firing angle for case-1\n",
+ "N2 = 950.0 # rpm in case-2\n",
+ "alfa2 = 45 # Firing angle for case-2\n",
+ "\n",
+ "#Calculations\n",
+ "w = N*2*math.pi/60\n",
+ "k = (V-Ia*Ra)/w\n",
+ "k = math.floor(k*10)/10\n",
+ "#(a)\n",
+ "Ia1 = T1/k\n",
+ "V1 = 2*V*math.sqrt(2)*math.cos(alfa1*math.pi/180)/math.pi\n",
+ "V1 = math.floor(V1*10)/10\n",
+ "w1 = (V1-Ia1*Ra)/k\n",
+ "w1 = w1*60/(2*math.pi)\n",
+ "#(b)\n",
+ "V2 = 2*V*math.sqrt(2)*math.cos(alfa2*math.pi/180)/math.pi\n",
+ "V2 = math.ceil(V2*100)/100\n",
+ "Ia2 = V2-(k*N2*2*math.pi/60)\n",
+ "#Ia2 = math.floor(Ia2*100)/100\n",
+ "T2 = k*Ia2\n",
+ "\n",
+ "#Result\n",
+ "print(\"k - Torque constant = %.1f N-m/A\"%k)\n",
+ "print(\"\\n(a) Speed = %.1f rpm\\n\\n(b) Torque = %f N-m\"%(w1,T2))\n",
+ "#Answer for torque is wrong in the book"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "k - Torque constant = 1.4 N-m/A\n",
+ "\n",
+ "(a) Speed = 1198.6 rpm\n",
+ "\n",
+ "(b) Torque = 10.013816 N-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 177
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.11, Page No.382"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# rms source, rms and average thyristor current and power factor\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "V = 500.0 # Morot max. voltage rating\n",
+ "N = 1500.0 # motor max. speed in rpm\n",
+ "Ia = 100.0 # Motor max. current\n",
+ "Vi = 350.0 # 3-phase input supply voltage\n",
+ "Ra = 1.1 # armature resistance\n",
+ "alfa = 45 # firing angle\n",
+ "N1 = 1200.0 # actual speed \n",
+ "\n",
+ "#Calculations\n",
+ "w = N*2*math.pi/60\n",
+ "w1 = N1*2*math.pi/60\n",
+ "k = (V-Ia*Ra)/w\n",
+ "k = math.floor(k*10**4)/10**4\n",
+ "sqrt_2=math.floor(math.sqrt(2)*1000)/1000\n",
+ "sqrt_3=math.floor(math.sqrt(3)*100)/100\n",
+ "Va = 3*sqrt_3*Vi*sqrt_2*(1+math.cos(alfa*math.pi/180))/(sqrt_3*2*3.142)#--math.pi = 3.142 to match the ans\n",
+ "Va = math.ceil(Va*100)/100\n",
+ "Ia = (Va -k*w1)/Ra\n",
+ "Ia = math.ceil(Ia*100)/100\n",
+ "Irms_i = Ia*math.sqrt(120.0/180.0)\n",
+ "Iavg = Ia/3\n",
+ "Irms = Ia/math.sqrt(3)\n",
+ "pf = (Ia*Va)/(sqrt_3*Vi*Irms_i)\n",
+ "\n",
+ "#Result\n",
+ "print(\"Torque constant, k = %.2f V-s/rad\\n\\n(a)\\nConverter output voltage = %.2f V\\nIa = %.2f A \"%(k,Va,Ia))\n",
+ "print(\"\\n(b)\\nRMS input current = %.2f A\\nAverage thyristor current = %.2f A\\nRMS thyristor current = %.2f A\"%(Irms_i,Iavg,Irms))\n",
+ "print(\"Input power factor = %.3f lagging\"%(math.floor(pf*1000)/1000))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Torque constant, k = 2.48 V-s/rad\n",
+ "\n",
+ "(a)\n",
+ "Converter output voltage = 403.34 V\n",
+ "Ia = 83.04 A \n",
+ "\n",
+ "(b)\n",
+ "RMS input current = 67.80 A\n",
+ "Average thyristor current = 27.68 A\n",
+ "RMS thyristor current = 47.94 A\n",
+ "Input power factor = 0.815 lagging\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.12, Page No.383"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# time taken by motor to reach 1000rpm speed\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "T = 40 # Load torque\n",
+ "N = 500.0 # motor speed \n",
+ "i = 0.01 # inertia of the drive\n",
+ "T1 = 100.0 # increased value of torque\n",
+ "N1 = 1000.0 # speed value\n",
+ "\n",
+ "#Calculations\n",
+ "w = N*2*math.pi/60\n",
+ "w1 = N1*2*math.pi/60\n",
+ "A = -w/((T1-T)/i)\n",
+ "t = (w1/((T1-T)/i))+A\n",
+ "t = math.floor(t*10**6)/10**6\n",
+ "\n",
+ "#Result\n",
+ "print(\"Time taken by motor to reach 1000 rpm speed = %f seconds\"%t)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Time taken by motor to reach 1000 rpm speed = 0.008726 seconds\n"
+ ]
+ }
+ ],
+ "prompt_number": 24
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.13, Page No.384"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# motor parameters:motor driven by DC chopper\n",
+ "\n",
+ "import math\n",
+ "#Variavble declaration\n",
+ "f = 400.0 # chopper operating frequency\n",
+ "V = 200.0 # input voltage\n",
+ "T = 30.0 # load torque\n",
+ "N = 1000.0 # speed in rpm\n",
+ "Ra = 0.2 # motor resistance\n",
+ "L = 2*10**-3 # motor inductance\n",
+ "emf = 1.5 # emf\n",
+ "k = 1.5 # torque constant\n",
+ "\n",
+ "#calculations\n",
+ "\n",
+ "w = N*math.pi*2/60\n",
+ "Ia = T/k\n",
+ "Be = emf*w\n",
+ "Be = math.ceil(Be*100)/100\n",
+ "alfa = (Be+Ia*Ra)/V\n",
+ "\n",
+ "t = 1/f\n",
+ "Ton = alfa*t\n",
+ "Toff = t-Ton\n",
+ "x = t*Ra/L\n",
+ "b1 = (1-(math.e**(-alfa*x)))\n",
+ "b1 = math.ceil(b1*10**4)/10**4\n",
+ "b2 = (1-(math.e**(-x)))\n",
+ "b2 = math.ceil(b2*10**4)/10**4\n",
+ "Imax = ((V/Ra)*(b1/b2))-(Be/Ra)\n",
+ "Imin= ((V/Ra)*(((math.e**(alfa*x))-1)/(((math.e**(x))-1))))-(Be/Ra)\n",
+ "x1 = (V-Be)/Ra\n",
+ "x2 = Ra/L\n",
+ "\n",
+ "#Result\n",
+ "print(\"(a)\\nImax = %.3f A\\nImin = %d A\\n\\n(b) Excursion of armature current = %.3f A\"%(Imax,Imin,Imax))\n",
+ "print(\"\\n(c)\\nVariation of cuurent during on period of chopper is \\ni = %.1f*(1-e^(-%d*t'))\"%(x1,x2))\n",
+ "print(\"\\nVariation of cuurent during off period of chopper is \\ni = %.3f*e^(-%d*t')-%.1f*(1-e^(-%d*t'))\"%(Imax,x2,Be/Ra,x2))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ "Imax = 39.193 A\n",
+ "Imin = 0 A\n",
+ "\n",
+ "(b) Excursion of armature current = 39.193 A\n",
+ "\n",
+ "(c)\n",
+ "Variation of cuurent during on period of chopper is \n",
+ "i = 214.6*(1-e^(-100*t'))\n",
+ "\n",
+ "Variation of cuurent during off period of chopper is \n",
+ "i = 39.193*e^(-100*t')-785.4*(1-e^(-100*t'))\n"
+ ]
+ }
+ ],
+ "prompt_number": 29
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.14, Page No.391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Average motor current and speed\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "f = 50.0 # input frequency\n",
+ "V = 230 # input voltage\n",
+ "Ra = 1.5 # armature resistance\n",
+ "Rf = 1.5 # field resistance\n",
+ "K = 0.25 # torque constant\n",
+ "TL = 25 # load torque\n",
+ "emf = 0.25 # emf constant\n",
+ "\n",
+ "#Calculations\n",
+ "Vo = 2*math.sqrt(2)*V/math.pi\n",
+ "Vo = math.floor(Vo)\n",
+ "Ia = math.sqrt(T/K)\n",
+ "Ia = math.floor(Ia)\n",
+ "w = (Vo-Ia*Ra)/(emf*Ia)\n",
+ "N =w*60/(2*math.pi)\n",
+ "N = math.floor(N*100)/100\n",
+ "\n",
+ "#Result\n",
+ "print(\"Ia = %d A\\nN = %.2f RPM\"%(Ia,N))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Ia = 10 A\n",
+ "N = 733.38 RPM\n"
+ ]
+ }
+ ],
+ "prompt_number": 36
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.15, Page No.391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Armature current and firing angle of semi-converter\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "Vo = 675.0 # transformer secondary voltage\n",
+ "alfa1 = 90.5 # case 1 firing angle\n",
+ "N1 = 350.0 # case 1 motor speed in rpm\n",
+ "Ia1 = 30.0 # case 1 armature current\n",
+ "N2 = 500.0 # expected speed\n",
+ "Ra = 0.22 # armature resistance\n",
+ "Rf = 0.22 # field resistance\n",
+ "\n",
+ "#Calculations\n",
+ "Ia2 = Ia1*N2/N1\n",
+ "Ia2 = math.ceil(Ia2*100)/100\n",
+ "Va1 = Vo*math.sqrt(2)*(1+math.cos(alfa1*math.pi/180))/math.pi\n",
+ "Eb1 = Va1-(Ia1*(Ra+Rf))\n",
+ "Va2 = (Eb1/((Ia1*N1)/(Ia2*N2)))+Ia2*(Ra+Rf)\n",
+ "alfa2 = math.acos(((Va2*math.pi)/(math.sqrt(2)*Vo))-1)\n",
+ "alfa2 = alfa2*180/math.pi\n",
+ "\n",
+ "#Result\n",
+ "print(\"Armature current = %.2f A\\n\\nFiring Angle = %.2f\u00b0\"%(Ia2,alfa2))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Armature current = 42.86 A\n",
+ "\n",
+ "Firing Angle = 4.77\u00b0\n"
+ ]
+ }
+ ],
+ "prompt_number": 40
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.16, Page No. 392"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Torque and armature current\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "P = 15.0 # motor power rating\n",
+ "V = 220.0 # motor voltage rating\n",
+ "N = 1500.0 # motor max. speed\n",
+ "Vi = 230.0 # input voltage\n",
+ "emf = 0.03 # emf constant\n",
+ "K = 0.03 # Torque constant\n",
+ "alfa =45 # firing angle\n",
+ "\n",
+ "#Calculations\n",
+ "#(a)\n",
+ "sqrt_2 = math.floor(math.sqrt(2)*1000)/1000\n",
+ "alfa = alfa*math.pi/180\n",
+ "Vm = Vi*sqrt_2\n",
+ "N = N*2*math.pi/60\n",
+ "T = (4*emf*(Vm**2)*(math.cos(alfa)**2))/(((math.pi)**2)*(K*N)**2)\n",
+ "Ia = math.sqrt(T/K)\n",
+ "Ia = math.floor(Ia*100)/100\n",
+ "#(b)\n",
+ "Ia2 = Vm*(1+math.cos(alfa))/(math.pi*K*N)\n",
+ "Ia2 = math.floor(Ia2*10)/10\n",
+ "T2 = K*Ia2**2\n",
+ "\n",
+ "#Result\n",
+ "print(\"(a)\\n Torque = %.2f N-m\\n Armature current = %.2f A\"%(T,Ia))\n",
+ "print(\"\\n(b)\\n Armature current = %.1f A\\n Torque = %.4f N-m\"%(Ia2,T2))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)\n",
+ " Torque = 28.96 N-m\n",
+ " Armature current = 31.06 A\n",
+ "\n",
+ "(b)\n",
+ " Armature current = 37.5 A\n",
+ " Torque = 42.1875 N-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 50
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.17, Page No.392"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# motor current and Torque \n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "Pr = 15.0 # motor power rating\n",
+ "Vr = 220.0 # motor voltage rating\n",
+ "N = 1000.0 # motor max. speed\n",
+ "R = 0.2 # total armature and series resistance\n",
+ "Vi = 230.0 # input voltage\n",
+ "Ks = 0.03 # speed constant\n",
+ "K = 0.03 # Torque constant\n",
+ "alfa = 30 # Firing angle\n",
+ "\n",
+ "#Calculation\n",
+ "sqrt_2 = math.floor(math.sqrt(2)*1000)/1000\n",
+ "alfa = alfa*math.pi/180\n",
+ "Vm = Vi*sqrt_2\n",
+ "N = N*2*math.pi/60\n",
+ "N = math.ceil(N*100)/100\n",
+ "V = Vm*(1+math.cos(alfa))/math.pi\n",
+ "V = math.floor(V*100)/100\n",
+ "Ia = V/((Ks*N)+R)\n",
+ "Ia = math.floor(Ia*1000)/1000\n",
+ "T = K*(Ia*Ia)\n",
+ "\n",
+ "# Result\n",
+ "print(\"Armature current = %.3f A\\n\\nTorque = %.2f N-m\"%(Ia,T))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Armature current = 57.807 A\n",
+ "\n",
+ "Torque = 100.25 N-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 69
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.18, Page No. 400"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# load torque, rotor current and stator voltage\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "V = 400.0 # motor voltage rating\n",
+ "p = 4.0 # no of poles\n",
+ "f = 50.0 # frequency\n",
+ "r1 = 0.64 # Stator resistance \n",
+ "x1 = 1.1 # leakage resistance\n",
+ "r2 = 0.08 # rotor resistance\n",
+ "x2 = 0.12 # leakage resistance\n",
+ "T = 40.0 # Torque at given speed\n",
+ "N1 = 1440.0 # Speed value for given torque\n",
+ "N2 = 1300.0 # Speed value for which torque is asked to calculate\n",
+ "\n",
+ "#Calculations\n",
+ "#(a)\n",
+ "ns = 60*2*f/p\n",
+ "Tl = T*(N2/N1)**2\n",
+ "Tl = math.floor(Tl*10)/10\n",
+ "#(b)\n",
+ "s = (ns -N2)/ns\n",
+ "r2_dash = r2*(2)**2\n",
+ "x2_dash = x2*(2)**2\n",
+ "pi = math.floor(math.pi*100)/100\n",
+ "I2_dash = math.sqrt((Tl*2*pi*s*(ns/60))/(3*r2_dash)) \n",
+ "I2 = 2*I2_dash\n",
+ "#(c)\n",
+ "I1 = I2_dash\n",
+ "V1 = I1*math.sqrt(((r1+r2_dash+r2_dash*((1-s)/s))**2)+(x1+x2_dash)**2)\n",
+ "StV = V1*math.sqrt(3)\n",
+ "\n",
+ "#Result\n",
+ "print(\"(a) At %d rpm , Load torque = %.1f N-m\\n(b) Rotor current = %.2f A\\n(c) Stator voltage = %.1f V\"%(N2,Tl,I2,StV))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a) At 1300 rpm , Load torque = 32.6 N-m\n",
+ "(b) Rotor current = 53.32 A\n",
+ "(c) Stator voltage = 158.2 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 2.19, Page No. 400"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# slip for max torque, speed and corresponding max torque\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "V = 400.0 # motor voltage rating\n",
+ "p = 4.0 # no of poles\n",
+ "f = 50.0 # frequency\n",
+ "r1 = 0.64 # Stator resistance \n",
+ "x1 = 1.1 # leakage resistance\n",
+ "r2 = 0.08 # rotor resistance\n",
+ "x2 = 0.12 # leakage resistance\n",
+ "T = 40.0 # Torque at given speed\n",
+ "N1 = 1440.0 # Speed value for given torque\n",
+ "N2 = 1300.0 # Speed value for which torque is asked to calculate\n",
+ "f1 = 50 # case 1 frequency\n",
+ "f2 = 25 # case 2 frequency\n",
+ "\n",
+ "#Calculation\n",
+ "#(a)\n",
+ "ns = 2*f1/p\n",
+ "r2_dash = r2*(2)**2\n",
+ "x2_dash = x2*(2)**2\n",
+ "s = r2_dash/math.sqrt(r1**2+(x1+x2_dash)**2)\n",
+ "s = math.floor(s*10000)/10000\n",
+ "V1 = V/math.sqrt(3)\n",
+ "V1 = math.ceil(V1*100)/100\n",
+ "Tmax = (1.5*V1**2/(2*math.pi*ns))*(1/(r1+math.sqrt(r1**2+(x1+x2_dash)**2)))\n",
+ "Tmax = math.floor(Tmax*10)/10\n",
+ "n = ns*(1-s)\n",
+ "N = n*60\n",
+ "#(b)\n",
+ "x1_b = x1/2\n",
+ "x2_dash_b = x2_dash/2\n",
+ "s2 = r2_dash/math.sqrt(r1**2+(x1_b+x2_dash_b)**2)\n",
+ "s2 = math.floor(s2*10000)/10000\n",
+ "ns2 = 2*f2/p\n",
+ "V1_b = V1*0.5\n",
+ "Tmax2 = (1.5*V1_b**2/(2*math.pi*ns2))*(1/(r1+math.sqrt(r1**2+(x1_b+x2_dash_b)**2)))\n",
+ "n2 = ns2*(1-s2)\n",
+ "N2 = n2*60\n",
+ "\n",
+ "#Result\n",
+ "print(\"(a) for f = %d Hz\\n\\nslip = %.4f\\n\\nTmax = %.1f N-m\\n\\nSpeed corresponds to max torque = %.2f rpm\"%(f1,s,Tmax,N))\n",
+ "print(\"\\n\\n(b) for f = %d Hz\\n\\nslip = %.4f\\n\\nTmax = %.2f N-m\\n\\nSpeed corresponds to max torque = %.3f rpm\"%(f2,s2,Tmax2,N2))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a) for f = 50 Hz\n",
+ "\n",
+ "slip = 0.1877\n",
+ "\n",
+ "Tmax = 217.2 N-m\n",
+ "\n",
+ "Speed corresponds to max torque = 1218.45 rpm\n",
+ "\n",
+ "\n",
+ "(b) for f = 25 Hz\n",
+ "\n",
+ "slip = 0.3147\n",
+ "\n",
+ "Tmax = 153.72 N-m\n",
+ "\n",
+ "Speed corresponds to max torque = 513.975 rpm\n"
+ ]
+ }
+ ],
+ "prompt_number": 46
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "example 9.20, Page No. 401"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Starting torque\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "V = 400.0 # motor voltage rating\n",
+ "p = 4.0 # no of poles\n",
+ "f = 50.0 # frequency\n",
+ "r1 = 0.64 # Stator resistance \n",
+ "x1 = 1.1 # leakage resistance\n",
+ "r2 = 0.08 # rotor resistance\n",
+ "x2 = 0.12 # leakage resistance\n",
+ "T = 40.0 # Torque at given speed\n",
+ "N1 = 1440.0 # Speed value for given torque\n",
+ "N2 = 1300.0 # Speed value for which torque is asked to calculate\n",
+ "f1 = 50 # case 1 frequency\n",
+ "f2 = 25 # case 2 frequency\n",
+ "\n",
+ "#Calculation\n",
+ "#(a)\n",
+ "ns = 2*f1/p\n",
+ "r2_dash = r2*(2)**2\n",
+ "x2_dash = x2*(2)**2\n",
+ "#s = r2_dash/math.sqrt(r1**2+(x1+x2_dash)**2)\n",
+ "#s = math.floor(s*10000)/10000\n",
+ "V1 = V/math.sqrt(3)\n",
+ "V1 = math.ceil(V1*100)/100\n",
+ "Tstarting = (3*(V1**2)*(r2_dash))/(2*math.pi*ns*((r1+r2_dash)**2+(x1+x2_dash)**2))\n",
+ "#(b)\n",
+ "x1_b = x1/2\n",
+ "x2_dash_b = x2_dash/2\n",
+ "#s2 = math.floor(s2*10000)/10000\n",
+ "ns2 = 2*f2/p\n",
+ "V1_b = V1*0.5\n",
+ "Tstarting_b = (3*(V1_b**2)*(r2_dash))/(2*math.pi*ns2*((r1+r2_dash)**2+(x1_b+x2_dash_b)**2))\n",
+ "\n",
+ "#Result\n",
+ "print(\"(a) for %d Hz,\\nT_starting = %.2f N-m\"%(f1,Tstarting))\n",
+ "print(\"\\n(b) for %d Hz,\\nT_starting = %.2f N-m\"%(f2,Tstarting_b))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a) for 50 Hz,\n",
+ "T_starting = 95.37 N-m\n",
+ "\n",
+ "(b) for 25 Hz,\n",
+ "T_starting = 105.45 N-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 57
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file |