summaryrefslogtreecommitdiff
path: root/Electrical_Circuit_Theory_And_Technology/chapter_31-checkpoint.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'Electrical_Circuit_Theory_And_Technology/chapter_31-checkpoint.ipynb')
-rwxr-xr-xElectrical_Circuit_Theory_And_Technology/chapter_31-checkpoint.ipynb665
1 files changed, 665 insertions, 0 deletions
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_31-checkpoint.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_31-checkpoint.ipynb
new file mode 100755
index 00000000..5c1fd9c0
--- /dev/null
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_31-checkpoint.ipynb
@@ -0,0 +1,665 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "<h1>Chapter 31: Mesh-current and nodal analysis</h1>"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "<h3>Example 1, page no. 546</h3>"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Use mesh-current analysis to determine the current flowing in \n",
+ "#(a) the 5 ohm resistance, and (b) the 1 ohm resistance of the d.c. circuit\n",
+ "from __future__ import division\n",
+ "import math\n",
+ "import numpy\n",
+ "import cmath\n",
+ "#initializing the variables:\n",
+ "V1 = 4;# in volts\n",
+ "V2 = 5;# in volts\n",
+ "R1 = 3;# in ohm\n",
+ "R2 = 5;# in ohm\n",
+ "R3 = 4;# in ohm\n",
+ "R4 = 1;# in ohm\n",
+ "R5 = 6;# in ohm\n",
+ "R6 = 8;# in ohm\n",
+ "\n",
+ "#calculation:\n",
+ " #The mesh currents I1, I2 and I3 are shown in Figure 31.2. Using Kirchhoff\u2019s voltage law in 3 loops\n",
+ " #three eqns obtained\n",
+ " #(R1 + R2)*I1 - R2*I2 = V1\n",
+ " #-1*R2*I1 + (R2 + R3 + R4 + R5)*I2 - R4*I3 = 0\n",
+ " # -1*R4*I2 + (R4 + R6)*I3 = -1*V2\n",
+ " #using determinants\n",
+ "d1 = [[V1, -1*R2, 0],[0, (R2 + R3 + R4 + R5), -1*R4],[-1*V2, -1*R4, (R4 + R6)]]\n",
+ "D1 = numpy.linalg.det(d1)\n",
+ "d2 = [[(R1 + R2), V1, 0],[-1*R2, 0, -1*R4],[0, -1*V2, (R4 + R6)]]\n",
+ "D2 = numpy.linalg.det(d2)\n",
+ "d3 = [[(R1 + R2), -1*R2, V1],[-1*R2, (R2 + R3 + R4 + R5), 0],[0, -1*R4, -1*V2]]\n",
+ "D3 = numpy.linalg.det(d3)\n",
+ "d = [[(R1 + R2), -1*R2, 0],[-1*R2, (R2 + R3 + R4 + R5), -1*R4],[0, -1*R4, (R4 + R6)]]\n",
+ "D = numpy.linalg.det(d)\n",
+ "I1 = D1/D\n",
+ "I2 = D2/D\n",
+ "I3 = D3/D \n",
+ "IR2 = I1 - I2\n",
+ "IR4 = I2 - I3\n",
+ "\n",
+ "\n",
+ "#Results\n",
+ "print \"\\n\\n Result \\n\\n\"\n",
+ "print \"\\n (a)current in the 5 ohm resistance is \",round(IR2,2),\" A\"\n",
+ "print \"\\n (b)current in the 1 ohm resistance is \",round(IR4,2),\" A\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ " Result \n",
+ "\n",
+ "\n",
+ "\n",
+ " (a)current in the 5 ohm resistance is 0.44 A\n",
+ "\n",
+ " (b)current in the 1 ohm resistance is 0.69 A"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "<h3>Example 2, page no. 547</h3>"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#determine, using mesh-current analysis, \n",
+ "#(a) the mesh currents I1 and I2 \n",
+ "#(b) the current flowing in the capacitor,\n",
+ "#(c) the active power delivered by the voltage source.\n",
+ "from __future__ import division\n",
+ "import math\n",
+ "import numpy\n",
+ "import cmath\n",
+ "#initializing the variables:\n",
+ "rv = 100;# in volts\n",
+ "thetav = 0;# in degrees\n",
+ "R1 = 5;# in ohm\n",
+ "R2 = -1j*4;# in ohm\n",
+ "R3 = 4;# in ohm\n",
+ "R4 = 3j;# in ohm\n",
+ "\n",
+ " #calculation:\n",
+ " #voltages\n",
+ "V = rv*math.cos(thetav*math.pi/180) + 1j*rv*math.sin(thetav*math.pi/180)\n",
+ " #Currents I1, I2 with their directions are shown in Figure 31.03.\n",
+ " #Two loops are chosen. The choice of loop directions is arbitrary.\n",
+ " #using kirchoff rule in 2 loops\n",
+ " #two eqns obtained\n",
+ " #(R1 + R2)*I1 - R2*I2 = V\n",
+ " #-1*R2*I1 + (R3 + R2 + R4)*I2 = 0\n",
+ " #using determinants\n",
+ "d1 = [[V, -1*R2],[0, (R3 + R2 + R4)]]\n",
+ "D1 = numpy.linalg.det(d1)\n",
+ "d2 = [[(R1 + R2), V],[-1*R2, 0]]\n",
+ "D2 = numpy.linalg.det(d2)\n",
+ "d = [[(R1 + R2), -1*R2],[-1*R2, (R3 + R2 + R4)]]\n",
+ "D = numpy.linalg.det(d)\n",
+ "I1 = D1/D\n",
+ "I2 = D2/D\n",
+ "I1mag = abs(I1)\n",
+ " #Current flowing in capacitor\n",
+ "Ic = I1 - I2\n",
+ " #Source power P\n",
+ "phi = cmath.phase(complex(I1.real,I1.imag))\n",
+ "P = V*I1mag*math.cos(phi)\n",
+ "Icmag = abs(Ic)\n",
+ "\n",
+ "\n",
+ "#Results\n",
+ "print \"\\n\\n Result \\n\\n\"\n",
+ "print \"(a)current,I1 is \",round(I1.real,2),\" + (\",round( I1.imag,2),\")i A, current, I2 is\",round(I2.real,2),\" + (\",round(I2.imag,2),\")i A\"\n",
+ "print \"(b)current in the capacitor is \",round(Icmag,2),\" A\"\n",
+ "print \"(c)Source power P is \",round(abs(P),2),\" W\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ " Result \n",
+ "\n",
+ "\n",
+ "(a)current,I1 is 10.17 + ( 3.55 )i A, current, I2 is 5.73 + ( -8.74 )i A\n",
+ "(b)current in the capacitor is 13.06 A\n",
+ "(c)Source power P is 1017.06 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "<h3>Example 3, page no. 548</h3>"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Determine the value of the line currents IR, IY and IB using mesh-current analysis\n",
+ "from __future__ import division\n",
+ "import math\n",
+ "import numpy\n",
+ "import cmath\n",
+ "#initializing the variables:\n",
+ "rv1 = 415;# in volts\n",
+ "rv2 = 415;# in volts\n",
+ "thetav1 = 120;# in degrees\n",
+ "thetav2 = 0;# in degrees\n",
+ "R = 3 + 4j;# in ohm\n",
+ "\n",
+ " #calculation:\n",
+ " #voltages\n",
+ "V1 = rv1*math.cos(thetav1*math.pi/180) + 1j*rv1*math.sin(thetav1*math.pi/180)\n",
+ "V2 = rv2*math.cos(thetav2*math.pi/180) + 1j*rv2*math.sin(thetav2*math.pi/180)\n",
+ " #Two mesh currents I1 and I2 are chosen as shown in Figure 31.4.\n",
+ " #Two loops are chosen. The choice of loop directions is arbitrary.\n",
+ " #using kirchoff rule in 2 loops\n",
+ " #two eqns obtained\n",
+ " #2*R*I1 - R*I2 = V1\n",
+ " #-1*R*I1 + 2*R*I2 = V2\n",
+ " #using determinants\n",
+ "d1 = [[V1, -1*R],[V2, 2*R]]\n",
+ "D1 = numpy.linalg.det(d1)\n",
+ "d2 = [[2*R, V1],[-1*R, V2]]\n",
+ "D2 = numpy.linalg.det(d2)\n",
+ "d = [[2*R, -1*R],[-1*R, 2*R]]\n",
+ "D = numpy.linalg.det(d)\n",
+ "I1 = D1/D\n",
+ "I2 = D2/D\n",
+ "I1mag = abs(I1)\n",
+ " #line current IR\n",
+ "IR = I1\n",
+ " #line current IB\n",
+ "IB = -1*I2\n",
+ " #line current IY\n",
+ "IY = I2 - I1\n",
+ "\n",
+ "\n",
+ "#Results\n",
+ "print \"\\n\\n Result \\n\\n\"\n",
+ "print \"current, IR is\",round(IR.real,2),\" + (\",round( IR.imag,2),\")i A, current, IB is\",round(IB.real,2),\" + (\",round( IB.imag,2),\")i A and current, IY is \",round(IY.real,2),\" + (\",round(IY.imag,2),\")i A\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ " Result \n",
+ "\n",
+ "\n",
+ "current, IR is 38.34 + ( 28.75 )i A, current, IB is -44.07 + ( 18.82 )i A and current, IY is 5.73 + ( -47.58 )i A\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "<h3>Example 4, page no. 551</h3>"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#determine the voltage VAB, by using nodal analysis.\n",
+ "from __future__ import division\n",
+ "import math\n",
+ "import cmath\n",
+ "#initializing the variables:\n",
+ "ri = 20;# in amperes\n",
+ "thetai = 0;# in degrees\n",
+ "R1 = 10;# in ohm\n",
+ "R2 = 3j;# in ohm\n",
+ "R3 = 4;# in ohm\n",
+ "R4 = 16;# in ohm\n",
+ "\n",
+ "#calculation:\n",
+ " #current\n",
+ "I = ri*math.cos(thetai*math.pi/180) + 1j*ri*math.sin(thetai*math.pi/180)\n",
+ " #Figure 31.8 contains two principal nodes (at 1 and B) and thus only one nodal equation is required. \n",
+ " #B is taken as the reference node and the equation for node 1 is obtained as follows. \n",
+ " #Applying Kirchhoff\u2019s current law to node 1 gives:\n",
+ " #IX + IY = I\n",
+ "V1 = I/((1/R4) +(1/(R2 +R3)))\n",
+ "IY = V1/(R2 + R3)\n",
+ "VAB = IY*R3\n",
+ "\n",
+ "\n",
+ "#Results\n",
+ "print \"\\n\\n Result \\n\\n\"\n",
+ "print \"\\n voltage VAB is \",round(VAB.real,2),\" + (\",round( VAB.imag,2),\")i V\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ " Result \n",
+ "\n",
+ "\n",
+ "\n",
+ " voltage VAB is 62.59 + ( -9.39 )i V"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "<h3>Example 5, page no. 552</h3>"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Determine the value of voltage VXY\n",
+ "from __future__ import division\n",
+ "import math\n",
+ "import cmath\n",
+ "#initializing the variables:\n",
+ "rv1 = 8;# in volts\n",
+ "rv2 = 8;# in volts\n",
+ "thetav1 = 0;# in degrees\n",
+ "thetav2 = 90;# in degrees\n",
+ "R1 = 5;# in ohm\n",
+ "R2 = 6j;# in ohm\n",
+ "R3 = 4;# in ohm\n",
+ "R4 = 3;# in ohm\n",
+ "\n",
+ "#calculation:\n",
+ " #voltages\n",
+ "V1 = rv1*math.cos(thetav1*math.pi/180) + 1j*rv1*math.sin(thetav1*math.pi/180)\n",
+ "V2 = rv2*math.cos(thetav2*math.pi/180) + 1j*rv2*math.sin(thetav2*math.pi/180)\n",
+ " #The circuit contains no principal nodes. \n",
+ " #However, if point Y is chosen as the reference node then an equation \n",
+ " #may be written for node X assuming that current leaves point X by both branches\n",
+ "VX = ((V1/(R1 + R3) + V2/(R2 + R4))/(1/(R1 + R3) + 1/(R2 + R4)))\n",
+ "VXY = VX\n",
+ "\n",
+ "\n",
+ "\n",
+ "#Results\n",
+ "print \"\\n\\n Result \\n\\n\"\n",
+ "print \"\\n voltage VXY = \",round(abs(VXY),2),\"/_\",round(cmath.phase(complex(VXY.real, VXY.imag))*180/math.pi,2),\"deg V\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ " Result \n",
+ "\n",
+ "\n",
+ "\n",
+ " voltage VXY = 9.12 /_ 52.13 deg V"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "<h3>Example 6, page no. 553</h3>"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Use nodal analysis to determine the current flowing in each branch of the network\n",
+ "from __future__ import division\n",
+ "import math\n",
+ "import cmath\n",
+ "#initializing the variables:\n",
+ "rv1 = 100;# in volts\n",
+ "rv2 = 50;# in volts\n",
+ "thetav1 = 0;# in degrees\n",
+ "thetav2 = 90;# in degrees\n",
+ "R1 = 25;# in ohm\n",
+ "R2 = 20;# in ohm\n",
+ "R3 = 10;# in ohm\n",
+ "\n",
+ "#calculation:\n",
+ " #voltages\n",
+ "V1 = rv1*math.cos(thetav1*math.pi/180) + 1j*rv1*math.sin(thetav1*math.pi/180)\n",
+ "V2 = rv2*math.cos(thetav2*math.pi/180) + 1j*rv2*math.sin(thetav2*math.pi/180)\n",
+ " #There are only two principal nodes in Figure 31.10 so only one nodal equation is required. \n",
+ " #Node 2 is taken as the reference node.\n",
+ " #The equation at node 1 is I1 + I2 + I3 = 0\n",
+ "Vn1 = ((V1/R1 + V2/R3)/(1/R1 + 1/R2 + 1/R3))\n",
+ "I1 = (Vn1 - V1)/R1\n",
+ "I2 = Vn1/R2\n",
+ "I3 = (Vn1 - V2)/R3\n",
+ "\n",
+ "\n",
+ "#Results\n",
+ "print \"\\n\\n Result \\n\\n\"\n",
+ "print \"\\n current, I1 is \",round(I1.real,2),\" + (\",round( I1.imag,2),\")i A, \\n current, I2 is \",round(I2.real,2),\" + (\",round( I2.imag,2),\")i A \\n and current, I3 is \",round(I3.real,2),\" + (\",round(I3.imag,2),\")i A\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ " Result \n",
+ "\n",
+ "\n",
+ "\n",
+ " current, I1 is -3.16 + ( 1.05 )i A, \n",
+ " current, I2 is 1.05 + ( 1.32 )i A \n",
+ " and current, I3 is 2.11 + ( -2.37 )i A"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "<h3>Example 7, page no. 554</h3>"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#determine (a) the voltage at nodes 1 and 2, (b) the current in the j4 ohm inductance,\n",
+ "#(c) the current in the 5 ohm resistance, and (d) the magnitude of the active power dissipated in the 2.5ohm resistance.\n",
+ "from __future__ import division\n",
+ "import math\n",
+ "import numpy\n",
+ "import cmath\n",
+ "#initializing the variables:\n",
+ "rv1 = 25;# in volts\n",
+ "rv2 = 25;# in volts\n",
+ "thetav1 = 0;# in degrees\n",
+ "thetav2 = 90;# in degrees\n",
+ "R1 = 2;# in ohm\n",
+ "R2 = -1j*4;# in ohm\n",
+ "R3 = 5;# in ohm\n",
+ "R4 = 4j;# in ohm\n",
+ "R5 = 2.5;# in ohm\n",
+ "\n",
+ " #calculation:\n",
+ " #voltages\n",
+ "V1 = rv1*math.cos(thetav1*math.pi/180) + 1j*rv1*math.sin(thetav1*math.pi/180)\n",
+ "V2 = rv2*math.cos(thetav2*math.pi/180) + 1j*rv2*math.sin(thetav2*math.pi/180)\n",
+ " #The equation at node 1\n",
+ " #Vn1*(1/R1 + 1/R2 + 1/R3) - Vn2/R3 = V1/R1\n",
+ " #The equation at node 2\n",
+ " #Vn1*(-1/R3) + Vn2*(1/R4 + 1/R5 + 1/R3) = V2/R5\n",
+ " #using determinants\n",
+ "d1 = [[V1/R1, -1/R3],[V2/R5, (1/R4 + 1/R5 + 1/R3)]]\n",
+ "D1 = numpy.linalg.det(d1)\n",
+ "d2 = [[(1/R1 + 1/R2 + 1/R3), V1/R1],[-1/R3, V2/R5]]\n",
+ "D2 = numpy.linalg.det(d2)\n",
+ "d = [[(1/R1 + 1/R2 + 1/R3), -1/R3],[-1/R3, (1/R4 + 1/R5 + 1/R3)]]\n",
+ "D = numpy.linalg.det(d)\n",
+ "Vn1 = D1/D\n",
+ "Vn2 = D2/D\n",
+ " #current in the j4 ohm inductance is given by:\n",
+ "I4 = Vn2/R4\n",
+ " #current in the 5 ohm resistance is given by:\n",
+ "I3 = (Vn1 - Vn2)/R3\n",
+ " #active power dissipated in the 2.5 ohm resistor is given by\n",
+ "P5 = R5*((Vn2 - V2)/R5)**2\n",
+ " #magnitude of the active power dissipated\n",
+ "P5mag = abs(P5)\n",
+ "\n",
+ "#Results\n",
+ "print \"\\n\\n Result \\n\\n\"\n",
+ "print \"\\n (a) the voltage at nodes 1 and 2 are \",round(abs(Vn1),1),\"/_\",round(cmath.phase(complex(Vn1.real, Vn1.imag))*180/math.pi,2),\"deg V and \",round(abs(Vn2),1),\"/_\",round(cmath.phase(complex(Vn2.real, Vn2.imag))*180/math.pi,1),\"deg V\"\n",
+ "print \"\\n (b)the current in the j4 ohm inductance = \",round(abs(I4),2),\"/_\",round(cmath.phase(complex(I4.real, I4.imag))*180/math.pi,2),\"deg A\"\n",
+ "print \"\\n (c)the current in the 5 ohm resistance = \",round(abs(I3),2),\"/_\",round(cmath.phase(complex(I3.real, I3.imag))*180/math.pi,2),\"deg A\"\n",
+ "print \"\\n (d) magnitude of the active power dissipated in the 2.5 ohm resistance is \",round(P5mag,2),\" W\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ " Result \n",
+ "\n",
+ "\n",
+ "\n",
+ " (a) the voltage at nodes 1 and 2 are 17.1 /_ -5.3 deg V and 15.8 /_ 93.2 deg V\n",
+ "\n",
+ " (b)the current in the j4 ohm inductance = 3.95 /_ 3.23 deg A\n",
+ "\n",
+ " (c)the current in the 5 ohm resistance = 4.99 /_ -44.06 deg A\n",
+ "\n",
+ " (d) magnitude of the active power dissipated in the 2.5 ohm resistance is 34.4 W"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "<h3>Example 8, page no. 556</h3>"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#determine the voltage VXY using nodal analysis.\n",
+ "from __future__ import division\n",
+ "import math\n",
+ "import numpy\n",
+ "import cmath\n",
+ "#initializing the variables:\n",
+ "ri = 25;# in amperes\n",
+ "thetai = 0;# in degrees\n",
+ "R1 = 4;# in ohm\n",
+ "R2 = 3j;# in ohm\n",
+ "R3 = 5;# in ohm\n",
+ "R4 = 10j;# in ohm\n",
+ "R5 = 20j;# in ohm\n",
+ "\n",
+ " #calculation:\n",
+ " #current\n",
+ "I = ri*math.cos(thetai*math.pi/180) + 1j*ri*math.sin(thetai*math.pi/180)\n",
+ " #Node 3 is taken as the reference node.\n",
+ " #At node 1,\n",
+ " #V1*(1/(R1 + R2) + 1/R3) - V2/R3 = I\n",
+ " #The equation at node 2\n",
+ " #V1*(-1/R3) + V2*(1/R4 + 1/R5 + 1/R3) = 0\n",
+ " #using determinants\n",
+ "d1 = [[I, -1/R3],[0 , (1/R4 + 1/R5 + 1/R3)]]\n",
+ "D1 = numpy.linalg.det(d1)\n",
+ "d2 = [[(1/(R1 + R2) + 1/R3), I],[-1/R3, 0]]\n",
+ "D2 = numpy.linalg.det(d2)\n",
+ "d = [[(1/(R1 + R2) + 1/R3), -1/R3],[-1/R3, (1/R4 + 1/R5 + 1/R3)]]\n",
+ "D = numpy.linalg.det(d)\n",
+ "V1 = D1/D\n",
+ "V2 = D2/D\n",
+ " #the voltage between point X and node 3 is\n",
+ "VX = V1*R2/(R1 + R2)\n",
+ " #Thus the voltage\n",
+ "VY = V2\n",
+ "VXY = VX - VY\n",
+ "\n",
+ "\n",
+ "#Results\n",
+ "print \"\\n\\n Result \\n\\n\"\n",
+ "print \"\\n voltage VXY is \",round(VXY.real,2),\" + (\",round( VXY.imag,2),\")i V\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ " Result \n",
+ "\n",
+ "\n",
+ "\n",
+ " voltage VXY is -16.16 + ( -15.05 )i V"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "<h3>Example 9, page no. 557</h3>"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Use nodal analysis to determine the voltages at nodes 2 and 3 \n",
+ "#determine the current flowing in the 2 ohm resistor and the power dissipated in the 3 ohm resistor.\n",
+ "from __future__ import division\n",
+ "import math\n",
+ "import numpy\n",
+ "import cmath\n",
+ "#initializing the variables:\n",
+ "V = 8;# in volts\n",
+ "R1 = 1;# in ohm\n",
+ "R2 = 2;# in ohm\n",
+ "R3 = 3;# in ohm\n",
+ "R4 = 4;# in ohm\n",
+ "R5 = 5;# in ohm\n",
+ "R6 = 6;# in ohm\n",
+ "\n",
+ "#calculation:\n",
+ " #In Figure 31.13, the reference node is shown at point A.\n",
+ " #At node 1,\n",
+ " #V1*(1/R1 + 1/R6 + 1/R5) - V2/R1 - V3/R5 = V/R5\n",
+ " #The equation at node 2\n",
+ " #V1*(-1/R1) + V2*(1/R2 + 1/R1 + 1/R3) - V3/R3 = 0\n",
+ " #At node 3\n",
+ " # - V1/R5 - V2/R3 + V3*(1/R4 + 1/R3 + 1/R5) = -1*V/R5\n",
+ "#using determinants\n",
+ "d1 = [[V/R5, -1/R1, -1/R5],[0, (1/R2 + 1/R1 + 1/R3), -1/R3],[-1*V/R5, -1/R3, (1/R4 + 1/R3 + 1/R5)]]\n",
+ "D1 = numpy.linalg.det(d1)\n",
+ "d2 = [[(1/R1 + 1/R6 + 1/R5), V/R5, -1/R5],[-1/R1, 0, -1/R3],[-1/R5, -1*V/R5, (1/R4 + 1/R3 + 1/R5)]]\n",
+ "D2 = numpy.linalg.det(d2)\n",
+ "d3 = [[(1/R1 + 1/R6 + 1/R5), -1/R1, V/R5],[-1/R1, (1/R2 + 1/R1 + 1/R3), 0],[-1/R5, -1/R3, -1*V/R5]]\n",
+ "D3 = numpy.linalg.det(d3)\n",
+ "d =[[(1/R1 + 1/R6 + 1/R5), -1/R1, -1/R5],[-1/R1, (1/R2 + 1/R1 + 1/R3), -1/R3],[-1/R5, -1/R3, (1/R4 + 1/R3 + 1/R5)]]\n",
+ "D = numpy.linalg.det(d)\n",
+ "Vn1 = D1/D\n",
+ "Vn2 = D2/D\n",
+ "Vn3 = D3/D \n",
+ " #the current in the 2 ohm resistor\n",
+ "I2 = Vn2/R2\n",
+ " #power dissipated in the 3 ohm resistance\n",
+ "P3 = R3*((Vn2 - Vn3)/R3)**2\n",
+ "\n",
+ "\n",
+ "#Results\n",
+ "print \"\\n\\n Result \\n\\n\"\n",
+ "print \"\\n (a)current through 2 ohm resistor is \",round(I2,2),\" A\"\n",
+ "print \"\\n (b)power dissipated in the 3 ohm resistor is \",round(P3,2),\" W\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ " Result \n",
+ "\n",
+ "\n",
+ "\n",
+ " (a)current through 2 ohm resistor is 0.19 A\n",
+ "\n",
+ " (b)power dissipated in the 3 ohm resistor is 1.27 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file