diff options
author | Trupti Kini | 2016-05-10 23:30:39 +0600 |
---|---|---|
committer | Trupti Kini | 2016-05-10 23:30:39 +0600 |
commit | 84efc3c811c1cfbb888e53daaaecf64faf477c52 (patch) | |
tree | afc3cef98d72df6f960cf7e48c832be929d83431 | |
parent | f7df603ab7e94de9c3b218e81a0d73a37a6d8928 (diff) | |
download | Python-Textbook-Companions-84efc3c811c1cfbb888e53daaaecf64faf477c52.tar.gz Python-Textbook-Companions-84efc3c811c1cfbb888e53daaaecf64faf477c52.tar.bz2 Python-Textbook-Companions-84efc3c811c1cfbb888e53daaaecf64faf477c52.zip |
Added(A)/Deleted(D) following books
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch15_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch16_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch17_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch18_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch19_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch20_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch21_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch22_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch23_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch24_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch25_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch26_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch27_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch28_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch29_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch30_3.ipynb
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/1RefractionOfLaserLight_3.png
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/2PropertiesOfImage_3.png
A College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/3PositionOf1DarkFringe_3.png
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter1.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter10.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter11.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter12.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter13.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter14.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter15.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter16.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter17.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter2.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter3.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter4.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter5.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter6.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter7.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter9.ipynb
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh11ipNopVStime.png
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh13inANDOpVSTime.png
A Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh1chargeNcurrentVSTime.png
38 files changed, 10859 insertions, 0 deletions
diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch15_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch15_3.ipynb new file mode 100644 index 00000000..1c77fdc3 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch15_3.ipynb @@ -0,0 +1,179 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 15 : Electric forces and electric fields" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 15.1 Page No : 502" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The attractive force = 8.19e-08 N\n", + "The gravitational force = 3.61e-47 N\n" + ] + } + ], + "source": [ + "k_e=8.99*10**9\n", + "e=1.6*10**-19\n", + "r=5.3*10**-11\n", + "F_e= (k_e*e*e)/(r*r)\n", + "print \"The attractive force = %0.2e N\"%F_e\n", + "G=6.67*10**-11\n", + "m_e=9.11*10**-31\n", + "m_p=1.67*10**-27\n", + "F_g=(G*m_e*m_p)/(r*r)\n", + "print \"The gravitational force = %0.2e N\"%F_g" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 15.2 Page No : 503" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The force = 5.62e-09 N\n", + "The force = 1.08e-08 N\n" + ] + } + ], + "source": [ + "k_e=8.99*10**9 #N.m**2/c**2\n", + "q2=2*10**-9# = %0.2f c\n", + "q3=5*10**-9# = %0.2f c\n", + "r1=4#in m\n", + "F_23=(q2*q3*k_e)/(r1*r1)\n", + "print \"The force = %0.2e N\"%F_23\n", + "q1=6*10**-9\n", + "r2=5#in m\n", + "F_13=(q1*q3*k_e)/(r2*r2)\n", + "print \"The force = %0.2e N\"%F_13" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 15.4 Page No: 507" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The magnitude of force = 3.20e-15 N\n" + ] + } + ], + "source": [ + "q=1.6*10**-19#in c\n", + "E=2*10**4# = %0.2f N/C\n", + "F=q*E\n", + "print \"The magnitude of force = %0.2e N\"%F" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 15.5 Page No: 509" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Magnitude of E1 = 3.93e+05 N/C\n", + "Magnitude of E2 = 1.80e+05 N/C\n", + "Magnitude in x direction = 1.80e+05 N/C\n", + "Magnitude in y direction = 2.49e+05 N/C\n", + "Angle = 54.17 degree\n" + ] + } + ], + "source": [ + "from math import degrees, atan\n", + "k_e=8.99*10**9 #N.m**2/c**2\n", + "q1=7*10**-6# = %0.2f C\n", + "q2=5*10**-6#in C\n", + "r1=0.4\n", + "r2=0.5\n", + "E1=(k_e*q1)/(r1**2)\n", + "E2=(k_e*q2)/(r2**2)\n", + "Ex=(k_e*q2)/(r2**2)\n", + "print \"Magnitude of E1 = %0.2e N/C\"%E1\n", + "print \"Magnitude of E2 = %0.2e N/C\"%E2\n", + "print \"Magnitude in x direction = %0.2e N/C\"%Ex\n", + "Ey=(3.93*10**5)+(-1.44*10**5)\n", + "print \"Magnitude in y direction = %0.2e N/C\"%Ey\n", + "phi=degrees(atan(Ey/Ex))\n", + "print \"Angle = %0.2f degree\"%phi\n", + "#Answer given in the book is wrong" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch16_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch16_3.ipynb new file mode 100644 index 00000000..0e794d3d --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch16_3.ipynb @@ -0,0 +1,365 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 16 : Electrical Energy & Capacitance" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 16.1 Page No : 533" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The value of E = 4000.00 v/m\n" + ] + } + ], + "source": [ + "v_bminusv_a=-12\n", + "d=0.3*10**-2#in m\n", + "E=-(v_bminusv_a)/d\n", + "print \"The value of E = %0.2f v/m\"%E" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 16.2 Page No : 533" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "solution a\n", + "Electric potential from A to B = -40000.00 V\n", + "solution b\n", + "Change in electric potential = -0.00 joules\n", + "velocity = 2768514.16 m/s\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "print \"solution a\"\n", + "E=8*10**4#in V/m\n", + "d=0.5#in m\n", + "delta_V=-E*d\n", + "print \"Electric potential from A to B = %0.2f V\"%delta_V\n", + "print \"solution b\"\n", + "q=1.6*10**-19#in C\n", + "delta_PE=q*delta_V\n", + "print \"Change in electric potential = %0.2f joules\"%delta_PE\n", + "m_p=1.67*10**-27#in kg\n", + "vf=sqrt((2*-delta_PE)/m_p)\n", + "print \"velocity = %0.2f m/s\"%vf" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 16.3 Page No: 534" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Solution a\n", + "Magnitude of V1 = 112375.00 v\n", + "Magnitude of V2 = -35960.00 v\n", + "solution b\n", + "Magnitude of Vp = 76415.00 v\n", + "work done = 0.31 Joule\n" + ] + } + ], + "source": [ + "k_e=8.99*10**9 #N.m**2/c**2\n", + "q1=5*10**-6# in C\n", + "q2=-2*10**-6#in C\n", + "r1=0.4\n", + "r2=0.5\n", + "V1=(k_e*q1)/(r1)\n", + "V2=(k_e*q2)/(r2)\n", + "print \"Solution a\"\n", + "print \"Magnitude of V1 = %0.2f v\"%V1\n", + "print \"Magnitude of V2 = %0.2f v\"%V2\n", + "print \"solution b\"\n", + "vp=V1+V2\n", + "print \"Magnitude of Vp = %0.2f v\"%vp\n", + "q3=4*10**-6#in C\n", + "w=vp*q3\n", + "print \"work done = %0.2f Joule\"%w" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 16.4 Page No: 535" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Capacitance = 1.77e-12 farad\n" + ] + } + ], + "source": [ + "e0=8.85*10**-12#in c2/N.m2\n", + "A=2*10**-4#in m2\n", + "d=1*10**-3#in m\n", + "c=(e0*A)/d\n", + "print \"Capacitance = %0.2e farad\"%c" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 16.5 Page No : 535" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "capacitance = 4.50e-05 farad\n", + "voltage between battery = 2.16e-04 c\n" + ] + } + ], + "source": [ + "c1=3*10**-6\n", + "c2=6*10**-6\n", + "c3=12*10**-6\n", + "c4=24*10**-6\n", + "delta_v=18\n", + "c_eq=c1+c2+c3+c4\n", + "print \"capacitance = %0.2e farad\"%c_eq\n", + "q=delta_v*c3\n", + "print \"voltage between battery = %0.2e c\"%q" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 16.6 Page No : 536" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "solution a\n", + "capacitance = 1.60e-06 farad\n", + "solution b\n", + "voltage between battery = 2.88e-05 c\n" + ] + } + ], + "source": [ + "c1=3*10**-6\n", + "c2=6*10**-6\n", + "c3=12*10**-6\n", + "c4=24*10**-6\n", + "delta_v=18\n", + "print \"solution a\"\n", + "c_eq=1/((1/c1)+(1/c2)+(1/c3)+(1/c4))\n", + "print \"capacitance = %0.2e farad\"%c_eq\n", + "q=delta_v*c_eq\n", + "print \"solution b\"\n", + "print \"voltage between battery = %0.2e c\"%q" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 16.7 Page No: 536" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "solution a\n", + "capacitance = 2.00e-06 farad\n" + ] + } + ], + "source": [ + "c1=4*10**-6\n", + "c2=4*10**-6\n", + "print \"solution a\"\n", + "c_eq=1/((1/c1)+(1/c2))\n", + "print \"capacitance = %0.2e farad\"%c_eq" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 16.8 Page No: 537" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "solution a\n", + "Energy stored = 4671 volt\n", + "solution b\n", + "power = 240000 watt\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "Energy=1.2*10**3#in J\n", + "c=1.1*10**-4#in f\n", + "delta_v=sqrt((2*Energy)/c)\n", + "print \"solution a\"\n", + "print \"Energy stored = %0.f volt\"%delta_v\n", + "print \"solution b\"\n", + "Energy_deliverd=600#in j\n", + "delta_t=2.5*10**-3#in s\n", + "p=(Energy_deliverd)/delta_t\n", + "print \"power = %0.f watt\"%p" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 16.9 Page No: 538" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "solution a\n", + "Capacitance = 1.96e-11 farad\n", + "solution b\n", + "Voltage = 16000.0 volt\n", + "Maximum charge = 3.14e-07 columb\n" + ] + } + ], + "source": [ + "k=3.7\n", + "e0=8.85*10**-12#in c2/N.m2\n", + "A=6*10**-4#in m2\n", + "d=1*10**-3#in m\n", + "c=(k*e0*A)/d\n", + "print \"solution a\"\n", + "print \"Capacitance = %0.2e farad\"%c\n", + "print \"solution b\"\n", + "E_max=16*10**6#in v/m\n", + "delta_v_max=E_max*d\n", + "print \"Voltage = %0.1f volt\"%delta_v_max\n", + "Q_max=delta_v_max*c\n", + "print \"Maximum charge = %0.2e columb\"%Q_max" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch17_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch17_3.ipynb new file mode 100644 index 00000000..d0eee390 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch17_3.ipynb @@ -0,0 +1,311 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 17 : Current and resistance" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 17.1 Page No: 571" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "solution a : \n", + "Current = 0.83 Amp\n", + "solution b : \n", + "Number of electrons = 0.84 C\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "print \"solution a : \"\n", + "delta_q=1.67 # in c\n", + "delta_t=2 # in s\n", + "I=delta_q/delta_t\n", + "print \"Current = %0.2f Amp\"%I\n", + "print \"solution b : \"\n", + "N=5.22*10**18\n", + "N_q=(1.6*10**-19)*N\n", + "\n", + "print \"Number of electrons = %0.2f C\"%N_q" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 17.2 Page No: 573" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Solution a :\n", + "The drift speed = 2.46e-04 m/s=\n", + "Drift speed of electron = 1.15e+05 m/s\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "M=63.5 # IN G\n", + "rho=8.95\n", + "v=M/rho\n", + "electrons=6.02*10**23\n", + "n=(electrons*10**6)/v\n", + "I=10 # in c/s\n", + "q=1.60*10**-19 # in c\n", + "A=3*10**-6 # in m2\n", + "vd=(I)/(n*q*A)\n", + "print \"Solution a :\"\n", + "print \"The drift speed = %0.2e m/s=\"%vd\n", + "k_b=1.38*10**-23\n", + "T=293\n", + "m=9.11*10**-31\n", + "v_rms=sqrt((3*k_b*T)/m)\n", + "print \"Drift speed of electron = %0.2e m/s\"%v_rms" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 17.3 Page No: 578" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The resistance = 18.75 ohm\n" + ] + } + ], + "source": [ + "delta_v=120\n", + "I=6.4\n", + "R=(delta_v)/I\n", + "print \"The resistance = %0.2f ohm\"%R" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 17.4 Page No: 580" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Solution a : \n", + "Area = 3.24e-07 m**2\n", + "Resistance = 4.63 ohm/m\n", + "solution b : \n", + "The current = 2.16 Amps\n" + ] + } + ], + "source": [ + "from math import pi\n", + "r=0.321*10**-3\n", + "A=pi*(r*r)\n", + "print \"Solution a : \"\n", + "print \"Area = %0.2e m**2\"%A\n", + "rho=1.5*10**-6 # in ohm=m\n", + "l=rho/A\n", + "print\"Resistance = %0.2f ohm/m\"% l\n", + "print \"solution b : \"\n", + "Delta_v=10\n", + "I=(Delta_v)/l\n", + "print \"The current = %0.2f Amps\"%I\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 17.5 Page No: 582" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Temperature = 156.73 C\n" + ] + } + ], + "source": [ + "R=76.8\n", + "Ro=50\n", + "alpha=3.92*10**-3\n", + "t=(R-Ro)/(alpha*Ro)\n", + "T=t+20\n", + "print \"Temperature = %0.2f C\"%T" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 17.6 Page No: 583" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The current = 6.00 A\n", + "Power = 288.00 Watt\n" + ] + } + ], + "source": [ + "delta_v=50\n", + "R=8\n", + "I=(delta_v)/R\n", + "print \"The current = %0.2f A\"%I\n", + "P=I*I*R\n", + "print \"Power = %0.2f Watt\"%P" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 17.7 Page No: 585" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of bulbs = 32\n" + ] + } + ], + "source": [ + "I=20 # in A\n", + "delta_v=120\n", + "p_bulb=75 # inwatt\n", + "p_total=I*delta_v\n", + "N=p_total/p_bulb\n", + "print \"Number of bulbs = %d\"%N" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 17.8 Page No: 587" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energy = 2.40 kwh\n", + "Cost = 0.29 dollars\n" + ] + } + ], + "source": [ + "p=0.10 # in w\n", + "t=24 # in h\n", + "Energy=p*t\n", + "print \"Energy = %0.2f kwh\"%Energy\n", + "cost=Energy*0.12\n", + "print \"Cost = %0.2f dollars\"%cost" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch18_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch18_3.ipynb new file mode 100644 index 00000000..941bf10e --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch18_3.ipynb @@ -0,0 +1,284 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 18 : Direct current circuits" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 18.1 Page No: 597" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Solution a\n", + "Equivalent resistance = 18.00 ohm\n", + "Solution b\n", + "Current = 0.33 Amps\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "R1=2\n", + "R2=4\n", + "R3=5\n", + "R4=7\n", + "R_eq=R1+R2+R3+R4\n", + "v=6#in v\n", + "print \"Solution a\"\n", + "print \"Equivalent resistance = %0.2f ohm\"%R_eq\n", + "print \"Solution b\"\n", + "I=v/R_eq\n", + "print \"Current = %0.2f Amps\"%I" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example18.2 Page No: 599" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "solution a\n", + "Current = 6.00 amps\n", + "Current = 3.00 amps\n", + "Current = 2.00 amps\n", + "solution B\n", + "Power = 108.00 watt\n", + "Power = 54.00 watt\n", + "Power = 36.00 watt\n" + ] + } + ], + "source": [ + "delta_V=18#in volt\n", + "R1=3#in ohm\n", + "R2=6#in ohm\n", + "R3=9#in ohm\n", + "I1=delta_V/R1\n", + "I2=delta_V/R2\n", + "I3=delta_V/R3\n", + "print \"solution a\"\n", + "print \"Current = %0.2f amps\"%I1\n", + "print \"Current = %0.2f amps\"%I2\n", + "print \"Current = %0.2f amps\"%I3\n", + "P1=(I1**2)*R1\n", + "P2=(I2**2)*R2\n", + "P3=(I3**2)*R3\n", + "print \"solution B\"\n", + "print \"Power = %0.2f watt\"%P1\n", + "print \"Power = %0.2f watt\"%P2\n", + "print \"Power = %0.2f watt\"%P3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 18.3 Page No: 602" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "solution b\n", + "Current = 3.00 amps\n" + ] + } + ], + "source": [ + "delta_Vac=42#in volt\n", + "R_eq=14#in ohm\n", + "I=delta_Vac/R_eq\n", + "print \"solution b\"\n", + "print \"Current = %0.2f amps\"%I" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 18.4 Page No: 605" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current value I1 = -0.83, I2 = -0.53 & I3 = -0.30 amps\n" + ] + } + ], + "source": [ + "from numpy import mat\n", + "#formula used x=inv(a)*b\n", + "I=mat([[1 ,-1, -1],[-4, 0 ,-9],[0, -5, 9]])\n", + "V=mat([[0],[6],[0]])\n", + "X=(I**-1)\n", + "a=X*V\n", + "\n", + "print \"Current value I1 = %0.2f, I2 = %0.2f & I3 = %0.2f amps\"%(a[0],a[1],a[2])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 18.5 Page No: 606" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current value I1 = 2.00, I2 = -3.00 & I3 = -1.00 amps\n" + ] + } + ], + "source": [ + "from numpy import mat\n", + "#prob\n", + "#formula used x=inv(a)*b\n", + "I=mat([[8, 2, 0],[-3, 2, 0],[1, 1, -1]])\n", + "V=mat([[10],[-12],[0]])\n", + "X=I**-1\n", + "a=X*V\n", + "\n", + "print \"Current value I1 = %0.2f, I2 = %0.2f & I3 = %0.2f amps\"%(a[0],a[1],a[2])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 18.6 Page No: 609" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Constant of the circuit = 4.00 s\n", + "Charge = 6.00e-05 columb\n", + "Charge = 3.79e-05 columb when capacitance 63.2%\n" + ] + } + ], + "source": [ + "R=8*10**5#in ohms\n", + "C=5*10**-6#in Farad\n", + "t=R*C\n", + "print \"Constant of the circuit = %0.2f s\"%t\n", + "\n", + "Q=C*12\n", + "print \"Charge = %0.2e columb\"%Q\n", + "q=0.632*Q\n", + "print \"Charge = %0.2e columb when capacitance 63.2%%\"%q" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 18.7 Page No: 610" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "time = 1.39 s \n" + ] + } + ], + "source": [ + "from math import log\n", + "x=log(4)\n", + "print \"time = %0.2f s \"%x" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch19_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch19_3.ipynb new file mode 100644 index 00000000..3a586dc0 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch19_3.ipynb @@ -0,0 +1,333 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 19 : Magnetism" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 19.1 Page No: 631" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The force = 7.62e-19 Newton\n" + ] + } + ], + "source": [ + "q=1.6*10**-19#in columb\n", + "v=1*10**5#in m/s\n", + "B=55*10**-6#in T\n", + "F=q*v*B* 0.8660\n", + "print \"The force = %0.2e Newton\"%F" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 19.2 Page No: 632" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The force = 2.77e-12 Newton\n", + "Acceleration = 1.66e+15 m/s**2\n" + ] + } + ], + "source": [ + "q=1.6*10**-19#in columb\n", + "v=8*10**6#in m/s\n", + "B=2.5#in T\n", + "F=q*v*B* 0.8660\n", + "print \"The force = %0.2e Newton\"%F\n", + "m=1.67*10**-27\n", + "a=F/m\n", + "print \"Acceleration = %0.2e m/s**2\"%a" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 19.3 Page No: 635" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The maximaum force = 3.96e-02 Newton\n" + ] + } + ], + "source": [ + "l=36#in m\n", + "I=22#in A\n", + "B=0.50*10**-4#in T\n", + "F=B*I*l\n", + "print \"The maximaum force = %0.2e Newton\"%F" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 19.4 Page No: 637" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The Torque = 0.39 N-m\n" + ] + } + ], + "source": [ + "from math import pi\n", + "A=pi*(0.5)*0.5#in m\n", + "I=2#in A\n", + "B=0.50#in T\n", + "T=B*I*A*0.5\n", + "print \"The Torque = %0.2f N-m\"%T" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 19.5 Page No: 640" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Velocity = 4.69e+06 m/s\n" + ] + } + ], + "source": [ + "q=1.6*10**-19\n", + "B=.35\n", + "r=14*10**-2#in m\n", + "m=1.67*10**-27#kg\n", + "v=(q*B*r)/m\n", + "print \"Velocity = %0.2e m/s\"%v" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 19.6 Page No: 641" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Radius of lighter istope = 0.10 m\n", + "Radius of heavier istope = 0.21 m\n", + "Distance of seperation = 0.21 m\n" + ] + } + ], + "source": [ + "q=1.6*10**-19\n", + "B=.10#in T\n", + "v=1*10**6#in m/s\n", + "r=14*10**-2#in m\n", + "m1=1.67*10**-27#in kg\n", + "m2=3.34*10**-27#in kg\n", + "r1=(m1*v)/(q*B)\n", + "r2=(m2*v)/(q*B)\n", + "x=(2*r2)-(2*r1)\n", + "print \"Radius of lighter istope = %0.2f m\"%r1\n", + "print \"Radius of heavier istope = %0.2f m\"%r2\n", + "print \"Distance of seperation = %0.2f m\"%x" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 19.7 Page No: 644" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Magnetic field = 2.5e-04 T\n", + "Force = 6e-20 Newton\n" + ] + } + ], + "source": [ + "from math import pi\n", + "Uo=(4*pi*10**-7)\n", + "I=5#in A\n", + "r=4*10**-3\n", + "B=(Uo*I)/(2*pi*r)\n", + "print \"Magnetic field = %0.1e T\"%B\n", + "q=1.6*10**-19\n", + "v=1.5*10**3#in m/s\n", + "F=q*v*B\n", + "print \"Force = %0.e Newton\"%F" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 19.8 Page No: 646" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current = 7.07 A\n" + ] + } + ], + "source": [ + "from math import pi, sqrt\n", + "mo=4*pi*10**-7#Tm/A\n", + "d=0.1#in m\n", + "x=1*10**-4#F/l\n", + "I=sqrt((x*2*pi*d)/mo)\n", + "print \"Current = %0.2f A\"%I" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 19.9 Page No: 649" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Magnetic field = 6.28e-04 T\n", + "Force = 1.88e-20 N\n" + ] + } + ], + "source": [ + "from math import pi\n", + "N=100#turns\n", + "l=.1#in m\n", + "n=N/l#in turns/m\n", + "mo=4*pi*10**-7#Tm/A\n", + "I=.5#in A\n", + "B=n*I*mo\n", + "q=1.6*10**-19#in c\n", + "v=375#in m/s\n", + "F=q*v*(B/2)\n", + "\n", + "print \"Magnetic field = %0.2e T\"%B\n", + "print \"Force = %0.2e N\"%F" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch20_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch20_3.ipynb new file mode 100644 index 00000000..475538f9 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch20_3.ipynb @@ -0,0 +1,316 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 20 : Induced voltages and inductance" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 20.1 Page No: 665" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Magnetic flux = 1.62e-04 T.m**2\n", + "Induced emf = 5.06e-03 volt\n" + ] + } + ], + "source": [ + "B=.5 # in T\n", + "A=3.24*10**-4 # in m**2\n", + "Flux=B*A\n", + "N=25\n", + "delta_t=.8\n", + "print \"Magnetic flux = %0.2e T.m**2\"%Flux\n", + "e=(N*Flux)/(delta_t)\n", + "print \"Induced emf = %0.2e volt\"%e" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 20.2 Page No: 667" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Induced emf = 0.45 volt\n" + ] + } + ], + "source": [ + "B=.6*10**-4 # in T\n", + "l=30\n", + "v=250 # in m/s\n", + "e=B*l*v\n", + "print \"Induced emf = %0.2f volt\"%e" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 20.3 Page No: 672" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Solution a\n", + "Induced emf = 0.25 volt\n", + "Solution b\n", + "Current = 0.50 A\n", + "Solution c\n", + "Power = 0.12 watt\n", + "Energy delivered = 0.12 J\n", + "Solution d\n", + "Force = 0.06 N\n" + ] + } + ], + "source": [ + "B=.25 # in T\n", + "l=.5\n", + "v=2 # in m/s\n", + "e=B*l*v\n", + "print \"Solution a\"\n", + "print \"Induced emf = %0.2f volt\"%e\n", + "R=.5 # in ohm\n", + "I=e/R\n", + "\n", + "print \"Solution b\"\n", + "print \"Current = %0.2f A\"%I\n", + "delta_v=.25\n", + "P=I*delta_v\n", + "print \"Solution c\"\n", + "print \"Power = %0.2f watt\"%P\n", + "t=1 # in s\n", + "w=P*t\n", + "print \"Energy delivered = %0.2f J\"%w\n", + " # Answer give for J in textbook is wrong\n", + "d=v*t\n", + "F=w/d\n", + "print \"Solution d\"\n", + "print \"Force = %0.2f N\"%F" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 20.5 Page No: 678" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Solution a\n", + "Induced emf = 135.72 volt\n", + "Solution b\n", + "Current = 11.31 A\n", + "Solution c\n", + "Emf in Volt 136*sinwt\n" + ] + } + ], + "source": [ + "from math import pi\n", + "f=60 # in Hz\n", + "w=2*pi*f\n", + "N=8\n", + "A=.09 # in m**2\n", + "B=.5 # in T\n", + "emf=N*A*B*w\n", + "print \"Solution a\"\n", + "print \"Induced emf = %0.2f volt\"%emf\n", + "R=12 # in ohm\n", + "I=emf/R\n", + "print \"Solution b\"\n", + "print \"Current = %0.2f A\"%I\n", + "\n", + "print \"Solution c\"\n", + "print \"Emf in Volt 136*sinwt\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 20.6 Page No: 680" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Solution a\n", + "Maximum Current = 12.00 A\n", + "Solution b\n", + "Current = 5.00 A\n" + ] + } + ], + "source": [ + "emf=120 # in Volt\n", + "R=10 # in Ohm\n", + "e_back=70\n", + "I=emf/R\n", + "print \"Solution a\"\n", + "print \"Maximum Current = %0.2f A\"%I\n", + "print \"Solution b\"\n", + "I=(emf-e_back)/R\n", + "print \"Current = %0.2f A\"%I" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 20.8 Page No: 684" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Solution a\n", + "Inductance = 1.81e-04 H\n", + "Solution b\n", + "Emf = 9.05e-04 Volt\n" + ] + } + ], + "source": [ + "from math import pi\n", + "uo=4*pi*10**-7 # in m/A\n", + "N=300\n", + "A=4*10**-4 # in m**2\n", + "l=25*10**-2\n", + "L=(uo*N*N*A)/l\n", + "print \"Solution a\"\n", + "print \"Inductance = %0.2e H\"%L\n", + "delta_I=-5\n", + "delta_t=1\n", + "e=(-L*delta_I)/(delta_t)\n", + "print \"Solution b\"\n", + "print \"Emf = %0.2e Volt\"%e" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 20.9 Page No: 685" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Solution a\n", + "Time constant = 5.00e-03 s\n", + "Solution b\n", + "Current = 1.26 Amps\n" + ] + } + ], + "source": [ + "L=30*10**-3 # in Henry\n", + "R=6 # in Ohm\n", + "tou=L/R\n", + "print \"Solution a\"\n", + "print \"Time constant = %0.2e s\"%tou\n", + "\n", + "e=12\n", + "I=(0.632*e)/R\n", + "\n", + "\n", + "print \"Solution b\"\n", + "print \"Current = %0.2f Amps\"%I\n" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch21_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch21_3.ipynb new file mode 100644 index 00000000..6c83ccae --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch21_3.ipynb @@ -0,0 +1,284 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 21 : Alternating current circuits and electromagnetic waves" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 21.1 Page No: 698" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage = 141.42 V\n", + "Current = 1.41 Amps\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "V_max=200#in V\n", + "V_rms=(V_max)/sqrt(2)\n", + "R=100#in ohm\n", + "I_rms=V_rms/R\n", + "print \"Voltage = %0.2f V\"%V_rms\n", + "print \"Current = %0.2f Amps\"%I_rms" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 21.2 Page No: 700" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Resistance = 331.56 ohm\n", + "Current = 0.45 Amps\n" + ] + } + ], + "source": [ + "C=8*10**-6\n", + "X_c=1/(377*C)\n", + "print \"Resistance = %0.2f ohm\"%X_c\n", + "I_rms=150/X_c\n", + "print \"Current = %0.2f Amps\"%I_rms" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 21.3 Page No: 702" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Resistance = 9.43 ohm\n", + "Current = 15.92 Amps\n" + ] + } + ], + "source": [ + "L=25*10**-3#In H\n", + "w=377\n", + "X_L=w*L#In ohm\n", + "print \"Resistance = %0.2f ohm\"%X_L\n", + "I_rms=150/X_L#In A\n", + "print \"Current = %0.2f Amps\"%I_rms" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 21.4 Page No: 706" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Impedence = 587.81 ohm\n", + "Current = 0.26 Amps\n", + "Angle = -64.83 degree\n", + "Voltage at Resistance = 63.80 Volt\n", + "Voltage at Inductance = 57.67 Volt\n", + "Voltage at Capacitance = 193.43 Volt\n" + ] + } + ], + "source": [ + "from math import atan, degrees, sqrt\n", + "R=250#in ohm\n", + "Xc=758#in ohm\n", + "Xl=226#in Ohm\n", + "X=Xl-Xc\n", + "V_max=150#in Volt\n", + "Z=sqrt(R**2+X**2)\n", + "I=V_max/Z\n", + "q=degrees(atan(X/R))\n", + "print \"Impedence = %0.2f ohm\"%Z\n", + "print \"Current = %0.2f Amps\"%I\n", + "print \"Angle = %0.2f degree\"%q\n", + "V_R=I*R\n", + "V_C=I*Xc\n", + "V_L=I*Xl\n", + "print \"Voltage at Resistance = %0.2f Volt\"%V_R\n", + "print \"Voltage at Inductance = %0.2f Volt\"%V_L\n", + "print \"Voltage at Capacitance = %0.2f Volt\"%V_C" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 21.5 Page No: 708" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voltage = 106.07 V\n", + "Current = 0.18 Amps\n", + "Power = 8.15 watt\n" + ] + } + ], + "source": [ + "from math import sqrt,cos\n", + "V_max=150#in V\n", + "V_rms=(V_max)/sqrt(2)\n", + "I_max=.255#in ohm\n", + "I_rms=I_max/sqrt(2)\n", + "cos=.426\n", + "P=V_rms*I_rms*cos\n", + "print \"Voltage = %0.2f V\"%V_rms\n", + "print \"Current = %0.2f Amps\"%I_rms\n", + "print \"Power = %0.2f watt\"%P" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 21.6 Page No: 709" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Capacitance = 2e-06 Farad\n" + ] + } + ], + "source": [ + "L=20*10**-3#in H\n", + "C=1/(25*10**6*L)\n", + "print \"Capacitance = %0.e Farad\"%C" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 21.7 Page No: 711" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Solution a\n", + "Percentage of power lost = 0.02\n", + "Solution B\n", + "Percentage of power lost = 75.00\n" + ] + } + ], + "source": [ + "I1=100\n", + "v1=4*10**3\n", + "v2=2.40*10**5\n", + "I2=(I1*v1)/v2\n", + "R=30#in ohm\n", + "p_lost=I2*I2*R\n", + "P_output=I1*v1\n", + "p_per=(p_lost*100/P_output)\n", + "print \"Solution a\"\n", + "print \"Percentage of power lost = %0.2f\"%p_per\n", + "P_lost=I1*I1*R\n", + "per=(P_lost*100)/(4*10**5)\n", + "print \"Solution B\"\n", + "print \"Percentage of power lost = %0.2f\"%per" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch22_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch22_3.ipynb new file mode 100644 index 00000000..e4ba19da --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch22_3.ipynb @@ -0,0 +1,169 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 22 : Reflection and refraction of light" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 22.2 Page No: 739" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Angle = 19.20 degree\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sin, pi, degrees, asin\n", + "n1=1\n", + "n2=1.52\n", + "x=sin(pi/180*30)\n", + "theta_2=degrees(asin((n1*x)/n2))\n", + "print \"Angle = %0.2f degree\"%theta_2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 22.3 Page No: 739" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Solution a\n", + "Velocity = 2.06e+08 m/s\n", + "Solution b\n", + "Wavelength in Fused quartz = 403.98 nm\n" + ] + } + ], + "source": [ + "print \"Solution a\"\n", + "c=3*10**8# Constant in m/s\n", + "n=1.458\n", + "v=c/n\n", + "print \"Velocity = %0.2e m/s\"%v\n", + "print \"Solution b\"\n", + "lambda_o=589#in nm\n", + "lambda_n=lambda_o/n\n", + "print \"Wavelength in Fused quartz = %0.2f nm\"%lambda_n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 22.5 Page No: 741" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Angle = 16.24 degree\n", + "Angle = 25.69 degree\n" + ] + } + ], + "source": [ + "from math import atan, degrees, asin\n", + "x=699#in micrometer(w-a)\n", + "t=1200 #in micrometer\n", + "b=x/2\n", + "theta_2=degrees(atan(b/t))\n", + "print \"Angle = %0.2f degree\"%theta_2\n", + "y=sin(pi/180*theta_2)\n", + "n1=1\n", + "n2=1.55\n", + "theta_1=degrees(asin((n2*y)/n1))\n", + "print \"Angle = %0.2f degree\"%theta_1" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 22.6 Page No: 744" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Angle(theta_c) = 48.75 degree\n" + ] + } + ], + "source": [ + "from math import asin, degrees\n", + "n1=1.33\n", + "n2=1\n", + "x=degrees(asin(n2/n1))\n", + "\n", + "print \"Angle(theta_c) = %0.2f degree\"%x" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch23_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch23_3.ipynb new file mode 100644 index 00000000..3f646e85 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch23_3.ipynb @@ -0,0 +1,367 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 23 : Mirrors and lenses" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 23.1 Page No: 760" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The hight = 0.90 m\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "AC= 1.8-.1#in m\n", + "AD=.5*AC\n", + "CF=.10#/in m\n", + "X=.5*CF#in m\n", + "FA=1.8#in m\n", + "d=FA-AD-X\n", + "print \"The hight = %0.2f m\"%d" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 23.2 Page No : 767" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "part a\n", + "The magnification when object is at 25cm : -0.67\n", + "part c\n", + "The magnification when object is at 5cm : 2.00\n" + ] + } + ], + "source": [ + "p=25#in cm\n", + "f=10#in cm\n", + "x=(1/f)-(1/p)\n", + "q=1/x\n", + "p=25\n", + "M=-(q/p)\n", + "print \"part a\"\n", + "print \"The magnification when object is at 25cm : %0.2f\"%M\n", + "p=5#in cm\n", + "f=10#in cm\n", + "x=(1/f)-(1/p)\n", + "q=1/x\n", + "p=5\n", + "M=-(q/p)\n", + "print \"part c\"\n", + "print \"The magnification when object is at 5cm : %0.2f\"%M" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 23.3 Page No: 768" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "part a\n", + "The position of final image = -5.71 cm\n", + "part b\n", + "The magnification : 0.23\n" + ] + } + ], + "source": [ + "p=20#in cm\n", + "f=-8#in cm\n", + "x=(1/f)-(1/p)\n", + "q=1/x\n", + "p=25\n", + "M=-(q/p)\n", + "print \"part a\"\n", + "print \"The position of final image = %0.2f cm\"%q\n", + "print \"part b\"\n", + "print \"The magnification : %0.2f\"%M" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 23.4 Page No: 769" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The focal length = 26.67 cm\n" + ] + } + ], + "source": [ + "p=40#in cm\n", + "q=-(2*p)\n", + "\n", + "x=(1/p)-(1/q)\n", + "f=1/x\n", + "print \"The focal length = %0.2f cm\"%f\n", + "#Answer given in book is wrong" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 23.5 Page No: 770" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The position of final image = -17.14 cm\n", + "The magnification when object = -1.29 cm\n", + "The Position of image = 2.57 cm\n" + ] + } + ], + "source": [ + "p=20#in cm\n", + "n1=1.5#in cm\n", + "n2=1#in cm\n", + "R=-30#in cm\n", + "x=(n2-n1)/R\n", + "y=n1/p\n", + "s=x-y\n", + "q=1/s\n", + "print \"The position of final image = %0.2f cm\"%q\n", + "M=(n1*q)/(n2*p)\n", + "print \"The magnification when object = %0.2f cm\"%M\n", + "h=2#in cm\n", + "h1=-M*h\n", + "print \"The Position of image = %0.2f cm\"%h1" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 23.7 Page No: 777" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "part a\n", + "The position of final image = 15.00 cm\n", + "The magnification : -0.50\n", + "part b\n", + "The position of final image = -10.00 cm\n", + "The magnification : 2.00\n" + ] + } + ], + "source": [ + "p=30#in cm\n", + "f=10#in cm\n", + "x=(1/f)-(1/p)\n", + "q=1/x\n", + "\n", + "M=-(q/p)\n", + "print \"part a\"\n", + "print \"The position of final image = %0.2f cm\"%q\n", + "print \"The magnification : %0.2f\"%M\n", + "p=5#in cm\n", + "f=10#in cm\n", + "x=(1/f)-(1/p)\n", + "q=1/x\n", + "M=-(q/p)\n", + "print \"part b\"\n", + "print \"The position of final image = %0.2f cm\"%q\n", + "print \"The magnification : %0.2f\"%M" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 23.8 Page No: 778" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "part a\n", + "The position of final image = -7.50 cm\n", + "The magnification : 0.25\n", + "part b\n", + "The position of final image = -5.00 cm\n", + "The magnification : 0.50\n", + "part c\n", + "The position of final image = -3.33 cm\n", + "The magnification : 0.67\n" + ] + } + ], + "source": [ + "p=30#in cm\n", + "f=-10#in cm\n", + "x=(1/f)-(1/p)\n", + "q=1/x\n", + "\n", + "M=-(q/p)\n", + "print \"part a\"\n", + "print \"The position of final image = %0.2f cm\"%q\n", + "print \"The magnification : %0.2f\"%M\n", + "p=10#in cm\n", + "f=-10#in cm\n", + "x=(1/f)-(1/p)\n", + "q=1/x\n", + "M=-(q/p)\n", + "print \"part b\"\n", + "print \"The position of final image = %0.2f cm\"%q\n", + "print \"The magnification : %0.2f\"%M\n", + "p=5#in cm\n", + "f=-10#in cm\n", + "x=(1/f)-(1/p)\n", + "q=1/x\n", + "M=-(q/p)\n", + "print \"part c\"\n", + "print \"The position of final image = %0.2f cm\"%q\n", + "print \"The magnification : %0.2f\"%M" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 23.9 Page No: 779" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The magnification : -0.67\n" + ] + } + ], + "source": [ + "p=30#in cm\n", + "f=10#in cm\n", + "x=(1/f)-(1/p)\n", + "q=1/x\n", + "\n", + "M1=-(q/p)\n", + "\n", + "p=5#in cm\n", + "f=20#in cm\n", + "x=(1/f)-(1/p)\n", + "q=1/x\n", + "\n", + "M2=-(q/p)\n", + "\n", + "\n", + "M=M1*M2\n", + "print \"The magnification : %0.2f\"%M" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch24_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch24_3.ipynb new file mode 100644 index 00000000..82f29c9f --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch24_3.ipynb @@ -0,0 +1,233 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 24 : Wave optics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 1 Page No: 794" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(A) wavelength of light = 5.63e-07 meters\n", + "(B) Distance between adjacent fringes = 0.022 meters\n" + ] + } + ], + "source": [ + "L=1.2 # Seperation between screen and double-slit in meter\n", + "d=3*10**-5 #distance between the two slits\n", + "m=2 #second order bright fringe\n", + "Y=4.5*10**-2 #distance of second order bright fringe from centerline\n", + "#wavelength of light\n", + "lamda=(Y*d)/(m*L)\n", + "print \"(A) wavelength of light = %0.2e meters\"%lamda\n", + "#distance between adjacent bright fringes\n", + "#delta_Y=Y(m+1)-Ym\n", + "delta_Y=lamda*L/d\n", + "print \"(B) Distance between adjacent fringes = %0.3f meters\"%delta_Y" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 2 Page No: 798" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Minimum thickness of soap bubble film = 113.16 nm is\n" + ] + } + ], + "source": [ + "n=1.33 #refractive index of soap bubble\n", + "lamda=602 #wavelength of light in nm\n", + "#for constructive interference we have 2nt=lamda/2\n", + "t=lamda/(4*n)\n", + "print \"Minimum thickness of soap bubble film = %0.2f nm is\"%t" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 3 Page No: 799" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Minimum thickness of film = 95.17 nm is\n" + ] + } + ], + "source": [ + "n=1.45 #refractive index of silicon monoxide\n", + "lamda=552 #wavelength of light in nm\n", + "#for destructive interference we have condition for minimn thickness 2t=lamda/2n\n", + "t=lamda/(4*n)\n", + "print \"Minimum thickness of film = %0.2f nm is\"%t" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 5 Page No: 801" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pit depth in a CD = 121.88 nm\n" + ] + } + ], + "source": [ + "n=1.6 #refractive index of plastic transparent layer\n", + "lamda=780 #wavelength of laser light in nm\n", + "#for destructive interference we have condition for minimn thickness 2t=lamda/2n\n", + "t=lamda/(4*n)\n", + "print \"Pit depth in a CD = %0.2f nm\"%t" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 6 Page No: 804" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Position of first dark fringe = 3.87e-03 meters\n" + ] + } + ], + "source": [ + "lamda=580*10**-9 #wavelength of incident light in meter\n", + "a=0.30*10**-3 #slit width in meter\n", + "L=2 #distance of screen from slit in meters\n", + "#The first dark fringe corresponds to m=+1 or -1\n", + "m=1\n", + "sin_theta=m*lamda/a\n", + "#From fig 24.16 tan_theta=y/L and since theta is very small we have sin_theta=tan_theta hence sin_theta=y/L\n", + "y=L*sin_theta \n", + "print \" Position of first dark fringe = %0.2e meters\"%y" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 7 Page No: 808" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Angle in degrees at which first order maxima is observed : 22.32\n", + "Angle in degrees at which second order maxima is observed : 49.43\n", + "for higher order number of diffraction the the solutions are non realistic\n" + ] + } + ], + "source": [ + "from math import asin, degrees\n", + "lamda=632.8 #wavelength of monochromatic light from helium-neon laser in meter\n", + "a=6000 #lines in diffraction grating per cm\n", + "d=10**7/a#slit seperation in nm\n", + "#for the first order maximum we have m=1\n", + "sin_theta1=lamda/d\n", + "theta1=degrees(asin(sin_theta1))\n", + "print \"Angle in degrees at which first order maxima is observed : %0.2f\"%theta1\n", + "#for the second order maximum we have m=2\n", + "sin_theta2=2*lamda/d\n", + "theta2=degrees(asin(sin_theta2))\n", + "print \"Angle in degrees at which second order maxima is observed : %0.2f\"%theta2\n", + "print \"for higher order number of diffraction the the solutions are non realistic\"" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch25_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch25_3.ipynb new file mode 100644 index 00000000..918e8b63 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch25_3.ipynb @@ -0,0 +1,291 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 25 : Optical Instruments" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 1 Page No: 827" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a) focal length f = 50.00 cm\n", + "b) Power of the lens = 2.00 diopters\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "q=-50 # Near point of an eye in cm\n", + "p=25 #object location in cm\n", + "#a) focal length calculation\n", + "#Using Thin Lens equation 1/f=((1/p)+(1/q))\n", + "f=p*q/(p+q)\n", + "print \"a) focal length f = %0.2f cm\"%f\n", + "#b) power of the lens\n", + "f1=50*10**-2# focal length in meters\n", + "P=1/f1\n", + "print \"b) Power of the lens = %0.2f diopters\"%P" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 3 Page No: 830" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a) Maximum angular magnification of the lens : 3.50\n", + "Angular Magnification of lens when eye is relaxed : 2.50\n" + ] + } + ], + "source": [ + "f=10 # focal length in cm\n", + "#a)Maximum angular magnification\n", + "M_max=1+(25/f)\n", + "print \"a) Maximum angular magnification of the lens : %0.2f\"%M_max\n", + "m=25/f\n", + "print \"Angular Magnification of lens when eye is relaxed : %0.2f\"%m" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4 Page No: 832" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Magnification of microscope with two long focal lengths : -45.00\n", + "Magnification of microscope with a combination of 20 mm objective and 2.5 cm eyepiece : -90.00\n", + "Magnification of microscope with a combination of 20 mm objective and 2.5 cm eyepiece : -450.00 \n", + "Possible magnification of microscope with two short focal lengths : -900.00\n" + ] + } + ], + "source": [ + "#interchangeable objectives\n", + "f1=2 # focal length in cm\n", + "f2=0.2 #focal length in cm\n", + "#data of two eye pieces\n", + "f3=5 #focal length in cm\n", + "f4=2.5 #focal length in cm\n", + "L=18 # length of microscope\n", + "#Calculation of magnification for four combinations of lens\n", + "#magnification of compound microscope m =-(L/fo)*(25cm/fe) where fo is shortest focal length compared to fe\n", + "#combination of two long focal lengths\n", + "m1=-(L/f1)*(25/f3)\n", + "print \"Magnification of microscope with two long focal lengths : %0.2f\"%m1\n", + "#combination of 20 mm objective and 2.5 cm eyepiece\n", + "m2=-(L/f1)*(25/f4)\n", + "print \"Magnification of microscope with a combination of 20 mm objective and 2.5 cm eyepiece : %0.2f\"%m2\n", + "#combination of 2 mm objective and 5 cm eyepiece\n", + "m3=-(L/f2)*(25/f3)\n", + "print \"Magnification of microscope with a combination of 20 mm objective and 2.5 cm eyepiece : %0.2f \"%m3\n", + "#combination of two short focal lengths\n", + "m4=-(L/f2)*(25/f4)\n", + "print \"Possible magnification of microscope with two short focal lengths : %0.2f\"%m4" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 5 Page No: 834" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Angular magnification of the telescope : 83.33\n" + ] + } + ], + "source": [ + "d=8 #diameter of objective mirror of reflecting telescope in inches\n", + "fo=1500 #focal length of objective mirror of reflecting telescope in mm\n", + "fe=18 #focal length of eyepiece\n", + "m=fo/fe\n", + "print \"Angular magnification of the telescope : %0.2f\"%m" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 6 Page No: 837" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a) Limiting angle of resolution in radians : 7.98e-07\n", + "b) Maximum limit of resolution for the microscope in radians : 5.42e-07\n", + "c) Limiting angle of resolution for the microscope when water filled the space b/w the object and objective in radians : 6.00e-07\n" + ] + } + ], + "source": [ + "l=589*10**-9 #Wavelength of sodium light m\n", + "d=90*10**-2 #diameter of the aperture in m \n", + "L=400*10**-9 #Wavelength of desirable Visble light\n", + "n=1.33 #refractive index of water\n", + "#a) Calculation of limiting angle of resolution\n", + "#Limiting angle of resolution of the circular aperture is Theta_min=1.22*(l/d)\n", + "Theta_min1=1.22*(l/d)\n", + "print \"a) Limiting angle of resolution in radians : %0.2e\"%Theta_min1\n", + "#b) Calculation of maximum limit of resolution for the microscope\n", + "Theta_min2=1.22*(L/d)\n", + "print \"b) Maximum limit of resolution for the microscope in radians : %0.2e\"%Theta_min2\n", + "#c)Effect of water b/w the object and objective on resolving power of microscope\n", + "lw=l/n\n", + "Theta_min3=1.22*(lw/d)\n", + "print \"c) Limiting angle of resolution for the microscope when water filled the space b/w the object and objective in radians : %0.2e\"%Theta_min3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 7 Page No: 838" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Magnification of telescope A is : 166.67\n", + "Magnification of telescope B is : 50.00\n" + ] + } + ], + "source": [ + "f1=1000# focal length of objective of telescope A in mm\n", + "f2=1250# focal length of objective of telescope B in mm\n", + "f3=6# focal length of eyepiece of telescope A in mm\n", + "f4=25# focal length of eyepiece of telescope Bin mm\n", + "#C) Calculation of magnification of the telescope\n", + "m_A=f1/f3\n", + "m_B=f2/f4\n", + "print \"Magnification of telescope A is : %0.2f\"%m_A\n", + "print \"Magnification of telescope B is : %0.2f\"%m_B" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 8 Page No: 839" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a) Resolving poer of grating inorder to distinguish the wavelengths = 998.31\n", + "b) No.of lines of the grating illuminated to resolve the lines in the second order spectrum are 499\n" + ] + } + ], + "source": [ + "L1=589 # wavelength of first bright line in sodium spectrum in nm\n", + "L2=589.59 # wavelength of second bright line in sodium spectrum in nm\n", + "m=2 # order of the spectrum\n", + "delta_L=L2-L1\n", + "R=L1/delta_L\n", + "print \"a) Resolving poer of grating inorder to distinguish the wavelengths = %0.2f\"% R\n", + "N=R/m\n", + "print \"b) No.of lines of the grating illuminated to resolve the lines in the second order spectrum are %d\"%N" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch26_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch26_3.ipynb new file mode 100644 index 00000000..461f6400 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch26_3.ipynb @@ -0,0 +1,350 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 26 : Relativity" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example1 Page No: 855" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Period of the pendulum w.r.t to observer = 9.61 \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "Tp=3 #proper time in sec\n", + "c=3*10**8 #velocity of light in m/sec\n", + "v=0.95*c\n", + "gamma=1/sqrt(1-(v**2/c**2))\n", + "T=gamma*Tp\n", + "print \"Period of the pendulum w.r.t to observer = %.2f \"%T" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example2 Page No: 857" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Length of spaceship measured by moving observer = 16.93 meters\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "Lp=120 # length of space ship in meters\n", + "c=3*10**8 #velocity of light in m/sec\n", + "v=0.99*c\n", + "gamma=1/sqrt(1-(v**2/c**2))\n", + "L=Lp/gamma\n", + "print \"Length of spaceship measured by moving observer = %0.2f meters\"%L" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example3 Page No: 859" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Distance from spaceship to the groung measured by an observer in spaceship = 105.75 meters\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "Lp=435 # length of space ship in meters\n", + "c=3*10**8 #velocity of light in m/sec\n", + "v=0.970*c\n", + "gamma=1/sqrt(1-(v**2/c**2))\n", + "L=Lp/gamma\n", + "print \"Distance from spaceship to the groung measured by an observer in spaceship = %0.2f meters\"%L" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example4 Page No: 861" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The observer sees the horizontal dimension of the spaceship gets contracted to a length of 16.24 meters\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "c=3*10**8 #velocity of light in m/sec\n", + "#when the spaceship is at rest\n", + "x=52 # diatance in x direction in meters\n", + "y=25 #measurement in y direction\n", + "v=0.95*c\n", + "#when the spaceship moves to an observer at rest only x dimension looks contracted\n", + "gamma=1/sqrt(1-(v**2/c**2))\n", + "L=x/gamma\n", + "print \"The observer sees the horizontal dimension of the spaceship gets contracted to a length of %0.2f meters\"%L" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example5 Page No: 862" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "relativistic momentum = 3.10e-22 kg.m/s\n", + "classical momentum = 2.05e-22 kg.m/s\n", + "the relativistic result is 51 percent greater than classical result\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "c=3*10**8 #velocity of light in m/sec\n", + "m=9.11*10**-31 #mass of electron in kg\n", + "v=0.75*c\n", + "gamma=1/sqrt(1-(v**2/c**2))\n", + "#relativistic momentum\n", + "p=m*v*gamma\n", + "print \"relativistic momentum = %0.2e kg.m/s\"%p\n", + "#classical approach\n", + "P=m*v\n", + "print \"classical momentum = %0.2e kg.m/s\"%P\n", + "Z=(p-P)*100/P\n", + "print \"the relativistic result is %d percent greater than classical result\"%Z" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example6 Page No: 864" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "velocity of light w.r.t stationary observer = 3.00e+08 m/sec\n" + ] + } + ], + "source": [ + "c=3*10**8 #velocity of light in m/sec\n", + "Vmo=0.80*c # velocity of motocycle w.r.t stationary observer \n", + "Vlm=c # velocity of motocycle w.r.t motorcycle\n", + "#velocity of light w.r.t stationary observer \n", + "Vlo=(Vlm+Vmo)/(1+(Vlm*Vmo)/c**2)\n", + "print \"velocity of light w.r.t stationary observer = %0.2e m/sec\"%Vlo" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example7 Page No: 865" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The energy equivalent of baseball = 4.50e+16 joules\n" + ] + } + ], + "source": [ + "c=3*10**8 #velocity of light in m/sec\n", + "m=0.50 #mass of baseball in kg\n", + "E=m*c**2\n", + "print \"The energy equivalent of baseball = %0.2e joules\"%E" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 8 Page No: 866" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "total energy of an electron = 0.97 Mev\n", + "Kinetic energy of electron = 0.46 Mev\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "c=3*10**8 #velocity of light in m/sec\n", + "m=0.511 #rest energy of electron in Mev\n", + "v=0.85*c\n", + "gamma=1/sqrt(1-(v**2/c**2))\n", + "E=(m)*gamma\n", + "print \"total energy of an electron = %0.2f Mev\"%E\n", + "K=E-m\n", + "print \"Kinetic energy of electron = %0.2f Mev\"%K" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 9 Page No: 867" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a) Kinetic energy released in fission = 200.62 Mev\n", + " Speed of Barium fragment = 1.66e+07 Mev\n", + " Speed of krypton fragment = 2.05e+07 Mev\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "m_n=1.008665 #mass of neutron in amu\n", + "m_U=235.043924 #atomic mass of uranium in amu\n", + "m_Ba=140.903496 #atomic mass of barium in amu\n", + "m_Kr=91.907720 #atomic mass of krypton in amu\n", + "c=3*10**8 # velocity of light in m/s\n", + "#a) Kinetic energy released in fission of uranium\n", + "KE_final_=((m_n+m_U)-(m_Ba+m_Kr+(3*m_n)))*c**2\n", + "#1 amu = 931.494 Mev/c**2\n", + "KE_final=KE_final_*931.494/c**2\n", + "print \"a) Kinetic energy released in fission = %0.2f Mev\"%KE_final\n", + "#b) velocities of barium and krypton\n", + "#E=mc2/sqrt(1-v2/c2)\n", + "KE_Ba=KE_final\n", + "m_Ba_=m_Ba*931.494/c**2 # mass of barium in Mev\n", + "E_Ba=KE_Ba+m_Ba_*c**2\n", + "V_Ba=(sqrt(1-(((m_Ba_*c**2)**2)/E_Ba**2)))*c\n", + "print \" Speed of Barium fragment = %0.2e Mev\"%V_Ba\n", + "KE_Kr=KE_final\n", + "m_Kr_=m_Kr*931.494/c**2 # mass of krypton in Mev\n", + "E_Kr=KE_Kr+m_Kr_*c**2\n", + "V_Kr=(sqrt(1-((m_Kr_*c**2)**2)/E_Kr**2))*c\n", + "print \" Speed of krypton fragment = %0.2e Mev\"%V_Kr\n", + "#The difference in answer is because of round off" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch27_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch27_3.ipynb new file mode 100644 index 00000000..cc3bdd59 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch27_3.ipynb @@ -0,0 +1,401 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 27 : Quantum physics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 1 Page No: 874" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wavelength at which radiation emitted from the skin reaches its peak = 9.41e-06 meters\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "T=35 #Temperature of the skin in celsius\n", + "T1=T+273 #Temperature in kelvin\n", + "#From Wien's displacement law \n", + "Lambda_max=(0.2898*10**-2)/T1\n", + "print \"Wavelength at which radiation emitted from the skin reaches its peak = %0.2e meters\"%Lambda_max" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 2 Page No: 878" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a) Total energy of Simple harmonic oscillator with given amplitude = 2.00 Joules\n", + " Frequency of oscillation = 0.56 Hertz\n", + "b) Quantum number for the given macroscopic system : 5.36e+33\n", + "c) Energy carried away by a one-quantum charge = 3.73e-34 joules\n" + ] + } + ], + "source": [ + "from math import sqrt, pi\n", + "m=2 # mass of the object in Kg\n", + "k=25 #force constant of spring in N/m\n", + "A=0.4 #Amplitude of Simple harmonic oscillation by spring in meters\n", + "h=6.63*10**-34#js\n", + "#a) Total energy and frequency of SHO calculation\n", + "E=(1/2)*k*A**2\n", + "f=(1/(2*pi))*sqrt(k/m)\n", + "print \"a) Total energy of Simple harmonic oscillator with given amplitude = %0.2f Joules\"%E\n", + "print \" Frequency of oscillation = %0.2f Hertz\"%f\n", + "#b) Calculation of quantum number for the system\n", + "n=E/(h*f)\n", + "print \"b) Quantum number for the given macroscopic system : %0.2e\"%n\n", + "#c) Calculation of energy carried away in a quantum charge\n", + "delta_E=h*f\n", + "print \"c) Energy carried away by a one-quantum charge = %0.2e joules\"%delta_E" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 3 Page No: 879" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energy carried by a photon with the given frequency = 3.98e-19 Joules\n" + ] + } + ], + "source": [ + "f=6*10**14 #frequency of yellow light in hertz\n", + "h=6.63*10**-34 #plancks constant J.s\n", + "E=h*f\n", + "print \"Energy carried by a photon with the given frequency = %0.2e Joules\"%E" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4 Page No: 882" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a) Maximum Kinetic energy of th eejected photoelectrons = 1.68 ev is\n", + "b) Cut off wavelength for sodium = 5.05e-07 meters\n" + ] + } + ], + "source": [ + "l=0.3*10**-6 #wavelength of light in meters\n", + "W=2.46 #work function for sodium in ev\n", + "c=3*10**8 #velocity of light in m/s\n", + "h=6.63*10**-34#js\n", + "#a) Maximum KE of the ejected photoelectrons\n", + "E=(h*c/l)/(1.6*10**-19) #energy of each photon of th eilluminating light beam in ev\n", + "KE_max=E-W\n", + "print \"a) Maximum Kinetic energy of th eejected photoelectrons = %0.2f ev is\"%KE_max\n", + "#b) Cut off wavelength for sodium \n", + "W1=W*1.6*10**-19\n", + "lc=h*c/W1\n", + "print \"b) Cut off wavelength for sodium = %0.2e meters\"%lc" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 5 Page No: 885" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Minimum wavelength produced = 1.24e-11 meters\n" + ] + } + ], + "source": [ + "V=10**5 #potential difference in Volts\n", + "h=6.63*10**-34 # plancks constant in J.s\n", + "c=3*10**8# velocity of light in m/s\n", + "e=1.6*10**-19# elelctronic charge in coulombs\n", + "L_min=(h*c)/(e*V)\n", + "print \"Minimum wavelength produced = %0.2e meters\"%L_min" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 6 Page No: 886" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Grazing angle at first order of interference = 6.40 degree\n", + "Grazing angle at third order of interference = 19.54 degree\n" + ] + } + ], + "source": [ + "from math import asin, degrees\n", + "d=0.314 #spacing between certain planes in a crystal of calcite in nm\n", + "l=0.070 #wavelength of X-rays in nm\n", + "m=1# first order of interference\n", + "theta1=degrees(asin((m*l)/(2*d)))\n", + "print \"Grazing angle at first order of interference = %0.2f degree\"%theta1\n", + "m=3 #third order of interference\n", + "theta2=degrees(asin((m*l)/(2*d)))\n", + "print \"Grazing angle at third order of interference = %0.2f degree\"%theta2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 7 Page No: 887" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wavelength of the scattered X-rays at the given angle in 0.20 nm\n" + ] + } + ], + "source": [ + "from math import pi, cos\n", + "Lo=0.200000 #wavelength of X-rays in nm\n", + "h=6.63*10**-34 #in J.s\n", + "m_e=9.11*10**-31 # in Kg\n", + "c=3*10**8 #in m/s\n", + "theta=45 #in degrees\n", + "#wavelength is represented by d\n", + "delta_L=(h/(m_e*c))*(1-cos(pi/180*theta))\n", + "L=delta_L+Lo\n", + "print \"Wavelength of the scattered X-rays at the given angle in %.2f nm\"%L\n", + "\n", + "#Answer given in textbook is wrong" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 8 Page No: 887" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "de Broglie wavelength for an electron = 7.28e-11 meters\n" + ] + } + ], + "source": [ + "h=6.63*10**-34 #in J.s\n", + "m_e=9.11*10**-31 # in Kg\n", + "v=1*10**7 #in m/s\n", + "lamda=h/(m_e*v)\n", + "print \"de Broglie wavelength for an electron = %0.2e meters\"%lamda" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 9 Page No: 888" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "de Broglie wavelength of the ball = 1.14e-34 meters\n" + ] + } + ], + "source": [ + "h=6.63*10**-34 #in J.s\n", + "m=0.145 # in Kg\n", + "v=40 #in m/s\n", + "lamda=h/(m*v)\n", + "print \"de Broglie wavelength of the ball = %0.2e meters\"%lamda" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 10 Page No: 889" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Uncertainity in position of electron = 3.86e-06 Meters\n" + ] + } + ], + "source": [ + "from math import pi\n", + "h=6.63*10**-34#js\n", + "v=5*10**3 #speed of the electron in m/s\n", + "m_e=9.11*10**-31 # mass of electron in Kg\n", + "p=m_e*v\n", + "delta_p=0.00300*p\n", + "#Uncertainity principle states delta_x*delta_p >=h/(4*pi)\n", + "delta_x=h/(4*pi*delta_p)\n", + "print \"Uncertainity in position of electron = %0.2e Meters\"%delta_x" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 11 Page No: 889" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Minimum uncertainity in energy of the excited states = 5.28e-27 Joules\n" + ] + } + ], + "source": [ + "from math import pi\n", + "h=6.63*10**-34 # plancks constant in J.s\n", + "delta_t=1.00*10**-8 # Average time that an ellectron exists in the excited states in sec\n", + "delta_E=h/(4*pi*delta_t)\n", + "print \" Minimum uncertainity in energy of the excited states = %0.2e Joules\"%delta_E" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch28_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch28_3.ipynb new file mode 100644 index 00000000..941b57e6 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch28_3.ipynb @@ -0,0 +1,197 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 28 : Atomic Physics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 1 Page No: 897" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wavelength of the emitted photon = 1.22e-07 meters\n", + "frequency of the emitted photon = 2.47e+15 meters\n" + ] + } + ], + "source": [ + "RH=1.097*10**7 #Rydberg constant in per meter\n", + "lamda=4/(3*RH)\n", + "c=3*10**8 # m/sec\n", + "f=c/lamda\n", + "print \"Wavelength of the emitted photon = %0.2e meters\"%lamda\n", + "print \"frequency of the emitted photon = %0.2e meters\"%f" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 2 Page No: 898" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "longest wavelength that photon emmited = 6.56e-07 meters\n", + "Energy emmited by the photon = 3.03e-19 Joules\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "RH=1.097*10**7 #Rydberg constant in per meter\n", + "h=6.626*10**-34 #plancks constant in j.s\n", + "c=3*10**8 # velocity of light in m/s\n", + "nf=2 #quantum number\n", + "ni=3# quantum number\n", + "#assuming k=1/lamda\n", + "k=RH*((1/nf**2-1/ni**2))\n", + "lamda=1/k\n", + "print \"longest wavelength that photon emmited = %0.2e meters\"%lamda\n", + "E_photon=h*c/lamda\n", + "print \"Energy emmited by the photon = %0.2e Joules\"%E_photon" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 3 Page No: 901" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a) Energy of the atom in ground state = -54.40 eV\n", + "b) Radius of the ground state orbit = 0.000 nm\n" + ] + } + ], + "source": [ + "Z=2 #atomic number of helium\n", + "n=1 #principal quantum number\n", + "E=-Z**2*13.6/n**2\n", + "print \"a) Energy of the atom in ground state = %0.2f eV\"%E\n", + "r=(n**2/Z)*0.0529#in nm\n", + "print \"b) Radius of the ground state orbit = %0.3f nm\"%r" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4 Page No: 906" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energy of the states with quantum number 2 = -3.40 ev\n" + ] + } + ], + "source": [ + "n=2# principal quantum number \n", + "E=-13.6/n**2\n", + "print \"Energy of the states with quantum number 2 = %0.2f ev\"%E" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 6 Page No: 906" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energy of the characteristic emiited from tungsten target when electron drops from M shell to K shell = 6.61e+04 ev\n" + ] + } + ], + "source": [ + "Z=74 #atomic number of tungsten\n", + "Eo=13.6 #ground state enenrgy in ev\n", + "E_K=-(Z-1)**2*(13.6) #Energy of the electron in K shell\n", + "n=3\n", + "Z_eff=Z-n**2\n", + "E3=Eo/n**2\n", + "E_M=-Z_eff**2*E3\n", + "E=E_M-E_K\n", + "print \"Energy of the characteristic emiited from tungsten target when electron drops from M shell to K shell = %0.2e ev\"%E\n", + "#Difference in answer is because of roundoff" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch29_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch29_3.ipynb new file mode 100644 index 00000000..e3458b6c --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch29_3.ipynb @@ -0,0 +1,263 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 29 : Nuclear Physics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 1 Page No: 916" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nuclear density = 2.31e+17 kg/m3\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi\n", + "m=1.67*10**-27 #mass of nucleus in kg\n", + "ro=1.2*10**-15 #in meter\n", + "p=(3*m)/(4*pi*(ro)**3)\n", + "print \"Nuclear density = %0.2e kg/m3\"%p" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 2 Page No: 920" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Binding energy of Deuteron = 2.22 Mev\n" + ] + } + ], + "source": [ + "mp=1.007825 #in u\n", + "mn=1.008665 #in u\n", + "md=2.014102 #in u\n", + "u=931.494 #Mev\n", + "M=mp+mn\n", + "delta_m=(M-md) #in u\n", + "E=delta_m*u\n", + "print \"Binding energy of Deuteron = %0.2f Mev\"%E" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 3 Page No: 922" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Activity or decay rate at t=0 = 1.11e-05 Ci\n" + ] + } + ], + "source": [ + "No=3*10**16 #no.of radioactive nuclei present at t=0\n", + "t_half=1.6*10**3 #years\n", + "T_half=t_half*3.16*10**7 #in sec\n", + "d=0.693/T_half\n", + "R_o=d*No # decays/s\n", + "Ci=3.7*10**10\n", + "Ro=R_o/Ci\n", + "print \"Activity or decay rate at t=0 = %0.2e Ci\"%Ro" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 4 Page No: 923" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a) No.of atoms remaining after 12 days : 45612654\n", + "Initial activity of the radon sample = 837.68 decay/sec\n" + ] + } + ], + "source": [ + "from math import exp\n", + "T_half=3.83 #half life time of Radon in days\n", + "No=4*10**8 #Initial No .of Radon atoms \n", + "lamda=0.693/T_half # in days\n", + "t=12 \n", + "N=No*exp(-(lamda*t))\n", + "print \"a) No.of atoms remaining after 12 days : %0.f\"%N\n", + "lamda_=lamda/(8.64*10**4)\n", + "R=lamda_*No\n", + "print \"Initial activity of the radon sample = %0.2f decay/sec\"%R" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 5 Page No: 925" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energy liberated = 4.87 Mev\n" + ] + } + ], + "source": [ + "m_d=222.017571 #mass of daughter nuclei in atomic units\n", + "m_alpha=4.002602 #mass of alpha particle in atomic units\n", + "M_p=226.025402 #mass of parent nuclei in atomic units\n", + "m=m_d+m_alpha\n", + "delta_m=(M_p-m)\n", + "E=delta_m*931.494\n", + "print \"Energy liberated = %0.2f Mev\"%E" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 6 Page No: 927" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energy released in beta decay = 0.156 Mev\n" + ] + } + ], + "source": [ + "M_C=14.003242 #mass of carbon in atomic mass units\n", + "M_N=14.003074 #mass of nitogen in atomic mass units\n", + "delta_M=M_C-M_N\n", + "E=delta_M*(931.494)\n", + "print \"Energy released in beta decay = %0.3f Mev\"%E" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 7 Page No: 928" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Age of the skeleton = 10915.43 years\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import log\n", + "T_half=3.01*10**9 #half life time in min\n", + "lamda=0.693/T_half\n", + "R=200 # in decay/min\n", + "R0_=15 #decay rate in decay/min.g\n", + "m=50 #weight of carbon\n", + "R0=R0_*m #in decay/min\n", + "t1=-(log(R/R0)/lamda) #im min\n", + "t=t1/525949\n", + "print \"Age of the skeleton = %0.2f years\"%t" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch30_3.ipynb b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch30_3.ipynb new file mode 100644 index 00000000..3ab7db90 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/Ch30_3.ipynb @@ -0,0 +1,107 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 30 : Nuclear energy and elementary particles" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 2 Page No: 943" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Disintegration energy = 5.33e+26 Mev is\n", + "or = 2.37e+07 KWh\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "Q=208 #disintegration energy per event in Mev\n", + "m=1*10**3 #mass of uranium\n", + "A=235 #mass number or uranium in g/mol\n", + "a=6.02*10**23 #avagadro number nuclei/mol\n", + "N=(a/A)*m #nuclei\n", + "E=N*Q\n", + "P=E*4.45*10**-20\n", + "print \"Disintegration energy = %0.2e Mev is\"%E\n", + "print \"or = %0.2e KWh\"%P" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 3 Page No: 947" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Energy release in deuterium-deuterium reaction = 4.03 Mev\n" + ] + } + ], + "source": [ + "m1=2.014102 # mass of deuterium in atomic mass unit\n", + "m2=3.016049 #mass of tritium in atomic mass unit\n", + "m3=1.007825 # mass of hydrogen in atomic mass unit\n", + "#referring to the deuterium-deuterium reaction\n", + "#mass before reaction\n", + "M1=2*m1\n", + "#mass after reaction\n", + "M2=m2+m3\n", + "#excessive mass\n", + "m=M1-M2\n", + "#converting mass into energy\n", + "#1 u = 931.494 Mev\n", + "E=m*931.494\n", + "print \" Energy release in deuterium-deuterium reaction = %0.2f Mev\"%E" + ] + } + ], + "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 +} diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/1RefractionOfLaserLight_3.png b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/1RefractionOfLaserLight_3.png Binary files differnew file mode 100644 index 00000000..a2cdf1a4 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/1RefractionOfLaserLight_3.png diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/2PropertiesOfImage_3.png b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/2PropertiesOfImage_3.png Binary files differnew file mode 100644 index 00000000..499e2c33 --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/2PropertiesOfImage_3.png diff --git a/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/3PositionOf1DarkFringe_3.png b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/3PositionOf1DarkFringe_3.png Binary files differnew file mode 100644 index 00000000..b0d4c88b --- /dev/null +++ b/College_Physics_(volume_2)_by_R._A._Serway_and_J._S._Faughn/screenshots/3PositionOf1DarkFringe_3.png diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter1.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter1.ipynb new file mode 100644 index 00000000..a61ed1a0 --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter1.ipynb @@ -0,0 +1,334 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 1 : Introduction" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 45 Ex: 1.1 " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYQAAAEZCAYAAACXRVJOAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XecU2XWwPHfgaFIExClKAIiUlW6sIoMVmyIIqyuuoqu\noKvi+1rWsu6Ka1v1taK4AhZULKCosPbCIBaQrvQiVRGRoQwCwjDn/eO5g2GckmRyc3OT8/188pmb\n5ObJgXkyJ/epoqoYY4wxFYIOwBhjTGqwhGCMMQawhGCMMcZjCcEYYwxgCcEYY4zHEoIxxhjAEkK5\niMilIjIl6DiSSURuFZGRQcdhjB8yvX5bQjAlEpFsEVkT+Ziq3qeqVwQVk0l/xdW7ZL1PptdvSwgp\nQkSygo7BmFiJp8hjVpdDyhJCFESksYiMF5GfRORnERlW5PkHRSRXRL4Tkd4Rjw8UkQUislVElovI\noIjnskVkrYj8TUTWAc+ISFURGe2VtcB7bk3EaxqJyBteHN+JyLUlxHuMiKyL/KCKyDkiMtc77ioi\nM0Rki4j8KCIPFVNGdeA9oJGI5Hn/hoYiMlREXvTOaSoiBV7T2WoR2SgiV4pIFxH5RkQ2FfN/dZn3\nb8sVkfdF5NAYfx0mQUqq15G/Y+9+4e+5gnc/R0TuFpEvgG3AYd7zfxWRpcBi77wzRWSOVw++EJEj\nI8pcKSI3iMhcEdksIq+KSJUS6l2DInFb/faLqtqtlBtQEZgLPATsB1QB/uA9dymwC7gcEOBK4PuI\n154ONPOOjwd+ATp497OB3cB9QCWgKvBvYBKwP3Aw8A2w2ju/AjATuB3IApoBy4FTSoh7GXBSxP1x\nwN+846+AC73jasAxJZTRE1hT5LE7gBe946ZAATAcqAycDPwKvAnUAxoB64HjvfPPBpYCLb1/z9+B\nL4L+HWfirYx6vfd3XOT3XMG7nwOsBFp7v8dK3vMfALW9sjp4v/su3mfjz8AKoJJXxgpgKtAAqAMs\nAAaXVO+sfifnZlcIZesKNARuUtUdqvqrqn4Z8fwqVX1GXY14AWgoIgcBqOq7qrrCO/4M+BDoEfHa\nAuAOVd2tqjuB/sC9qrpFVb8HHsN9mMB9sOqp6t2qmu+VOwo4v4S4XwEuABCRmsBp3mPgklgLEamn\nqttVdVoJZUiUj92lqrtU9SMgD3hZVX9W1R+AKUB777wrgftUdbGqFuCSYXsRaVzC+xv/lFavi/sd\nR1LgeVVdqKoFqrrbe/w+Vd2sqr8Cg4CnVXW6Oi/g/ph2iyjncVX9UVU3ARP5rZ6U9f5g9dsXlhDK\n1hj3R7+ghOd/LDxQ1e3eYQ0AETlNRKZ6l5qbcFcMB0S8doOq7oq43wiI7ORaG3HcBHd5u6nwBtwK\nHFRCXC8D54pIZeBcYKaqFpZ9OXAEsFBEvhaRM0ooI1rrI453FHO/RsS/4bGI+Dd6jx9czvc3sSur\nXpeluE7fyMeaADcUqa+H4Op4oR8jjiPrSTSsfvvAOn/KtgY4VEQqquqeaF8kIlWAN4CLgLdVdY+I\nvMm+30CKLjW7DvdBXeTdj/xmsQZYoapHRPP+qrpQRFbhvjn9CfcBKnxumfcYItIPeF1E6qrqjqLF\nFFd0NO9fgtW4b1uvlHmm8Vtp9XobrqmlUAN+r6y6sRq4R1XvjSO2MuuY1W9/2BVC2abh/lD/W0Sq\niev4/UMUr6vs3X4GCkTkNOCUMl4zFrhVRGqLyMHANfxWQb8G8sR1NO8nIhVFpJ2IdC6lvJeB/8E1\nU40rfFBELhKRA727W7z3KO6b4nrgABGpFfFYNJfzRRW+5j/AbSLSxotjfxHpH0d5pvxKq9dzgOO9\nTuf9cVeiRZVVD0YCV3odvCIi1UXkDBGJ5iqguHpXHKvfCWYJoQzeJfVZwOG4bwBrgAGFT/P7bxTq\nvS4PGIL7I5+La+98u7hzI/wL10y0AtffMA7XHor3Le5MXHvld8AGYARQ2ofmFVxn9ieqmhvx+KnA\nPBHJAx4BzvfafYv+2xd5ZXznjZpoWMy/OZpvVIX/J28B9wOvisgW4FsvFpNkpdVrVf0YeA03qGE6\nrn2/2Hpe0n1VnQlcATyBq/9LcR3LJdWXvfWqmHpX3BUKWP1OOPF6xxNfsOtIeQHXxq3ACFV9vJjz\nHsdd9m0HLlXV2b4EFEIichUwQFV7BR1LpiupPotIXdwfzya4kTcDVHWz95pbgcuAPcAQVf0wiNiN\niZafVwi7gf9V1ba4kQVXi0jryBNE5HTgcFVtgRuV8JSP8aQ8EWkgIseKSAURaQlcjxviZoJXUn2+\nBfjI69v5xLuP12zwR6AN0BsYLt44fmNSlW8V1BtONsc73gYsZN8RBgB9gNHeOdOA2iJS36+YQqAy\nrh1yK+6Py1u4MdAmYCXU54OJqMPez77e8dnAK96Q4pW4cfNdkxq0MTFKyigjEWmKm6hSdDzwwfx+\nmOUh7DusK2Oo6mrgyDJPNIEqUp/rq2phfV0PFH6haYSbeFVoLSEafmgyk++XsN6ogteB67xvVr87\npch9fzo1jEkArz6/gavPeZHPeZMTS6u/VrdNSvP1CkFEKuE+PC95PfBFfc++Y+0P8R4rWo59kIyv\nVLXM4YYR9fnFiPq8XkQaqOqP3iiVn7zHy6zbVq9NMkRTtwv5doUgIgI8AyxQ1UdLOG0CbigaItIN\n2Bxx+b2PWNbjKO52xx13pEUZqRBDupVRzvo8AbjEO74E1+9T+Pj5IlJZRJoBLXBzSfaRkxP8v9/K\nSN8yYuXnFcKxuFm634hI4VDS24BDAVT1aVV9V0ROF5FluIXfBvoYjzHlUVx9vhW3IOFYEbkcb9gp\ngKouEJGxuEXb8oG/ajGf0IULoWfPJERvTBR8Swiq+jlRXIGo6jV+xWDSx5YtsHw5LFv228/vvoM4\nvgTFpYz6fFIJr7kXKHXphkWLSnvWmOTKmLWMsrOz06KMVIjBrzJUYfVqmD8f5s1zPxcvdglgxw5o\n3hwOP9z9POYYuOAC2LSp/HEEaeHC8r0+VX+XVkZqlBEr32YqJ5KIFHe1bUJs50745huYMQNmzXIJ\nYMECqFkT2raFdu3cz1atXAKoXx8knlVmoiAiaAwdbwl8Xz30UGXVqmS/s8kUsdZtSwjGd6rum/AX\nX7gEMGOGu9+yJXTuDJ06/ZYA6tRJfnxBJoSqVZUNG6BGLAs/GxOlWOt2xjQZmeTZswe+/RYmT4bP\nPnO3mjXhuOOgSxcYOBCOPhr22y/oSIPXogUsWQIdOwYdiTGWEEyCrF8P778P770HH30EBx0Exx8P\n554Ljz4KjUOzZ1RytW7tOpYtIZhUYAnBxEUV5syB8ePh3XfdiJ+TToLTToOHH4ZGRVetMsVq1ar8\nHcvGJIolBBM1VdcBPG4cvP66u9+vHzzyCHTvDpUqBR1h+LRuDW+8EXQUxjiWEEyZVq+G0aPdTQT6\n94exY6FDB/9G/mQKu0IwqcRGGZli7dzpmoOee85dFZx/vusM7tQp/ZJAkKOMfvlFOeAAyMuDLPt6\nZhLMRhmZcvnhBxg+HEaMgPbt4fLLYeJEqFo16MjSU7Vq0KABrFjhRhwZEyTbwckAbm7An/7k5gNs\n3gxTpsCHH7orA0sG/mrVypawMKnBEkKG++IL6N3bDQ/t3NmNFnriCTdpzCRH4dBTY4JmTUYZ6rPP\n4M47XQK47TaYMAEqVw46qszUqhVMnVr2ecb4za4QMszChXDWWXDppXDxxW6W7BVXWDIIUuvWbh0n\nY4JmCSFDrF8PV13lZg/36uUSw6WX2tyBVNC2rUsINpDOBM0SQprbs8f1CbRr59YOWrwYrr8eqlQJ\nOjJTqG5dt9bT6tVBR2IynfUhpLFZs+DKK90oocmToU2boCMyJWnXzi0B3qRJ0JGYTGZXCGlo5064\n6Sa3rtBVV1kyCIPChGBMkOwKIc3MmeM6i1u2dH9gDjww6IhMNNq1g08/DToKk+nsCiFN7NkD990H\np5wCf/ubW4DOkkF42BWCSQV2hZAGNmxws4x373Yzjg89NOiITKxat3Yd/nv2QMWKQUdjMpVdIYTc\nl1+6zVW6dIGPP7ZkEFY1arg1jZYvDzoSk8ksIYSUKgwbBuecA089Bffea6tlhp01G5mgWUIIofx8\nuPpqtyLp1Klw5plBR2QSwRKCCZp9pwyZLVtgwACoUMEtTFerVtARmURp1w7eeivoKEwmsyuEEFm7\nFo49Fpo3d3sUWDJIL3aFYIJmCSEkli2DHj3gz3+GJ5+0/oJ01LKl2yjn11+DjsRkKksIIfDtt9Cz\nJ9x6q5tjkG5bWBqnShVo1swNPzUmCJYQUtz06XDyyfDQQzBoUNDRGL9Zs5EJkjU8pLA5c9wIopEj\noU+foKMxydCunbsiNCYIdoWQoubPd4vTDR9uySCTHH00fPNN0FGYTGUJIQUtXQqnnuqaifr1Czoa\nk0xHH+2uDI0JgiWEFLNunVug7s473fpEJrM0aQK//OLWpzIm2SwhpJBt21yfweWXu5vJPCLQvj3M\nnRt0JCYTWUJIEfn5bgZyx47w978HHY0JkjUbmaBYQkgBqm5tIlXXiWzzDDJb+/aWEEwwLCGkgKee\ncstYjx0LlSoFHY0JmjUZmaCIqgYdQ5lERMMQZzymTIHzznMJoXnzoKPJTCKCqib9uqykev3rr1C7\nNmzaBFWrJjsqk05irdt2hRCgtWvhj3+E0aMtGZjfVKkCLVq4uSjGJJMlhIDs2uXmGFx7LfTuHXQ0\nJtVYs5EJgiWEgNx2m9sy8ZZbgo7EpCIbaWSCYGsZBeC99+C119wH3kYUmeK0bw9vvx10FCbTWKdy\nkq1b5+YavPqqW9LaBC/VOpUBfv4ZDj/cdSzblwYTL+tUTmEFBW6Dm0GDLBmY0tWrBzVqwMqVQUdi\nMoklhCQaPtytU/OPfwQdiQkDm6Bmks0SQpIsXw5Dh8Jzz9n2lyY6nTrBzJlBR2EyiSWEJCgocIvV\n3Xqr2zfXmGh07gwzZgQdhckkviYEEXlWRNaLSLF7QIlItohsEZHZ3u12P+MJylNPwe7d8D//E3Qk\nJl7F1WURGSoiayPq72kRz90qIktFZJGInBLPe3bq5BJCmoynMCHg6ygjEekBbANeUNUji3k+G7he\nVUvdEyzMo4xWrXLf9D7/3K4OUlU0IzGKq8sicgeQp6oPFzm3DfAy0AU4GPgYOEJVC4qcV2a9btQI\nvvrK7ZNgTKxSapSRqk4BNpVxWloPqrvuOndlYMkg3Eqpy8XV37OBV1R1t6quBJYBXeN5X2s2MskU\ndB+CAn8Qkbki8q73zSptTJwICxfCjTcGHYnx0bVe/X1GRGp7jzUC1kacsxZ3pRAzSwgmmYIe7zIL\naKyq273217eAI4o7cejQoXuPs7Ozyc7OTkZ8cdu+HYYMgZEj3WJlJnXk5OSQk5OTiKKeAv7lHd8F\nPASUtNddsW1DZdXrzp3hkUfKGaXJGOWt277PVBaRpsDE4voQijl3BdBJVXOLPB66PoTbb3dDTV95\nJehITFmibWctrS5HPicitwCo6r+9594H7lDVaUVeU2a9Xr8eWreGjRttxrKJXUr1IZRFROqLuGou\nIl1xCSq3jJelvKVL4T//gYceCjoS4ycRaRhx9xygcATSBOB8EaksIs2AFsDX8bxH/fpQvTqsWFG+\nWI2Jhq9NRiLyCtATqCcia4A7gEoAqvo0cB5wlYjkA9uB8/2MJ1luvtn1GzRqFHQkJlFKqMvZItIe\n1xy0AhgMoKoLRGQssADIB/5ankvcwn6Eww4r77/CmNLZ4nYJ9tlncPHFsGgR7Ldf0NGYaKTi4naR\n7rkHtmyBBx5IQlAmrYSqySjdFBS4K4N777VkYBLHRhqZZLGEkECvvupmlV5wQdCRmHTSqRPMmuW+\ncBjjJ0sICbJzp9sF7eGHoYL9r5oEqlcPatd2gxWM8VOZf7pEpIaIVPSOW4pIHxGp5H9o4TJiBBx5\nJPToEXQkJh116wbTppV9njHlEc132c+AKiJyMPABcDHwvJ9Bhc327fDvf8O//lX2ucbEo1s3mDo1\n6ChMuosmIYiqbgfOBYaran+gnb9hhcvw4dC9O3ToEHQkpizLli1j586dAEyaNInHH3884Iii0727\nJQTjv6hau0WkO3Ah8E4sr8sE27bBgw/CnXcGHYmJRr9+/cjKymLZsmUMHjyYNWvWBB1SVNq3h8WL\n3Y57xvglmj/s/wPcCrypqvNFpDkwyd+wwmPYMDjhBGhn10yhUKFCBbKyshg/fjzXXnstDz74YNAh\nRaVKFTjqKBt+avxV5kxlVZ0MTBaR/UWkpqouB4b4H1rqy8tzC49NmRJ0JCZalStX5uWXX+aFF15g\n4sSJQYcTk8J+hJ49g47EpKtoRhl18XaJ+gaY5y3129n/0FLfiBFw4om210GYPPvss0ydOpW///3v\nNGvWjBUhWiSoe3e3WY4xfilz6QovGfzV2yAEETkO17l8VBLiK4wh5Zau+PVXt7bMO++49l0THtu3\nb2f16tW0atUKSP2lKwqtXg1du8K6dbbyqYmOH0tX5BcmAwBV/Ry3YFdGe/FF16ZrySBcJkyYQIcO\nHejduzcAs2fPDjii6DVu7CY9rloVdCQmXZWYEESkk4h0wvUfPC0i2d7tKWBy8kJMPXv2uIXGbrkl\n6EhMrIYOHcq0adOoU6cOAB1CNFZYxIafGn+V1qn8EL/t8iS45X4Lj1Or/SbJ3nwTDjgAjj8+6EhM\nrCpVqkTt2rXLPjFFdevm+hHOT4uF4k2qKTEhqGp2EuMIDVU3K/kf/7B23DBq27YtY8aMIT8/n6VL\nl4ZmYlqhbt1sj27jn2hGGdURketE5BERGebdwvUpSqAvvoCtW+Gss4KOxMTjiSeeYP78+VSpUoUL\nLriAWrVqBR1STDp1gvnz3XIpxiRaNKOMvgK+wm0PWIDXZKSqo/0Pb28MKTPKaMAAt4DdtdcGHYmJ\nVX5+PieffDKTJu07rzIso4wKde8O990H2dmJj8mkl1jrdjRbaFZR1evLEVPaWLMGPv4YRo0KOhIT\nj6ysLCpUqMDmzZtD3Y/Qo4fbmc8Sgkm0aBLCyyIyCJgI/Fr4oKrm+hZVinrqKbc9ZshaGUyE6tWr\nc+SRR3LyySdTvXr1oMOJS48eELKuDxMS0TQZXQPcA2zGNRmBazJK2pbfqdBktGMHNGni+hBatAg0\nFFMOzz//POAupQFUlYEDB4aqySg3F5o2dT+zovlKZzJWrE1G0SSEFUAXVf25vMHFKxUSwrPPwvjx\n8N//BhqGSYCwzlSOdNRR8Mwz0KVLgoMyacWPmcpLgR3xhxR+qm5VU+tIDr8wz1SO1KOHLapoEi+a\nhLAdmCMiIzJ12OmMGbBlC5x8ctCRmPIK80zlSIUdy8YkUjQtkG95t8hZy6kxBjRJRo6Ev/zFrSNj\nwi3sM5UL9egB11wDBQVWL03iRLMfwvMiUgU4wntokaru9jes1JGXB+PGwYIFQUdiEiHsM5ULHXyw\nG+22aBG0aRN0NCZdRDNTORtYAjzp3ZaKSMZs0fHqq268d8OGQUdiEmHYsGGhnqkc6fjjrR/BJFY0\no4xmAReo6mLv/hHAq6raMQnxFcYQ2Cijrl1h6FA4/fRA3t74ZMuWLYgItWrVCuUoI3CjjD79FMaM\nSWBQJq34MVM5qzAZAKjqEhHJiNHPc+bAjz/CqacGHYlJlOnTp3PZZZexdetWgFD3J/TsCXfc4UbB\n2UKLJhGi6Y6aKSKjvL0QeonIKCAjtvoeNQouuwwqVgw6EpMol112GcOHD2fVqlWsWrWKJ598MuiQ\n4ta8uetQXrIk6EhMuoimyagqcDVwrPfQFNwWmr+W/KrECqLJaNcuaNTIDTlt2jSpb2181KFDh9/N\nPQhrkxHAwIGuWfOqqxIUlEkrCW8yUtWduM1yHipPYGHz7rtu9IYlg/TSs2dPBg8ezAUXXADAa6+9\nBoCIdARQ1VnBRRe7E06At9+2hGASo8QrBBH5tpTXqaoe5U9IxcaS9CuEfv2gd2+44oqkvq3xWXZ2\n9t51jMCtZTR58mSAHO9+r2TFkoh6/f33bhmLDRtsPoL5vYStZSQiTUt7oaqujCWw8kh2Qti0yV0Z\nrFoFIe5zNFEKc5MRQKtWbnh0+/YJCMqklYQ1GSXzD36qGTcOTjnFkkE62rRpEy+88AIrV64kPz8/\n6HAS4oQT4JNPLCGY8otmYto2Ecnzbr+KSIGIbE1GcEF58UW374FJP6effjqrVq3iqKOOonPnznTq\n1CnokMrtxBPdfARjyqvMUUb7nCxSAegDdFPVW3yL6vfvm7QmoxUr4JhjYO1aqFw5KW9pkqhjx47M\nmrVvv3HYm4w2boTDDoOff4ZKlRIQmEkbfix/vZeqFqjqW0DvmCMLiTFj4I9/tGSQrv70pz8xYsQI\n1q1bR25uLrm54d/474ADXEKYPj3oSEzYlTnsVET6RdytAHQijfdHeO01+M9/go7C+KVq1arcdNNN\n3HPPPVRIo2E5J57o+hH+8IegIzFhFs3EtOf5bbnrfGAlMFJVf/I1sn1jSEqT0cKFbs+D1attCF+6\natasGdOnT6devXp7Hwt7kxHABx/A3XfbYndmX35MTLu0XBGFyLhxcN55lgzSWYsWLdhvv/2CDiPh\njj8e5s6FzZttdJyJXzRNRo2Bx4HjvIc+A65T1bV+BhaEceOsuSjdVatWjfbt29OrVy+qVKkSdDgJ\ns99+cNxx8PHH7kuNMfGIZtXS54AxwADv/oXeY2m1oeTChW5CWvfuQUdi/NS3b1/69u0bdBi+6N0b\n3n/fEoKJXzR9CHNV9eiyHvNTMvoQ/vUvyM2FRx/19W1MCkqHPgRwq56ecAKsWWPLYRvHj2GnG0Xk\nYhGpKCJZInIR8HP8IaamsWNhwICyzzPhtmTJEs477zzatGlDs2bNaNasWdAhJUyLFlClCsyfH3Qk\nJqyiSQiX4ZqLfgTWAf2BgX4GlWwLF7rOuG7dgo7E+G3gwIFceeWVZGVlkZOTwyWXXBJ0SAkj4pqN\n3nsv6EhMWJWZEFR1paqepaoHerezVXV1MoJLljfecKub2uii9Ldjxw5OOukkVJUmTZowdOjQoENK\nqMJ+BGPiEc1aRi+ISO2I+3VE5Fl/w0quCRPg7LODjsIkQ9WqVdmzZw+HH344TzzxBOPHjw86pITq\n1Qu+/hq2bQs6EhNG0XwnPkpVNxfeUdVNQMdoCheRZ0VkfWl7K4jI4yKyVETmikiHaMpNpB9+gOXL\noUePZL+zCcKjjz7K9u3befzxx5kxYwYvvfRSVK8rri6LSF0R+UhElojIh0W+ON3q1etFInKKD/+U\nYtWo4dbissXuTDyiSQgiInUj7tQFot1l+DlKWfdIRE4HDlfVFsAg4Kkoy02YCRPgtNNsUbBM0bVr\nV2rWrEnjxo15/vnnY7lCKK4u3wJ8pKpHAJ949xGRNsAfgTbea4Z7C0MmxRlnwMSJyXo3k06iqaQP\nAV+JyF0icjfwFfBgNIWr6hRgUymn9AFGe+dOA2qLSP1oyk6UCROgT59kvqMJoxLq8t766/0snOBw\nNvCKqu729hVZBnRNRpzg6vPEiVBQkKx3NOkimk7lF4BzgZ9wI43O8R5LhIOBNRH31wKHJKjsMuXl\nweefu444Y+JQX1XXe8frgcIvM41wdbnQWlxdT4rmzaFePdeXYEwsopmpjKrOB/wa3Vx00kSxM3Ui\nR4NkZ2eTnZ1d7jf+4AM3M7lWrXIXZUIkJyeHnJychJapqioipc0yS1q9BneVMGGCDaXONOWt21El\nBB99DzSOuH+I99jv+DE80EYXZZ6ffvqJL774gu+//z4RW2iuF5EGqvqjiDTEXUVDwPUaXL2+7DK4\n915fijcpquiXijvvvDOm1wc98n4C8GcAEekGbI64BPdVfj68+y6cdVYy3s2kirPPPputW7dy8skn\nc8YZZ3DGGWeUp7gJQOHMtkuAtyIeP19EKotIM6AFkNQGnC5d3FIsy5Yl811N2Pl6hSAirwA9gXoi\nsga4A6gEoKpPq+q7InK6iCwDfiGJM6C//BIOPRQaNy77XJM+duzYwf333x/z64qpy/8E/g2MFZHL\ncfuEDABQ1QUiMhZYgNtD5K9J2wPWU6GC+7IzYQJcf30y39mEWTSL2/XDVfz6/Nber6qatJZ3Pxa3\nu+0296G5++6EFmtS3O2330737t33uTJIl8XtinrnHXjgAZg82be3MCku1rodTUJYDpypqgvLG1y8\n/PjgdOgAw4a5NeRN5qhRowbbt2+ncuXKVPImn2zbti0tE8KOHdCggZt4GbFBnMkgfqx2+mOQycAP\n69bBypU2AiMTbdu2jYKCAnbu3EleXh55eXlBh+Sb/faDk05yzUbGRCOaPoQZIvIarsNsl/eYqmpo\nF4H58EO3KXlW0GOsTNIsXLiQ1q1bM2vWrKBDSar+/WH0aDfiyJiyRPMncX9gB1B0PZbQJoT333fL\nVZjM8fDDDzNy5Eiuv/56JIN2jznzTBg82I04qlu37PNNZiuzDyEVJLKtdc8eqF8f5syBQ5I2J9qk\nsnTtVC7Ur59b38iuEjJPrHW7xCsEEblZVe8XkWHFPK2qOiSuCAM2fTo0bGjJwGSOAQPg+ectIZiy\nldZktMD7OZN9p90LJUzDDwNrLjKZ5owzYNAgazYyZcu4JqNu3dx0/hNOSEhxJg2ke5MRwHnnwemn\n21VCpvFj2GnayM2FBQvg2GODjsQE5cQTTww6hED07w9jxwYdhUl1GTXwMifHJYMqVYKOxCTbjh07\n2L59Oxs2bCA3N3fv41u3bg0wquQpbDb6+WebpGZKllEJ4ZNP3PwDk3mefvppHnvsMX744Qc6deq0\n9/GaNWsGGFXy1Kjh+s7GjoW//jXoaEyqimbpipbAcKCBqrYVkaOAPqqatFWAEtXW2ro1jBkDHaPa\nEdqko8cff5whQ/YdIJcJfQjgVve96y746qukvaUJmB9rGX0G3AT8R1U7iJvVM09V25Yv1Ogl4oPz\n/fdw1FGwYYNb1M5kri+//JKVK1fu3Q/hkksuyYiEkJ/vhltPmQItWiTtbU2AEjYPIUI1VZ1WOLvT\n2xlqd7wL3+4tAAAW4UlEQVQBBmXSJMjOtmSQ6S666CK+++472rdvT8WKFYMOJ6mysuD88+GllyDG\nfVNMhogmIWwQkcML74jIecA6/0Lyxyef2FBTAzNnzmTBggX7LF/xxBNPBBhRcl18sZuoNnQoZNAK\nHiZK0XxfvgZ4GmglIj8A/wtc5WtUCaYKn35qHcoG2rVrx7p1ofs+kzAdO7pRdl9+GXQkJhWVeYWg\nqsuBE0WkOlBBVUO3XvDy5bB7N7RsGXQkJmgbNmygTZs2dO3alSoZOP5YxF0lvPiizccxvxdNp/IN\n/H6pii3ATFWd41dgRWIoV+fbiBGuI+3FFxMYlAmlnJwcYG9nGwC9evXKiE7lQqtXuw2ivv8eqlZN\n+tubJPJjpnIn4ErgYOAQYDBwGjBSRG6OK8oks/4DUyg7O5umTZuye/dusrOz6dq1a9AhJd2hh0Ln\nzvDGG0FHYlJNNAmhMdBRVW9Q1etxCeIg3Ibjl/oYW0KouhnKvXoFHYlJBSNGjKB///4MHjwYgLVr\n1wYcUTCuuAJGjgw6CpNqokkIB/LbTmkAu4H6qrod2OlLVAm0ZInrRGvaNOhITCp48skn+fzzz6lV\nqxYARxxxRMARBaNPH1i40H0+jCkUTUIYA0wTkTtEZCjwJfCy18m8oNRXpoApU+D444OOwqSKKlWq\n7NOZXDg5LdNUrgyXXgqjRgUdiUklpSYEb1byaGAQriN5EzBYVe9U1V9U9cIkxFguU6ZAjx5BR2FS\nRc+ePbnnnnvYvn07H330Ef379w86pMD85S9uv+Vdu8o+12SGUkcZeQnhW1Vtl7yQio0j7tEYzZrB\nO+9AmzYJDsqEUkFBAaNGjeLDDz8E4NRTT2XQoEEZNcooUq9ecPXVbr8Ek378WMtoNPCkqn5d3uDi\nFe8HZ+1aaN/erV9kszJNfn4+7dq1Y9GiRfs8nimL2xXn5Zfhuefgo48CDcP4xI9hp92Ar0TkOxH5\n1rt9E3+IyTNlChx3nCUD42RlZdGyZUtWrVoVdCgpo18/+PZbKJIjTYaKZi2jU32PwifWf2CKys3N\npW3btnTt2pXq1asHHU7gqlRxG+c88YS7mcwW9Z7KInIQsHdeo6qu9iuoYt47rkvrI4+EZ5+FLl18\nCMqE0uTJkylalzJtpnJRP/wA7drBd99B7dpBR2MSyY8+hD7AQ0Aj4CegCbAw1fdDyM11cw9yc92y\nv8bk5+fTtm1bFi9evM/jmdyHUOjCC93s5f/936AjMYnkRx/C3UB3YImqNgNOBKbFGV/SfP45HHOM\nJQPzm6ysLFq1amV9CMUYMsQ1Ge3ZE3QkJkjR/Lncrao/i0gFEamoqpNE5DHfIysn6z8wxbE+hOId\ncwzUq+eGaPfpE3Q0JijRJIRNIlITmAKMEZGfgG3+hlV+X37p9o81JtJdxVSK//73vwFEknqGDIFH\nH7WEkMmi6UOoAezANS9dCNQCxqjqRv/D2xtDTG2tu3ZBnTrw449Qs6aPgZm0YH0Izu7dcPjhMG4c\nZOAisGkp4Z3KqSDWD87XX7vVHOfO9TEoE0o1atTYu33mrl272L17N6pqCcEzbJhbHdiWxk4PCe9U\nFpF+IrJURLaKSJ5321q+MP01dSp06xZ0FCYVbdu2jby8PPLy8tixYwfjx48POqSUcvnlbkCGTVTL\nTNGMMnoA6KOqtVS1pner5Xdg5WEJwUSjQoUK9O3bN+gwUkq1anDNNfDAA0FHYoIQTafyj6q60PdI\nEmjqVPjnP4OOwqSiNyLaQgoKCpg5c2aA0aSmq692fQl33gmNGwcdjUmmEhOCiPTzDmeIyGvAW/y2\nUY6qakpea69fD5s2QYbue2LKMHHixL19CFlZWTS1nZN+p25dGDgQHnrIjToymaPETmUReR4ofFIi\njgFQ1YG+RrZvLFF3vr39Njz1FLz/vs9BmbRho4x+b906aNsW5s2DRo2CjsbEK9a6XeIVgqpempCI\nkmzqVOjePegoTKq65JJLeOyxx6jtLdqzadOmgCNKTQ0buquEe++1Re8ySTSjjEaLSO2I+3VE5Fl/\nw4qfdSib0sydO3dvMgCoU6dOgNGktptvhldegdVJW8bSBC2aUUZHq+rmwjuqugno6F9I8cvPhxkz\nbFKNKZmqkpubu/d+5LHZ10EHuaWx77kn6EhMskQzykhEpK6q5np36gIV/Q0rPvPnwyGHuFnKxhTn\nhhtuoHv37gwYMABVZdy4cUGHlNJuvBFatnRXC4cdFnQ0xm/RXCE8hNsx7S4RuRv4CnjQ37Di89VX\n1n9gSvfnP/+Z8ePHc9BBB9GgQQPefPPNoENKaQcc4Iah3nFH0JGYZIhq6QoRaQucgBtp9KmqLvA7\nsCLvH9VojMsvd2u6X3VVEoIyacNGGZUuL88N4/7vf6FTp6CjMbHI6LWMjj4annnGJQVjomUJoWwj\nRsDLL8OkSbZHeZj4sUFOKOzYAUuXum0zjTGJddll8PPPMHFi0JEYP/maEESkt4gs8hbHu7mY57NF\nZIuIzPZut8f7XnPnQuvWbtNwY5JJRFaKyDdeHf7ae6yuiHwkIktE5MPIodthlJUFDz4IN93klsk2\n6cm3hCAiFYEngN5AG+ACEWldzKmTVbWDd7s73vebMcOaikxgFMj26nDhoOdbgI9U9QjgE+9+qPXu\nDU2auJUATHry8wqhK7BMVVeq6m7gVeDsYs5LSIukJQQTsKL1uA8w2jseDYR+WVURt7bRXXe5zadM\n+vEzIRwMrIm4v9Z7LJICfxCRuSLyroi0iffNLCGYACnwsYjMEJErvMfqq+p673g9UD+Y0BKrTRvX\nn3DTTUFHYvwQzcS0eEUzfGIW0FhVt4vIabgVVYtdp3To0KF7j7Ozs8nOzt57f9s2+O47txiXMWXJ\nyckhJycnkUUeq6rrRORA4CMR2Wd7GVVVESn281BavU5V//iH+6zl5EAIws0o5a3bvg07FZFuwFBV\n7e3dvxUoUNX7S3nNCqBT4azoiMdLHZ73+edw/fVu60xjYpXIYacicgewDbgC16/wo4g0BCapaqsi\n54Zm2GlRb74Jf/87zJkDlSsHHY0pSSoNO50BtBCRpiJSGfgjMCHyBBGpL97i9CLSFZegYl5cxpqL\nTFBEpJqI1PSOqwOnAN/i6vol3mmX4K5+00bfvtCsGfzf/wUdiUkk35qMVDVfRK4BPsCtffSMqi4U\nkcHe808D5wFXiUg+sB04P573mjkTevVKUODGxKY+8Kb3vSYLGKOqH4rIDGCsiFwOrAQGBBdi4onA\n8OHui1jfvq5vwYRfWsxUbt0aXn3VzVQ2JlY2Uzl+Tz/tVgf48ks3V8GkllRqMkqKrVvdeu32DcWY\n5Bs0CGrVctttmvALfUKYPdstV1GpUtCRGJN5RGDUKNeXsCCpS14aP6RFQuiYktv1GJMZmjZ1m+hc\ndBH8+mvQ0ZjyCH1CmDsX2rcPOgpjMtsVV7jEcEvoF+jIbKFPCHPmWEIwJmiFTUfjx8M77wQdjYlX\nqEcZ7doF++8PGzdCtWoBBGbSgo0ySpwpU6B/f5g1Cxo1Cjoak1GjjBYtcpeplgyMSQ09ergtN88/\n35bJDqNQJwRrLjIm9dx2G9SsCTfcEHQkJlahTghz59pkNGNSTcWKMGYMvPcejB5d9vkmdYQ6IdgV\ngjGpqXZteOstuPFGt9aYCYfQJgRVSwjGpLK2bd3SFuecA2vXBh2NiUZoVx/5/ns3O7lBg6AjMcaU\n5NxzYflyOO00t0z9/vsHHZEpTWivEObMsf4DY8LgxhuhZ0/o188NFTepK9QJwZqLjEl9IvDYY1C9\nOvzlL1BQEHREpiShTQi2ZIUx4VGxIrzyitvqdsgQ1wdoUk9oE4I1GRkTLtWquWUtpk2Dv/3NkkIq\nCuXSFXl5rjN5yxbblMOUny1dkVy5uW6Hw7PPhn/9K+ho0lusdTuUf04XLIBWrSwZGBNGdevCRx9B\ndjbs2QN33+36GUzwQtlkNG8etGsXdBTGmHgddBBMnuxmMw8ZYh3NqcISgjEmEAceCJMmuf7AgQMh\nPz/oiIwlBGNMYPbfHz74AH76Cfr2df2DJjiWEIwxgapWDSZMgIYN3fLZa9YEHVHmCl1C+Pln2L4d\nDjkk6EiMMYlSqRKMGAEXXgjdu8PMmUFHlJlClxDmz3dXBzYqwZj0IgI33QTDhkHv3rZ0dhBClxDm\nzXOrKBpj0tM557jO5vvug0GDYOfOoCPKHKFLCIVXCMaY9NWuHUyfDps3w7HHuhVTjf9ClxCsQ9mY\nzFCzJrz2Glx6KXTrBqNG2XIXfgvV0hWqcMABsGiRm9hiTCLY0hWpb/58uOgiaNwYRo6E+vWDjigc\nYq3bobpCWLfOLVdhycCYzNK2rVsU78gj3aKWL75oVwt+CFVCsOYiYzJX5cpwzz0wcSI88gicdBIs\nXhx0VOnFEoIxJlS6dIGvv4Y+feC44+Cf/4Rt24KOKj2ELiHYkFNjTFYWXHedWwdp+XJo2dJ1Ou/Z\nE3Rk4Ra6hGBXCMaYQgcfDGPGwNtvu36Fo492m/BY/0J8QjPKqKBAqVULVq+GOnWCjsikExtllB5U\nXf/CbbfBfvvBP/4BZ52V2asaxFq3Q5MQ1qxROneGH38MOhqTbiwhpJeCAnjrrd92Y7v9djf7uWLF\nYOMKQtoOO124EFq3DjoKY0yqq1ABzj0XZs92SeGhh6B5c/i//3Mzn03JQpMQFi1y22YaY0w0RNxI\npK++grFjXYJo1gyuvhq++Sbo6FJTaBKCXSEYY+LVtavrfJ4/H+rVgzPPhE6d4MknITc36OhSR2gS\ngl0hGGPKq1EjuPNOWLHCrab6+edw2GHQvz+MGwe//BJ0hMEKTadyw4bK1Klw6KFBR2PSjXUqZ7ZN\nm+D1191t6lQ4+WSXIM44A2rUCDq68knbUUbVqytbt7oOI2MSyRKCKbRxoxuhNG4cfPEFHHMMnHaa\nu7VuHb4hrGmbEDp2VNtWz/jCEoIpTl4efPopvPeeuwGceipkZ8Pxx4djG9+0TQgXXqi89FLQkZh0\nZAnBlEXVDWz58EP47DN3q1ULevZ0yaF7dzjiiNRrwUjbhHDXXcrttwcdiUlHlhBMrAoK3ECXzz6D\nyZPd0twbN0LHjtC5s1uAr3NnN8w1yGamtE0Ir7+u9OsXdCQmHVlCMImwcSPMmOFu06e727ZtbkHO\ndu32/Vm/fnISRdomhHnz1FY6Nb6whGD8snGjm/swb567FR6LwOGHu1vz5vv+PPDAxCWLlEoIItIb\neBSoCIxS1fuLOedx4DRgO3Cpqs4u5hzduVOpUsW3UE0G8yshlFX/LSFkJlX46SdYtszdli93t8Lj\nXbugaVM3ke7II8v3XjHXbbdXceJvuA/BMqApUAmYA7Qucs7pwLve8THA1BLK0vKaNGlSWpSRCjGk\nWxle/Qqi/pc79lT5P7QyElfGpk2qs2ervvtu+eOItW772SfeFVimqitVdTfwKnB2kXP6AKO9T8Y0\noLaI+LJ9dk5OTlqUkQoxpFsZPomm/pdbqvwfWhmJK6N2bWjfHqZNK38csfIzIRwMrIm4v9Z7rKxz\nQjC615gyRVP/jUkpfiaEaBtHi7ZvWaOqSQdWj03o+NapLCLdgKGq2tu7fytQoBEdayLyHyBHVV/1\n7i8Ceqrq+iJl2YfL+EoT3KkcZf23em18F0vdzvIxjhlACxFpCvwA/BG4oMg5E4BrgFe9D9DmoskA\nEv9hNSYJyqz/Vq9NqvEtIahqvohcA3yAG3HxjKouFJHB3vNPq+q7InK6iCwDfgEG+hWPMclUUv0P\nOCxjShWKiWnGGGP8l2JLMe1LRHqLyCIRWSoiN8dZxkoR+UZEZovI11G+5lkRWS8i30Y8VldEPhKR\nJSLyoYjUjqOMoSKy1otltjdxqbQyGovIJBGZLyLzRGRIrLGUUkbUsYhIVRGZJiJzRGSBiNwXRxwl\nlRHr/0lF77yJscZQShkxxZAImVy3rV6XWFbwdTuWSQvJvBHFxJ4oy1kB1I3xNT2ADsC3EY89APzN\nO74Z+HccZdwBXB9DHA2A9t5xDWAx0DqWWEopI9ZYqnk/s4CpwHFx/J8UV0ascVwPjAEmxPN7KaGM\nmGKwul2+um31OnXrdipfISRyYk9MnXeqOgXYVOThvZPovJ994ygjplhU9UdVneMdbwMW4sayRx1L\nKWXEGst277Ay7g/apljiKKWMqOMQkUNws9tHRbwmphhKKEOijSFBMrpuW73+vVSp26mcEBI1sUeB\nj0VkhohcUY546utvI6DWA/HOqL5WROaKyDPRXAIWEjdapQMwLd5YIsqYGmssIlJBROZ47zdJVefH\nGkcJZcQSxyPATUBBxGOx/l8UV4bGEEMiWN32WL3eKyXqdionhET1dh+rqh1wC+hdLSI9ylugumux\neOJ7CmgGtAfWAQ9F8yIRqQG8AVynqnnxxOKV8bpXxrZYY1HVAlVtj5tJfryI9Io1jmLKyI42DhE5\nE/hJ3eKHxX7jKSuGUsqI6/dSDla3sXod8W9Imbqdygnhe6BxxP3GuG9SMVHVdd7PDcCbuMv1eKwX\nkQYAItIQ+CmOWH5SD+6yrsxYRKQS7kPzoqq+FU8sEWW8VFhGPLF4r9sCvAN0ijWOYsroHEMcfwD6\niMgK4BXgBBF5McYYiivjhXj/L8oh4+u21et9pEzdTuWEsHdij4hUxk3smRBLASJSTURqesfVgVOA\nb0t/VYkmAJd4x5cAb5VybknxNIy4e05ZsYiIAM8AC1T10XhiKamMWGIRkXqFl5oish9wMjA7xjiK\nLaOwwpcVh6repqqNVbUZcD7wqapeHEsMJZTx51h/LwmQ0XXb6vW+Uqpua4wjG5J5w10KL8aNyLg1\njtc3w43gmAPMi7YMXIb9AdiFa+sdCNQFPgaWAB8CtWMs4zLgBeAbYK73y61fRhnH4doD5+Aq6myg\ndyyxlFDGabHEAhwJzPLK+Aa4yXs8ljhKKiOm/xPvNT35bRRFTL+XiDKyI8p4MdYYrG7HX7etXqdu\n3baJacYYY4DUbjIyxhiTRJYQjDHGAJYQjDHGeCwhGGOMASwhGGOM8VhCMMYYA1hCSCoR2V9Eroq4\n30hExvnwPmdJnEsqGxMrq9fpw+YhJJG3CNdEVT0y4FCMSRir1+nDrhCS699Ac3EbVdwvIk3E22RE\nRC4VkbfEbYSxQkSuEZEbRWSWiHwlInW885qLyHviVrj8TERaFn0Tr6xh3vHzIvKYiHwhIstFpF8x\n5zcVt1nLcyKyWETGiMgp3muWiEgX77ye8ttGG7O8hcWMsXqdLvyeom+3faaUN2HfTUWaFt4HLgWW\nAtWBesAWYJD33MO41RwBPgEO946PAT4p5n0uAYZ5x88Dr3nHrYGlxZzfFNgNtMWtlDgDtwcwuDXZ\n3/SOJwDdveNqQMWg/0/tFvzN6nX63LJKSxYm4craqGKSqv4C/CIim4GJ3uPfAkd5i5j9ARjn1vYC\n3KYcpVG8RbFUdaGIlLSm+gr11nEXkfm4NVTArZPT1Dv+AnhERMYA41X1+zLe22QGq9dpwhJCavk1\n4rgg4n4B7ndVAdikbg38WOyKOC7pw1v0vXdFHGcBqOr9IvJf4AzgCxE5VVUXxxiLyTxWr0PC+hCS\nKw+oGcfrBEDdJiIrROQ8cEsAi8hRJZ2faCLSXFXnq+oDwHTgd+28JiNZvU4TlhCSSFU34r6BfCsi\n9+MuewuHeRXdEanoceH9C4HLxW3ZNw/XFvq7tyqjrGLDK+V+4fF1Xuxzcd+03iuhLJNBrF6nDxt2\naowxBrArBGOMMR5LCMYYYwBLCMYYYzyWEIwxxgCWEIwxxngsIRhjjAEsIRhjjPFYQjDGGAPA/wMo\nN+WJLN7kewAAAABJRU5ErkJggg==\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f3ff2a1f110>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,show,subplot,title,xlabel,ylabel\n", + "from numpy import arange,exp\n", + "#As both q and i are 0 when t<0, graph coincides with x-axis till t=0 and we here,show the part where t>0\n", + "t=arange(0,0.04+0.000001,0.000001)\n", + "q=[];i=[]\n", + "for time in t:\n", + " q.append(2*(1-exp(-100*time)))\n", + " #current i=dq/dt=200*e**(-100*t)\n", + " i.append(200*exp(-100*time))\n", + "subplot(121)\n", + "title('charge vs time')\n", + "xlabel('time in ms')\n", + "ylabel('charge in coulombs')\n", + "#ms-milli second(10**-3)\n", + "plot(t*10**3,q)\n", + "subplot(122)\n", + "title('current vs time')\n", + "xlabel('time in ms')\n", + "ylabel('current in amperes') #ms-milli second(10**-3)\n", + "plot(t*10**3,i)\n", + "show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 46 Ex: 1.2" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "ELEMENT A :\n", + "Power for element A in watts is 24\n", + "As a battery, element A is being charged\n", + "ELEMENT B\n", + "Power for element B in watts is -12\n", + "As a battery, element B is being discharged\n", + "ELEMENT C\n", + "Power for element C in watts is -36\n", + "As a battery, element C is being discharged\n" + ] + } + ], + "source": [ + "#element A\n", + "print 'ELEMENT A :'\n", + "V_a=12#\n", + "i_a=2#\n", + "P_a=V_a*i_a# #passive reference configuration (current enters through +ve polarity)\n", + "if(P_a>0): #absorption of power\n", + " print 'Power for element A in watts is',P_a\n", + " print 'As a battery, element A is being charged'\n", + "elif(P_a<0) : #supplying of power\n", + " print 'Power for element A in watts is',P_a\n", + " print 'As a battery, element A is being discharged'\n", + "\n", + "\n", + "#element B\n", + "print 'ELEMENT B'\n", + "V_b=12#\n", + "i_b=1#\n", + "P_b=-V_b*i_b# #opposite to passive reference configuration (current enters through -ve polarity)\n", + "if(P_b>0): #absorption of power\n", + " print 'Power for element B in watts is',P_b\n", + " print 'As a battery, element B is being charged'\n", + "elif(P_b<0) : #supplying of power\n", + " print 'Power for element B in watts is',P_b\n", + " print 'As a battery, element B is being discharged'\n", + "\n", + "\n", + "#element C\n", + "print 'ELEMENT C'\n", + "V_c=12#\n", + "i_c=-3#\n", + "P_c=V_c*i_c# #passive reference configuration (current enters through +ve polarity)\n", + "if(P_c>0): #absorption of power\n", + " print 'Power for element C in watts is',P_c\n", + " print 'As a battery, element C is being charged'\n", + "elif(P_c<0): #supplying of power\n", + " print 'Power for element C in watts is',P_c\n", + " print 'As a battery, element C is being discharged'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 47 Ex: 1.3" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Density of Fluid = 937.8 N sec**2/m**4\n", + "\n", + " New Specific Weight = 9195 N/m**3\n" + ] + } + ], + "source": [ + "# initialisation of variables\n", + "G= 9200 # N/m**2\n", + "g1= 9.81 # m/sec**2\n", + "g2= 9.805 #m/sec**2\n", + "# Calculations\n", + "rho= G/g1\n", + "G2= rho*g2\n", + "# Results\n", + "print 'Density of Fluid = %.1f N sec**2/m**4'%(rho)\n", + "print '\\n New Specific Weight = %.f N/m**3'%(G2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 47 Ex: 1.4" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated, hence the values in this code differ from those of textbook\n", + "Resistance of copper wire = 0.05 ohms\n" + ] + } + ], + "source": [ + "from numpy import pi\n", + "d=2.05*10**-3# #diameter of wire\n", + "l=10# #length of wire\n", + "P=1.72*10**-8# #resistivity of copper\n", + "A=pi*d**2/4# #area of wire\n", + "R=P*l/A# #resistance of the copper wire\n", + "print \" All the values in the textbook are approximated, hence the values in this code differ from those of textbook\"\n", + "print 'Resistance of copper wire = %0.2f ohms'%R" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 47 Ex: 1.5 " + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "resistance of heater element = 9.00 ohms\n", + "operating current = 13.00 amperes\n" + ] + } + ], + "source": [ + "P=1500# #power of heater\n", + "V=120# #operating voltage\n", + "R=V**2/P# #resistance of heater element\n", + "i=V/R# #operating current\n", + "print 'resistance of heater element = %0.2f ohms'%R\n", + "print 'operating current = %0.2f amperes'%i" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 48 Ex: 1.6" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "voltage across resistance = -10.00 volts\n", + "current through resistance = 2.00 amperes\n", + "current through source = -2.00 amperes\n", + "power for voltage source = -20.00 watts\n", + "power for resistance = 20.00 watts\n", + "Results are in agreement with those previously found in the textbook\n" + ] + } + ], + "source": [ + "V_s=10# #source voltage\n", + "R=5#\n", + "V_x=-V_s# #Voltage across R(applying KVL)\n", + "#the actual polarity is opposite to the reference, so we take polarity to be +ve at the top end of resistance\n", + "i_x=-V_x/R# #ohm's law(-ve sign as V_x and i_x have references opposite to passive configuration)\n", + "i_y=-i_x# #current through source\n", + "P_s=V_s*i_y# #power for voltage source\n", + "P_R=-V_x*i_x# #power for resistance(-ve sign as V_x and i_x have references opposite to passive configuration)\n", + "print 'voltage across resistance = %0.2f volts'%V_x\n", + "print 'current through resistance = %0.2f amperes'%i_x\n", + "print 'current through source = %0.2f amperes'%i_y\n", + "print 'power for voltage source = %0.2f watts'%P_s\n", + "print 'power for resistance = %0.2f watts'%P_R\n", + "if(V_x==-10 and i_x==2 and i_y==-2 and P_s==-20 and P_R==20):\n", + " print 'Results are in agreement with those previously found in the textbook'\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 48 Ex: 1.7" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Source voltage for given circuit = 35.00 volts\n" + ] + } + ], + "source": [ + "R_1=10#\n", + "R_2=5#\n", + "V_R_2=15# #voltage across R_2\n", + "a=0.5#\n", + "i_y=V_R_2/R_2# #current across R_2\n", + "i_x=i_y*2/3# #current across R_1, by applying KCL at the top end of the controlled source \n", + "V_x=i_x*R_1# #ohm's law\n", + "V_s=V_x+V_R_2# #KVL around the periphery of the circuit\n", + "print 'Source voltage for given circuit = %0.2f volts'%V_s" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter10.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter10.ipynb new file mode 100644 index 00000000..286d8936 --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter10.ipynb @@ -0,0 +1,316 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 10 : Diodes" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 445 Ex: 10.1" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nEFsAAAAASUVORK5CYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7ffafefa2150>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "diode voltage at operating point = 0.70 volts\n", + "1.3 current at opeating point = 1.30 milli-amperes\n" + ] + } + ], + "source": [ + "from numpy import arange\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "V_ss=2#\n", + "R=1*10**3#\n", + "V_D=arange(0,2+0.001,0.001)\n", + "I_D=[]\n", + "for x in V_D:\n", + " I_D.append(10**3*(V_ss-x)/R)\n", + "plot(V_D,I_D) \n", + "title('load line plot')\n", + "xlabel('voltage in volts')\n", + "ylabel('current in milli-amperes') #milli-10**-3\n", + "show()\n", + "#we use the equation V_ss=R*i_D+V_D\n", + "#at point B\n", + "i_D=V_ss/R# #as V_D=0\n", + "#at point A\n", + "V_D=V_ss# #as i_D=0\n", + "#now we see intersection of load line with characteristic and we get following at operating point\n", + "V_DQ=0.7# #voltage\n", + "I_DQ=1.3*10**-3# #current\n", + "#diode characteristic cannot be plotted\n", + "print 'diode voltage at operating point = %0.2f volts'%V_DQ\n", + "print I_DQ*10**3,'current at opeating point = %0.2f milli-amperes'%(I_DQ*10**3) #milli-10**-3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 446 Ex: 10.2" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYwAAAEZCAYAAACEkhK6AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAHNBJREFUeJzt3Xu0XGWd5vHvkwvdhCRADILhFi8YCXLXgEA3R2HwNELT\ngzZ07B4bUTqjgzI9oAwCQxClRQcFpW25KKCM3DS6gAVNNHAwjQgGkpAr3QyEAUKDEgQCNCThN3/s\n9ySVyrnsqlO7alfV81mrVqp27V37rVqV+p1nv+9+tyICMzOz4YxqdQPMzKw9uGCYmVkuLhhmZpaL\nC4aZmeXigmFmZrm4YJiZWS4uGNb2JK2SdEQBrztb0o8Gea5H0pMVj5dK+tNGt2E4kt6U9I5m79e6\nkwuGdYJItyJeN9+KEe+NiF8V0IaGkHSSpPmtboe1NxcMMzPLxQXDOoqkP5J0iaSn0+1bkrZKz20n\n6TZJz0laI+lWSTtXbPt2SfdIeknSXGByDftdJelD6f5sSTdJuja91lJJB1asO0XST1M7HpP0uSFe\n9xpJ35M0N71Wn6TdBll3W0k/TK+7StLZyuwJ/BPwAUkvS1qT932ZVXLBsE5zNjAD2DfdZgDnpOdG\nAd8Hdku314DLKrb9MfBb4C3ABcDfkv+wVPV6xwLXA9sCt/TvR9Io4FZgITAFOAL475KOGuK1Pw58\nmayALQL+zyDrfQeYALwdOBz4BPDJiFgB/FfgvoiYEBGTcr4ns824YFin+Tjw5Yj4fUT8Hjgf+C8A\nEbEmIn4WEf8REWuBC8l+WEl/tb8PODci1kXEfLIfdtXZjvkR8c+RTdZ2HVnxAng/MDkivhIR6yPi\nceAq4K+GeK3bIuJfIuINsoL4gcpklNo/GjgROCsiXomIJ4CL+9/7CN6H2UZjWt0AswabAjxR8fj/\npWVIGgd8C/gwsH16frwkpXVeiIjXKrZ9Ati1znY8W3H/VeCPU7rYHZgi6YWK50cDg3WYB/DUxgcR\nr6RDSlOApyvWmwyMZcv3vllhMRsJJwzrNKuBqRWPd2PTD+vpwLuBGRGxLVm6ULo9A2yfikq/3Wn8\n6KsngccjYvuK28SIOGaQ9UVF0ZI0HphE9j4r/R5Yx5bvvb/YeFpqGzEXDOs01wPnSJosaTLwv8gO\nCQGMJ+u3eFHSJOC8/o3SIZwFwPmSxko6DBjsR3wkHgBelvRFSVtLGi3pvZLeN8Q2R0s6NHXeX0DW\nF1GZLoiIDcBNwFcljZe0O/D3bHrvzwK7SBrb+Ldk3cIFwzrNV8h++B9OtwVpGcAlwNZkf43/GriD\nzf/y/jhwELCGrNBcO8y+BvurfaDzQgI2/rAfA+wHPAb8DrgCmDjEa/2YrLg9D+wP/M0gbfgc8Ep6\n3flkneNXp+fmAcuAf5f03DDvy2xAKvICSpJ+AHwEeC4i9h5knW8Df0Z2nPekiFiYlveS/QcfDVwV\nERcV1lCzkpJ0NfBURJzb6raYFZ0wrgZ6B3tS0tHAuyJiD+DvyMaK94/4uCxtOx2YmcaSm3Ubj26y\n0ii0YKShiS8Mscqfk2J/RNwPbCdpJ7Kx849GxKqIWAfcABxXZFvNSqqoaU/MatbqYbU7k40a6fdU\nWjZlgOUHNbFdZqUQEZ9sdRvM+pWh09uR28ysDbQ6YTzN5idG7UKWJsZWLd+VipOX+klyVDczq0NE\n1PzHeqsTxi1k890g6WDgDxHxLNlQyD0kTU1jz09M625h1argyCOD978/WLYsiPCt3tt5553X8jZ0\n0s2fpz/Lst7qVWjBkHQ92Xj3aZKelHSypFmSZgFExO3AY5IeBS4HPpuWrwdOBe4ElgM3RjaB2hZ2\n3x3mzoVPfQoOPxy+9jVYv77Id2Vm1p0KPSQVETNzrHPqIMvvIDuxalgSzJoFvb3w6U/DnDlwzTUw\nfXpt7TUzs8G1+pBUQzltjExPT0+rm9BR/Hk2jj/Lcij0TO+iSYrB2v/EE1naePFFpw0zs0qSiDbs\n9C6M04aZWWN1bMKo5LRhZraJE8YQnDbMzEauKxJGJacNM+t2Thg5OW2YmdWn6xJGJacNM+tGThh1\ncNowM8uvqxNGJacNM+sWThgj5LRhZjY0J4wBOG2YWSdzwmggpw0zsy05YQzDacPMOo0TRkGcNszM\nMk4YNXDaMLNO4ITRBE4bZtbNnDDq5LRhZu3KCaPJnDbMrNs4YTSA04aZtRMnjBZy2jCzbuCE0WBO\nG2ZWdk4YJeG0YWadygmjQE4bZlZGThgl5LRhZp3ECaNJnDbMrCycMErOacPM2p0TRgs4bZhZKzlh\ntBGnDTNrR04YLea0YWbN5oTRppw2zKxdOGGUiNOGmTWDE0YHcNowszJzwigppw0zK4oTRodx2jCz\nsnHCaANOG2bWSE4YHcxpw8zKwAmjzThtmNlIOWF0CacNM2sVJ4w25rRhZvVwwuhCThtm1kxOGB3C\nacPM8nLC6HJOG2ZWNCeMDuS0YWZDccKwjZw2zKwIThgdzmnDzKo5YdiAnDbMrFEKLRiSeiWtlPRv\nks4c4PntJf1M0mJJ90vaq+K5VZIelrRQ0gNFtrPTSTBrFixYAPPmwSGHwPLlrW6VmbWbmgqGpEmS\n9sm57mjgMqAXmA7MlLRn1WpfAh6KiH2BTwCXVjwXQE9E7B8RM2pppw3MacPMRmLYgiHpHkkTJU0C\nHgSukvStHK89A3g0IlZFxDrgBuC4qnX2BO4GiIhHgKmSdqjcfZ43Yfk5bZhZvfIkjG0j4iXgeOCH\n6a/9I3NstzPwZMXjp9KySovT6yJpBrA7sEt6LoBfSlog6ZQc+7MaOG2YWa3G5FhntKS3AScA56Rl\neYYm5Vnna8ClkhYCS4CFwIb03GERsToljl9IWhkR86tfYPbs2Rvv9/T00NPTk2O3BpvSRm9vNpJq\nzhyPpDLrRH19ffT19Y34dYYdVivpL4FzgXsj4jOS3gl8PSI+Osx2BwOzI6I3PT4LeDMiLhpim8eB\nvSNibdXy84C1EXFx1XIPq22QCLjiCjjnHDj9dDjjDBiT588JM2s79Q6rLew8DEljgEeAI4DVwAPA\nzIhYUbHOtsBrEfFGOux0aEScJGkcMDoiXpa0DTAXOD8i5lbtwwWjwXzehlnnK+w8DEnTJM2TtCw9\n3kfSOcNtFxHrgVOBO4HlwI0RsULSLEmz0mrTgSWSVgIfBk5Ly3cE5ktaBNwP3FZdLKwY7tsws8Hk\nOST1K+ALwPciYn9JApZGxF5DbtgEThjFctow60xFnuk9LiLu73+QfqHX1bojaz9OG2ZWKU/B+J2k\nd/U/kPQx4JnimmRl4vM2zKxfnoJxKnA5ME3SauDvgc8U2iorHacNMxuyDyNN73FRRJwhaTwwKp3E\nVwruw2gN922YtbdC+jAiYgNwmLJf5rVlKhbWOk4bZt0pzyip7wFTgJuBV9PiiIg5BbdtWE4Yree0\nYdZ+ihwl9cfAGuBDwDHpdmytO7LO5LRh1j18xT1rGKcNs/ZQujO9rfs4bZh1tjyHpK4ku9DRG+nx\nEmBmYS2ytubzNsw6l8/0tkI4bZh1Hp/pbYVx2jDrLLWc6f0en+lt9XDaMOsMuUdJpetSjIqIl4tt\nUn4eJdV+PJLKrPWKHCU1WdJ3gH8B7pF0qaS31NNIM6cNs/aV55DUDcBzwPHAx4DfATcW2SjrbO7b\nMGtPeaYGWRoR761atiQi9i60ZTn4kFT787XEzZqvyKlB5kqaKWlUup1Ido1tsxFz2jBrH3kSxlpg\nHPBmWjQKeCXdj4iYWFzzhuaE0VmcNsyao96E4bmkrHQ8ksqsWIUWDEn7AFOBjX/veXpzK5LThllx\nCisYkq4G9gaWsemwFBHxyVp31mguGJ3PacOs8YosGMuBvcr4y+yC0R2cNswaq8hRUr8F/HedtYxH\nUpmVQ56CcTVwn6R/lbQk3R4uumFm1XyWuFlr5Tkk9X/JJhxcyuZ9GKsKbVkOPiTVvdy3YVa/Ig9J\nPRcRt0TEYxGxqv9WexPNGsdpw6z58iSM7wLbAbey6ap74WG1VhZOG2a1KTJhjANeB44Cjkm3Y2vd\nkVlRnDbMmsNneltHcdowG16R52FsDXyKbGjt1kAARMTJdbSzoVwwbCA+b8NsaEUekvoRsCPQC/QB\nuwJra92RWbP4vA2zYuQpGO+KiHOBtRFxLXA0cFCxzTIbOfdtmDVWnoLRPzLqRUl7k42Y2qG4Jpk1\njtOGWePkKRhXSpoEnAPcAiwHvl5oq8wazGnDbOQ8Ssq6jkdSWbcrstO7cie31boDs7Jx2jCrT00F\nA9i5kFaYNZn7NsxqV2vBWFRIK8xaxGnDLD/3YZgl7tuwbtHwPgxJN6d/lwxw8/UwrOM4bZgNbdCE\nIWlKRKyWNHWg58swxbkThhXFacM6WWFzSZWZC4YVyXNSWadqeMGQtJY00eAAIiIm1rqzRnPBsGZw\n2rBO0/A+jIgYHxETBrm1vFiYNYv7NswyQyWMSUNtGBFrCmlRDZwwrNmcNqwTFHFIahWDH5IiIt5e\n684azQXDWsF9G9buStnpLakXuAQYDVwVERdVPb898APgHcB/ACdHxLI826Z1XDCsZZw2rF0VkTDe\nExErJR0w0PMR8dAwDRoNPAIcCTwN/BaYGRErKtb5BvBSRFwgaRrwjxFxZJ5t0/YuGNZSThvWjoqY\nfPD09O83gYsHuA1nBvBoRKyKiHXADcBxVevsCdwNEBGPAFMlvTXntmYt5zmprJsMNUrqlPRvT0R8\nsPqW47V3Bp6sePwUW05euBg4HkDSDGB3YJec25qVhkdSWTcYNjxLGgN8BJhK1p8gsvMwvjnMpnmO\nFX0NuFTSQmAJsBDYkHNbAGbPnr3xfk9PDz09PXk3NWuo/rTR25v1bcyZ474NK4e+vj76+vpG/DrD\ndnpLugN4jewH/c3+5RFx/jDbHQzMjoje9Pgs4M2BOq8rtnkc2Bt4b55t3YdhZeW+DSuzwkZJSXo4\nIvapo0FjyDqujwBWAw+wZaf3tsBrEfGGpFOAQyPipDzbpu1dMKzUPJLKyqjIK+7NlfThWl84ItYD\npwJ3kl0H/MaIWCFplqRZabXpwBJJK4EPA6cNtW2tbTBrNfdtWCfJkzCOB64jKy7r0mLPJWVWI6cN\nK4siE8Y3gYOBcZ5Lyqx+ThvW7vIkjF8BH4yIDc1pUn5OGNaunDaslYrs9L4WeDtwB/BGWpxnWG3h\nXDCsnXkklbVKkYekHgfuArYCxqfbhFp3ZGab81ni1m58xT2zEnDasGYq5Wy1RXPBsE7jvg1rhiIP\nSZlZk3gklZWZE4ZZSTltWFGKHCX1VuAUsskH+4+qRkScXOvOGs0Fwzqd+zasCEUWjPuAXwEPsmny\nwYiIn9bcygZzwbBu4bRhjVRkwVgUEfvV3bICuWBYN3HasEYpstP7NkkfqaNNZtZAPm/DWi1PwlgL\njCM7y9uTD5qVgNOGjYTPwzDrQu7bsHo0vGBI2jNdv+KAgZ6PiIdq3VmjuWCYOW1Y7YooGFdGxCmS\n+hjgGtsR8cGaW9lgLhhmmzhtWF4+JGVmThuWiwuGmW3ktGFD8VxSZraR56SyIjhhmHU4pw2rVljC\nkDQvzzIzKyenDWuUQQuGpK0lvQXYQdKkittUYOdmNdDMRs5niVsjDJUwZgELgGlkEw/2324BLiu+\naWbWaE4bNhJ5pgb5fER8u0ntqYn7MMzq576N7lXosFpJh7D59TCIiB/WurNGc8EwGxmft9Gdipze\n/DrgHcAiYEP/8oj4XK07azQXDLPGcNroLkUWjBXA9DL+MrtgmDWO00b3KPLEvaXA22pvkpm1E4+k\nsuHkKRg7AMslzZV0a7rdUnTDzKw1PJLKBpPnkFRPuhtAf4SJiLinwHbl4kNSZsVy30ZnKuyQVET0\nAauAsen+A8DCWndkZu3HacMq5Zka5O+Am4HL06JdgJ8V2SgzKw/3bVi/PH0Y/w04DHgJICL+FXhr\nkY0ys/Jx2rA8BeP1iHi9/4GkMQxwBT4z63xOG90tT8G4R9LZwDhJ/4ns8NStxTbLzMrMaaM75Rkl\nNQr4NHBUWnQncFUZhid5lJRZ63kkVfsp5EzvdPhpaUS8ZySNK4oLhlk5+Czx9lLIsNqIWA88Imn3\nultmZh3PfRvdIU8fxiRgmaS7fKa3mQ3FfRudLU8fxuFsOsO7n8/0NrMhuW+jvIrsw1gWEdNG0rii\nuGCYlZv7NsqpyD6Mle7DMLN6uG+js7gPw8wK576NzlDLbLWbSRMRtpQPSZm1H/dttF6h1/QuKxcM\ns/bkvo3WKvISrWvZNHfUVsBYYG1ETKy5lQ3mgmHW3pw2WqPI62GMj4gJETEB2Bo4HvhuHW00M9uM\n+zbaS12HpCQtioj9cqzXC1wCjCabf+qiqucnA9cBOwFjgP8dEdek51aRTam+AVgXETMGeH0nDLMO\n4bTRPEUekvpoxcNRwIHA4RHxgWG2Gw08AhwJPA38FpgZESsq1pkN/FFEnJWKxyPAjhGxXtLjwIER\nsWaIfbhgmHUQ9200R2GHpIBjgWPS7SjgZeC4HNvNAB6NiFURsQ64YYDtngH6+0ImAs+ncz/61fyG\nzKx9+byNchu2dkfESXW+9s7AkxWPnwIOqlrnSuAuSauBCcAJlbsGfilpA3B5RFxZZzvMrM30921c\ncUXWt+G0UQ7DfvySrgVOi4g/pMfbAxdHxMnDbJrnWNGXgEUR0SPpncAvJO0bES8Dh0bEM5J2SMtX\nRsT86heYPXv2xvs9PT309PTk2K2ZlV1/2ujtzfo25sxx30a9+vr66OvrG/Hr5OnD2KKDO0+nt6SD\ngdkR0ZsenwW8WdnxLel24KsRcW96PA84MyIWVL3WeWRDeS+uWu4+DLMu4L6NxiqyD0OSJlU8mEQ2\n6mk4C4A9JE2VtBVwIlA9pchKsk5xJO0ITAMekzRO0oS0fBuyvpMlOfZpZh3IfRvlkKdgXAzcJ+kC\nSV8B7gO+MdxGqfP6VLJLui4HboyIFZJmSZqVVrsQeJ+kxcAvgS+mUVE7AfMlLQLuB26LiLm1vjkz\n6yw+b6O1cp2HIWkv4ENk/RJ3RUQparsPSZl1L5+3UT/PJWVmXcd9G/VxwTCzruW0UZsiO73NzErN\nfRvN4YRhZh3FaWN4ThhmZjhtFMkJw8w6ltPGwJwwzMyqOG00lhOGmXUFp41NnDDMzIbgtDFyThhm\n1nW6PW04YZiZ5eS0UR8nDDPrat2YNpwwzMzq4LSRnxOGmVnSLWnDCcPMbIScNobmhGFmNoBOThtO\nGGZmDeS0sSUnDDOzYXRa2nDCMDMriNNGxgnDzKwGnZA2nDDMzJqgm9OGE4aZWZ3aNW04YZiZNVm3\npQ0nDDOzBmintOGEYWbWQt2QNpwwzMwarOxpwwnDzKwkOjVtOGGYmRWojGnDCcPMrIQ6KW04YZiZ\nNUlZ0oYThplZybV72nDCMDNrgVamDScMM7M20o5pwwnDzKzFmp02nDDMzNpUu6QNJwwzsxJpRtpw\nwjAz6wBlThtOGGZmJVVU2nDCMDPrMGVLG04YZmZtoJFpwwnDzKyDlSFtOGGYmbWZkaYNJwwzsy7R\nqrThhGFm1sbqSRtOGGZmXaiZacMJw8ysQ+RNG6VMGJJ6Ja2U9G+Szhzg+cmS/lnSIklLJZ2Ud1sz\nM9tc0WmjsIIhaTRwGdALTAdmStqzarVTgYURsR/QA1wsaUzOba3B+vr6Wt2EjuLPs3H8WeYnwaxZ\nsGABzJsHhxwCy5c35rWLTBgzgEcjYlVErANuAI6rWucZYGK6PxF4PiLW59zWGsz/KRvLn2fj+LOs\nXRFpo8iCsTPwZMXjp9KySlcCe0laDSwGTqthWzMzG0Kj00aRBSNPb/SXgEURMQXYD/hHSRMKbJOZ\nWdepThv1KmyUlKSDgdkR0ZsenwW8GREXVaxzO/DViLg3PZ4HnAmMGW7btNxDpMzM6lDPKKkxRTQk\nWQDsIWkqsBo4EZhZtc5K4EjgXkk7AtOAx4CXcmxb1xs2M7P6FFYwImK9pFOBO4HRwPcjYoWkWen5\ny4ELgaslLSY7PPbFiFgDMNC2RbXVzMyG19Yn7pmZWfO0xdQgeU7ik/Tt9PxiSfs3u43tJMcJlT2S\nXpS0MN3OaUU724GkH0h6VtKSIdbxdzOH4T5Lfy9rI2lXSXdLWpZOjP78IOvl/35GRKlvZIekHgWm\nAmOBRcCeVescDdye7h8E/KbV7S7rLefn2QPc0uq2tsMN+BNgf2DJIM/7u9m4z9Lfy9o+z52A/dL9\n8cAjI/3tbIeEkeckvj8HrgWIiPuB7VInum0p70mRHlCQQ0TMB14YYhV/N3PK8VmCv5e5RcS/R8Si\ndH8tsAKYUrVaTd/PdigYeU7iG2idXQpuV7vK83kGcEiKqLdLatCl57uSv5uN4+9lndKI0/2B+6ue\nqun7WeSw2kbJ2ytf/ZeHe/MHludzeQjYNSJelfRnwM+BdxfbrI7m72Zj+HtZB0njgZ8Ap6WkscUq\nVY8H/X62Q8J4Gti14vGuZFVwqHV2SctsS8N+nhHxckS8mu7fAYyVNKl5Tewo/m42iL+XtZM0Fvgp\ncF1E/HyAVWr6frZDwdh4AqCkrchO4rulap1bgE/AxjPM/xARzza3mW1j2M9T0o6SlO7PIBt+vab5\nTe0I/m42iL+XtUmf1feB5RFxySCr1fT9LP0hqchxAmBE3C7paEmPAq8An2xhk0stz+cJfAz4jKT1\nwKvAX7WswSUn6XrgcGCypCeB88hGn/m7WaPhPkv8vazVocDfAA9LWpiWfQnYDer7fvrEPTMzy6Ud\nDkmZmVkJuGCYmVkuLhhmZpaLC4aZmeXigmFmZrm4YJiZWS4uGNZ10kmLS9L9fdM0E0Xv83xJRxT4\n+idJ+k66/xeS9ixqX9a9XDCs2+1PNsVzoSLivIiYV+QuKu7/BeCJ+azhXDCs7Un6B0mfrXg8W9Lp\n6f43JC2R9LCkE6q2Gwt8GTgxXZDnBEnvl/RrSQ9JulfSu9O64yTdlC5GM0fSbyQdmJ47Km3zYFpn\nmwHaeI2kj6b7q1IbH0ztmjbA+vdVzsYqqU/SAZImSfp5mrH1Pkl7V233AeBY4BvpPbxD0udTuxen\ns6nN6uKCYZ3gRqCyGPwlcEP6gd4X2Ac4kuxHdONc/+l6IOcCN0TE/hFxE7AS+JOIOIBsaooL0+qf\nBZ6PiL3SNgcCIWkycDZwREQcCDwI/I8B2hhsSgEB/C6t/0/AGUO9J0lvA3aKiIeA84EHI2Jfsmke\nfpjWV3pP95HND3RGRBwQEY8BZ5JdSGdfYNYQn6PZkFwwrO2li8S8VdLbJO0LvBARTwOHAT+OzHPA\nPWQXkKokNp/eeTvgJ6mP45tsOrRzKNnFpoiIZcDDafnBaZ1fp/l6PkGaq2cYc9K/D5Fd/bDaTWRz\nJ0FWOG6uaMePUjvuBt4iacIA21e+p4eBH0v6a2BDjraZDaj0kw+a5XQz2Q/sTqQfdrK/5Gu9FsUF\nwLyI+M/pojN3VzxX/Vr9j38RER+vsb2vp383MMD/w4hYLen5dMjpBDZPBnneU+WyjwB/Snao6mxJ\ne0eEC4fVzAnDOsWNwEyyotH/1/h8sv6JUZJ2IPvRfKBqu5eAyr/QJwKr0/2TKpbfy6ZDRNOBvcl+\nlH8DHCrpnem5bSTt0cD3dCYwMSKWVrynv0776iE7tFV9UZyX0/von+J6t4joA/4nsC2wRR+LWR4u\nGNYRImI52YXun+qfzz8ifkZ2OGYxMA/4Qjo0BZv+Ar8bmN7f6Q18HfgHSQ+RTf/ev953gR0kLSNL\nIcuAFyPi92SF5XpJi4FfA1t0Yg/VdAZPPT8hu17JTRXLZgMHpn1dCPztAK9zA/AFSQ8CewA/kvQw\n2eGvSyPipRraZ7aRpzc3y0HSKGBsRLye0sQvgHdHxPoWN82sadyHYZbPNsBdaSiugM+4WFi3ccIw\nM7Nc3IdhZma5uGCYmVkuLhhmZpaLC4aZmeXigmFmZrm4YJiZWS7/H6UcX0Ap0RjzAAAAAElFTkSu\nQmCC\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7ffaef6c6f90>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "diode voltage at operating point = 0.68 volts\n", + "current at opeating point = 0.93 milli-amperes\n" + ] + } + ], + "source": [ + "from numpy import arange\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "V_ss=10#\n", + "R=10*10**3#\n", + "V_D=arange(0,2+0.001,0.001)\n", + "I_D=[]\n", + "for x in V_D:\n", + " I_D.append(10**3*(V_ss-x)/R)\n", + "plot(V_D,I_D) \n", + "title('load line plot')\n", + "xlabel('voltage in volts')\n", + "ylabel('current in milli-amperes') #milli-10**-3\n", + "show()\n", + "\n", + "#we use the equation V_ss=R*i_D+V_D\n", + "#at point C\n", + "i_D=V_ss/R# #as V_D=0\n", + "#now if we take i_D=0, we get V_D=10 which plots at a point far off the page\n", + "#so we take the value on the right-hand edge of V-axis i.e.,V_D=2\n", + "#at point D\n", + "V_D=2#\n", + "i_D=(V_ss-V_D)/R#\n", + "#from the intersection of load line with characteristic\n", + "V_DQ=0.68#\n", + "I_DQ=0.93*10**-3#\n", + "#diode characteristic cannot be plotted\n", + "print 'diode voltage at operating point = %0.2f volts'%V_DQ\n", + "print 'current at opeating point = %0.2f milli-amperes'%(I_DQ*10**3) #milli-10**-3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 448 Ex: 10.3" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "output voltage for Vss=15 = 10.00 volts\n", + "output voltage for Vss=20 = 10.50 volts\n" + ] + } + ], + "source": [ + "from numpy import arange\n", + "R=1*10**3#\n", + "#diode characteristic cannot be plotted\n", + "#case a)V_ss=15\n", + "V_ss=15#\n", + "V_D=arange(-15,0+0.001,0.001)\n", + "#from the intersection of load line and diode characteristic\n", + "V_o=10#\n", + "print 'output voltage for Vss=15 = %0.2f volts'%V_o\n", + "#case b)V_ss=20\n", + "V_ss=20#\n", + "V_D=arange(-20,0+0.001,0.001)\n", + "#from the intersection of load line and diode characteristic\n", + "V_o=10.5#\n", + "print 'output voltage for Vss=20 = %0.2f volts'%V_o" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 449 Ex: 10.4" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "load voltage = 10.00 volts\n", + "source current = 0.01 amperes\n" + ] + } + ], + "source": [ + "V_ss=24#\n", + "R=1.2*10**3#\n", + "R_L=6*10**3#\n", + "#by grouping linear elements together on left side of diode\n", + "V_T=V_ss*R_L/(R+R_L)# #thevenin voltage\n", + "#zeroing sources \n", + "R_T=1/((1/R)+(1/R_L))# #thevenin resistance\n", + "#load-line equation is V_T+R_T*i_D+V_D=0\n", + "#locating the operating point\n", + "V_D=-10#\n", + "V_L=-V_D# #load voltage\n", + "I_s=(V_ss-V_L)/R# #source current\n", + "#diode characteristic cannot be plotted\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'load voltage = %0.2f volts'%V_L\n", + "print 'source current = %0.2f amperes'%I_s #milli-10**-3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 451 Ex: 10.5" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "correct assumption is D2 off and D1 on\n" + ] + } + ], + "source": [ + "V_1=10#\n", + "V_2=3#\n", + "R_1=4*10**3#\n", + "R_2=6*10**3#\n", + "#1)analysis by assuming D1 off and D2 on\n", + "I_D_2=V_2/R_2# #ohm's law\n", + "#applying KVL\n", + "V_D_1=7# #contradiction to 'D1 is off'\n", + "#this assumption is not correct\n", + "\n", + "#2)analysis by assuming D1 on and D2 off\n", + "I_D_1=V_1/R_1# #ohm's law\n", + "#applying KVL\n", + "V_D_2=-V_1+V_2+I_D_1*R_1#\n", + "#we get V_D_2 which is consistent\n", + "print 'correct assumption is D2 off and D1 on'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 453 Ex: 10.7" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "current in the circuit = 80.00 milli-amperes\n" + ] + } + ], + "source": [ + "V_1=3#\n", + "R_1=20#\n", + "#As given voltage source results in forward bias, we assume operating point is on line segment A\n", + "#replacing diode with the equivalent circuit\n", + "V_2=0.6#\n", + "R_2=10#\n", + "i_D=(V_1-V_2)/(R_1+R_2)# #KVL around the circuit\n", + "print 'current in the circuit = %0.2f milli-amperes'%(i_D*10**3) #milli-10**-3" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter11.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter11.ipynb new file mode 100644 index 00000000..08c4dfb8 --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter11.ipynb @@ -0,0 +1,596 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 11 : Amplifiers Specifications and eternal characterstics" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 516 Ex: 11.1" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\n", + "Voltage gain Av = 8000.00 \n", + "Voltage gain Avs = 5333.33 \n", + "Current gain = 2.00e+09 \n", + "Power gain = 1.60e+13 \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_s=1*10**-3#\n", + "R_s=1*10**6#\n", + "A_voc=10**4# #open-circuit voltage gain\n", + "R_i=2*10**6# #input resistance\n", + "R_o=2# #output resistance\n", + "R_L=8# #load resistance\n", + "V_i=V_s*(R_i/(R_i+R_s))# #input voltage(voltage-divider principle)\n", + "V_vcs=A_voc*V_i# #voltage controlled source voltage\n", + "V_o=V_vcs*(R_L/(R_L+R_o))# #output voltage(voltage-divider principle)\n", + "A_v=V_o/V_i#\n", + "A_vs=V_o/V_s#\n", + "A_i=A_v*R_i/R_L# #current gain\n", + "G=A_v*A_i# #power gain\n", + "print \" All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\"\n", + "print 'Voltage gain Av = %0.2f '%A_v\n", + "print 'Voltage gain Avs = %0.2f '%A_vs\n", + "print 'Current gain = %0.2e '%A_i\n", + "print 'Power gain = %0.2e '%G" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 517 Ex: 11.2" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current gain of first stage = 100000.00\n", + "Current gain of second stage = 750.00 \n", + "Voltage gain of first stage = 150.00 \n", + "Voltage gain of second stage = 50.00 \n", + "Power gain of first stage = 1.50e+07 \n", + "Power gain of second stage = 37500.00 \n", + "Overall power gain = 5.62e+11 \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "R_i_1=10**6#\n", + "R_o_1=500#\n", + "R_i_2=1500#\n", + "R_o_2=100#\n", + "R_L=100#\n", + "A_voc_1=200#\n", + "A_voc_2=100#\n", + "#voltage gain of the first stage...A_v_1=(V_o_1/V_i_1)=(V_i_2/V_i_2)=A_voc_1(R_i_2/(R_i_2+R_o_1))\n", + "A_v_1=A_voc_1*(R_i_2/(R_i_2+R_o_1))#\n", + "A_v_2=A_voc_2*(R_L/(R_L+R_o_2))#\n", + "A_i_1=A_v_1*R_i_1/R_i_2#\n", + "A_i_2=A_v_2*R_i_2/R_L#\n", + "A_i=A_i_1*A_i_2#\n", + "G_1=A_v_1*A_i_1#\n", + "G_2=A_v_2*A_i_2#\n", + "G=G_1*G_2#\n", + "print 'Current gain of first stage = %0.2f'%A_i_1\n", + "print 'Current gain of second stage = %0.2f '%A_i_2\n", + "print 'Voltage gain of first stage = %0.2f '%A_v_1\n", + "print 'Voltage gain of second stage = %0.2f '%A_v_2\n", + "print 'Power gain of first stage = %0.2e '%G_1\n", + "print 'Power gain of second stage = %0.2f '%G_2\n", + "print 'Overall power gain = %0.2e '%G" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 518 Ex: 11.3" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hence the simplified model for the cascade is with an:\n", + "Input resistance = 1.00e+06 ohms\n", + "Input resistance = 100.00 ohms\n", + "Overall open-circuit voltage gain = 15000.00\n" + ] + } + ], + "source": [ + "R_i_1=10**6#\n", + "R_o_1=500#\n", + "R_i_2=1500#\n", + "R_o_2=100#\n", + "R_L=100#\n", + "A_voc_1=200#\n", + "A_voc_2=100#\n", + "A_v_1=A_voc_1*(R_i_2/(R_i_2+R_o_1))# #Voltage gain of first stage\n", + "A_v_2=A_voc_2# #Voltage gain of second stage with open-circuit load\n", + "A_voc=A_v_1*A_v_2# #overall open-circuit voltage gain\n", + "R_i=R_i_1# #input resistance of cascading amplifier\n", + "R_o=R_o_2# #output resistance\n", + "print 'Hence the simplified model for the cascade is with an:'\n", + "print 'Input resistance = %0.2e ohms'%R_i\n", + "print 'Input resistance = %0.2f ohms'%R_o\n", + "print 'Overall open-circuit voltage gain = %0.2f'%A_voc" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 519 Ex: 11.4" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "from __future__ import division\n", + "V_AA=15#\n", + "V_BB=15#\n", + "V_i=1*10**-3#\n", + "I_A=1#\n", + "I_B=0.5#\n", + "R_L=8#\n", + "R_o=2#\n", + "R_i=100*10**3#\n", + "A_voc=10**4#\n", + "P_i=V_i**2/R_i#\n", + "V_o=A_voc*V_i*(R_L/(R_L+R_o))#\n", + "P_o=V_o**2/R_L#\n", + "P_s=V_AA*I_A+V_BB*I_B#\n", + "P_d=P_s+P_i-P_o#\n", + "n=P_o*100/P_s#\n", + "printf(\" All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\")\n", + "print P_i*10**12,'Input power in picowatts'\n", + "print P_o,'Output power in watts'\n", + "print P_s,'Supply power in watts'\n", + "print P_d,'Dissipated power in watts'\n", + "print n,'Efficiency of the amplifier'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 520 Ex: 11.5" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The resulting current-amplifier is with an:\n", + "input resitance = 1000.00 ohms\n", + "output resistance = 100.00 ohms\n", + "and a short-cut current gain of: 1000.00\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "R_i=1*10**3#\n", + "R_o=100#\n", + "A_voc=100#\n", + "#I_i=V_i/R_i, I_osc=A_voc*V_i/R_o from these two we get A_isc=(i_osc/I_i)=(A_voc(R_i/R_o))\n", + "A_isc=A_voc*(R_i/R_o)#\n", + "print 'The resulting current-amplifier is with an:'\n", + "\n", + "print 'input resitance = %0.2f ohms'%R_i\n", + "print 'output resistance = %0.2f ohms'%R_o\n", + "print 'and a short-cut current gain of: %0.2f'%A_isc" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 521 Ex: 11.6" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The resulting transconductance model is with an:\n", + "input resitance = 1000.00 ohms\n", + "output resistance = 100.00 ohms\n", + "and transconductance = 1.00 siemens\n" + ] + } + ], + "source": [ + "from __future__ import division \n", + "R_i=1*10**3#\n", + "R_o=100#\n", + "A_voc=100#\n", + "#i_osc=A_voc*V_i/R_o and G_msc=i_osc/V_i gives G_msc=A_voc/R_o\n", + "G_msc=A_voc/R_o#\n", + "print 'The resulting transconductance model is with an:'\n", + "print 'input resitance = %0.2f ohms'%R_i\n", + "print 'output resistance = %0.2f ohms'%R_o\n", + "print 'and transconductance = %0.2f siemens'%G_msc" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 522 Ex: 11.7" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The resulting transconductance model is with an:\n", + "input resitance = 1000.00 ohms\n", + "output resistance = 100.00 ohms\n", + "and transresistance = 100000.00 ohms\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "R_i=1*10**3#\n", + "R_o=100#\n", + "A_voc=100#\n", + "#V_ooc=A_voc*V_i and I_i=V_i/R_i gives R_moc=V_ooc/I_i\n", + "R_moc=A_voc*R_i#\n", + "print 'The resulting transconductance model is with an:'\n", + "print 'input resitance = %0.2f ohms'%R_i\n", + "print 'output resistance = %0.2f ohms'%R_o\n", + "print 'and transresistance = %0.2f ohms'%R_moc" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 523 Ex: 11.8" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\n", + "The complex voltage gain is with\n", + "a peak value of : 100.00\n", + "a phase angle = 0.79 degrees\n", + "and the decibel gain is 40.00\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import cos,sin,sqrt,atan,log,pi\n", + "V_i=complex(0.1*cos(-pi/6),0.1*sin(-pi/6))#\n", + "V_o=complex(10*cos(pi/12),10*sin(pi/12))#\n", + "A_v=V_o/V_i#\n", + "A_v_max=sqrt(((A_v.real)**2)+((A_v.imag)**2))\n", + "phi=atan((A_v.imag)/(A_v.real))#\n", + "print \" All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\"\n", + "print 'The complex voltage gain is with'\n", + "print 'a peak value of : %0.2f'%A_v_max\n", + "print 'a phase angle = %0.2f degrees'%phi\n", + "print 'and the decibel gain is %0.2f'%(20*log(A_v_max)/2.30258) #2.30258 is for base 10" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 524 Ex: 11.9" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYQAAAEZCAYAAACXRVJOAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJztnXecVNXZ+L8PvS1NQJCqIE1FlCjWuEoSG2oSY0liIrz5\nRaNGfRON6RHja0lITDWm2YIlgqYo0cRKFBtSVBClKb33hWWBhef3x7nDzu5OuTNzy5m95/v5zGfv\nvTP3nvPMnjnPeco5R1QVh8PhcDiaxV0Bh8PhcNiBUwgOh8PhAJxCcDgcDoeHUwgOh8PhAJxCcDgc\nDoeHUwgOh8PhAJxCsBIRGScir8RdjzARkadF5Etx18NhByIyTUS+Enc9wkJE+olIlYhI3HXJRZNT\nCCKyVETGRFDOBBGZFHY5Xln7ReSwKMoKg0zflaqeo6qRfH/lijcwmCsiO0VkjYj8TkQ6FXD/UhE5\nI8D6BPq8Bqj3ahIDoobflaouV9UKtXziV5NTCKQ1rCaG1SMLR7CIyA3AncANQEfgBKA/8JyItPT5\nGCXYdhP085oy5fldqWqTegEfAWd4x+OA6cBEYDPwIXBW2menAXcAbwLbgH8AXbz3KoEVDZ69FBgD\nnAXsBvYAVcCcDPW4BHirwbVvAP/0jjsBfwHWe8/9PiBp9X7FO34Z2A/s8Mq6COgMTPXu3Qw8BfRO\nK+dQ777twHPA3cCktPdPAF4DtgBvA6dl+S6/DUxpcO1XwK/S6rnEK+dD4AsZnpHxu/K++6+kPedV\n4C6vTouBk4DxwHJgHfDltGe2Bn4GLAPWAvcAbeJuewG24Y7ed/W5Btfbe//z8d75A8Ctae8faLPA\nJGAfUO0960ZggNeWvgqsAlYDN6TdX9DzMtT7GeCaBtfeAT7tHZ8EvAVsBWYAJ6Z97iXgf4ChQA1Q\n65Wz2Xv/XGAO5ne6HLi5QTlf9trDRuAHeL9V7z0BvuO1q43AY3i/8wwyvA+cm3beAtgAjATaAA95\nz9jiydAjwzNyfffN0tr/rV67rwKeBLoBD3syzgD6pz1zKOa3vAn4ALgolLYXd+MP4cfUUCHsAb7i\nNYqvAavSPjsNWAkMB9oBj+N1nGRWCOnPvhn4S456tMV0lIPSrr0FXOwd/wX4O+ZH3h9YAPxPWr1f\nSbtvP3BY2nlX4DNeA+0ATAb+nvb+68BPvcZ8stfA/uK919tr0Gd555/wzrtlkKEfsBPo4J03x3Qi\nx3v13gYc7r13MDA8y3fR6LvC6wDS5N0LXO79n271/i+/AVoCn/S+y3be53+BUd6dPfmfBG6Pu+0F\n2IbP8r6PZhneewB4xDu+H/hx2nv12mx6e/XOB3ht6WGvfR6JUTBjinlehrp9CZiedj4c03G29Nrs\nFuCLGM/EpZjBTGoAlt4eLk9v/96104AjvOOjMAOBC9LKqcIonJaYAeAe6n6r12MGQId47/8+9R1m\nkOGHwENp5+cC73nHV3ptrY3XTo8BKrI8J9t3n64QFmIGbx2B94BFwBmY39mDwH3eZ9sDK7zvpRlG\nOW0AhgXd9pqiy6ghy1T1XjXf7F+AXiLSw3tPMR3VfFWtxjSGi30GfoQcJqGq7gL+CXweQEQOB4YA\nT4pIc4wF8V1V3amqy4CfY35QeVHVzar6d1WtUdUdwO2YHwwi0g/4GPAjVa1V1VcxjTjFZcDTqvpv\n71nPAzOBczKUsxyYjVE+YBprtarO8M73A0eJSFtVXaeq87NUOed35fGRqj7o/Z8mY368P1bVvar6\nHOYHPsj733wV+KaqbvXkvwPTwTQVugEbVXV/hvfWAgelnRfjlrhFVXep6jyMEvh8ic9L8Q9gpIj0\n9c6/CDyhqnsxHesCVX1YVfer6l8xI93zMzynUR1U9b+q+p53PBf4K16bBz4HPKmqr3ll/Yj6buMr\ngR+o6mrv/VuAz4lIpv7vEeB8EWnjnX8BeNQ73oP57g9XwxxVrcr7rWRGgftV9SNV3Y6xrhaq6ouq\nug+YglE4AGOp+33sV9W3gb9hvAWBkgSFsDZ14HX6YEaVKVakHS/HjCC6FVqIiJzqZRFUichc7/Ij\n1P3YvoAZxdd4z2+JMXHTy+7ts6x2IvIHL3C1Dfgv0MnrLA/BmNk1abespO5H1h+4SES2pF4YK6Jn\nluIayvAwgKruxCi1rwGrRWSqiAzxU/8srEs73uWVsaHBtQ5Ad4w1Nyut/s9QxP/MYjYC3bJ0WL28\n90uhYZs/pJiHiMjv09r8d7zO8V/UtZdL8dqLV8byBo9Y5rdsERktIi+JyHoR2Yrp5FOK8RBMGwcO\nDMY2pd0+APh7WnuZj3FJHdywHFVdgnEbnS8i7YDzML8BMK6g/wB/FZFVIvITEWnhp/5ZSG/zNRhr\nLf081U/1B0Y3+M1+IVP9SyUJCiEf/Roc78X84HZiOh4AvFF997TP1gtcq+orarIIKlT1KO/y80B3\nETka8+NINayNXjkDGpS9En/cAAwGjlfVTpiRUmoUvgboKiJt0z7fN62+yzFusS5prwpV/WmWsh4H\nKkWkN/DpNBlQ1WdV9VMYZfIB8Kcsz8g00i2WjRjlMDyt/p1VtWOAZcTN65i4y4XpF0WkA8ad9IJ3\nqV4bpbFSz5Zc0bDNryrmear6tbQ2f6d3+VHg8yJyIiau85J3fRWmY0unf1rZ+er9CMYC6aOqnTFu\nn9QgZzXQJ/VBr+2nW1HLMS7S9DbfTlXXZCjngAzABRh30YeevLWq+mNVPQLjnhqLiV1kotDEllyf\nXw78N8Nv9poCy8hL0hWCAJeJyDBvNPBjTBBVMf69NiJyjpfV8QNMMDPFWmBALveSZ55OwQRAu2CC\nQngm4WTgNhHpICL9MQHnh7I8ah0wMO28A6ZT3CYiXTE++lSZyzAuoAki0tL7YY5Nu/ch4DwR+ZSI\nNBeRNiKS6vAzybAB4+98APhQVRcAiEgPEblARNpjlNtOTCAtW/1zfld+8dwofwJ+KSLdvbr0FpFP\nlfpsW1DVbRi3xm9E5Ezv/zgA02ZWYEaqYBICzhGRLiLSE/jfBo9q2G5S/EBE2orIEZj4zWMlPi+d\npzEd/S0Yt0769cEi8nkRaSEil2ACpVMzPGMd0KdBNlUHYIuq7hGR4zEj5BRPYNr0iSLSCphAfbfT\n74HbPXcqItJdRDK5qlL8FTgTY/0eGAB5v5OjvMFhFabd52rz+b4ryXLckH9hvrvLvLbQUkSOE5Gh\neZ5fME1dISiNNa82OJ6E6ezWAK2A6+DAj/Jq4M+YkfsO6pvaU7y/m0RkZo46PILJTJrSwCd8LaYT\n/RB4BWNa35+l3hOABz1z8XPALzFBwY2YYNkzDT7/ReBEjNl8K+YHv8eTayVm5PM9jIm6HGNx5GoL\nKRkeSbvWDKPEVnnlnApcleX+fN9Vvv9TQ76NyRh5w3OZPYexmJoMqjoR8z/6GSZ4/wbGxTLGG2iA\nabvvYDJq/o3pyNK/tzswnf8WEflm2vX/Yr6/54GJXhyplOel13sPxr9dr72o6mbMwOQGTLu9ERjr\nXW/IC5gg61oRSblRrgZ+LCLbMbG+lBLDiy1c69V3NaazXo+xssBkxj0JPOvd/zomMSIjqroW87s6\nMb0cjMU0BfP/mI8ZKGWbS5Ppu8rXF2V833PFfQrjZViF6avuwPRXgZJKc4wNT9vOBFaq6nkRl/0S\nxn1yX5TlRo2IPAbMV9Vb4q5LU8ILPP4XYzm2wqQUf9ez2h7DjJSXYjLLtsZWUQ/PyvgQaJElYN0k\n8FxrWzAZfsvyfd5Rhw0WwvUYbRuXZiq/ySN5EJGPichAEWkmImdjMjn+EXe9mhpe4P50VR0JjABO\nF5FTMDnvz6nqYMxo9zsxVjMRiMh5XrJFe4xV9a5TBoUTq0IQkT6YdMc/E1/HHK+JFA49MXndVZic\n/a+p6jvxVqlpkpa51gqTP74Fo4Af9K4/iAnG20JTbO9gvvNV3msgTSsNOTJidRmJyBRMDn1HzMzH\nSF1GDkepeKmhszGd0D2qepOIbFHVLt77gkkD7hJnPR0OP8RmIYjIWGC9qs6hCbptHMnAmyg0EpP2\n+HEROb3B+5mChQ6HlZQyqaJUTsJM/jgHMxW8o4j8RVUP5PWKiPshOUJFVQMZjKjqNhH5FzAKWCci\nPVV1rYj0ov6EI8C1bUf4FNO2Y7MQVPV7qtpXVQ/F+PteTFcGaZ+L5XXzzTcnqtwkylwqItJNRDp7\nx20xay7NwaQ4Xu597HKyBPST9F0nsX3FWXaxxGkhNMSNmBzlRi/M/JBmmMHVJFV9QUTmAJPFbPiy\nFLg4xjo6HL6xQiGo6n8x+dwOR9mgZpG1YzNc34xZRdbhKCtsmIdgJZWVlYkqN86y45Q5abj2lZyy\niyH2mcq5EBG1uX6O8kZE0ICCykWU7dq2IzSKbdvOQnA4HA4H4BSCw+FwODzKWiHcdRf88Idx18If\n//oXXHYZ1NaW9pxvfxv+8Idg6hQ2994L3/hG3LVwOBx+KdsYwo4dcNBBsGcPrF0LBwe+d1CwfOxj\nMGsWPPUUjB2b//OZWLQIBg+GDh1g0yZoFfjit8Gxfz906wZbtsDcuXDkkXHXqDEuhuBoqiQuhjBt\nGpxyCpx/PrzySty1yc22bfDBBzBhArz4YvHPef55uPxyOPRQePfdwKoXCvPnQ9eucMUV8NJL+T/v\ncDjip2wVwjvvwKhRcNxx8NZbcdcmN7NmwTHHQGUlvP568c95/XWjBI87Dmbm2pLHAt58E046ybxK\nkdnhcERH2SqEd9+FESNg6FBYuDDu2uRm0SIYMgSOOALefx+K9RR88AEMH16eMjscDvspW4Uwd65R\nCAMHwpIlcdcmN4sWwaBBxqfeogWsW1f4M1SNQhg6tDxkXrzYyDxkiFFe+5vs/lwOR9OhLBWCKnz0\nkekYU52jzfG5VOcIpoNcsKDwZ6xZA23bGr/8oEHloxAqKqBzZ1ixIv89SeXll02ywKmnmgSJcub3\nv4feveGSS0zsLBv33QcDBsB558HOnZFVLxRuvhl69YJrroHdu/N/3mbKUiFs2ADt25tXx47QujVs\n3Bh3rbKzbJkJBINRYB9+WPgzPvwQDjvMHA8YAEuXBlW7cAhC5iTw7LPwuc+ZFOoTT4Srr467RsUz\nd67pHKdONdbwaaeZ32pD7r4bfvxjePxxM2D40Y+ir2tQTJ0Kjz5qEj7WroVzzjEZkOVKWSqEZcug\nf/+68169zAjaVtauhZ49zXHfvsWNlleuNPeC+RGpQlVVcHUMkpoaqK6GLt4eYcXK3NT55z/N3JS/\n/92kIt9yC0yfblyM5cjPfgY33GASKH77Wzj3XDjjDFifthvEr38NEyeazLOPfcwownvvtbct52Pi\nRLj1VhMrmzzZ9EtnnpnbOrKZslQIy5dDv35157162Wtq79tnrJcePcx5KQqhTx9zLGK3zOvWmXkh\n4mVB9+1r6u+oz1VXwdNPw8knm/O2bY2r5fHH461XMezZY+bYXHaZOReB//s/uPBC+PjH4YEH4Ktf\nNQph2rQ667FnT+Mq++c/46p58axda5JbPvtZc968Ofz5z3DssUYRTp5cfu6wslQIy5Y1Vgi2Wggb\nNxofesuW5jwIhQDmh2SrzOkWETgLIRszZphRcjrnnWfcEOXGK6+YOMghh9RdEzFzb269FZ55xgwS\n3nrLuDzTGTsWnnsuytoGw9NPwyc/WffbBmjWzCi9r30NHnnEWMrlhBX7IRTK8uX1XUY9e9o7Ws7U\nORYzWl650uT0p7DZQsgk8zPPxFcfW0lX8ClOPRXeftu43dq0ib5OxTJ9uplnk4mLLjKvbJx+Otx2\nm3GDShntrv7SS0YhNETEWENf/Wr0dSqVsrQQVqyo/2Oy2UJYty6Y0bKzEJJB27YmE23OnLhrUhhv\nvgknnFDcvYcfbhTgqlXB1ilsZs6E44+PuxbBUpYKYf36+msXlZOF0Lmz8bcW6lvMpBDKReZDDrFX\nednI6NGmgy0XVE19R48u7n4RE4h+++1g6xUm27cbT8URR8Rdk2ApS4WwcaNJa0tx0EGweXN89clF\nw85RxCizQian1dYaJdirV921bt3KR+bUInelrvSaFI45xizNUi6sXGn86Onts1BGjiwvhTBnDhx9\ntJlo2pSITSGISBsReVNE3haR+SJyh997N2yA7t3rzm1WCBs21FdeYDKOClEIDQPTYCaolYvMzZub\nFFSb54rYxLBh5bXcxwcfmDqXQrkphPffb3rWAcSoEFS1BjhdVUcCI4DTReSUfPft2wdbtxolkKJr\nV7MctI1s2VKXj5/i4IPr52bno6EChKYvc5JJKQSbZ9+nk1pSpRTKYX2udBYuNFlVTY1YXUaqmkrK\nagU0B/KOeTdtMqPl5s3rrtk8Ws7WORZiIWRTCE1Z5iTTrZvZ66Jc4i5BKITUcizlsubVggUm+N/U\niFUhiEgzEXkbWAe8pKrz892TqXPs2NEEaffuDaeepeAUgsEphMIYNsx0tOVAEAqhosK8ykUJOgsh\nBFR1v+cy6gN8XEQq892zcWPjzrFZM2M1bN0aSjVLIiiFkJrpnKLcFEKhcZOkc9hh9q9XlWLhwmBG\ny4MGmUURbWfPHpNGnVpbrClhRYxcVbeJyL+AjwHT0t+bMGHCgePKyko2bqxsFKSFug6yobKIm2wK\noZBd3jJZCB06mIa5e7dZ3M8W9u0z69J06lT/ug0WwrRp05g2bVq8lfBJOSxgCMYqX7cu8yS7Qjn8\ncLOO02mnlf6sMFm61KzoavMWtsUSm0IQkW5ArapuFZG2wCeBWxp+Ll0hANxzT+ZO39YRcxAB1vXr\nG+9JLGJk3rKlfopn3GzbZkz/9BgPGJnjdoFUVlZSmTad9pZbGjU3axgwoLTtVqNi1Srzvw0i/bIc\n9vkAYx2kL53TlIjTZdQLeNGLIbwJPKWqL+S7KdNoGexUCPv2maVwG46WC3WflJPMmRQgOJdRofTv\nb9bssp2GC02WQrksgrhiRd3Kw02N2CwEVZ0LHFvofRs21G02k46NaZhbt5qAd7MGajeIoDLYK3Mm\nhWCDy6icKBeXUZCj5T59ykchBOEis5Gym6mcrXPs3Nm+NcizjZa7dDGWg9+sqKYgc48emTdLKWdE\npK+IvCQi74nIPBG5zrveVUSeE5GFIvKsiHQu9Nl9+piMGxsz59IJ2kIohzWvmrKFUHYKIVOWEZiR\n+Pbt0dcnF9k6x2bNzMQ6vzN3M2UZQXnJ3L27kaNcJlv5ZC/wDVU9AjgBuEZEhgHfAZ5T1cHAC955\nQbRsaf7ntq5XlSJIhdCnj4lJ2N5GnEKwiExLQUB5dY5gOkg/geVMM7NTlJPMbduawGO57oyVCVVd\nq6pve8c7gPeB3sD5wIPexx4EPl3M83v1gtWrg6hpeASpENq1My/blzhxCsEisrlPyqlzBP8ulE2b\nTFC6YdYOGJnLxWUETdNtlEJEBgDHYBIkDlbVVMRkHXBwlttyYvOy7imWLw+2cyyHOIJTCJagmt1l\n1KmTfQph27bGGUYp/FoI2RQg2KkEg5C53BCRDsATwPWqWs8GUlUFinKClMOy4WvW1N8lrVT69LE7\njrB9u1m1N9ugp9yxYmKaX7ZtM7tIZZqIZeNouarK5ORnwu9oOZdC6NTJvsydqqrs8yKaooUgIi0x\nymCSqv7Du7xORHqq6loR6QVkVIMNJ11WNthyzHaX0d695jeXyZ1ZLLYrwZQCtG1nt6AmXZaVQii3\n0XIuhVCIhZApoAxNV+ZyQUQEuBeYr6q/THvrSeBy4Cfe339kuL3RpMuG9Opl9l22lfXrTTwvkzuz\nWGxPT163rv7mXLYQ1KTLsnIZZXMXQfl1jkFYCE1V5jLiZOAyzNLtc7zXWcCdwCdFZCFwhndeMLaP\nlsPoHG1XCA13a2xqNBkLwcYYQlWVWZ8lE4VYCJmyqqD83GTdu9sfMCwEVZ1O9kHVJ0p9vu0uo7AU\nwn//G+wzg2TduuwWe1OgrCyEfJ2jjQqh1NFyEq0ih8H2LKMkWgi2uoyCouwUQrbOsaLCdI42TWrJ\nN1r2qxCaihL0K7PD0KOH+f/v2xd3TTKTRIWwfr2zEKwhl0Jo3drMAK6pibZOucg3WvbjMsqlEGx1\nk5Uqs8PQooX5H2/ZEndNMrN2bfAr7dquEJyFYBG5FALY10Hm6hw7d4bqarOnQS7yWQjlFkNwFkJh\n2PydhdE5du5sBnU2DezSaepB5bJSCLn86WCfCyVX5yhiOvp8P/ZcCqFtW5MLnk+pRIWqP4Vgk1vP\ndvy0kbgIQyGI2L1UugsqW0Q+C6GcFALkH/2lZmZnUwgiRmZb1gfavdu47bLtJJWaVGjT/8h2kmYh\ngN1uI+cysohcWUZQF1i2hXwKIZ9PvbradPrt2mX/jE0y55MXXByhULp3t3ext6QphOpqY5F37Bh3\nTcKj7BRCLguhQwfYuTO6+uRi3z7YtQvat8/+mXyjv1zWQQqbZPajEGwe8dqIrS6jfftMsDvIZStS\ndOtmpxJMZRjZtmxFkJSNQqiuNo2wQ4fsn+nQwWw8YwM7dhhl0HC3tHTyTU7zqxBskdmvQnAWgn9s\nVaCpvbOD2Eu5IQcdZN9OgND0U06hjBRCyjrIpZ3bty+v0XK+iVp+FEJTk9lRH1tHy5s2hWMdgL0K\nYfPm8GS2hVgVQrYtCDORL8MImt5o2VkIDlsthCQqhDBltoW4LYRsWxA2Il/8AMqvcwzCQii3GIKz\nEArDZoXQtWs4z7ZVIWzeHJ7MtlCQQhCR5iISWIw9yxaEGbfbyJdhBOXnPgkiqNy+fXkpQVs7OFux\nNagcpvvEVoXgLARARB4VkY4i0h6YC7wvIjcFXZEGWxA2oqlaCElzGbm008JIpZ3aNpkviS6jJFgI\nfnIEhqvqdhH5IvAM8B1gNvDToCrhbUH4OGYLwnrdW2oTkeefh6FDK4HKrM9paqPlphhUjtNCCGpX\nqShp185sQLNjR/7vNkqSqBA2bYLjj4+7FuHix2XUwtsm8NPAU6q6lyL3iM1E2haED6VtQXiACRMm\nMGHCBIYMmcAJJ1TmfFa5+dM7dTJzFXbvzvx+uVkI27fbaSFMnjyZ7du3U1lZSfPmzXnnnXc4//zz\no61ECXTtakanNhGFQrDNKkqCheBHIfwBWAp0AF72XDuBLKmWYwvCRvjJAbapc9yxI/ecCTAptLlG\nzJs2lZdC8CNzKo0yyh/7rbfeSseOHZk+fTovvPACX/nKV7jqqquiq0CJdO1q34qnYQaV27Y18xts\nGdylcDEEw1RV7a2qZ6vqfmAZ8JWAys+2BWEj/MQQbHIZ7dyZv3OE3CPmcnMZVVfnl7l1a+MG2bo1\nmjoBNPc2/Z06dSpf/epXGTt2LHtsWRHQB1262GchhJ2Tb6PbyFkIhsfTT1RVgUeDKFxVp6tqM1Ud\nqarHeK9/Z/qsXwvBps4x1xpEKbJZCKmF7fL96GyyEHbuLE3msOjduzdXXHEFjz32GOeeey41NTXs\n378/ugqUiK0WQtIUQqItBBEZJiIXAp1F5LMicqH3dxzQJrIaepSjhZBrHaMU2SyE7dvNaLp169z3\n22YhlCJzWEyZMoUzzzyTZ599ls6dO7NlyxYmTpwYXQVKxEYLIWkKYd8+Exfs1CnumoRLriyjIcB5\nQCfvb4oq4KthVqohu3aZVQbzBSxtGi2XaiH4XTfFJplttRCuvPJKJk2adOC8V69e3HRT4JnToeEs\nhPjZutUoA8/72GTJqhC8jJ9/iMiJqvp6hHVqhJ91jMAul5FfCyFb57hunb/tCW1SCH4thKgVwrx5\n8+qd19bWMmvWrOgqUCJdutilEHbvNpsy+YmRFYttCiHMILpNZFUIIvKbtOMvNHhbVTXrukNB43e0\nbJPLyK+F0KMHLFnS+Pratf7WmrfJZeTXQojKZXT77bdzxx13sGvXLirSzMuWLVtyxRVX8P7774df\niQDo0gWWLYu7FnWkgqthLgNtm0JIwsJ2kDuoPAuY6b1mZXhFxoYN/hRCq1amkdqQQOIshOxEZSF8\n73vfo6qqihtvvJGqqqoDr82bN3PnnXeGX4GAsM1lFEVwtXPnaDPR8pF4C0FVH0g/F5EKc1kj737W\nr88fUE6RshLi/ucVYiFkGi03dQvhzYwLlATL7NmzAbjooosOHJcjtgWVo1AIXbrAe++FW0YhJMVC\nyLt0hYgcBfwFOMg73wBcrqrzct4YIH4tBKgbMcetEIKwEEaNyn9/SgGqxr+Tk20Wwje/+U0k7i8l\nAGyzELZsMR12mDgLIR78rGX0R+CbqvoSgIhUetdOCrFe9Vizxp/7BOwJLEdlIbRsaV41NWaGZ1zs\n32+ywfzUIaoYQr51i8pFWdhmIWzdGo1CsEkJJmFSGvhTCO1SygBAVad5K59GxurV/kbLYE9g2a+F\nUFFhYh4NO1O/MQSocxvFqRBqaqBNm9xbhqaIOstoz5493HPPPbz88ssAVFZW8rWvfS26CpSIbRbC\n1q2mww6TLl3sshC2bIHDD4+7FuHjRyF8JCI/BCYBAnwR+DDUWjVg1So4JOMuCY2xJcjq10IQqds0\npl+/uuvr1vmzEKBO5nzLXISJ3/gB1K1ntH+/PwVSKldddRW1tbVcc801qCqTJk0qq7WMOnUy/999\n++zIg0/l5IeJbRbCtm3hK0Eb8KMQ/ge4Bfibd/6Kdy0yVq2C3r39fdYGl5Gqf4UAdSPmlEJQLVwh\nxC2z3/gBmGywDh1MxxKFGf7WW2/x7rvvHjgfM2YMI0aMKPm5InIfcC6wXlWP8q51BR4D+mMWhbxY\nVUsa6zZrBh07mu/LhsDmtm31By9hYFsMIQolaAN+xmcDVPVaVT3We12vqpHpblXjMvJrIdjgMqqp\nMZ2e39FcQ5/6pk1GmfhVKDbIXIiFANEuX9GiRQsWL1584HzJkiW0aOFnLJSX+4GGizF+B3hOVQcD\nL3jnJWPT5LQoXEYpq8iWJaechVDHXSLSE5gCPBZldhGYYE7r1v5Hn+3amdFqnPiNH6Ro6FNfvhz6\n9vV/vw0yF2IhQJ3MQ4eGV6cUEydO5IwzzuDQQw8FYOnSpdx///2MGTOmpOeq6ivecvDpnA+c5h0/\nCEwjAKUTsqgtAAAgAElEQVRg054IUSiEZs2MFbltW/gBbD8kxULIqxBUtVJEegEXA3/w9lSerKq3\nhl47CnMXgT2dY6Gj5XSFsGJFYSa5DTIXYyFEFVgeM2YMCxcuZMGCBQAMGTKENm1CW5/xYFVd5x2v\nA3w6/nKTNAsB6txGNiiEbducQjiAqq4BfiUiLwLfBn4EOIWQhUIthEMOMUogxfLl5acQCrUQGsoc\nJiNGjODSSy/lkksuYeDAgdEUipnFKSJZtwJKbQ8LJvOpsrIy67NssxCi6BxtyjSy3WUU1Pawfiam\nDcdYB58DNmECZt8suWSffPghHHaY/8/b0jkWMloeOBDS/5eFKoT27eOXuVALYeDAzGs4hcGTTz7J\nY489xsUXX4yIcOmll3LxxReHVdw6Eempqms9yzprpCRdIeSjUyfTKdlAVJ2jLZlG+/eb5eg7doy7\nJtlpOKC45ZZbinqOn6DyvcBW4FOqepqq/k5VI1vNfvFiGDTI/+dt6RwLGS0PGlS/c1y2rOlbCA1l\nDpMBAwbw7W9/m1mzZvHoo4/y7rvvHognhMCTwOXe8eVAo33Ci8EmhRCVy8gWC2HHDtO2bUj5DZu8\nCkFVT1TVX6rq6igq1JDFi81o0i+2dI6FjJYPOww++sjkmQMsWABDhvi/3waZC7UQBg0y/9uoWLp0\nKT/5yU+49NJL+eCDD/jpT39a8jNF5FHgNWCIiKwQkfHAncAnRWQhcIZ3XjKdO9uhEKIcLduSepqU\ngDL4jCHEyZIlhVkItnSOhYyW27UzPuJUvGTRIhg8uLD7y2keAsChhxpLKIrJVqNHj2bPnj1cfPHF\nTJkyhcM8H+SNN95Y0nNV9fNZ3vpESQ/OQKdOsHJl0E8tnB07THsLJms3N7a4jGyPHwRJrAoh08Se\nhixdWtiUcRsUQqEWAhgF8P77UFtrUjILVShxjx4LtRDatDFLcyxZUpjyK4YHH3yQoVHkt4aILRZC\nlKNlW1xGSbIQIlg4ICeZJvbUY/Bg03n4xYbRcqEWAsDxx8OMGTB7NhQ6idYWJViszGFT7soATIdk\nQ+cY5WjZFpdRUlJOwYdCEJEhIvInEXlORF7yXi8GUbiqvgLkNAqPO66wZ9rSORZqIYweDa+/DtOn\nw8knF3avDTIXaiFAncyO/NgSVI4qoAzOZRQHflxGU4B7gD8DXtiTrLnVQTN2bGGft6VzLHS0fMYZ\ncPnl8Mor8Oqrhd1rg8zFWAjnnAOnnw433QT9+4dTr6aCTS6jqDpH5zKKHj8KYa+q3hN6TbIwa9YE\n5swxx/km74A9nWPaFr6+6NwZbrvNxEwKdRnZkmpbqIUwbBh8+cvwzDMQ9mrUr776Kk8//TTvedtw\nlcteCClscRlFbSHYILOzEOrzlIhcg1ntdHfqoqpGMm/yxz+eUNDnbVAIO3f638sgneuuK648G2Qu\nxkIACCD7My+XXXYZH374ISNHjqRvIYtEWYRNLqOoRsu2uIxsWWU2CvwohHEYF1HDHL3QZvaUgg2j\n5WJiCKVgg0IoxkKIilmzZjF//vxGVsFvf/vbmGpUOBUV5n8c954IUY6WbXEZbdtW2FyocsbPxLQB\nqnpow1cQhadN7BmcNrGnJGzpHIsZLReLDZlVxVoIUXDkkUeyZs2auKtREqnVP7dvj7ceSQ0qJz6G\nICJjVPUFEbmQDEFkVf1bhtsKIsfEnqKxQSE4C8EuNmzYwPDhwzn++ONp3bo1UH4xBKhzG8W5+ufW\nrdEsWQ6mPe3da7aYbdUqmjIz4YLKho9jNvg4j8xZRSUrhDBo1cpM7qqtjWY2ZSbisBDiVgg2WwjZ\nFpF76qmnoq1IidiQaRSlhSBSpwS7d4+mzEy4oDKgqjd7f8dFVpsAEKnrIONandBZCHaRLzOtXLAh\n0yjq0XJKCcapEJJkIcQ9UzkU4u4go7YQbAmk22YhnOzN8OvQoQMVFRX1Xh1tXss4CzZYCFGPlm1I\nPXUWQpkTt0KI2kJo0wZ27zYrUTaLQcWr2mkhvOrN8NuRZcPpcosj2JB6GqXLCOxQCM5CKHPiVghR\nWwgi0LYt7NoVXZnp7N1rFFHLlvGUnxRscRlFqRDilnnvXvOybbATFn7WMmovIj8UkT9554eLSIEL\nSkRL3AohagsB4k09jUPeJBK3y0g1vhhCXKRSTsvMmCwaPxbC/cAe4CTvfDVwW2g1CoC4fepRWwgQ\nrxKMQ94kEvdoubraWIFRpoDG7TJKkrsI/CmEgar6E4xSQFVjngKVnzg7x717zUgqavdJnDKXg4Ww\ndOlSnn/+eQCqq6vZHvcMryKIO4YQR3A1boWQpIAy+FMIu0WkbepERAaStqaRjdgwWo7axLRBZlv5\n4x//yEUXXcSVV14JwMqVK/nMZz4Tc60KJ273SdTxA4jfKnIWQmMmAP8G+ojII8CLwLfDrFSpJHG0\nnESZ/XL33Xczffr0A6mmgwcPZv369THXqnBs6BzjsBCSZhXFSd60U1V9VkRmAyd4l65T1Y3hVqs0\n4gywxjVajjNuYruF0Lp16wNLVgDU1taWXcopxO8yikshxO0ychZCGiIyCuiHCSavAfqJyEARsXYO\nQxJHy0mU2S+nnXYat912G9XV1Tz33HNcdNFFnHfeeXFXq2DiHi3H4T6JWyE4l1Fj7gbeBP4E/BF4\nA3gcWCgiZ4ZYt6JJoj89iTL75c4776R79+4cddRR/OEPf+Ccc87h//7v/+KuVsHE7TKKY7Rsg8zO\nZVSf1cBXVPU9ABEZDtwK3IRZ4O4/4VWvONq1g6qqeMqO00Jw8xAy07x5c6644gquuOKKuKtSEnG7\njOJQCDZYRUna3tWPQhiSUgYAqjpfRIaq6hIRiWxv5UJo1w7WrYunbGch2MdRRx2FiKBa11w7eT2b\niBykqpviqlshtG1rNsjZvRvSQiKREZdCcBZCdPhRCO+JyD3AXwEBLgbmi0hrYG+YlSuWOAOsLoZg\nH2eddRYtWrTgC1/4AqrKX//6V6qrq1NrHT2AWeLdetKXg+7RI/ryt22DPn2iLbOiwgw44topLmkx\nBL9baF4N/K93/ipmO829wBnhVKs04h4tJ00h2LiwXTrPP/88c+bMOXA+YsQIjjnmmNTpgDjqVCwp\nF0pcCiHqzjF9p7g4NgZyWUYNUNVqVf2Zqn7Ge/3Mu7ZfVWPy1Ocm7tFy0tJObVz6Op19+/bx5ptv\nHjifMWMG+/fvT53WxlKpIokzyBpX5xhnHMG5jBogIoOB24HhQGrGsqrqYWFWrBSSqBDiltlmC+He\ne+9l/PjxB5bBrqio4N5772X06NEAd8RauQKJM7Acp0KISwk6l1Fj7gduBu4CTse4kALx5onIWcAv\nvef92VszqWSSmHETt0Kw2UI47rjjmDdvHlu3bkVEDgSUAVR1chhlhtW24x4tx9E5xm0VOQuhPm1V\n9XkREVVdCkzwZi7/sJSCRaQ58FvgE8Aq4C0ReVJV3y/luRB/59izZ/Tlxi2zzRYCwNSpU5k/fz41\nNTWhlxVm246zc4xrtByXhaDqYgiZqPEa+GIR+bqIfBYIYjx4PLBYVZeq6l5MFtMFATw3kZ1jEq0i\nv1x55ZVMnjyZX//616gqkydPZtmyZWEWGVrbTqKFEJfM1dVmqe8kbfzkRyFcD7QDrgM+BlwGXB5A\n2b2BFWnnK71rJZNUheCyjDLz2muv8Ze//IWuXbty880388Ybb7BgwYIwiwytbccVQ9i/H3bsgDi2\noo7LQkiadQD+XEaHqupbQBUmfoCIXIxZwqIUfE1qmzBhwoHjyspKKisr896TxM4xiUrQL23bmlyI\n2tpavvnNb9KuXTvmz58fZpGhte1OneCjj4qtVvFUVZk4URxzAeJyk5VTQHnatGlMmzat5Of4UQjf\nBRoG3jJdK5RVQN+0876YkVQ90n80fok7BdMpBLsYO3YsW7Zs4dZbb+Waa64B4JprrglzPaPQ2nZc\n7pM4R8udO8PKRt9e+JRTQLnhgOKWW24p6jlZFYKInA2cA/QWkV9jZikDVBDMDOWZwOEiMgCzXtIl\nwOcDeC5t2kBNjTFzm/lxigVIXJ1jEpWgX2666SbatGnDhRdeyLnnnktNTQ1t2rQJUyGE1rbjGi3H\nrRDmzYu+3HKyEIIiV3e5GpgF1Hh/U68ngZJXOVXVWuDrmMXx5gOPBZGFAUYJpJRC1Lh5CPZx0kkn\nHThu06YNnTt3rnctaMJs20m1EOJSguViIQRFVgtBVd8B3hGRh71MicBR1WeAZ8J4dqqDjLqjci4j\ne1izZg2rV6+murqa2bNno6qICNu3b6c65C8rrLadRAvBxRCiI5fLaG7accO3VVVHhFWpIEilYXbr\nFm25cXWObduaslWj3c9Z1V6F8J///IcHHniAVatWccMNNxy4XlFRwe23386FF14YY+2KI64so7gt\nhKTJHBe5gsplsQJkNuLKy4+rc2ze3ORM79oVbfm7d5s87TiyT/Ixbtw4xo0bxxNPPFGWnX8mktg5\nOpdRdORyGS1NHYvIwZjJNgrMUFXrdyhv1850jlET52g5JXOU5dtqHQD8/Oc/P7APwl133XXgesp1\nVI507Gg6qqgtwSQqhK1boXcgs0fKBz+L210MTAT+6136rYh8S1WnhFqzEmnfPlkWAtTJfNBB0ZVp\ns0KoqqrK2PGXs0Jo2dIkTOzcaZaFjoo4FUISlWBc+JmH8APguJRVICLdgRcAqxVCHEHWPXvM37im\nuschs80KIV+efzHzAGwgFWSNWiFEvTlOijiVYNJcRn6y9AXYkHa+ibo5CdYSh4UQ96qfcclsq0JI\nsWLFCj7zmc/QvXt3unfvzoUXXsjKOGY6BUQccYS4R8txuI2SmGXkRyH8G/iPiIwTkfHA04SUKhok\nSRwtJ1FmP4wfP57zzz+f1atXs3r1as477zzGjx8fd7WKJo5MoyQqBGchZEBVvwX8ATgaOAr4g6re\nFHbFSiWJo+UkyuyHDRs2MH78eFq2bEnLli0ZN24c69dbnxeRlTjy8uNWCEmUOQ7yKgQRuQF4Q1W/\noarfVNW/R1CvkoljKYe4O8ckyuyHgw46iEmTJrFv3z5qa2t56KGH6Bb1BJUAicNlFLf7JIkyx4Ef\nl1EF8KyITPf2Qzg47EoFQRzzEOLuHOOQeedOu3dLA7jvvvuYPHkyPXv2pFevXkyZMoX7778/7moV\nTRJHy1G7jPbtM7/nioroyrSBvFlGqjoBs0va0cDFwMsislJVx4RduVJo3x62b4+2zLgVgrMQMtO+\nfXueeuqpuKsRGC6oHD7bt5uMpqgXx4ybQsRdD6zFZBl1D6c6weEshGiIW2Y/nHTSSXzqU5/i3nvv\nZcuWLXFXp2SithDi3BwnRdQyx60A48JPDOFqEZmGmXvQDfh/tq9jBMkcLSdRZj8sWrSIW2+9lXnz\n5jFq1CjGjh3LpEmT4q5W0USdZVRVZf7HcS5PErVVlMQMI/BnIfQF/ldVh6vqzaoa6lZTQZFEf7qz\nELIzevRofvGLXzBjxgy6dOnC5ZcHsQtsPMTROcY9Wo7aZZTEgDL4Szv9rqq+DSAifwy/SsGQxNFy\nEmX2w7Zt23jggQc4++yzOfHEE+nVqxdvvfVW3NUqmiS6T6JWCDbIHAd+lq5I57hQahECSRwtJ1Fm\nP4wcOZILLriAH/3oR5xwwgllu45RiiRaCHEowSS6jApVCGUzmyeJk7TisBB27rRfISxZsoRmTShd\nJKkWQpRK0LmMfKCqJW+dGRVJXMbBWQiZaUrKAJJpITiXUTTk2jEtV+K2qur5IdQnMOKyEOJaERLi\niyHYPjGtqRF1lpENnWMcVlGPHtGVZwu5XEY/D6tQEbkImAAMxSytPTvoMpyFEA1xy+yH6dOnc8op\np9S79uqrr8ZUm9Lp0MFshFRbCy0KdfoWgQ0KIY4so8MPj648W8i1Y9q0EMudC3wGs2heKCR1+euk\nKUE/XHvttcyZM6feta9//esx1aZ0RMwkse3boWvX8MuzIcDapo2Ru6bGHIeNDTLHgZ8d0wYDtwNH\nAKl/harqYcUWqqofeM8u9hF5cRZCNMQtcy5ef/11XnvtNTZs2MBdd92FqgJmJ7X9+/fHXLvSSLlQ\nolIIcbpCU6SshJ49wy/LBZWzcz/we2AvUAk8CDwcYp0CoVUr8ze1i5lfVOGZZ8zszEKJO+OmWAuh\nthaeeqrw7wrsVgh79uyhqqqKffv2UVVVxY4dO9ixYwcdO3bk8ccfj7t6JRFlYNkGlxFEG0ewReao\n8eOBbKuqz4uIqOoyzEJ3s4Ef5rpJRJ4DMuny76mq75XG0rc5rKyspLKy0u+tB6yElHLww9SpcP75\ncPXVcPfd/u+D+DvHYi2Ee+6B666DiRPhxhsLuzdumXNx2mmncdpppzF+/Hj69+/PtGnTmDZtGtu3\nb+fhh60f0+QkiZ1j1ErQuYwyUyMizYHFIvJ1YDWQ11Ouqp8stXJQ2r63qThCIf/Yhx6CH/0Ifvtb\n+M1vClvtMO7OsVgLYdIkI/PDDxeuEOK2ivwwbty4RtfKfXJalJlGtrhPogws2yJz1PhRCP8LtAOu\nA24FOgJBLgQT2i+zmDjCa6/B7bfDI4/A++/DEUf4vzduhdCypVmZcu9ec+yHXbtg3jx4/nn4+c9N\noLKQVS3jltkPEydOPHBcU1PDE088QYsWLXjppZdirFVpJNFlFKVCsEXmqPGzH8IM77AKGBdEoSLy\nGeDXmNVT/yUic1T17CCenU6hmUarV5sshsMOg9GjYcaM8lIIInVWgt/GPHs2DB9ulMDRR8OsWXD6\n6f7u3bvX/C3EJRcHH/vYx+qdn3LKKRx3XNmswpKRKF1GW7ZAly7RlJWLqGTevdtskNO2bfhl2Yaf\nLKMhwI3AgLTPq6qeUWyh3jacoW/FWaiFMG8ejBhhOtbhw42FUAhxKwSoiyP4VQjz5hlFAEbmDz7w\nrxBskNcPmzdvPnC8f/9+Zs6cyfaod08KmCgtBFsUQlQyp6yDMvcqFoUfl9EU4B7gz8A+75qGVqMA\nKdRCWLy4bjLKsGFQ6C6Lcc9DgMLjCA1l/uAD//eWi0I49thjD8QMWrRowYABA7j33ns59dRTi35m\nrsmVIvJd4H8wv5frVPXZEqqfkU6dYNWqoJ/amD17zKtDh/DLykdULqOkuovAn0LYq6r3hF6TECjU\nQli8GAYONMdDhxZmIezbZ1wocbtPCs00WrwYjj/eHA8dCv/+t/97y0UhLF26NIzHZpxcKSLDgUuA\n4UBv4HkRGayqgU586NwZ5kewM8nWraYsG0bLnTvDypXhl5PUDCPwpxCeEpFrgL8Bu1MXVXVz9lvs\noFALYckSSA0aBwyA5ctNkNZPptGuXaZzjPuHU6iFsGQJDBpkjg87DArpO8tFIezatYvf/e53TJ8+\nHRHh1FNP5aqrrirpmTkmV14APKqqe4GlIrIYOB54o6QCGxBVltGWLfZ0jlHFEJKaYQT+FMI4jIso\nPSFRgaJnKkdFMRZCqnNs29b8ENatg1698t9rS/plITKrGoWQsor69oUVK8x1P4rNFpnz8eUvf5mO\nHTty3XXXoao88sgjfOlLXwqruEOo3/mvxFgKgRJV52hL/ACijyEkkZwKQUSaAd9W1cciqk+gFGoh\nLFtmLIMU/foZK8GPQrBltFyIzBs3mnVhUmmm7dub14YN/lZ6tEXmfLz33nvMT/OvnHHGGQwfPjzv\nfUFNriRLzK2USZdRdY62KYSkKUG/pCZdlkpOhaCq+0XkJqAsFUIho+WdO00cID141revUQijR+e/\n35bOsRCZ169v3PGnZG5KCuHYY4/l9ddf58QTTwTgjTfeYNSoUbyfJ0hU5OTKVZh9yFP08a41opRJ\nl1G6T2zpHJ1CyE7DAcUtt9xS1HP8zMN9TkRuFJG+ItI19SqqtIgpZLScGhWnu0r69TMuFD/Y0jkW\nInMmhVCOMudj5syZnHzyyfTv358BAwZw0kknMXPmTABE5N0Aikh3sD0JXCoirUTkUOBwYEbm24on\niRZCVEpw8+ZoFg20ET8xhEsxJu81Da4fGnx1gqVdO9Og/bBhA3TvXv9aarTsB1v86YVYCE1F5nz8\n5z//ObDSaQoRYYDxDxa10VO2yZWqOl9EJgPzgVrgam1YeACkOke/8Z5isSmoHKUS7Ncv/HJsxM9M\n5QER1CMUSh0t9+oFb73l7/6dO6GiorD6hUEQMq9d6+9+W2TOxw9+8AMmTZpU71oqqKyqS4t5Zq7J\nlap6O2bJ+NBo3dpkv9XUhDujdssWe3YOa9/ezCIuZGmWYtiyJbkWQl6XkYi0F5EfisifvPPDRWRs\n+FUrnVJHyz17+u8cd+yIf1IaJFPmfMybN6/eeW1tLbNmzYqpNsERxYjZphiCSDTptps32yNz1Pjd\nD2EPcJJ3vhq4LbQaBUipo+WDDzZpp37YscOO2ZxJlDkbt99+OxUVFcydO5eKiooDrx49enD++VZv\nCe6Lzp39u0SLxaYYAkQTR3AWQm4GqupPMEoBVY14T67iiXK0vHOnHaPlqGW2WSF873vfo6qqihtv\nvJGqqqoDr82bN3PnnXfGXb2S6do1eQohCqsoyRaCn6DybhE54KUUkYGkzVi2mUJHyw1XNu3Sxdy/\ne7fx2ebCltFyMZlV6fTsWZiFYIMSzMfZZ5/Nyy+/HHc1AqdrV9i0KdwybAoqQzSpp7YpwSjxoxAm\nAP8G+ojII8DJBLQMdtiUOlpu1sxcW7cuf9aBLQqh0HkIDWXu0cNc97Nkh+0WQoqJEyceWGKipqaG\nGTNmMGrUqJhrVToHHWRGs2FiUwwBwncZ7dtnts91M5WzoKrPeltmnuBdul5VN4RbrWAo1EJo2DlC\n3Yg5n0LYudP43+OmUAuhocytWpmZy5s3Q7duue+3RQnmY+rUqfXOV6xYwfXXXx9TbYIjKgvBJoUQ\ntoWwbZvJnGvePLwybMZPltELqrpRVad6rw0i8kIUlSuVQi2ETOl1Bx/sz6duS+foV+baWvPDOuig\nxu8VInM5uIwa0qdPn7yzlMuBsC2EffvM/9im0XLYMYQkB5Qhh4XgxQ3aAd0bzEzuSAiLdYWB39Gy\naubRMvj3qdvSOfqVedMmM/LLNBJKyXzkkbmfUS4uo2uvvfbA8f79+3n77bcZNWoUHxSy+YOFdO0K\nc+eG9/zUaLmQfcXDJmwLIckBZcjtMroSuB6zemN60nYV8NswKxUUfkfLO3fWbT/ZEL+jZVs6R78y\nZ0o5TdHULIRRo0YdiCE0b96cL3zhC5x88sk8/PDDMdesNMK2EFJ7IdhEp05mhd6wsM1FFjVZFYKq\n/hL4pYhcp6q/jrBOgdG2bd3+qLl8gtmsAzDX/aztY4vLyK+FkE9mP75pW2TOxyWXXMLixYsREQYN\nGkSbNm3irlIghB1DsLFzjMJCcC6jHKjqr0XkJOrvqYyq/qWUgkVkIjAWM79hCTBeVQP1DooYpbBr\nV+6OK9douVs3mDMnf1m2jJb9Wgi5lrju1s0sjZ0PW6yibOzdu5fvf//73HffffTzsgKWL1/O+PHj\nuf32UFeWiISwLYSNG/MnFkRNFDEE25RglPgJKj8E/Aw4BTgu7VUqzwJHqOrRwELguwE8sxF+Rsy5\nRsvl1jn6tRCyZVWBf5ltUYLZ+Na3vsXmzZv56KOPmD17NrNnz+bDDz9k69at3HjjjfkfYDlhWwib\nNtmpEJyFEB5+5iGMAoYHvWKjqj6XdvomcGGQz0/Rvr3puHKlhOazEMqpcyzETVaKzLW1ZpExm70v\nU6dOZeHChTRLi4p27NiR3//+9wwZMiTGmgVDFBZCpiy0OAl7HsKWLXakj8eFn/yBeYCPPcNK4n+A\np8N4cEWFmWiSiyAsBFv86ang+I4duT+Xy0I46KD8Mqcsorj3kM5Fs2bN6imDFM2bN894vdzo0MEo\n/z17wnm+rS6jsBVCkl1GfiyE7sB8EZlB3ZIVqqp5VwfzswWhiHwf2KOqj2R6RinbDII/hbB+ffZt\nMsvNZQR1MufKHy/VQrDFIsrFsGHDePDBB7n88suBum0G33nnnQNZR+WMiHFvbN5sUoWDZtMmGDYs\n+OeWQtgL+m3YYJ8SjBK/S1cURb4tCEVkHHAOMCZr4SVsMwj+LYQRI7Lfv3u3WXc+m3tkzx4zl6FV\nq5KqGhh+lWApVpFNCjAbd999N5/97Ge57777DixVMWvWLKqrq3nhhRfo27dvnifYTyqOEIZCsNFC\n6NTJJIn4WV+sGDZuzP67SAJ+soymhVGwiJwFfAs4TVVrwigDSu8cRcyPYtMm6J1lOp4t7qIUpbrJ\nUi6jXLtx2SZzJvr06cObb77Jiy++yHvvvYeIcO655zJmTNbxR9mRshDCwMagcur3uHFj9t9jKeT6\nXSSBXDOVd2C2zsyEqmrHEsv+DdAKs2czwOuqenWJz2yE384x165Q+RqgLUtfp/CrBLPJ3KaNGX1V\nVZl1jTJhm8zZEBHGjBnTpJRAOgcdFF6mkY1BZTAd9oYNTiGEQa6JaaGO/1T18DCfn6Jjx9IsBMjv\nQrFttJxPIezdC9u3506vS8mcTSHYJnNSCdNCsNFlBHUKIWj27DEDHZvWboqa8k+1yEO+zjHXOkYp\n8ikE2/zp+WTetMmM/HIl2pSbEkwqYVkIqnXtxDbCUgh+fhdNnSYver7OcccOaNHCzPDNhp/O0Sb3\nST6Z81lE4E8J2iRzUunWLZzOsbra+Otz/S7iIiyFkHR3ETiFkNOXnqLcRsv5ZM4XM4HykzmpHHyw\nacNBY6u7CMJVCLbKHBWJVwh+RgXl1jlGYSHYJnNS6dHD/5anhWCruwichRAmiVcIQVgI27fbFYiK\nwkKwTeakcvDB4SgEWzOMIDyFkPQ5COAUQiAWwrZt2bNx4iAKC8E2mZNKWC6jdevCmewWBM5CCI/E\nK4QgOsft2+3qHKNQgrbJnFS6dzdtONilJ80GSUlUCC6G0MSJyn1iU+dYUWHqlI2mKHNSadPGZAIF\nvdgGLlkAABEwSURBVOBbUhWCsxCaOEFaCNlGYbZ1jkm0ipJMGIHldevsXQa6a1fjsqytDfa5fuKJ\nTZ3EKwQ/o+V27UxOdraNZ2zrHIOyinKNwmyTOWpEZKKIvC8i74jI30SkU9p73xWRRSLygYh8Kuy6\nhBFYttlCaN7cKAU/qxAXwpo12Vc9TgpNXiF06GAm2ezfn/l9P6NlyD1itq1zDMJC6NrVLDOc7Xuz\nTeYYyLjjn4gMBy4BhgNnAb8TkVB/Z2EElm1WCGA67jVrgn2mUwgJUAjNmpldxLKN7v2MliG333Lb\nNrtSMHMphD17zByCfJuAtGxpOvxs6+TYJnPUqOpzqppSl28CfbzjC4BHVXWvqi4FFgPHh1mXMFxG\ntiuE3r1h1argnldVZQY/CR/kNH2FANk7SD/rGKXo0SO7QrBttJxLIaTyy/2s11JOMsdM+o5/hwAr\n095bCYSwLmcdQbuM9uwx/19b5yEAHHJIsAohZR00gX2TSiLRCmH7drPMs599gXNZCLZ1jq1bG2W3\ne3fj9/xaRJBd5t27zWgqjA1KbEJEnhORuRle56V9JueOfx4BJ4XW5+CDzYg+KFIuRZsXeevdG1av\nDu55a9YYJZN0/OyYVvZ07Jg5DbOQNLNUvncmbFMIInUyN5TPb8wEssuc2iehqY+mitzxbxWQvhVb\nH+9aI0rdHjZF377wz38WdWtGbJ6UluKQQ+Ctt4J73urV5R0/SG0PWyqJUAjZNuYuJM0s22h53z6z\npZ9tK3+mZG7Y+QdhIdimAOMgx45/TwKPiMhdGFfR4cCMTM8odXvYFH36wIoVgTwKMK4Y2zvH3r2D\nVYLlHlBuOKC45ZZbinpOIhRCly6ZN+Yu1EJYsKDx9aoqk8lkm3kdlMxOIWQl445/qjpfRCYD84Fa\n4GrVoOcR16dv32AVwooV0K9fcM8LgzBiCM5llHCFUKj7JFPnaGu2TVAyL17c+LqtMkdJrh3/VPV2\n4Pao6tKli5mkFZSiXr7cfoUQdAxh1SoYMSK455UrsYxrReRWb0LP2yLygoj0zX9X8eQaLft1n2TL\nuNm2zQStbSOJMicVkWCthHJQCN27m3aYKXGiGJYtgwEDgnlWOROXo+Onqnq0qo4E/gHcHGZhYVoI\nW7bk3ps4LpIoc5IJWiH0DXWIVjrNmpnAd1BuI6cQDLEoBFVNTwLtAAQ8Cb0+2TrHQtZryZZxs3mz\nnfnaSZQ5ySTNQgA49FD48MPSn7N7txn4uBhCjDEEEbkN+BJQDZwQZllBdI4VFbB3r8koatu27vrm\nzXaOlrt0ybzURqEKIZOFYKvMSSYohbB3r2kj5dA5DhwYjEJYscLEJJo3L/1Z5U5oFkK+ST2q+n1V\n7Qc8APwirHpAMApBJHMHaWvnGITM3bqZrRQbrmdkq8xJ5tBD4aOPSn/OypWmfbRsWfqzwmbgQFiy\npPTnLF3q3EUpQrMQ8k3qSeMR6qb9NyKIyTu5/OmFLPGbUgjp5rStnWMmmXfsMDOY/e6F3KqVmV+x\ndWt9GW2VOR9BTd6xkcGD4Xe/K/05ixaZZ5UDgwbBlCmlP2fpUujfv/TnNAVicRmJyOGqusg7vQCY\nk+2zQUzeydQ51taajq4QX3imrJtNm+wcXWSSOWUdFDLDOCVzugLYtKk8FUJQk3dsZMgQWLjQKPxS\nZpAvXFg+CiEoC2HBgvKROWziyjK6w3MfvQ1UAjeEWVimznHDBqMMCvEbZgqy2jpaziRzoRYRlJfM\nSSbVlkvdSWzBAqNcyoGUQih12t/778OwYcHUqdyJxUJQ1c9FWV6nTnXL26ZmFK9bV/juSOUUQ0jt\nZ5BOU5c56QwebDr0Unb9WrgQzj47uDqFSZcuZoHFUmcZO4VQh2ULLoRD8+YmSyi9gyxmtNyjR/mM\nlrt2Na6ddIrZFjGbzC7t1D6GDIEPPijtGe+/D0OHBlOfKDj6aHjnneLv37XLzHgeODC4OpUziVAI\nYCaxpK8ZX0znmGlTDlsVQseOJoWwurruWhAy19aa4LRby8g+Ro6EOVmjcfnZsMFY0oceGlydwmbk\nSHj77eLvnz/fBKdbJGIRn/wkRiE03ERk7drCO8c+fUxaXgpVezfmFmmsBIOQORV7sW0xPwccd1xp\nS0LPng3HHFNey5qXqhBmzDDfm8OQmJ91z571NxFZsaLw6fl9+tQfLW/dajbXSZ+oZhNByZyuEMp9\nmeCmzMiR8N57xa/vM3MmjBoVbJ3C5phjTL2LZcYMGD06uPqUO04hFEDv3qZzTGU12N45hqEQ1q61\nW+Yk0769CY7OyLj7glm5dto0qKnJ/P5LL8HHPx5a9UJh2DDjwly6NPP78+bBK68YV2cmXn0VTgh1\nnYTyIrEKYeXKwjvH9u2NRZDaeH7NGrt3lgpC5kwWgs0yJ52zz4Z//avx9TvugJNOgu9+1wSNG46q\nq6vhzTehyE3bYqNZMxgzBp5/vv71mhq49FLzfVx7LRx7bONlLhYuhJ073bLX6SRWIRQzWob6HaTt\no+X0uEl1tRlJ+V3pNEUqeJzagtR2qyjpnHce/O1vdcuNqMIPfgCTJhlf++uvw113wTnn1I83/P3v\ncPLJ5bms+QUXwKOP1p3X1MBnP2u+g0WLTKD9iivg1FONSy3F44/D2LHlFTMJm0QqhN27TQpqMcHg\ndIVg+2g5XeaVK43Lq9DGL1JeMied4483nXpKKXzjG8Zi+O9/63L1P/tZuPde0xnOnGm2gb3rLrjy\nynjrXiyf/rTp6GfONL/tiy4yy7M88oix6EXg61+Hn/4UPvEJoyCqquDuu+Gqq+KuvV0kJtmqd++6\n1SCXLy9+dcN+/cza6VCcCyZKeveGqVPNcSnrtfTrZ+4fPtzIfMYZQdXQETQi8KtfmU7yttuMhffi\ni2YSVzrnnQd/+hOceaZZeqV7d3NPOdK6Nfzyl0amTp1McH3SpMappF/8olEQZ55pBoNjx5rPOupI\njEI47DCzGuT+/aVNz0+f/LNkid0+10GD6tZ6KVXmBQuMm2HJEvNch72ccgq89poZ+Jx+evaBz/nn\nm9HyvHnGD1/OrpNLLzWxke3bjWsomywXXghHHmm+mzFjoq1jOZAYhdC+vZlAtnKl6dCL7RyHDYN/\n/9scL15s9wzHww4zI/vaWtOhFzsDdehQ439WNYG5ww4LtJqOEBg82N+Cbf36lcdmOH7wO9ofMqR8\n1muKmsTEEMCMbBctKk0hDB1qpvfv22c6W5s7xzZtTGB5+fLSZf7gAzPFv6KiPAOPDocjP4lSCEcd\nZUzkt94qfgJO//4mIPXSS2Zk1b59sHUMmqOOglmzzOvYY4t7xogR8O67Jr/d+VwdjqZLohTCxz8O\nTzxh3B7HHFPcM5o1g9NOgwkTymOG48c/boKM3bsXv8RGt25GEd51l5vE43A0ZRKlED75SXjjDZOW\nVsoWgZddZmY4XnZZcHULi09/2tT1y18u7TmXXQbTp8MllwRTL4fDYR+ipe4uESIiokHXb8MG6Ny5\n9D1jy2mC1tq1xjooZUE6Vfsn4hWKiKCqseTWhNG2HY4UxbbtxCkEhyOFUwiOpkqxbTtRLiOHw+Fw\nZMcpBIfD4XAAMSsEEblBRPaLiIV7jjkc2RGRW0XkHRF5W0ReEJG+ae99V0QWicgHIvKpOOvpcBRC\nbArB+wF9ElgWVx1yMW3atESVG2fZccpcAj9V1aNVdSTwD+BmABEZDlwCDAfOAn4nItZY4q59Jafs\nYoizod4F3BRj+Tlxjbfpl1sKqlqVdtoB2OgdXwA8qqp7VXUpsBg4PuLqZcW1r+SUXQyxrGUkIhcA\nK1X1XSnnFbUciUZEbgO+BOyirtM/BHgj7WMrgd4RV83hKIrQFIKIPAdkWjn/+8B3gXTfqtMKDuvI\n0Ya/p6pPqer3ge+LyHeAXwLjszzK5Zc6yoLI5yGIyJHAC0C1d6kPsAo4XlXXN/is+yE5QiWIeQgi\n0g94WlWP9JQDqnqn996/gZtV9c0G97i27QiVspyYJiIfAaNUdXOsFXE4CkBEDlfVRd7xtZgBzZe8\noPIjGBdSb+B5YJCbheYoB2zYD8H9UBzlyB0iMgTYBywBrgJQ1fkiMhmYD9QCVztl4CgXYrcQHA6H\nw2EHVuRHi8hZ3iSeRSLy7Syf+bX3/jsiUuTi1YWVKyKVIrJNROZ4rx8EVO59IrJORObm+Ezg8vop\nO0SZ+4rISyLynojME5HrsnwuULn9lBuWzN6zXdtu/Jkw5E1Uu/ZbdsFyq2qsL6A5Jld7ANASeBsY\n1uAz52CCdgCjgTciKrcSeDIEmU8FjgHmZnk/cHkLKDssmXsCI73jDsCCiP7PfsoNS2bXthu/H0rb\nTlq7LqDsguS2wUI4HlisqktVdS/wV8zknnTOBx4EUJOt0VlEDo6gXAghJVZVXwG25PhIGPL6LRvC\nkXmtqr7tHe8A3sfk7KcTuNw+y4VwUp9d225MKG07ae26gLKhALltUAi9gRVp55km8mT6TJ8IylXg\nJM/Me9rLIImCMOT1S+gyi8gAzGjuzQZvhSp3jnLDktm1bX91i6JtN9l2nafsguQupyyjhlqu1Gi4\nn/tnA31VtVpEzsasWTO4xHL9ErS8fglVZhHpADwOXO+Nahp9pMF5IHLnKTcsmV3bzkwcbbtJtmsf\nZRcktw0Wwiqgb9p5X4wGzfWZ1GS2UMtV1SpVrfaOnwFaSjQrs4Yhry/ClFlEWgJPAA+p6j8yfCQU\nufOVG6LMrm3nr1skbbsptms/ZRcqtw0KYSZwuIgMEJFWmJUin2zwmSeBLwOIyAnAVlVdF3a5InKw\niFlsSUSOx6TpRjGBLgx5fRGWzN4z7wXmq+ovs3wscLn9lBvi/9m17cbE0rabWrv2W3ahcsfuMlLV\nWhH5OvAfTHbEvar6vohc6b3/B1V9WkTOEZHFwE6yrxkTaLnA54CrRKQWs9TGpaWWCyAijwKnAd1E\nZAVm6eSWqXLDkNdv2YQkM3AycBnwrojM8a59D+iXKjskufOWS0gyu7YdXdtOYLv2VTYFyu0mpjkc\nDocDsMNl5HA4HA4LcArB4XA4HIBTCA6Hw+HwcArB4XA4HIBTCA6Hw+HwcArB4XA4HIBTCJEgIp1E\n5Kq080NEZEoI5ZwnWZZYdjjCwLXtpoWbhxAB3sJTT6nqUTFXxeEIFNe2mxbOQoiGO4GBYjao+ImI\n9BdvIw8RGSci/xCRZ0XkIxH5uojcKCKzReR1EenifW6giDwjIjNF5GUx2zfWw3vWb7zjB0TkVyLy\nqogsEZELM3x+gJhNVO4XkQUi8rCIfMq7Z6GIHOd97jSp22BjtpjFtBwOcG27aeF34wT3Kmkji/6k\nbdyB2bhkrnc8DlgEtAe6AduAK7z37sKsYAjwAmazdjCbbLyQoZzLgd94xw8Aj3nHw4BFGT4/ANgL\nHIFZjXEmZpkDMGu4/907fhI40TtuBzSP+zt1Lzterm03rVfsaxklhHwbVLykqjuBnSKyFXjKuz4X\nGCEi7YGTgCkiBx7VKs8zFbPULWrWscm2IcdHqvoegIi8BzzvXZ+H+VEBvAr8QkQeBv6mqpGsvOoo\nC1zbbkI4hWAHu9OO96ed78f8j5oBW1S10L1Y96QdZ/vhNix7T9pxCwBV/YmITAXOBV4VkTNVdUGB\ndXEkE9e2ywgXQ4iGKqCiiPsEzJrmwEci8jkwy96KyIhsnw8aERmoqu+p6k+Bt4BGPl5HYnFtuwnh\nFEIEqOomzOhjroj8BGPyptK70o/JcJw6/yLwFRF5G2Pynp+pqDzPyli9HOep4+u9ur+DGWU9k+VZ\njoTh2nbTwqWdOhwOhwNwFoLD4XA4PJxCcDgcDgfgFILD4XA4PJxCcDgcDgfgFILD4XA4PJxCcDgc\nDgfgFILD4XA4PJxCcDgcDgcA/x+ge3TAy+gQOwAAAABJRU5ErkJggg==\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f924312ba90>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from numpy import arange,pi,cos\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,show,subplot,xlabel,ylabel\n", + "from __future__ import division\n", + "t=arange(0,0.002+0.000001,0.000001)\n", + "V_i=[]\n", + "for x in t:\n", + " V_i.append(3*cos(2000*pi*x)-2*cos(6000*pi*x))\n", + "#let A_1000 and A_3000 be the gains\n", + "A_1000_peak=10#\n", + "A_1000_phi=0#\n", + "A_3000_peak=2.5#\n", + "A_3000_phi=0#\n", + "#multiplying by respective gains\n", + "V_o=[]\n", + "for x in t:\n", + " V_o.append(A_1000_peak*3*cos(2000*pi*x+A_1000_phi)-A_3000_peak*2*cos(6000*pi*x+A_3000_phi))\n", + "subplot(121)\n", + "title('Input-voltage vs time')\n", + "xlabel('time in ms')\n", + "ylabel('Internal-voltage in volts')\n", + "plot(t*10**3,V_i)\n", + "subplot(122)\n", + "title('Output-voltage vs time')\n", + "xlabel('time in ms')\n", + "ylabel('Output voltage in volts')\n", + "plot(t*10**3,V_o)\n", + "show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 525 Ex: 11.10" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "VoA(t)=30cos(2000pit)-10cos(6000pit)\n", + "VoB(t)=30cos(2000pit-pi/4)-10cos(6000pit-3pi/4)\n", + "VoC(t)=30cos(2000pit-pi/4)-10cos(6000pit-pi/4)\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f923be6b750>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from numpy import arange,pi,cos\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,show,subplot,xlabel,ylabel\n", + "from __future__ import division\n", + "\n", + "t=arange(0,0.002+0.000001,0.000001)\n", + "V_i=[]\n", + "for x in t:\n", + " V_i.append(3*cos(2000*pi*x)-2*cos(6000*pi*x))\n", + "#for A\n", + "A_1000_A_peak=10#\n", + "A_1000_A_phi=0#\n", + "A_3000_A_peak=10#\n", + "A_3000_A_phi=0#\n", + "V_o_A=[]\n", + "for x in t:\n", + " V_o_A.append(A_1000_A_peak*3*cos(2000*pi*x+A_1000_A_phi)-A_3000_A_peak*2*cos(6000*pi*x+A_3000_A_phi))\n", + "#for B\n", + "A_1000_B_peak=10#\n", + "A_1000_B_phi=-pi/4#\n", + "A_3000_B_peak=10#\n", + "A_3000_B_phi=-3*pi/4#\n", + "V_o_B=[]\n", + "for x in t:\n", + " V_o_B.append(A_1000_B_peak*3*cos(2000*pi*x+A_1000_B_phi)-A_3000_B_peak*2*cos(6000*pi*x+A_3000_B_phi))\n", + "#for C\n", + "A_1000_C_peak=10#\n", + "A_1000_C_phi=-pi/4#\n", + "A_3000_C_peak=10#\n", + "A_3000_C_phi=-pi/4#\n", + "V_o_C=[]\n", + "for x in t:\n", + " V_o_C.append(A_1000_C_peak*3*cos(2000*pi*x+A_1000_C_phi)-A_3000_C_peak*2*cos(6000*pi*x+A_3000_C_phi))\n", + "print 'VoA(t)=30cos(2000pit)-10cos(6000pit)'\n", + "print 'VoB(t)=30cos(2000pit-pi/4)-10cos(6000pit-3pi/4)'\n", + "print 'VoC(t)=30cos(2000pit-pi/4)-10cos(6000pit-pi/4)'\n", + "subplot(311)\n", + "title('Output-voltage vs time for A')\n", + "xlabel('time in ms')\n", + "ylabel('Output-voltage for A in volts')\n", + "plot(t*10**3,V_o_A)\n", + "subplot(312)\n", + "title('Output-voltage vs time for B')\n", + "xlabel('time in ms')\n", + "ylabel('Output voltage for B in volts')\n", + "plot(t*10**3,V_o_B)\n", + "subplot(313)\n", + "title('Output-voltage vs time for C')\n", + "xlabel('time in ms')\n", + "ylabel('Output voltage for C in volts')\n", + "plot(t*10**3,V_o_C)\n", + "show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 526 Ex: 11.11" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\n", + "The minimum CMRR = 140.00\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import log\n", + "A_d=1000# #differential gain\n", + "V_d_peak=1*10**-3# #peak value of differential input signal\n", + "V_o_peak=A_d*V_d_peak# #peak output signal\n", + "V_cm=100#\n", + "V_o_cm=0.01*V_o_peak# #common mode contribution is 1% or less\n", + "A_cm=V_o_cm/V_cm# #common mode gain\n", + "CMRR=20*log(A_d/A_cm)/2.30258#\n", + "print \" All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\"\n", + "print 'The minimum CMRR = %0.2f'%CMRR" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 527 Ex: 11.12" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Vioff = 7 mV \n", + "\n", + " Vvoff = 4.17 mV \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "#initialisation of variables\n", + "Rin= 1 #Mohms\n", + "Rs1= 100 #kohms\n", + "Rs2= 100 #kohms\n", + "Ioff= 84 #Amperes\n", + "Voff= 5 #mV\n", + "#CALCULARIONS\n", + "Vioff= Rin*Ioff*10**-3*(Rs1+Rs2)/(2*(Rin+10**-3*(Rs1+Rs2)))\n", + "Vvoff= Voff*Rin/(Rin+10**-3*(Rs1+Rs2))\n", + "#RESULTS\n", + "print 'Vioff = %.f mV '%Vioff\n", + "print '\\n Vvoff = %.2f mV '%Vvoff" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter12.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter12.ipynb new file mode 100644 index 00000000..cd2e8f76 --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter12.ipynb @@ -0,0 +1,221 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 12 : Field effect transistors" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 541 Ex12.1" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iD = 18 V \n", + "\n", + " iD = 8 V \n", + "\n", + " iD = 2 V \n", + "\n", + " iD = 0 V \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "#initialisation of variables\n", + "K= 2 \n", + "VGS1= 5 #V\n", + "VGS2= 4 #V\n", + "VGS3= 3 #V\n", + "VGS4= 2 #V\n", + "#CALCULATIONS\n", + "id1= K*(VGS1-2)**2\n", + "id2= K*(VGS2-2)**2\n", + "id3= K*(VGS3-2)**2\n", + "id4= K*(VGS4-2)**2\n", + "#RESULTS\n", + "print 'iD = %.f V '%(id1)\n", + "print '\\n iD = %.f V '%(id2)\n", + "print '\\n iD = %.f V '%(id3)\n", + "print '\\n iD = %.f V '%(id4)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 544 Ex12.2" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "VDSQ = 14.3 V \n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "from __future__ import division\n", + "#initialisation of variables\n", + "KP= 50 #uA/V62\n", + "Vto= 2 #V\n", + "L= 10 #um\n", + "W= 400 #um\n", + "Vdd= 20 #mV\n", + "R2= 1 #kohms\n", + "R1= 3 #ohms\n", + "Rd= 11.5 #Mohms\n", + "Rs= 1 #kohms\n", + "V= 4 #mV\n", + "#CALCULATIONS\n", + "K= W*KP/(2*L*10**3)\n", + "Vg= Vdd*R2/(R1+R2)\n", + "\n", + "x=symbols(\"x\")\n", + "vec=solve(x**2-3.630*x+2.148,x)\n", + "VGSQ= vec[0]\n", + "IDQ= K*(VGSQ-Vto)**2\n", + "VDSQ= Vdd+V+L-(Rd+Rs)*IDQ\n", + "#RESULTS\n", + "print 'VDSQ = %.1f V '%(VDSQ)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 548 Ex12.3" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "rd = 7.7e+03 ohms\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "#initialisation of variables\n", + "VGSQ= 3.5 #V\n", + "VDSQ= 10 #V\n", + "id1= 10.7 #mA\n", + "id2= 4.7 #mA\n", + "dvgs= 1 #V\n", + "id3= 8 #mA\n", + "id4= 6.7 #mA\n", + "vds1= 14 #V\n", + "vds2= 4 #V\n", + "#CALCULATIONS\n", + "gm= (id1-id2)/dvgs\n", + "rd= (vds1-vds2)*10**3/(id3-id4)\n", + "#RESULTS\n", + "print 'rd = %.1e ohms'%(rd)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 549 Ex12.5" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "G = 529.7 \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "#initialisation of variables\n", + "RL= 1 #kohms\n", + "R1= 2 #Mohms\n", + "R2= 2 #Mohms\n", + "KP= 50 #uA/V**2\n", + "L= 2 #um\n", + "W= 160 #um\n", + "Vto= 1 #V\n", + "IDQ= 10 #mA\n", + "VG= 7.5 #V\n", + "#CALCULATIONS\n", + "K= W*KP/(2*L*10**3)\n", + "VGSQ= sqrt(IDQ/K)+Vto\n", + "VS= VG-VGSQ\n", + "RS= VS*10**3/IDQ\n", + "gm= sqrt(2*KP/10**3)*sqrt(W/L)*sqrt(IDQ)\n", + "RL1= 1/(1/(RS)+(1/(RL*10**3)))\n", + "Av= gm*RL1*10**-3/(1+gm*RL1*10**-3)\n", + "Rin= 1/((1/R1)+(1/R2))\n", + "Ro= 1/(gm*10**-3+(1/RS))\n", + "Ai= Av*Rin/RL\n", + "G= Av*Ai*10**3\n", + "#RESULTS\n", + "print 'G = %.1f '%G" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter13.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter13.ipynb new file mode 100644 index 00000000..eaab2d21 --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter13.ipynb @@ -0,0 +1,498 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 13 : Bipolar junction transistors" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 589 Ex: 13.1" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The value of beta B = 100.00\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_CE=4# #It should be high enough so that collector base junction is reverse-biased\n", + "i_B=30*10**-6# #base current, a value is selected from the graph\n", + "i_C=3*10**-3# #collector current corresponding to values of i_B and V_CE\n", + "B=i_C/i_B# #beta value\n", + "print 'The value of beta B = %0.2f'%B" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 589 Ex: 13.2" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "graphs cannot be shown but the required values are\n", + "maximum value of V_CE = 7.00\n", + "minimum value of V_CE = 3.00 \n", + "Q-point value of V_CE = 5.00 \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_CC=10#\n", + "V_BB=1.6#\n", + "R_B=40*10**3#\n", + "R_C=2*10**3#\n", + "V_in_Q=0# #Q point\n", + "V_in_max=0.4#\n", + "V_in_min=-0.4#\n", + "#the following values are found from the intersection of input loadlines with the input characteristic\n", + "i_B_Q=25*10**-3# #for V_in_Q\n", + "i_B_max=35*10**-3# #for V_in_max\n", + "i_B_min=15*10**-3# #for V_in_min\n", + "#the following values are found from the intersection of output loadlines with the output characteristic\n", + "V_CE_Q=5# #corresponding to i_B_Q\n", + "V_CE_max=7# #corresponding to i_B_min\n", + "V_CE_min=3# #corresponding to i_B_max\n", + "print 'graphs cannot be shown but the required values are'\n", + "print 'maximum value of V_CE = %0.2f'%V_CE_max\n", + "print 'minimum value of V_CE = %0.2f '%V_CE_min\n", + "print 'Q-point value of V_CE = %0.2f '%V_CE_Q" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 590 Ex: 13.4" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "collector current = 0.01 amperes\n", + "collector to emitter voltage = 7.85 volts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_CC=15#\n", + "B=100# #beta value\n", + "R_B=200*10**3#\n", + "R_C=1*10**3#\n", + "#we proceed in such a way that the required values will be displayed according to the satisfied condition of the below three cases\n", + "\n", + "#a)cut-off region\n", + "V_BE=15# #no voltage drop across R_B in cut-off state\n", + "V_CE=15# #no voltage drop across R_C in cut-off state\n", + "i_C=0# #no collector current flows as there is no voltage drop\n", + "i_B=0# #no base current flows as there is no voltage drop\n", + "if(V_BE<0.5): #cut-off condition\n", + " print 'collector current = %0.2f amperes'%i_C\n", + " print 'collector to emitter voltage = %0.2f volts'%V_CE\n", + " \n", + "\n", + "#b)saturation region\n", + "V_BE=0.7# #base to emitter voltage in saturation state\n", + "V_CE=0.2# #collector to emitter voltage in saturation state\n", + "i_C=(V_CC-V_CE)/R_C# #collector current\n", + "i_B=(V_CC-V_BE)/R_B# #base current\n", + "if((B*i_B>i_C) and (i_B>0)): #saturation state conditions\n", + " print 'collector current = %0.2f amperes'%i_C\n", + " print 'collector to emitter voltage = %0.2f volts'%V_CE\n", + "\n", + "#c)active region\n", + "V_BE=0.7# #base to emitter voltage in active state\n", + "i_B=(V_CC-V_BE)/R_B# #base current\n", + "i_C=B*i_B# #collector current in active state\n", + "V_CE=V_CC-i_C*R_C# #collector to emitter voltage\n", + "if((V_CE>0.2) and (i_B>0)) : #active state conditions\n", + " print 'collector current = %0.2f amperes'%i_C\n", + " print 'collector to emitter voltage = %0.2f volts'%V_CE" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 591 Ex: 13.5" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "collector current = 0.01 amperes\n", + "collector to emitter voltage = 0.20 volts\n" + ] + } + ], + "source": [ + "R_B=200*10**3#\n", + "R_C=1*10**3#\n", + "V_CC=15#\n", + "B=300# #beta value\n", + "#we proceed in such a way that the required values will be displayed according to the satisfied condition of the below three cases\n", + "\n", + "#a)active region\n", + "V_BE=0.7# #base to emitter voltage in active state\n", + "i_B=(V_CC-V_BE)/R_B# #base current\n", + "i_C=B*i_B# #collector current in active state\n", + "V_CE=V_CC-i_C*R_C# #collector to emitter voltage\n", + "if((V_CE>0.2) and (i_B>0)): #active state conditions\n", + " print 'collector current = %0.2f amperes'%i_C\n", + " print 'collector to emitter voltage = %0.2f volts'%V_CE\n", + "\n", + "#b)saturation region\n", + "V_BE=0.7# #base to emitter voltage in saturation state\n", + "V_CE=0.2# #collector to emitter voltage in saturation state\n", + "i_C=(V_CC-V_CE)/R_C# #collector current\n", + "i_B=(V_CC-V_BE)/R_B# #base current\n", + "if((B*i_B>i_C) and (i_B>0)): #saturation state conditions\n", + " print 'collector current = %0.2f amperes'%i_C\n", + " print 'collector to emitter voltage = %0.2f volts'%V_CE\n", + "\n", + "#c)cut-off region\n", + "V_BE=15# #no voltage drop across R_B in cut-off state\n", + "V_CE=15# #no voltage drop across R_C in cut-off state\n", + "i_C=0# #no collector current flows as there is no voltage drop\n", + "i_B=0# #no base current flows as there is no voltage drop\n", + "if(V_BE<0.5): #cut-off condition\n", + " print 'collector current = %0.2f amperes'%i_C\n", + " print 'collector to emitter voltage = %0.2f volts'%V_CE" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 592 Ex: 13.6" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are Approximated hence the values in this code differ from those of Textbook\n", + "For beta B=100:\n", + "collector current = 2.13e-03 amperes\n", + "collector to emitter voltage = 6.44 volts\n", + "For beta B=300:\n", + "collector current = 2.14e-03 amperes\n", + "collector to emitter voltage = 6.41 volts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_CC=15#\n", + "V_BB=5#\n", + "V_BE=0.7# #assuming the device is in the active state\n", + "R_C=2*10**3#\n", + "R_E=2*10**3#\n", + "i_E=(V_BB-V_BE)/R_E# #emitter current\n", + "print \" All the values in the textbook are Approximated hence the values in this code differ from those of Textbook\"\n", + "\n", + "#a)B=100\n", + "print 'For beta B=100:'\n", + "B=100# #beta value\n", + "i_B=i_E/(B+1)# #base current\n", + "i_C=B*i_B# #collector current\n", + "V_CE=V_CC-i_C*R_C-i_E*R_E# #collector to emitter voltage\n", + "print 'collector current = %0.2e amperes'%i_C\n", + "print 'collector to emitter voltage = %0.2f volts'%V_CE\n", + "\n", + "#b)B=300\n", + "print 'For beta B=300:'\n", + "B=300# #beta value\n", + "i_B=i_E/(B+1)# #base current\n", + "i_C=B*i_B# #collector current\n", + "V_CE=V_CC-i_C*R_C-i_E*R_E# #collector to emitter voltage\n", + "print 'collector current = %0.2e amperes'%i_C\n", + "print 'collector to emitter voltage = %0.2f volts'%V_CE" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 593 Ex: 13.7" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are Approximated hence the values in this code differ from those of Textbook\n", + "For beta B=100:\n", + "collector current = 4.12e-03 amperes\n", + "collector to emitter voltage = 6.72 volts\n", + "For beta B=300:\n", + "collector current = 4.24e-03 amperes\n", + "collector to emitter voltage = 6.51 volts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_CC=15#\n", + "R_1=10*10**3#\n", + "R_2=5*10**3#\n", + "R_C=1*10**3#\n", + "R_E=1*10**3#\n", + "V_BE=0.7#\n", + "R_B=1/((1/R_1)+(1/R_2))# #thevenin resistance\n", + "V_B=V_CC*R_2/(R_1+R_2)# #thevenin voltage\n", + "print \" All the values in the textbook are Approximated hence the values in this code differ from those of Textbook\"\n", + "\n", + "#a)B=100\n", + "print 'For beta B=100:'\n", + "B=100# #beta value\n", + "i_B=(V_B-V_BE)/(R_B+(B+1)*R_E)# #base current\n", + "i_C=B*i_B# #collector current\n", + "i_E=i_B+i_C# #emitter current\n", + "V_CE=V_CC-i_C*R_C-i_E*R_E# #collector to emitter voltage\n", + "print 'collector current = %0.2e amperes'%i_C\n", + "print 'collector to emitter voltage = %0.2f volts'%V_CE\n", + "#b)B=300\n", + "print 'For beta B=300:'\n", + "B=300# #beta value\n", + "i_B=(V_B-V_BE)/(R_B+(B+1)*R_E)# #base current\n", + "i_C=B*i_B# #collector current\n", + "i_E=i_B+i_C# #emitter current\n", + "V_CE=V_CC-i_C*R_C-i_E*R_E# #collector to emitter voltage\n", + "print 'collector current = %0.2e amperes'%i_C\n", + "print 'collector to emitter voltage = %0.2f volts'%V_CE" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 594 Ex: 13.8" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are Approximated hence the values in this code differ from those of Textbook\n", + "voltage gain = -105.64 open circuit voltage gain = -158.46\n", + "input impedance = 530.61 ohms\n", + "current gain = -28.03\n", + "power gain = 2960.82\n", + "output impedance = 1000.00 ohms\n" + ] + }, + { + "data": { + "image/png": "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\nYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f24dc60c290>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show\n", + "from numpy import arange,sin,pi\n", + "from __future__ import division\n", + "V_CC=15#\n", + "V_BE=0.7#\n", + "B=100# #beta value\n", + "R_1=10*10**3#\n", + "R_2=5*10**3#\n", + "R_L_1=2*10**3# #R_L is taken as R_L_1\n", + "R_C=1*10**3#\n", + "R_E=1*10**3#\n", + "V_T=26*10**-3# #thermal voltage\n", + "#from the analysis of the previous example we have the the values of i_C_Q and V_CE\n", + "i_C_Q=4.12*10**-3#\n", + "V_CE=6.72#\n", + "r_pi=(B*V_T)/i_C_Q#\n", + "R_B=1/((1/R_1)+(1/R_2))# #thevenin resistance\n", + "R_L_2=1/((1/R_L_1)+(1/R_C))# #R_L' is taken as R_L_2\n", + "A_v=-(R_L_2*B)/r_pi# #voltage gain\n", + "A_voc=-(R_C*B)/r_pi# #open circuit voltage gain\n", + "Z_in=1/((1/R_B)+(1/r_pi))# #input impedance\n", + "A_i=(A_v*Z_in)/R_L_1# #current gain\n", + "G=A_i*A_v# #power gain\n", + "Z_o=R_C #output impedance\n", + "#assume f=1hz\n", + "f=1#\n", + "tt=arange(0,3+0.0005,0.0005)\n", + "V_in=[];V_o=[]\n", + "for t in tt:\n", + " V_in.append(0.001*sin(2*pi*f*t))\n", + " V_o.append(-((0.001*sin(2*pi*f*t))*R_L_2*B)/r_pi)\n", + "subplot(121)\n", + "title('Input voltage vs time')\n", + "xlabel('time')\n", + "ylabel('input voltage')\n", + "plot(tt,V_in)\n", + "subplot(122)\n", + "title('output voltage vs time')\n", + "xlabel('time')\n", + "ylabel('output voltage')\n", + "plot(tt,V_o)\n", + "#In the graph, notice the phase inversion between input and output voltages\n", + "print \" All the values in the textbook are Approximated hence the values in this code differ from those of Textbook\"\n", + "print 'voltage gain = %0.2f'%A_v,\n", + "print 'open circuit voltage gain = %0.2f'%A_voc\n", + "print 'input impedance = %0.2f ohms'%Z_in\n", + "print 'current gain = %0.2f'%A_i\n", + "print 'power gain = %0.2f'%G\n", + "print 'output impedance = %0.2f ohms'%Z_o" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 595 Ex: 13.9" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are Approximated hence the values in this code differ from those of Textbook\n", + "voltage gain = 0.99\n", + "input impedance = 36505.72 ohms\n", + "current gain = 36.16\n", + "power gain = 35.83\n", + "output impedance = 46.63 ohms\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_CC=20#\n", + "V_BE_Q=0.7#\n", + "V_T=26*10**-3# #thermal voltage\n", + "B=200# #beta value\n", + "R_S_1=10*10**3# #R_S is taken as R_S_1\n", + "R_1=100*10**3#\n", + "R_2=100*10**3#\n", + "R_L_1=1*10**3# #R_L is taken as R_L_1\n", + "R_E=2*10**3#\n", + "V_B=V_CC*R_2/(R_1+R_2)# #thevenin voltage\n", + "R_B=1/((1/R_1)+(1/R_2))# #thevenin resistance\n", + "R_L_2=1/((1/R_L_1)+(1/R_E))# #R_L' is taken as R_L_2\n", + "i_B_Q=(V_B-V_BE_Q)/(R_B+R_E*(1+B))\n", + "i_C_Q=B*i_B_Q#\n", + "i_E_Q=i_B_Q+i_C_Q#\n", + "V_CE_Q=V_CC-i_E_Q*R_E#\n", + "#we can verify that the device is in active region as we get V_CE>0.2 and i_BQ>0\n", + "r_pi=B*V_T/i_C_Q#\n", + "A_v=(1+B)*R_L_2/(r_pi+(1+B)*R_L_2)# #voltage gain\n", + "Z_it=r_pi+(1+B)*R_L_2# #input impedance of base of transistor\n", + "Z_i=1/((1/R_B)+(1/Z_it))# #input impedance of emitter-follower\n", + "R_S_2=1/((1/R_S_1)+(1/R_1)+(1/R_2))# #R_S' is taken as R_S_2\n", + "Z_o=1/(((1+B)/(R_S_2+r_pi))+(1/R_E))# #output impedance\n", + "A_i=A_v*Z_i/R_L_1# #current gain\n", + "G=A_v*A_i# #power gain\n", + "print \" All the values in the textbook are Approximated hence the values in this code differ from those of Textbook\"\n", + "print 'voltage gain = %0.2f'%A_v\n", + "print 'input impedance = %0.2f ohms'%Z_i\n", + "print 'current gain = %0.2f'%A_i\n", + "print 'power gain = %0.2f'%G\n", + "print 'output impedance = %0.2f ohms'%Z_o" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter14.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter14.ipynb new file mode 100644 index 00000000..c615c064 --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter14.ipynb @@ -0,0 +1,162 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 14 : Operational Amlifiers" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 632 Ex14.5" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "A0CL = 20 dB \n", + "\n", + " frequency = 400 kHz \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import log,log10\n", + "#initialisation of variables\n", + "ADOL= 10**5\n", + "ADOL1= 10\n", + "dc= 20\n", + "dc1= 10\n", + "f= 40 #kHz\n", + "#CALCULATIONS\n", + "ADOL2= dc*log(ADOL)\n", + "ADOL3= dc*log10(ADOL1)\n", + "f1= ADOL1*f\n", + "#RESULTS\n", + "print 'A0CL = %.f dB '%(ADOL3)\n", + "print '\\n frequency = %.f kHz '%(f1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 633 Ex14.5" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "full power = 6.63 kHz \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi\n", + "#initialisation of variables\n", + "SR= 0.5 #V/us\n", + "Vcon= 12 #V\n", + "#CALCULATIONS\n", + "f= SR*1000/(2*pi*Vcon)\n", + "#RESULTS\n", + "print 'full power = %.2f kHz '%f" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 634 Ex: 14.7" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Maximum output voltage = 34.00 milli-volts\n", + "Minimum output voltage = -24.00 milli-volts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_in=0#\n", + "I_B_max=100*10**-9# #maximum bias current\n", + "I_os_max=40*10**-9# #maximum offset current magnitude\n", + "V_os_max=2*10**-3# #maximum offset voltage\n", + "R_1=10*10**3#\n", + "R_2=100*10**3#\n", + "#we approach in such a way to calculate output voltage due to each of dc sources and using superposition\n", + "#1)OFFSET-VOLTAGE\n", + "#As we place offset voltage at noninverting input\n", + "V_o_osV_max=-(1+(R_2/R_1))*(-V_os_max)#\n", + "V_o_osV_min=-(1+(R_2/R_1))*V_os_max#\n", + "#2)BIAS-CURRENT SOURCES\n", + "#assuming ideal opamp conditions\n", + "V_i=0#\n", + "I_1=0#\n", + "I_2=-I_B_max#\n", + "V_o_bias_max=-R_2*I_2-R_1*I_1#\n", + "V_o_bias_min=0# #no minimum value of I_B is specified\n", + "#3)OFFSET-CURRENT SOURCE\n", + "#by analysis as in bias-current sources\n", + "V_o_osI_max=R_2*I_os_max/2#\n", + "V_o_osI_min=-R_2*I_os_max/2#\n", + "\n", + "V_o_max=V_o_osV_max+V_o_bias_max+V_o_osI_max# #maximum output volage\n", + "V_o_min=V_o_osV_min+V_o_bias_min+V_o_osI_min# #minimum output voltage\n", + "print 'Maximum output voltage = %0.2f milli-volts'%(V_o_max*10**3)\n", + "print 'Minimum output voltage = %0.2f milli-volts'%(V_o_min*10**3)" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter15.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter15.ipynb new file mode 100644 index 00000000..ff42018d --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter15.ipynb @@ -0,0 +1,539 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 15 : Magnetic circuits and transformers " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 668 Ex: 15.3" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "In the below two values,i represents sin(200*pi*t)\n", + "flux = j*2.513e-03 webers\n", + "flux linkages = j*0.25 weber turns\n", + "In the below answer, i represents cos(200*pi*t)\n", + "Voltage induced in the coil = 0.00+j*157.91 volts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi\n", + "M_r=5000# #relative permeability\n", + "R=10*10**-2#\n", + "r=2*10**-2#\n", + "N=100# #number of turns\n", + "#complex number 'i' is used as a symbol here\n", + "I=2*1J# #here 'i' represents sin(200*pi*t), not as a complex number\n", + "M_o=4*pi*10**-7# #permeability of free space\n", + "M=M_r*M_o# #permeability of the core material\n", + "phi=M*N*I*r**2/(2*R)# #flux\n", + "FL=N*phi# #flux linkages\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'In the below two values,i represents sin(200*pi*t)' #t-time\n", + "print 'flux = j*{:0.3e} webers'.format(phi.imag)\n", + "print 'flux linkages = j*{:.2f} weber turns'.format(FL.imag)\n", + "#differentiating 'λ' with respect to t\n", + "print 'In the below answer, i represents cos(200*pi*t)'\n", + "print 'Voltage induced in the coil = {0:.2f}+j*{1:0.2f} volts'.format((FL*200*pi).real,(FL*200*pi).imag)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 670 Ex: 15.5" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Current value = 2.01 amperes\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi\n", + "M_r=6000# #relative permeability\n", + "M_o=4*pi*10**-7# #permeability of free space\n", + "w_r=3*10**-2# #width of rectangular cross-section\n", + "d_r=2*10**-2# #depth of rectangular cross-section\n", + "N=500# #number of turns of coil\n", + "B_gap=0.25# #flux density\n", + "gap=0.5*10**-2# #air gap\n", + "#centerline of the flux path is a square of side 6cm\n", + "l_s=6*10**-2# #side of square\n", + "l_core=4*l_s-gap# #mean length of the iron core\n", + "A_core=w_r*d_r# #cross-sectional area of the core\n", + "M_core=M_r*M_o# #permeability of core\n", + "R_core=l_core/(M_core*A_core)# #reluctance of the core\n", + "A_gap=(d_r+gap)*(w_r+gap)# #effective area of gap\n", + "M_gap=M_o# #permeability of air(gap)\n", + "R_gap=gap/(M_gap*A_gap)# #reluctance of gap\n", + "R=R_gap+R_core# #total reluctance\n", + "phi=B_gap*A_gap# #flux\n", + "F=phi*R# #magnetomotive force\n", + "i=F/N# #current\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Current value = %0.2f amperes'%i" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 672 Ex: 15.6" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "flux density in gap a = 0.11 tesla\n", + "flux density in gap b = 0.22 tesla\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi\n", + "w_core=2*10**-2# #width\n", + "d_core=2*10**-2# #depth\n", + "A_core=w_core*d_core# #area of core\n", + "M_r=1000# #relative permeability\n", + "M_o=4*pi*10**-7# #permeability of free space\n", + "gap_a=1*10**-2#\n", + "gap_b=0.5*10**-2#\n", + "N=500# #number of turns of coil\n", + "i=2# #current in the coil\n", + "l_c=10*10**-2# #length for center path\n", + "R_c=l_c/(M_r*M_o*A_core)# #reluctance of center path\n", + "#For left side\n", + "#taking fringing ino account\n", + "A_gap_a=(w_core+gap_a)*(d_core+gap_a)# #area of gap a\n", + "R_gap_a=gap_a/(M_o*A_gap_a)# #reluctance of gap a\n", + "l_s=10*10**-2# #side of square\n", + "l_core_l=3*l_s-gap_a# #mean length on left side\n", + "R_core_l=l_core_l/(M_r*M_o*A_core)# #reluctance of core\n", + "R_L=R_core_l+R_gap_a# #total reluctance on left side\n", + "#For right side\n", + "#taking fringing ino account\n", + "A_gap_b=(w_core+gap_b)*(d_core+gap_b)# #area of gap b\n", + "R_gap_b=gap_b/(M_o*A_gap_b)# #reluctance of gap b\n", + "l_s=10*10**-2# #side of square\n", + "l_core_r=3*l_s-gap_b# #mean length on right side\n", + "R_core_r=l_core_r/(M_r*M_o*A_core)# #reluctance of core\n", + "R_R=R_core_r+R_gap_b# #total reluctance on right side\n", + "R_T=R_c+1/((1/R_L)+(1/(R_R)))# #total reluctance\n", + "phi_c=N*i/(R_T)# #flux in the center leg of coil\n", + "#by current-division principle\n", + "phi_L=phi_c*R_R/(R_L+R_R)# #left side\n", + "phi_R=phi_c*R_L/(R_L+R_R)# #right side\n", + "B_L=phi_L/A_gap_a# #flux density in gap a\n", + "B_R=phi_R/A_gap_b# #flux density in gap b\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'flux density in gap a = %0.2f tesla'%B_L\n", + "print 'flux density in gap b = %0.2f tesla'%B_R" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 673 Ex: 15.7" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Inductance of the given coil = 54.35 milli-henry\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "N=500# #number of turns of coil\n", + "R=4.6*10**6# #reluctance of the magnetic path from ex15.5\n", + "L=N**2/R# #inductance\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Inductance of the given coil = %0.2f milli-henry'%(L*10**3) #milli-10**-3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 674 Ex: 15.8" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "self-inductance of coil 1 = 1.0 milli henry\n", + "self-inductance of coil 2 = 4.0 in milli henry\n", + "mutual inductance of the coils = (2+0j) milli henry\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "R=10**7# #reluctance of core\n", + "N_1=100# #turns for coil 1\n", + "N_2=200# #turns for coil 2\n", + "L_1=N_1**2/R# #self-inductance of coil 1\n", + "L_2=N_2**2/R# #self-inductance of coil 2\n", + "#here, complex number i represents i_1 in textbook\n", + "phi_1=N_1*1J/R# #flux produced by i(i_1)\n", + "L_21=N_2*phi_1# #flux linkages of coil 2 from current in coil 1\n", + "M=L_21/1J# #mutual inductance\n", + "#milli-(10**-3)\n", + "print 'self-inductance of coil 1 =',L_1*10**3,'milli henry'\n", + "print 'self-inductance of coil 2 =',L_2*10**3,'in milli henry'\n", + "print 'mutual inductance of the coils =',M*10**3, 'milli henry'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 675 Ex: 15.9" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "The required turns ratio N1/N2 = 21.364\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_s_rms=4700# #for source\n", + "V_L_rms=220# #load voltage\n", + "tr=V_s_rms/V_L_rms# #turns ratio\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'The required turns ratio N1/N2 = %0.3f'%tr" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 676 Ex: 15.10" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "OPEN switch\n", + "Primary voltage = 110.00 volts\n", + "Secondary voltage = 22.00 volts\n", + "Current in primary and secondary windings = 0 in amperes\n", + "CLOSED switch\n", + "Primary voltage = 110.00 volts\n", + "Secondary voltage = 22.00 volts\n", + "Current in primary winding = 0.44 amperes\n", + "Current in secondary winding = 2.20 amperes\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_1_rms=110#\n", + "R_L=10#\n", + "tr=5# #turns ratio(N1/N2)\n", + "V_2_rms=V_1_rms/tr# #primary and secondary voltage relation\n", + "#a)open switch\n", + "print 'OPEN switch'\n", + "print 'Primary voltage = %0.2f volts'%V_1_rms\n", + "print 'Secondary voltage = %0.2f volts'%V_2_rms\n", + "#As switch is open, current in second winding is 0 which implies the current in primary coil to be 0 (ideal transformer condition)\n", + "print 'Current in primary and secondary windings =',0,'in amperes'\n", + "#b)closed switch\n", + "print 'CLOSED switch'\n", + "I_2_rms=V_2_rms/R_L# #ohm's law\n", + "I_1_rms=I_2_rms/tr# #ideal transformer condition\n", + "print 'Primary voltage = %0.2f volts'%V_1_rms\n", + "print 'Secondary voltage = %0.2f volts'%V_2_rms\n", + "print 'Current in primary winding = %0.2f amperes'%I_1_rms\n", + "print 'Current in secondary winding = %0.2f amperes'%I_2_rms" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 677 Ex: 15.11" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "PRIMARY CURRENT:\n", + "peak value = 0.35 amperes\n", + "phase angle = -45.00 degrees\n", + "PRIMARY VOLTAGE:\n", + "peak value = 790.57 amperes\n", + "phase angle = 18.43 degrees\n", + "SECONDARY CURRENT\n", + "peak value = 3.54 amperes\n", + "phase angle = -45.00 degrees\n", + "SECONDARY VOLTAGE\n", + "peak value = 79.06 amperes\n", + "phase angle = 18.43 degrees\n", + "power delivered to load = 62.50 watts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from cmath import sin,cos,polar,phase,sqrt\n", + "V_s=1000*complex(cos(0),sin(0))# #source voltage phasor\n", + "R_1=10**3#\n", + "R_L=10#\n", + "Z_L_1=R_L+1J*20# #impedance\n", + "tr=10# #turns ratio(N1/N2)\n", + "Z_L_2=(tr**2)*Z_L_1# #reflecting Z_L_1 onto primary side\n", + "Z_s=R_1+Z_L_2# #total impedance seen by the source \n", + "\n", + "Z_s_max = abs(Z_s)\n", + "Z_s_phi=phase(Z_s)\n", + "#primary quantities\n", + "I_1=V_s/Z_s#\n", + "I_1_max = abs(I_1)\n", + "I_1_phi = phase(I_1)\n", + "V_1=I_1*Z_L_2#\n", + "V_1_max=abs(V_1)\n", + "V_1_phi=phase(V_1)\n", + "#using turns ratio to find secondary quantities\n", + "I_2=tr*I_1#\n", + "I_2_max=abs(I_2)\n", + "I_2_phi=phase(I_2)\n", + "V_2=V_1/tr#\n", + "V_2_max=abs(V_2)\n", + "V_2_phi=phase(V_2)\n", + "I_2_rms=I_2_max/sqrt(2)#\n", + "P_L=(I_2_rms**2)*R_L# #power to load\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "#we take real parts of angles to take out neglegible and unnecessary imaginary parts(if any are there)\n", + "print 'PRIMARY CURRENT:'\n", + "print 'peak value = %0.2f amperes'%I_1_max\n", + "print 'phase angle = %0.2f degrees'%((I_1_phi*180/pi).real)\n", + "print 'PRIMARY VOLTAGE:'\n", + "print 'peak value = %0.2f amperes'%(V_1_max)\n", + "print 'phase angle = %0.2f degrees'%((V_1_phi*180/pi).real)\n", + "print 'SECONDARY CURRENT'\n", + "print 'peak value = %0.2f amperes'%I_2_max\n", + "print 'phase angle = %0.2f degrees'%((I_2_phi*180/pi).real)\n", + "print 'SECONDARY VOLTAGE'\n", + "print 'peak value = %0.2f amperes'%(V_2_max)\n", + "print 'phase angle = %0.2f degrees'%((V_2_phi*180/pi).real)\n", + "print 'power delivered to load = %0.2f watts'%abs(P_L)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 678 Ex: 15.12" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Reflected voltage:\n", + "Peak value = 100.00 volts\n", + "phase angle = 0.00 degrees\n", + "Reflected resistance = 10.00 ohms\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from cmath import polar,pi,sin,cos\n", + "V_s=1000*complex(cos(0),sin(0))# #source voltage phasor\n", + "R_1=10**3#\n", + "tr=10# #turns ratio(N1/N2)\n", + "V_S=V_s/tr# #reflected voltage\n", + "V_S_max=polar(V_S)[0]\n", + "V_S_phi=polar(V_S)[1]\n", + "R1=R_1/(tr**2)# #reflected resistance\n", + "#we take real parts of angles to take out neglegible and unnecessary imaginary parts(if any are there)\n", + "print 'Reflected voltage:'\n", + "print 'Peak value = %0.2f volts'%V_S_max\n", + "print 'phase angle = %0.2f degrees'%(V_S_phi*180/pi)\n", + "print 'Reflected resistance = %0.2f ohms'%R1" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 679 Ex: 15.13" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Percent regulation = 4.51\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from cmath import polar,pi,sin,cos,acos\n", + "\n", + "V_L_max=240#\n", + "V_L=V_L_max*complex(cos(0),sin(0))# #load voltage\n", + "R_1=3#\n", + "R_2=0.03#\n", + "R_c=100*10**3# #core-loss resistance\n", + "tr=10# #turns ratio(N1/N2)\n", + "#leakage reactances\n", + "Z_1=1J*6.5#\n", + "Z_2=1J*0.07#\n", + "Z_m=1J*15*10**3#\n", + "P_R=20*10**3# #rated power\n", + "I_2_max=P_R/(V_L.real)#\n", + "PF=0.8# #power factor\n", + "phi=-acos(PF)# #-ve for lagging power\n", + "I_2=complex(I_2_max*cos(phi),I_2_max*sin(phi))# #phasor\n", + "I_1=I_2/tr# #primary current\n", + "I_1_max=polar(I_1)[0]\n", + "I_1_phi =polar(I_1)[1]\n", + "V_2=V_L+(R_2+Z_2)*I_2# #KVL equation\n", + "V_1=tr*V_2#\n", + "V_s=V_1+(R_1+Z_1)*I_1# #KVL equation\n", + "V_s_max = polar(V_s)[0]\n", + "V_s_phi =polar(V_s)[1]#\n", + "P_loss=((V_s_max**2)/R_c)+((I_1_max**2)*R_1)+((I_2_max**2)*R_2)# #power loss in transformer\n", + "P_L=V_L*I_2*PF# #power to load\n", + "P_in=P_L+P_loss# #input power\n", + "P_eff=(1-(P_loss/P_in))*100#\n", + "#under no-load condtions\n", + "I_1=0#\n", + "I_2=0#\n", + "V_1=V_s_max#\n", + "V_no_load=V_1/tr#\n", + "PR=((V_no_load-V_L_max)/V_L_max)*100#\n", + "print 'Percent regulation = %0.2f'%PR" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter16.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter16.ipynb new file mode 100644 index 00000000..1934ac43 --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter16.ipynb @@ -0,0 +1,393 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 16 : DC Machines" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 719 Ex: 16.1" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Power loss with full-load = 312.19 watts\n", + "Efficiency with full-load = 92.28\n", + "Input power with no-load = 274.36 watts\n", + "speed regulation percentage for the motor : 3.91\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "V_rms=440#\n", + "P_o_fl=5*746# #full-load rated output power\n", + "I_rms_fl=6.8# #full-load line current\n", + "PF_fl=0.78# #full-load power factor\n", + "n_fl=1150# #full-load speed in rpm\n", + "I_rms_nl=1.2# #no-load line current\n", + "PF_nl=0.3# #no-load power factor\n", + "n_nl=1195# #no-load speed in rpm\n", + "P_in_fl=sqrt(3)*V_rms*I_rms_fl*PF_fl# #full-load input power\n", + "P_loss_fl=P_in_fl-P_o_fl# #full-load power loss\n", + "eff_fl=(P_o_fl/P_in_fl)*100# #full-load efficiency\n", + "P_in_nl=sqrt(3)*V_rms*I_rms_nl*PF_nl# #no-load input power\n", + "P_o_nl=0# #no-load output power\n", + "eff_nl=0# #no-load efficiency('0' as P_o_nl=0)\n", + "SR=(n_nl-n_fl)*100/n_fl# #speed regulation\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Power loss with full-load = %0.2f watts'%P_loss_fl\n", + "print 'Efficiency with full-load = %0.2f'%eff_fl\n", + "print 'Input power with no-load = %0.2f watts'%P_in_nl\n", + "print 'speed regulation percentage for the motor : %0.2f'%SR" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 720 Ex: 16.2" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "CASE a:\n", + "initial current = 40.00 amperes\n", + "initial force on the bar = 12.00 newtons\n", + "steady-state final speed = 6.67 m/s\n", + "CASE b:\n", + "steady-state speed = 4.44 m/s\n", + "power delivered by V_t = 26.67 watts\n", + "power delivered to mechanical load = 17.78 watts\n", + "power lost to heat in the resistance = 8.89 watts\n", + "effciency of converting electrical power to mechanical power : 66.67\n", + "CASE c:\n", + "steady-state speed = 7.78 m/s\n", + "power taken from mechanical source = 15.56 watts\n", + "power delivered to the battery = 13.33 watts\n", + "power lost to heat in the resistance = 2.22 watts\n", + "efficiency of converting mechanical power to electrical power : 85.71\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi\n", + "\n", + "B=1# #magnetic flux density\n", + "l=0.3#\n", + "V_T=2#\n", + "R_A=0.05#\n", + "#CASE a\n", + "#bar is stationary at t=0\n", + "u_ini=0# #initial velocity of bar is 0\n", + "e_A=B*l*u_ini# #induced voltage\n", + "i_A_ini=(V_T-e_A)/R_A# #initial current\n", + "F_ini=B*l*i_A_ini# #initial force on the bar\n", + "#steady state condition with no-load e_A=B*l*u=V_T\n", + "u=V_T/(B*l)# #from steady state condition with no-load\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'CASE a:'\n", + "print 'initial current = %0.2f amperes'%i_A_ini\n", + "print 'initial force on the bar = %0.2f newtons'%F_ini\n", + "print 'steady-state final speed = %0.2f m/s'%u\n", + "#CASE b\n", + "F_load=4# #mechanical load\n", + "#steady state condition F=B*l*i_A=F_load\n", + "i_A=F_load/(B*l)# #from steady state condition\n", + "e_A=V_T-R_A*i_A# #induced voltage\n", + "u=e_A/(B*l)# #steady-state speed\n", + "P_m=F_load*u# #mechanical power\n", + "P_t=V_T*i_A# #power taken from battery\n", + "P_R=i_A**2*R_A# #power dissipated in the resistance\n", + "eff=P_m*100/P_t# #efficiency\n", + "print 'CASE b:'\n", + "print 'steady-state speed = %0.2f m/s'%u\n", + "print 'power delivered by V_t = %0.2f watts'%P_t\n", + "print 'power delivered to mechanical load = %0.2f watts'%P_m\n", + "print 'power lost to heat in the resistance = %0.2f watts'%P_R\n", + "print 'effciency of converting electrical power to mechanical power : %0.2f'%eff\n", + "#CASE c\n", + "#with the pulling force acting to the right, machine operates as a generator\n", + "F_pull=2# #pulling force\n", + "#steady-state condition F=B*l*i_A=F_pull\n", + "i_A=F_pull/(B*l)# #from steady-state condition\n", + "e_A=V_T+R_A*i_A# #induced voltage\n", + "u=e_A/(B*l)# #steady-state speed\n", + "P_m=F_pull*u# #mechanical power\n", + "P_t=V_T*i_A# #power taken by battery\n", + "P_R=i_A**2*R_A# #power dissipated in the resistance\n", + "eff=P_t*100/P_m# #efficiency\n", + "print 'CASE c:'\n", + "print 'steady-state speed = %0.2f m/s'%u\n", + "print 'power taken from mechanical source = %0.2f watts'%P_m\n", + "print 'power delivered to the battery = %0.2f watts'%P_t\n", + "print 'power lost to heat in the resistance = %0.2f watts'%P_R\n", + "print 'efficiency of converting mechanical power to electrical power : %0.2f'%eff" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 721 Ex: 16.3" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Voltage applied to field circuit = 125.00 volts\n", + "Voltage applied to armature 105.67 volts\n", + "Developed torque = 34.62 Nm\n", + "Developed power = 2900.00 watts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi\n", + "n_2=800# #speed in rpm\n", + "I_A=30# #armature current\n", + "I_F=2.5# #field current\n", + "R_A=0.3# #armature resistance\n", + "R_F=50# #field resistance\n", + "V_F=I_F*R_F# #field coil voltage\n", + "#E_A1 and n_1 from magnetization curve\n", + "E_A1=145# #induced voltage\n", + "n_1=1200# #speed in rpm\n", + "E_A2=n_2*E_A1/n_1#\n", + "W_m=n_2*2*pi/60# #speed in radians per second\n", + "K=E_A2/W_m# #K*phi is taken as K, machine constant\n", + "T_dev=K*I_A# #developed torque\n", + "P_dev=W_m*T_dev# #developed power\n", + "V_T=R_A*I_A+E_A2# #voltage applied to armature\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Voltage applied to field circuit = %0.2f volts'%V_F\n", + "print 'Voltage applied to armature %0.2f volts'%V_T\n", + "print 'Developed torque = %0.2f Nm'%T_dev #Nm-newton meter\n", + "print 'Developed power = %0.2f watts'%P_dev" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 722 Ex: 16.4" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Motor speed = 995.87 rpm\n", + "Efficiency of the motor : 85.28\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi\n", + "V_T=240# #dc supply voltage\n", + "R_A=0.065# #armature resistance\n", + "R_F=10# #field resistance\n", + "R_adj=14# #adjustable resistance\n", + "n=1200# #speed in rpm\n", + "P_rot=1450# #rotational power loss\n", + "T_out=250# #hoist torque\n", + "I_F=V_T/(R_F+R_adj)# #field current\n", + "#E_A at I_F and n from magnetization curve \n", + "E_A_1=280# #armature voltage\n", + "W_m_1=n*2*pi/60# #speed in radians per second\n", + "K=E_A_1/W_m_1# #machine constant\n", + "T_rot=P_rot/W_m_1# #rotational loss-torque\n", + "T_dev=T_rot+T_out# #developed torque\n", + "I_A=T_dev/K# #armature current\n", + "E_A_2=V_T-R_A*I_A# #applying KVL\n", + "W_m_2=E_A_2/K# #speed in radians per second\n", + "n_m=W_m_2*60/(2*pi)# #speed in rpm\n", + "P_out=T_out*W_m_2# #output power\n", + "I_L=I_F+I_A# #line current\n", + "P_in=V_T*I_L# #input power\n", + "eff=P_out*100/P_in# #efficiency\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Motor speed = %0.2f rpm'%n_m\n", + "print 'Efficiency of the motor : %0.2f'%eff" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 723 Ex: 16.5" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Output power for load torque=12 = 1507.96 watts\n", + "speed for torque=24 = 848.53 rpm\n", + "Output power for load torque=24 = 2132.58 watts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,sqrt\n", + "n_m_1=1200# #speed in rpm\n", + "T_out_1=12# #motor torque\n", + "W_m_1=n_m_1*2*pi/60# #angular speed\n", + "#As we are neglecting losses, the output torque and power are equal to the developed torque and power respectively\n", + "P_out_1=W_m_1*T_out_1# #output power\n", + "#For Torque=24\n", + "T_out_2=24#\n", + "T_dev_2=T_out_2#\n", + "#T_dev=K*K_F*V_T**2/(R_A+R_F+K*K_F*W_m**2)\n", + "#neglecting resistances and with the above equation for T_dev, we get inverse relation between torque and square of speed\n", + "W_m_2=W_m_1*sqrt(T_out_1)/sqrt(T_dev_2)#\n", + "n_m_2=W_m_2*60/(2*pi)#\n", + "P_out_2=T_dev_2*W_m_2#\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Output power for load torque=12 = %0.2f watts'%P_out_1\n", + "print 'speed for torque=24 = %0.2f rpm'%n_m_2\n", + "print 'Output power for load torque=24 = %0.2f watts'%P_out_2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 724 Ex: 16.6" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Field current = 10.00 amperes\n", + "no-load voltage = 233.33 volts\n", + "full-load voltage = 220.33 volts\n", + "percentage voltage regulation : 5.90\n", + "input torque = 495.07 Nm\n", + "developed torque = 445.63 Nm\n", + "all types of power losses combined = 5176.47 watts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,sqrt\n", + "V_F=140# #field voltage\n", + "R_F=10# #field resistance\n", + "R_adj=4# #adjusting resistance\n", + "R_A=0.065# #armature resistance\n", + "n_A=1000# #armature speed in rpm\n", + "I_fl=200# #full-load current\n", + "eff=0.85# #efficiency not including power supplied to field circuit\n", + "I_F=V_F/(R_adj+R_F)# #field current\n", + "#E, voltage from magnetization curve for speed of n=1200\n", + "n=1200#\n", + "E=280# #voltage of armature\n", + "#E_A is no-load voltage\n", + "E_A=E*n_A/n# #E_A is proportional to speed\n", + "V_FL=E_A-R_A*I_fl# #full-load voltage\n", + "VR=(E_A-V_FL)*100/V_FL# #voltage regulation\n", + "P_out=I_fl*V_FL# #output power\n", + "P_dev=P_out+(I_fl**2)*R_A# #developed power\n", + "W_m=n_A*2*pi/60# #angular speed\n", + "P_in=P_out/eff# #input power\n", + "P_loss=P_in-P_dev# #all power losses combined\n", + "T_in=P_in/W_m# #input torque\n", + "T_dev=P_dev/W_m# #developed torque\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Field current = %0.2f amperes'%I_F\n", + "print 'no-load voltage = %0.2f volts'%E_A\n", + "print 'full-load voltage = %0.2f volts'%V_FL\n", + "print 'percentage voltage regulation : %0.2f'%VR\n", + "print 'input torque = %0.2f Nm'%T_in\n", + "print 'developed torque = %0.2f Nm'%T_dev\n", + "print 'all types of power losses combined = %0.2f watts'%P_loss" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter17.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter17.ipynb new file mode 100644 index 00000000..047d0cba --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter17.ipynb @@ -0,0 +1,354 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 17 : AC Machines" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 774 Ex: 17.1" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Power factor : 0.89\n", + "line current = 37.58 amperes\n", + "output power = 26494.77 watts\n", + "output torque = 144.91 Nm\n", + "efficiency percentage : 88.50\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from cmath import polar\n", + "from math import sin,cos,pi,sqrt\n", + "P_rot=900# #rotational losses\n", + "V_L=440*complex(cos(0),sin(0))#\n", + "R_s=1.2#\n", + "X_s=1J*2#\n", + "X_m=1J*50#\n", + "R_r_1=0.6#\n", + "R_r_2=19.4#\n", + "X_r=1J*0.8#\n", + "n_m=1746# #machine operating speed in rpm\n", + "W_m=n_m*2*pi/60# #speed in radians per second\n", + "n_s=1800# #synchronous speed for a four-pole monitor\n", + "s=(n_s-n_m)/n_s# #slip\n", + "Z_s=R_s+X_s+(X_m*(R_r_1+R_r_2+X_r))/(X_m+R_r_1+R_r_2+X_r)# #impedance seen by the source\n", + "Z_s_max=polar(Z_s)[0]\n", + "phi=polar(Z_s)[1]\n", + "Z_s_phi=(phi.real)# #removing negligible imaginary part(if any is there)\n", + "PF=cos(Z_s_phi)# #power factor\n", + "V_s=V_L# #phase voltage\n", + "I_s=V_s/Z_s# #phase current\n", + "I_s_max=polar(I_s)[0]\n", + "I_s_phi=polar(I_s)[1]\n", + "I_L=I_s_max*sqrt(3)# #line current\n", + "P_in=3*I_s*V_s*PF# #input power\n", + "V_x=I_s*(X_m*(R_r_1+R_r_2+X_r))/(X_m+R_r_1+R_r_2+X_r)#\n", + "I_r=V_x/(X_r+R_r_1+R_r_2)#\n", + "I_r_max=polar(I_s)[0]\n", + "I_r_phi=polar(I_r)[1]#\n", + "P_s=3*R_s*I_s_max**2# #copper loss in stator\n", + "P_r=3*R_r_1*I_r_max**2# #copper loss in rotor\n", + "P_dev=3*(1-s)*R_r_1*I_r_max**2/s# #developed power\n", + "#we may verify that P_in=P_dev+P_s+P_r to within rounding error\n", + "P_in=P_dev+P_s+P_r# #input power\n", + "P_o=P_dev-P_rot# #output power\n", + "T_o=P_o/W_m# #output torque\n", + "eff=P_o*100/P_in# #efficiency\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Power factor : %0.2f'%PF\n", + "print 'line current = %0.2f amperes'%I_L\n", + "print 'output power = %0.2f watts'%P_o\n", + "print 'output torque = %0.2f Nm'%T_o\n", + "print 'efficiency percentage : %0.2f'%eff" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 775 Ex: 17.2" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Starting line current = 229.99 A\n", + "Torque = 163.08 Nm\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from cmath import polar\n", + "from math import sin,cos,pi,sqrt\n", + "s=1# #slip for starting\n", + "V_L=440*complex(cos(0),sin(0))#\n", + "f=60#\n", + "R_s=1.2#\n", + "X_s=1J*2#\n", + "X_m=1J*50#\n", + "R_r_1=0.6#\n", + "R_r_2=19.4#\n", + "X_r=1J*0.8#\n", + "Z_eq=X_m*(R_r_1+X_r)/(X_m+R_r_1+X_r)# #equivalent impedance to the right in the figure in textbook\n", + "Z_s=R_s+X_s+Z_eq#\n", + "I_s=V_s/Z_s# #starting phase current\n", + "I_s_max=polar(I_s)[0]\n", + "phi=polar(I_s)[1]\n", + "I_L=sqrt(3)*I_s_max# #starting line current\n", + "#I_L here is almost six times larger than in previous example. It is a typical characteristic of induction motors.\n", + "P_ag=3*(Z_eq.real)*I_s_max**2# #power crossing air gap\n", + "W_s=2*pi*(60)#\n", + "T_dev=P_ag/(W_s/2)#\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Starting line current = %0.2f A'%I_L\n", + "print 'Torque = %0.2f Nm'%T_dev" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 776 Ex: 17.3" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Power crossing the air gap = 8708.08 watts\n", + "developed power = 8558.08 watts\n", + "output power = 8058.08 watts\n", + "effciency percentage : 88.47\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,sqrt\n", + "V_L=220#\n", + "V_s=V_L/sqrt(3)# #phase voltage\n", + "I_s=31.87#\n", + "P_s=400# #total stator copper losses\n", + "P_r=150# #total rotoe copper losses\n", + "P_rot=500# #rotational losses\n", + "PF=0.75# #power factor\n", + "P_in=3*V_s*I_s*PF# #input power\n", + "P_ag=P_in-P_s# #air-gap power\n", + "P_dev=P_in-P_s-P_r# #developed power\n", + "P_o=P_dev-P_rot# #output power\n", + "eff=P_o*100/P_in# #efficiency\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Power crossing the air gap = %0.2f watts'%P_ag\n", + "print 'developed power = %0.2f watts'%P_dev\n", + "print 'output power = %0.2f watts'%P_o\n", + "print 'effciency percentage : %0.2f'%eff #this value is given wrong in the textbook" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 777 Ex: 17.4" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "CASE a:\n", + "speed = 900.00 rpm\n", + "developed torque = 395.77 Nm\n", + "CASE b:\n", + "Phase current:\n", + "peak value = 28.78 amperes\n", + "phase angle = 25.84 degrees\n", + "Voltage induced by rotor:\n", + "peak value = 498.88 volts\n", + "phase angle = -4.17 degrees\n", + "torque angle = 4.17 degrees\n", + "CASE c:\n", + "Phase current:\n", + "peak value = 52.71 amperes\n", + "phase angle = 10.61 degrees\n", + "Voltage induced by rotor:\n", + "peak value = 498.88 volts\n", + "phase angle = -8.36 degrees\n", + "torque angle = 8.36 degrees\n", + "power factor : 0.98\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,sqrt,acos,sin,cos,atan,asin\n", + "\n", + "P_dev_1=50*746# #developed power\n", + "V_L=480# #line voltage\n", + "PF=0.9# #power factor\n", + "f=60# #frequency\n", + "P=8# #number of poles\n", + "X_s=1.4# #synchronous reactance\n", + "#CASE a\n", + "n_s=120*f/P# #speed of machine in rpm\n", + "W_s=n_s*2*pi/60# #speed in radians per second\n", + "T_dev=P_dev_1/W_s# #developed torque\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'CASE a:'\n", + "print 'speed = %0.2f rpm'%n_s\n", + "print 'developed torque = %0.2f Nm'%T_dev\n", + "#CASE b\n", + "V_a=V_L# #phase voltage\n", + "I_a_max=P_dev_1/(3*V_a*PF)# #phase current\n", + "phi=acos(PF)#\n", + "I_a=I_a_max*complex(cos(phi),sin(phi))#\n", + "E_r=V_a-1J*X_s*I_a# #voltage induced by rotor\n", + "E_r_max=sqrt(((E_r.real)**2)+((E_r.imag)**2))#\n", + "E_r_phi=atan((E_r.imag)/(E_r.real))#\n", + "TA=-E_r_phi# #torque angle\n", + "print 'CASE b:'\n", + "print 'Phase current:'\n", + "print 'peak value = %0.2f amperes'%I_a_max\n", + "print 'phase angle = %0.2f degrees'%(phi*180/pi)\n", + "print 'Voltage induced by rotor:'\n", + "print 'peak value = %0.2f volts'%E_r_max\n", + "print 'phase angle = %0.2f degrees'%(E_r_phi*180/pi)\n", + "print 'torque angle = %0.2f degrees'%(TA*180/pi)\n", + "#CASE c\n", + "#excitation constant means the values of I_f, B_r and E_r are constant\n", + "P_dev_2=100*746#\n", + "sin_t=P_dev_2*sin(TA)/P_dev_1# #developed power is proportional to sin_t\n", + "t=asin(sin_t)#\n", + "E_r=E_r_max*complex(cos(-t),sin(-t))# #E_r is constant in magnitude\n", + "I_a=(V_a-E_r)/(1J*X_s)# #new phase current\n", + "I_a_max=sqrt(((I_a.real)**2)+((I_a.imag)**2))#\n", + "I_a_phi=atan((I_a.imag)/(I_a.real))#\n", + "PF=cos(I_a_phi)#\n", + "print 'CASE c:'\n", + "print 'Phase current:'\n", + "print 'peak value = %0.2f amperes'%I_a_max\n", + "print 'phase angle = %0.2f degrees'%(I_a_phi*180/pi)\n", + "print 'Voltage induced by rotor:'\n", + "print 'peak value = %0.2f volts'%E_r_max\n", + "print 'phase angle = %0.2f degrees'%(-t*180/pi)\n", + "print 'torque angle = %0.2f degrees'%(t*180/pi)\n", + "print 'power factor : %0.2f'%(PF)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 778 Ex: 17.5" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "The new field current to achieve 100% power factor = 12.05 amperes\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,sqrt,acos,sin,cos,atan,asin\n", + "from cmath import polar\n", + "V_a=480# #phase voltage\n", + "f=60# #frequency\n", + "P_dev=200*746# #developed power\n", + "PF=0.85# #power factor\n", + "I_f_1=10# #field current\n", + "X_s=1.4# #synchronous resistance\n", + "phi=acos(PF)#\n", + "I_a_1_max=P_dev/(3*V_a*PF)# #phase current\n", + "I_a_1_phi=-phi#\n", + "I_a_1=I_a_1_max*complex(cos(-phi),sin(-phi))#\n", + "E_r_1=V_a-1J*X_s*I_a_1# #rotor induced voltage\n", + "E_r_1_max=polar(E_r_1)[0]\n", + "E_r_1_phi=polar(E_r_1)[1]\n", + "#to achieve 100 percent power factor, increase I_a until it is in phase with V_a\n", + "I_a_2=P_dev/(3*V_a*cos(0))#\n", + "E_r_2=V_a-1J*X_s*I_a_2#\n", + "E_r_2_max=polar(E_r_2)[0]\n", + "E_r_2_phi=polar(E_r_2)[1]\n", + "I_f_2=I_f_1*E_r_2_max/E_r_1_max# #magnitude of E_r proportional to field current\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'The new field current to achieve 100%% power factor = %0.2f amperes'%I_f_2" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter2.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter2.ipynb new file mode 100644 index 00000000..55d531da --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter2.ipynb @@ -0,0 +1,785 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 2 : Resistive Circuits" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 74 Ex: 2.1" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Equivalent resistance = 20.00 ohms\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "R_1=10#\n", + "R_2=20#\n", + "R_3=5#\n", + "R_4=15#\n", + "#We proceed through various combinations of resistances in series or parallel while we replace them with equivalent resistances We start with R_3 and R_4.\n", + "R_eq_1=R_3+R_4# #R_3 and R_4 in series\n", + "R_eq_2=1/((1/R_eq_1)+(1/R_2))# #R_eq_1 and R_2 in parallel\n", + "R_eq=R_1+R_eq_2# #R_1 and R_eq_2 in series\n", + "print 'Equivalent resistance = %0.2f ohms'%R_eq" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 74 Ex: 2.2" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "FOR SOURCE\n", + "current = 3 amperes\n", + "power = -270.00 watts\n", + "FOR R1\n", + "current = 3.00 amperes\n", + "voltage = 30.00 volts\n", + "power = 90.00 watts\n", + "FOR R2\n", + "2.0 current in amperes\n", + "current = 2.00 amperes\n", + "voltage = 60.00 volts\n", + "power = 120.00 watts\n", + "FOR R3\n", + "current = 1.00 amperes\n", + "voltage = 60.00 volts\n", + "power = 60.00 watts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_s=90# #source voltage\n", + "R_1=10#\n", + "R_2=30#\n", + "R_3=60#\n", + "R_eq_1=1/((1/R_2)+(1/R_3))# #R_2 and R_3 in parallel\n", + "R_eq=R_1+R_eq_1# #R_1 and R_eq_1 in series\n", + "i_1=V_s/R_eq# #ohm's law\n", + "#i_1 flows clockwise through V_s,R_1 and R_eq_1\n", + "V_2=R_eq_1*i_1# #voltage across R_eq_1\n", + "#As R_eq_1 is equivalent of parallel combination of R_2 and R_3, V_2 appears across both of them\n", + "i_2=V_2/R_2# #ohm's law\n", + "i_3=V_2/R_3# #ohm's law\n", + "#we can verify KCL, i_1=i_2+i_3\n", + "V_1=i_1*R_1# #ohm's law\n", + "#we can verify KVL, V_s=V_1+V_2\n", + "P_s=-V_s*i_1# #source power(-ve sign as V_s and i_1 have references opposite to passive configuration)\n", + "P_1=i_1**2*R_1# #power for R_1\n", + "P_2=V_2**2/R_2# #power for R_2\n", + "P_3=V_2**2/R_3# #power for R_3\n", + "print 'FOR SOURCE'\n", + "print 'current = %0.2g amperes'%i_1\n", + "print 'power = %0.2f watts'%P_s\n", + "print 'FOR R1'\n", + "print 'current = %0.2f amperes'%i_1\n", + "print 'voltage = %0.2f volts'%V_1\n", + "print 'power = %0.2f watts'%P_1\n", + "print 'FOR R2'\n", + "print i_2,'current in amperes'\n", + "print 'current = %0.2f amperes'%i_2\n", + "print 'voltage = %0.2f volts'%V_2\n", + "print 'power = %0.2f watts'%P_2\n", + "print 'FOR R3'\n", + "print 'current = %0.2f amperes'%i_3\n", + "print 'voltage = %0.2f volts'%V_2\n", + "print 'power = %0.2f watts'%P_3\n", + "#we may verify that P_s+P_1+P_2+P_3=0" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 75 Ex: 2.3" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "voltage across R_1 : 1.50 V\n", + "voltage across R_4 : 9.00 V\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_total=15#\n", + "R_1=1*10**3#\n", + "R_2=1*10**3#\n", + "R_3=2*10**3#\n", + "R_4=6*10**3#\n", + "#By voltage-division priciple\n", + "V_1=R_1*V_total/(R_1+R_2+R_3+R_4)# #voltage across R_1\n", + "V_4=R_4*V_total/(R_1+R_2+R_3+R_4)# #voltage across R_4\n", + "print 'voltage across R_1 : %0.2f V'%V_1\n", + "print 'voltage across R_4 : %0.2f V'%V_4" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 75 Ex: 2.4" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\n", + "voltage across R2 or R3 = 25.00 volts\n", + "source current = 1.25 amperes\n", + "current through R3 = 0.42 amperes\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_s=100# #source current\n", + "R_1=60#\n", + "R_2=30#\n", + "R_3=60#\n", + "R_x=1/((1/R_2)+(1/R_3))# #R_2 and R_3 parallel\n", + "V_x=R_x*V_s/(R_1+R_x)# #voltage across R_x(voltage-division principle)\n", + "i_s=V_s/(R_1+R_x)# #ohm's law\n", + "i_3=R_2*i_s/(R_2+R_3)# #current through R_3(current-division principle)\n", + "print \" All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\"\n", + "print 'voltage across R2 or R3 = %0.2f volts'%V_x\n", + "print 'source current = %0.2f amperes'%i_s\n", + "print 'current through R3 = %0.2f amperes'%i_3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 76 Ex: 2.5" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "current through R1 = 10.00 amperes from resistance method\n", + "current through R1 = 10.00 amperes from conductance method\n", + "We get the same alue in both methods\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "i_s=15# #source current\n", + "R_1=10#\n", + "R_2=30#\n", + "R_3=60#\n", + "R_eq=1/((1/R_2)+(1/R_3))# #R_2 and R_3 in parallel\n", + "i_1=R_eq*i_s/(R_1+R_eq)# #current through R_1(current-division principle)\n", + "print 'current through R1 = %0.2f amperes from resistance method'%i_1\n", + "#we can also do the above calculations using conductances as shown below.\n", + "#Conductances of respective resistances\n", + "G_1=1/R_1#\n", + "G_2=1/R_2#\n", + "G_3=1/R_3#\n", + "i_1=G_1*i_s/(G_1+G_2+G_3)#\n", + "print 'current through R1 = %0.2f amperes from conductance method'%i_1\n", + "print 'We get the same alue in both methods'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 76 Ex: 2.7" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The matrix form is\n", + "G*V=I\n", + "where\n", + "G=\n", + "[[ 0.45 -0.25 0. ]\n", + " [-0.25 0.85 -0.2 ]\n", + " [ 0. -0.2 0.3 ]]\n", + "V=\n", + "transpose of [V_1,V_2,V_3]\n", + "and\n", + "I=\n", + "[[-3.5]\n", + " [ 3.5]\n", + " [ 2. ]]\n" + ] + } + ], + "source": [ + "from numpy import mat\n", + "print 'The matrix form is'\n", + "print 'G*V=I'\n", + "print 'where'\n", + "G=mat([[0.45,-0.25,0],[-0.25,0.85,-0.20],[0,-0.20,0.30]])\n", + "print 'G=\\n',G\n", + "print 'V='\n", + "print 'transpose of [V_1,V_2,V_3]'\n", + "print 'and'\n", + "I=mat([[-3.5],[3.5],[2]])\n", + "print 'I=\\n',I" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 77 Ex: 2.8" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "All the values in the textbook are approximated,hence the values in this code differ from those of textbook\n", + "voltage at node1 = 45.45 volts\n", + "voltage at node2 = 72.73 volts\n", + "voltage at node3 = 27.27 volts\n", + "value of current ix = 0.91 amperes\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from numpy import mat\n", + "from numpy.linalg import solve\n", + "R=20#\n", + "G=mat([[0.35,-0.2,-0.05],[-0.2,0.3,-0.1],[-0.05,-0.1,0.35]]) #coefficient matrix\n", + "I=mat([[0],[10],[0]]) #current matrix\n", + "V=solve(G,I)# #voltage matrix(from G=V*I)\n", + "i_x=(V[0]-V[2])/R#\n", + "print \"All the values in the textbook are approximated,hence the values in this code differ from those of textbook\"\n", + "print 'voltage at node1 = %0.2f volts'%V[0,0]\n", + "print 'voltage at node2 = %0.2f volts'%V[1,0]\n", + "print 'voltage at node3 = %0.2f volts'%V[2,0]\n", + "print 'value of current ix = %0.2f amperes'%i_x[0,0]\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 80 Ex: 2.13" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "current in mesh1, i1= 4.0 A\n", + "current in mesh2, i2= 1.0 A\n", + "current in mesh3, i3= 2.0 A\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from numpy import mat\n", + "from numpy.linalg import solve\n", + "R=mat([[30, -10, -20],[-10, 22, -12],[-20 ,-12, 46]]) #coefficient matrix\n", + "V=mat([[70],[-42],[0]]) #voltage matrix\n", + "I=solve(R,V)# #current matrix(from R*I=V)\n", + "print 'current in mesh1, i1=',I[0,0],\"A\"\n", + "print 'current in mesh2, i2=',I[1,0],\"A\"\n", + "print 'current in mesh3, i3=',I[2,0],\"A\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 81 Ex: 2.15" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Value of i1 = 1.0 amperes\n", + "Value of i2 = 2.0 amperes\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from numpy import mat\n", + "from numpy.linalg import solve\n", + "\n", + "#KVL over the supermesh, we get eqn-1 -20+4(i1)+8(i2)=0\n", + "#Vx=2(i2) ohm's law\n", + "#writing an expression for the source current in terms of mesh currents and substituting Vx from above, we get eqn-2 (1/2)i2=i2-i1\n", + "#Putting eqn-1 and eqn-2 in standard form 4(i1)+8(i2)=20 and i1-(1/2)i2=0\n", + "#solving for currents in matrix method(Ax=b)\n", + "A=mat([[4,8],[1,-1/2]]) #coeffcient matrix\n", + "b=mat([[20],[0]])# #constant matrix\n", + "x=solve(A,b)# #solution\n", + "print 'Value of i1 =',x[0,0],'amperes'\n", + "print 'Value of i2 =',x[1,0],'amperes'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 81 Ex: 2.16" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated, hence the values in this code differ from those of textbook\n", + "Thevenin voltage for given circuit = 5.00 volts\n", + "Thevenin voltage for given circuit = 33.33 ohms\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_s=15# #source voltage\n", + "R_1=100#\n", + "R_2=50#\n", + "#Analysis with an open circuit to find V_t\n", + "i_1=V_s/(R_1+R_2)# #closed circuit with R_1 and R_2 in series\n", + "V_oc=R_2*i_1# #open-circuit voltage across R_2\n", + "V_t=V_oc# #thevenin voltage\n", + "#Analysis with a short-circuit to find i_sc\n", + "i_sc=V_s/R_1# #R_2 is short-circuited\n", + "R_t=V_oc/i_sc# #thevenin resistance\n", + "print \" All the values in the textbook are approximated, hence the values in this code differ from those of textbook\"\n", + "print 'Thevenin voltage for given circuit = %0.2f volts'%V_t\n", + "print 'Thevenin voltage for given circuit = %0.2f ohms'%R_t" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 82 Ex: 2.17" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "short-circuit current = 6.00 amperes\n", + "thevenin resistance = 4.00 ohms\n", + "thevenin voltage = 24.00 volts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_s=20# #source voltage\n", + "i_s=2# #source current\n", + "R_1=5#\n", + "R_2=20#\n", + "#after zeroing the sources which includes replacing voltage source with short circuit and current source with open circuit, we get R_t\n", + "R_eq=1/((1/R_1)+(1/R_2))# #R_1 and R_2 are in parallel combination\n", + "R_t=R_eq# #Thevenin resistance\n", + "#short-circuit analysis to find i_sc\n", + "i_2=0# #voltage across R_2 is 0\n", + "i_1=V_s/R_1#\n", + "i_sc=i_1+2-i_2# #short-circuit current(KCL at junction of R_2 and I_s)\n", + "V_t=R_t*i_sc# #thevenin voltage\n", + "print 'short-circuit current = %0.2f amperes'%i_sc\n", + "print 'thevenin resistance = %0.2f ohms'%R_t\n", + "print 'thevenin voltage = %0.2f volts'%V_t\n", + "#thevenin equivalent can be made of V_t and R_t." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 82 Ex: 2.18" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated, hence the values in this code differ from those of textbook\n", + "Thevenin voltage = 8.57 volts\n", + "Thevenin resistance = 1.43 ohms\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V=10#\n", + "R_1=5#\n", + "R_2=10#\n", + "#Open-circuit anlaysis\n", + "#let V_oc be the open circuit voltage\n", + "#Current equation at node1 3(i_x)=(1/10)V_oc\n", + "#i_x=(10-V_oc)/5 ix in terms of V_oc\n", + "V_oc=2/((1/5)+(1/30))# #open-circuit voltage(from above two equations)\n", + "V_t=V_oc# #thevenin voltage\n", + "#short-circuit analysis\n", + "i_x=V/R_1#\n", + "i_sc=3*i_x# #short-circuit current\n", + "R_t=V_oc/i_sc#\n", + "print \" All the values in the textbook are approximated, hence the values in this code differ from those of textbook\"\n", + "print 'Thevenin voltage = %0.2f volts'%V_t\n", + "print 'Thevenin resistance = %0.2f ohms'%R_t" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 83 Ex: 2.19" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rf = 6.15 ohms\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "R1= 20 #Ohms\n", + "R2= 15 #ohms\n", + "vs= 15 #V\n", + "R3= 5 #Ohms\n", + "k= 0.25\n", + "#/CALCULATIONS\n", + "voc= (R2/R1)/((1/R1)+(1/(R2+R3))+(k/4))\n", + "isc= vs/R1\n", + "Rf= voc/isc\n", + "#RESULTS\n", + "print 'Rf = %.2f ohms'%Rf" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 83 Ex: 2.20" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "By current source to voltage source transformation:\n", + "current i1 = 0.67 amperes\n", + "current i2 = 1.67 amperes\n", + "By voltage source to current source transformation:\n", + "current i1 = 0.67 amperes\n", + "current i2 = 1.67 amperes\n", + "In any method we get the same answers.\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_s_1=20# #voltage source\n", + "R_1=5#\n", + "R_2=10#\n", + "i_s_1=1# #current source\n", + "#Method 1: To transform current source and R_2 into a voltage source in series with R_2\n", + "V_s_2=i_s_1*R_2# #source transformation\n", + "i_1=(V_s_1-V_s_2)/(R_1+R_2)# #clockwise KVL\n", + "i_2=i_1+i_s_1# #KCL at top node of original circuit\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'By current source to voltage source transformation:'\n", + "print 'current i1 = %0.2f amperes'%i_1\n", + "print 'current i2 = %0.2f amperes'%i_2\n", + "#Method 2: To transform voltage source and R_1 into a current source in parallel with R_1\n", + "i_s_2=V_s_1/R_1# #source transformation\n", + "i_t=i_s_2+i_s_1# #total current\n", + "i_2=R_1*i_t/(R_1+R_2) #current-division principle\n", + "i_1=i_2-i_s_1# #KCL at top node of original circuit\n", + "print 'By voltage source to current source transformation:'\n", + "print 'current i1 = %0.2f amperes'%i_1\n", + "print 'current i2 = %0.2f amperes'%i_2\n", + "print 'In any method we get the same answers.'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 84 Ex: 2.21" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "load resistance for maximum power transfer = 4.00 ohms\n", + "maximum power = 6.25 watts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_s=50#\n", + "R_1=20#\n", + "R_2=5#\n", + "#Zeroing the voltage source\n", + "R_eq=1/((1/R_1)+(1/R_2))# #R_1 and R_2 in parallel\n", + "R_t=R_eq# #thevenin resistance\n", + "#open-circuit analysis\n", + "V_oc=V_s*R_2/(R_1+R_2)# #open-circuit voltage\n", + "V_t=V_oc# #thevenin voltage\n", + "R_L=R_t#\n", + "P_L_max=V_t**2/(4*R_t)\n", + "print 'load resistance for maximum power transfer = %0.2f ohms'%R_L\n", + "print 'maximum power = %0.2f watts'%P_L_max" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 85 Ex: 2.22" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "VT i.e., voltage across R2 = 11.67 volts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_s=15# #voltage source\n", + "R_1=10#\n", + "R_2=5#\n", + "i_s=2# #current source\n", + "#Analysis with only voltage source active\n", + "V_1=R_2*V_s/(R_1+R_2)# #voltage-division principle\n", + "#Analysis with only current source active\n", + "R_eq=1/((1/R_1)+(1/R_2))# #R_1 and R_2 in parallel\n", + "V_2=i_s*R_eq# #ohm's law\n", + "V_T=V_1+V_2# #total response\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'VT i.e., voltage across R2 = %0.2f volts'%V_T" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 85 Ex: 2.23" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "case a:\n", + "Value of Rx = 7320.00 ohms\n", + "case b:\n", + "Maximum value of Rx = 1100000.00 ohms\n", + "case c:\n", + "Increment between values of Rx = 1000.00 ohms for the bridge to be balanced\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "R_1=1*10**3#\n", + "#case (a)\n", + "print 'case a:'\n", + "R_2=10*10**3#\n", + "R_3=732#\n", + "R_x=R_2*R_3/R_1# #wheatstone bridge condition\n", + "print 'Value of Rx = %0.2f ohms'%R_x\n", + "#case (b)\n", + "print 'case b:'\n", + "#R_x is maximum when both R_2 and R_3 are maximum\n", + "R_2_max=1*10**6#\n", + "R_3_max=1100#\n", + "R_x_max=R_2_max*R_3_max/R_1# #wheatstone bridge condition\n", + "print 'Maximum value of Rx = %0.2f ohms'%R_x_max\n", + "#case(c)\n", + "print 'case c:'\n", + "#increment in R_x is scale factor times increment in R_3\n", + "R_2=1*10**6#\n", + "R_3_inc=1# #increment in R_3\n", + "R_x_inc=R_2*R_3_inc/R_1# #increment in R_x from bride balance condition\n", + "print 'Increment between values of Rx = %0.2f ohms for the bridge to be balanced'%R_x_inc" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter3.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter3.ipynb new file mode 100644 index 00000000..f0ef7e41 --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter3.ipynb @@ -0,0 +1,499 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 3 - Inductance and Capacitance" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 109 Ex: 3.1" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nRK5CYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f24a9be9f90>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from __future__ import division\n", + "from numpy import arange,array\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show\n", + "\n", + "C=1*10**-6#\n", + "#t in micro seconds\n", + "t_1=[];t_2=[];t_3=[]\n", + "for x in arange(0,2+0.001,0.001):\n", + " t_1.append(x)\n", + "for x in arange(2.001,4+0.001,0.001):\n", + " t_2.append(x)\n", + "for x in arange(4.001,5+0.001,0.001):\n", + " t_3.append(x)\n", + "tt=t_1+t_2+t_3\n", + "\n", + "#t=array(t)\n", + "#corresponding voltage variations\n", + "V_1=[]\n", + "for t in t_1:\n", + " V_1.append(5*t)\n", + " \n", + "V_2=[]\n", + "for t in t_2:\n", + " V_2.append(0*t+10)\n", + "V_3=[]\n", + "for t in t_3:\n", + " V_3.append(-10*t+50)\n", + "\n", + "\n", + "#charge q=C*V\n", + "q_1=[]\n", + "for v in V_1:\n", + " q_1.append(C*v*10**6)\n", + "\n", + "q_2=[]\n", + "for v in V_2:\n", + " q_2.append(C*v*10**6)\n", + "\n", + "q_3=[]\n", + "for v in V_3:\n", + " q_3.append(C*v*10**6)\n", + "q=q_1+q_2+q_3\n", + "\n", + "\n", + "subplot(121)\n", + "plot(tt,q)\n", + "title('charge vs time')\n", + "xlabel('time in Ms')\n", + "ylabel('charge in Mc') #M-micro(10**-6)\n", + "#current i=C*dV/dt*10**6, for above equations we get\n", + "i_1=[];i_2=[];i_3=[]\n", + "for t in t_1:\n", + " i_1.append(10**6*(0*t+C*(5)))\n", + "for t in t_2:\n", + " i_2.append(10**6*0*t)\n", + "for t in t_3:\n", + " i_3.append(10**6*(0*t+C*(-10)))\n", + "i=i_1+i_2+i_3\n", + "subplot(122)\n", + "plot(tt,i)\n", + "title('current vs time')\n", + "xlabel('time in Ms')\n", + "ylabel('current in amperes') #M-micro(10**-6) \n", + "show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 110 Ex: 3.2" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f24a91ff690>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from __future__ import division\n", + "from numpy import arange,array\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show\n", + "from math import pi,sin,cos\n", + "C=0.1*10**-6#\n", + "#symbolic integration cannot be done in scilab\n", + "t=arange(0,pi*10**-4+0.001*10**-3,0.001*10**-3)\n", + "i=[]\n", + "for tt in t:\n", + " i.append(0.5*sin((10**4)*tt))\n", + "#on integrating 'i' w.r.t t\n", + "q=[]\n", + "for tt in t:\n", + " q.append(0.5*10**-4*(1-cos(10**4*tt))*10**6)\n", + "C=10**-7#\n", + "V=[]\n", + "for qq in q:\n", + " V.append(qq/C)\n", + "subplot(311)\n", + "plot(t,q)\n", + "title('charge vs time')\n", + "xlabel('time in seconds')\n", + "ylabel('charge in Mc') #Mc=micro coulombs(10**-6)\n", + "subplot(312)\n", + "plot(t,i)\n", + "title('current vs time')\n", + "xlabel('time in seconds')\n", + "ylabel('current in amperes') #Mc=micro coulombs(10**-6)\n", + "subplot(313)\n", + "title('voltage vs time')\n", + "xlabel('time in seconds')\n", + "ylabel('voltage in volts')\n", + "plot(t,V)\n", + "show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 111 Ex: 3.3" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f24a958ffd0>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from __future__ import division\n", + "from numpy import arange,array\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show\n", + "from math import pi,sin,cos\n", + "C=10*10**-6#\n", + "t_1=arange(0,1+0.001,0.001)\n", + "t_2=arange(1.001,3+0.001,0.001)\n", + "t_3=arange(3.001,5+0.001,0.001)\n", + "t=[]\n", + "for x in t_1:\n", + " t.append(x)\n", + "for x in t_2:\n", + " t.append(x)\n", + "for x in t_3:\n", + " t.append(x)\n", + " #voltage variations\n", + "V_1=[];V_2=[];V_3=[]\n", + "for tt in t_1:\n", + " V_1.append(1000*tt)\n", + "for tt in t_2:\n", + " V_2.append(0*tt+1000)\n", + "for tt in t_3:\n", + " V_3.append(500*(5-tt))\n", + "#current i=C*dv/dt, for above equations we get\n", + "i_1=[];i_2=[];i_3=[]\n", + "for tt in t_1:\n", + " i_1.append(C*(0*tt+1000))\n", + "for tt in t_2:\n", + " i_2.append(C*(0*tt))\n", + "for tt in t_3:\n", + " i_3.append(C*(0*tt-500))\n", + "i=i_1+i_2+i_3\n", + "#power delivered, P=V*i\n", + "P_1=[];P_2=[];P_3=[]\n", + "for tt in t_1:\n", + " P_1.append(C*(10**6*tt))\n", + "for tt in t_2:\n", + " P_2.append(C*(0*tt+1000))\n", + "for tt in t_3:\n", + " P_3.append(C*(-25*10**4*(5-tt)))\n", + "P=P_1+P_2+P_3\n", + "#energy stored, W=(1/2)*C*V**2\n", + "W_1=[];W_2=[];W_3=[]\n", + "for vv in V_1:\n", + " W_1.append((1/2)*C*vv**2)\n", + "for vv in V_2:\n", + " W_2.append((1/2)*C*vv**2)\n", + "for vv in V_2:\n", + " W_3.append((1/2)*C*vv**2)\n", + "W=[]\n", + "for x in W_1:\n", + " W.append(x)\n", + "for x in W_2:\n", + " W.append(x)\n", + "for x in W_3:\n", + " W.append(x)\n", + "subplot(311)\n", + "plot(t,[ii*10**3 for ii in i])\n", + "title('current vs time')\n", + "xlabel('time in seconds')\n", + "ylabel('current in mA') #mA-milli amperes(10**-3)\n", + "subplot(312)\n", + "plot(t,P)\n", + "title('power delivered vs time')\n", + "xlabel('time in seconds')\n", + "ylabel('power in watts')\n", + "subplot(313)\n", + "\n", + "plot(t[:-1],W)\n", + "title('energy stored vs time')\n", + "xlabel('time in seconds')\n", + "ylabel('work in joules')\n", + "show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 111 Ex: 3.4" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "When the dielectric is air, capacitance = 1770.00 pF\n", + "When the dielectric is mica, capacitance = 12390.00 pF\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "L=10*10**-2# #length\n", + "W=20*10**-2# #width\n", + "d=0.1*10**-3# #distance between plates\n", + "A=L*W# #area\n", + "E_o=8.85*10**-12# #dielectric constant of vacuum\n", + "#dielectric is air\n", + "E_r=1# #relative dielectric constant of air\n", + "E=E_r*E_o# #dielectric constant\n", + "C=E*A/d# #capacitance\n", + "print 'When the dielectric is air, capacitance = %0.2f pF'%(C*10**12) #pF-pico Farad(10**-12)\n", + "#dielectric is mica\n", + "E_r=7# #relative dielectric constant of mica\n", + "E=E_r*E_o# #dielectric constant\n", + "C=E*A/d# #capacitance\n", + "print 'When the dielectric is mica, capacitance = %0.2f pF'%(C*10**12) #pF-pico Farad(10**-12)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 112 Ex: 3.5" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total energy stored by both the capacitors before switch is closed = 5.00 mJ\n", + "Total energy stored by both the capacitors after switch is closed = 2.50 mJ\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "C_1=1*10**-6#\n", + "C_2=1*10**-6#\n", + "#Before the switch is closed\n", + "V_1=100#\n", + "V_2=0#\n", + "W_1=(1/2)*C_1*V_1**2#\n", + "W_2=0# #V_2=0\n", + "W_t_1=W_1+W_2# #total energy stored by both the capacitors before switch is closed\n", + "q_1=C_1*V_1#\n", + "q_2=0#\n", + "#After the switch is closed\n", + "q_eq=q_1+q_2# #charge on equivalent capacitance\n", + "C_eq=C_1+C_2# #C_1 and C_2 in parallel\n", + "V_eq=q_eq/C_eq#\n", + "V_1=V_eq# #parallel combination\n", + "V_2=V_eq# #parallel combination\n", + "W_1=(1/2)*C_1*V_eq**2#\n", + "W_2=(1/2)*C_2*V_eq**2#\n", + "W_t_2=W_1+W_2# #total energy stored by both the capacitors after switch is closed\n", + "print 'Total energy stored by both the capacitors before switch is closed = %0.2f mJ'%(W_t_1*10**3) #mJ-milli Joules(10**-3)\n", + "print 'Total energy stored by both the capacitors after switch is closed = %0.2f mJ'%(W_t_2*10**3) #mJ-milli Joules(10**-3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 113 Ex: 3.6" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nP/4uS6U76zheAAAAAElFTkSuQmCC\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f948490c790>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from __future__ import division\n", + "from numpy import arange,array\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show\n", + "\n", + "L=5# #inductance\n", + "t_1=arange(0,2+0.001,0.001)\n", + "t_2=arange(2.001,4+0.001,0.001)\n", + "t_3=arange(4.001,5+0.001,0.001)\n", + "t=[]\n", + "for x in t_1:\n", + " t.append(x)\n", + "for x in t_2:\n", + " t.append(x)\n", + "for x in t_3:\n", + " t.append(x)\n", + "\n", + "#corresponding current variations\n", + "i_1=[];i_2=[];i_3=[]\n", + "for tt in t_1:\n", + " i_1.append((1.5)*tt)\n", + "for tt in t_2:\n", + " i_2.append(0*tt+3)\n", + "for tt in t_3:\n", + " i_3.append((-3*tt)+15)\n", + "#voltage V=L*(di/dt)\n", + "V_1=[];V_2=[];V_3=[]\n", + "for tt in t_1:\n", + " V_1.append(L*(0*tt+(1.5)))\n", + "for tt in t_2:\n", + " V_2.append(L*(0*tt))\n", + "for tt in t_3: \n", + " V_3.append(L*(0*tt-3))\n", + "V=[]\n", + "for x in V_1:\n", + " V.append(x)\n", + "for x in V_2:\n", + " V.append(x)\n", + "for x in V_3:\n", + " V.append(x)\n", + "#stored energy W=1/2*L*i**2\n", + "W_1=[];W_2=[];W_3=[]\n", + "for ii in i_1:\n", + " W_1.append((1/2)*L*ii**2)\n", + "for ii in i_2:\n", + " W_2.append((1/2)*L*ii**2)\n", + "for ii in i_3:\n", + " W_3.append((1/2)*L*ii**2)\n", + "\n", + "W=[]\n", + "for x in W_1:\n", + " W.append(x)\n", + "for x in W_2:\n", + " W.append(x)\n", + "for x in W_3:\n", + " W.append(x)\n", + "\n", + "P_1=[];P_2=[];P_3=[] \n", + "#power P=V*i\n", + "for tt in t_1:\n", + " P_1.append(L*tt*(1.5**2))\n", + "for tt in t_2:\n", + " P_2.append(0*tt)\n", + "for tt in t_3: \n", + " P_3.append(-3*L*(-3*tt+15))\n", + "P=[]\n", + "for x in P_1:\n", + " P.append(x)\n", + "for x in P_2:\n", + " P.append(x)\n", + "for x in P_3:\n", + " P.append(x)\n", + "\n", + " \n", + "subplot(311)\n", + "plot(t,V)\n", + "title('voltage vs time')\n", + "xlabel('time in seconds')\n", + "ylabel('voltage in volts')\n", + "subplot(312)\n", + "plot(t,W)\n", + "title('energy vs time')\n", + "xlabel('time in seconds')\n", + "ylabel('energy in joules')\n", + "subplot(313)\n", + "\n", + "plot(t,P)\n", + "title('power vs time')\n", + "xlabel('time in seconds')\n", + "ylabel('power in watts')\n", + "show()" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter4.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter4.ipynb new file mode 100644 index 00000000..09273b9b --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter4.ipynb @@ -0,0 +1,70 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 4 : Transients" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 136 Ex: 4.1" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "current ix = 1.00 amperes\n", + "voltage Vx = 5.00 volts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "V_s=10# #source voltage\n", + "R_1=5#\n", + "R_2=5#\n", + "L=1#\n", + "C=1*10**-6#\n", + "#for t>>0, we apply steady state conditions i.e., inductor and capacitor are replaced by short and open circuits respectively\n", + "R_eq=R_1+R_2# #R_1 and R_2 in series\n", + "i_x=V_s/R_eq# #ohm's law\n", + "V_x=R_2*i_x# #voltage across R_2\n", + "print 'current ix = %0.2f amperes'%i_x\n", + "print 'voltage Vx = %0.2f volts'%V_x" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter5.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter5.ipynb new file mode 100644 index 00000000..b21cd36c --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter5.ipynb @@ -0,0 +1,886 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 5 - Steady state sinusoidal analaysis" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 181 Ex:5.1" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "RMS value of voltage = 70.71 volts\n", + "average power = 100.00 watts\n" + ] + }, + { + "data": { + "image/png": "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\nRU5ErkJggg==\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f473f78a290>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from __future__ import division\n", + "from numpy import arange,cos,pi,sqrt\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show\n", + "R=50#\n", + "t=arange(0,0.05+0.000001,0.000001)\n", + "V_t=[]\n", + "for tt in t:\n", + " V_t.append(100*cos(100*pi*tt))\n", + "V_m=100# #peak value\n", + "V_rms=V_m/sqrt(2)#\n", + "P_avg=(V_rms**2)/R#\n", + "P_t=[]\n", + "for vv in V_t: \n", + " P_t.append(vv**2/R)\n", + "print \"All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'RMS value of voltage = %0.2f volts'%V_rms\n", + "print 'average power = %0.2f watts'%P_avg\n", + "subplot(211)\n", + "plot([tt*10**3 for tt in t],V_t)#\n", + "title('voltage vs time')\n", + "xlabel('time in ms')\n", + "ylabel('voltage in volts') #ms-milli seconds(10**-3)\n", + "subplot(212)\n", + "plot([tt*10**3 for tt in t],P_t)\n", + "title('power vs time')\n", + "xlabel('time in ms')\n", + "ylabel('power in watts') #ms-milli seconds(10**-3)\n", + "show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 182 Ex:5.2" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nTkSuQmCC\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f0d48bc7210>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "RMS value = 1.73 volts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from numpy import arange,cos,pi,sqrt\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,subplot,title,xlabel,ylabel,show\n", + "from sympy.mpmath import quad\n", + "\n", + "\n", + "#plot of V and t(already given with the question but to get clarity we plot it)\n", + "t_1=arange(0,1+0.001,0.001)\n", + "t_2=arange(1.001,2+0.001,0.001)\n", + "t=[]\n", + "for tt in t_1:\n", + " t.append(tt)\n", + "for tt in t_2:\n", + " t.append(tt) \n", + "V_1=[];V_2=[]\n", + "for tt in t_1:\n", + " V_1.append(3*tt)\n", + "for tt in t_2:\n", + " V_2.append(6-3*tt)\n", + "V=[]\n", + "for vv in V_1:\n", + " V.append(vv)\n", + "for vv in V_2:\n", + " V.append(vv) \n", + "plot(t,V)\n", + "title('voltage vs time')\n", + "xlabel('time in seconds')\n", + "ylabel('voltage in volts')\n", + "show()\n", + "\n", + "#now find V_rms\n", + "T=2# #from the plot of V vs t\n", + "V_rms=sqrt((1/T)*((quad(lambda t:(3*t)**2,[0,1]))+(quad(lambda t:(6-3*t)**2,[1,2]))))\n", + "print \"All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'RMS value = %0.2f volts'%V_rms\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 183 Ex:5.3" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Peak value of resultant voltage = 29.77 volts\n", + "phase of resulting voltage = -40.01 degrees\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,sqrt,sin,cos,atan\n", + "#V_1 and V_2 are phasors of given voltages\n", + "theta_1=-pi/4# #for V_1\n", + "theta_2=-pi/6# #for V_2 (in cos form)\n", + "V_1=complex(20*cos(theta_1),20*sin(theta_1))#\n", + "V_2=complex(10*cos(theta_2),10*sin(theta_2))#\n", + "V_s=V_1+V_2#\n", + "V=sqrt(((V_s.real)**2)+((V_s.imag)**2))# #peak voltage of resultant summation\n", + "phi=atan((V_s.imag)/(V_s.real))# #phase angle of resultant sum voltage\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Peak value of resultant voltage = %0.2f volts'%V\n", + "print 'phase of resulting voltage = %0.2f degrees'%(phi*180/pi) #converting phi in radians to degrees\n", + "#result : V_t=Vcos(wt+phi)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 184 Ex:5.4" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "For resistance R\n", + "peak value of voltage = 70.71 volts\n", + "phase angle = -15.00 degrees\n", + "For inductance L\n", + "peak value of voltage = 106.07 volts\n", + "phase angle = 75.00 degrees\n", + "For capacitor C\n", + "peak value of voltage = 35.36 volts\n", + "phase angle = 75.00 degrees\n", + "The phasor diagram cannot be plotted\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,sqrt,sin,cos,atan\n", + "L=0.3#\n", + "C=40*10**-6#\n", + "R=100#\n", + "V_s_max=100# #peak value of given voltage\n", + "W=500# #angular frequency\n", + "V_s_phi=pi/6# #phase angle in degrees\n", + "V_s=complex(V_s_max*cos(V_s_phi),V_s_max*sin(V_s_phi))# #phasor for voltage source\n", + "Z_L=1J*W*L# #complex impedance of inductance\n", + "Z_C=-1J/(W*C)# #complex impedance of capacitance\n", + "Z_eq=R+Z_L+Z_C# #R,Z_L and Z_C in series\n", + "I=V_s/Z_eq# #phasor current\n", + "V_R=R*I#\n", + "V_L=Z_L*I#\n", + "V_C=Z_C*I#\n", + "print \"All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "#for resistance R\n", + "print 'For resistance R'\n", + "V_R_max=sqrt(((V_R.real)**2)+((V_R.imag)**2))\n", + "V_R_phi=(atan((V_R.imag)/(V_R.real)))*180/pi#\n", + "print 'peak value of voltage = %0.2f volts'%V_R_max\n", + "print 'phase angle = %0.2f degrees'%V_R_phi\n", + "#result : V_R=Vcos(wt+phi) V-peak voltage\n", + "#for inductance L\n", + "print 'For inductance L'\n", + "V_L_max=sqrt(((V_L.real)**2)+((V_L.imag)**2))#\n", + "V_L_phi=(atan((V_L.imag)/(V_L.real)))*180/pi#\n", + "print 'peak value of voltage = %0.2f volts'%V_L_max\n", + "print 'phase angle = %0.2f degrees'%V_L_phi\n", + "#result : V_L=Vcos(wt+phi) V-peak voltage\n", + "#for capacitor C\n", + "print 'For capacitor C'\n", + "V_C_max=sqrt(((V_C.real)**2)+((V_C.imag)**2))#\n", + "V_C_phi=(atan((V_C.imag)/(V_C.real)))*180/pi#\n", + "print 'peak value of voltage = %0.2f volts'%V_C_max\n", + "print 'phase angle = %0.2f degrees'%V_C_phi #cos(t)=cos(t-180) (we get 75 instead of -105 given in textbook)\n", + "#result : V_C=Vcos(wt+phi) V-peak voltage\n", + "print 'The phasor diagram cannot be plotted'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 185 Ex: 5.5" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "peak value of Vc = 10.00 volts\n", + "phase angle of Vc = 0 degrees\n", + "current through source and inductor = (0.1+0.1j) amperes\n", + "current through resistance = (0.1+0j) amperes\n", + "current through capacitance = (-0+0.1j) amperes\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,sqrt,sin,cos,atan\n", + "V_s_max=10# #peak value of source voltage\n", + "phi=-pi/2# #phase of source voltage\n", + "V_s=complex(10*cos(pi/2),10*sin(pi/2))# #phasor of source voltage\n", + "W=1000# #angular frequency\n", + "R=100#\n", + "L=0.1#\n", + "C=10*10**-6#\n", + "Z_L=1J*W*L# #impedance of inductance\n", + "Z_C=-1J/(W*C)# #impedance of capacitance\n", + "Z_RC=1/((1/R)+(1/Z_C))# #R and Z_C in parallel combination\n", + "V_C=V_s*Z_RC/(Z_L+Z_RC)# #voltage division principle\n", + "I=V_s/(Z_L+Z_RC)# #current through source and inductor\n", + "I_R=V_C/R# #current through resistance\n", + "I_C=V_C/Z_C# #current through capacitor\n", + "#cos(t)=cos(180-t)\n", + "print 'peak value of Vc = %0.2f volts'%(sqrt(((V_C.real)**2)+((V_C.imag)**2)),)\n", + "print 'phase angle of Vc = %0.f degrees'%((atan((V_C.imag)/(V_C.real)))*180/pi)\n", + "##result : V_C=Vcos(wt+phi) V-peak voltage\n", + "print 'current through source and inductor =',I,'amperes'\n", + "print 'current through resistance = ',I_R,'amperes'\n", + "print 'current through capacitance = ',I_C,'amperes'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 187 Ex:5.6" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "peak value of V1 = 16.12 volts\n", + "phase angle of V1 = 29.74 degrees\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,sqrt,sin,cos,atan\n", + "from numpy import mat\n", + "\n", + "V_s_max=2# #peak value of source voltage\n", + "V_s_phi=-pi/2# #phase angle of source voltage\n", + "V_s=complex(V_s_max*cos(V_s_phi),V_s_max*sin(V_s_phi))#\n", + "R=10#\n", + "Z_C=-1J*5# #impedance of capacitance\n", + "Z_L=1J*10# #impedance of inductance\n", + "I_s_max=1.5# #peak value of current source\n", + "I_s_phi=0# #phase angle of current source\n", + "I_s=complex(I_s_max*cos(I_s_phi),I_s_max*sin(I_s_phi))#\n", + "#we write the standard equations of V_1 and V_2 in matrix form\n", + "#from node-voltage relation\n", + "A=[[0.1+1J*0.2,-1J*0.2],[-1J*0.2,1J*0.1]] #coefficient matrix\n", + "B=[[-1J*2],[1.5]]# #constant matrix\n", + "#As in A*X=B form\n", + "A=mat(A);B=mat(B)\n", + "V=(A**-1)*B#\n", + "V_1=sqrt(((V[0,0].real))**2+((V[0,0].imag))**2)# #peak value of V_1\n", + "V_1_phi=atan((V[0,0].imag)/(V[0,0].real))# #phase angle of V_1\n", + "print \"All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'peak value of V1 = %0.2f volts'%V_1\n", + "print 'phase angle of V1 = %0.2f degrees'%(V_1_phi*180/pi)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 188 Ex:5.7" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "power delivered by source = 0.50 watts\n", + "reactive power delivered by source = 0.50 VARs\n", + "Using complex power method:\n", + "power delivered by source = 0.50 watts\n", + "reactive power delivered by source = 0.50 VARs\n", + "we see that, in both the methods answers are the same\n", + "reactive power delivered to inductance = 1.00 VARs\n", + "reactive power delivered to capacitance = 0.50 VARs\n", + "power delivered to resistance = 0.50 watts\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,sqrt,sin,cos,atan\n", + "from numpy import mat,conj\n", + "\n", + "phi_v=-pi/2# #angle of voltage source\n", + "phi_i=-3*pi/4# #angle of current source\n", + "phi=phi_v-phi_i# #power angle\n", + "V_s_max=10# #peak value of voltage source\n", + "V_s_phi=phi_v# #phase angle of voltage source\n", + "R=100#\n", + "V_s=complex(V_s_max*cos(V_s_phi),V_s_max*sin(V_s_phi))# #phasor of voltage source\n", + "X_L=1J*100#\n", + "X_C=-1J*100#\n", + "I_max=0.1414# #peak value of current\n", + "I_phi=phi_i# #phase angle of current\n", + "I=complex(I_max*cos(I_phi),I_max*sin(I_phi))# #phasor of current\n", + "V_s_rms=V_s_max/sqrt(2)# #rms value of voltage\n", + "I_rms=I_max/sqrt(2)# #rms value of current\n", + "I_R_max=0.1# #peak value\n", + "I_R_phi=-2*pi# #phase angle\n", + "I_R=complex(I_R_max*cos(I_R_phi),I_R_max*sin(I_R_phi))# #phasor of current\n", + "I_R_rms=I_R_max/sqrt(2)# #rms value\n", + "I_C_max=0.1# #peak value\n", + "I_C_phi=-pi/2# #phase angle\n", + "I_C=complex(I_C_max*cos(I_C_phi),I_C_max*sin(I_C_phi))# #phasor current in capacitor\n", + "I_C_rms=I_C_max/sqrt(2)# #rms value\n", + "P=V_s_rms*I_rms*cos(phi)# #power by source\n", + "Q=V_s_rms*I_rms*sin(phi)# #reactive power by source\n", + "print \"All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'power delivered by source = %0.2f watts'%P\n", + "print 'reactive power delivered by source = %0.2f VARs'%Q\n", + "#using complex power method\n", + "print 'Using complex power method:'\n", + "\n", + "\n", + "S=(1/2)*V_s*conj(I)# #complex power\n", + "P=(S.real)#\n", + "Q=(S.imag)#\n", + "print 'power delivered by source = %0.2f watts'%P\n", + "print 'reactive power delivered by source = %0.2f VARs'%Q\n", + "print 'we see that, in both the methods answers are the same'\n", + "Q_L=I_rms**2*X_L/1J# #reactive power to inductance\n", + "Q_C=I_C_rms**2*X_C/1J# #reactive power to capacitance\n", + "P_R=I_R_rms**2*R# #power to resistance\n", + "print 'reactive power delivered to inductance = %0.2f VARs'%abs(Q_L)\n", + "print 'reactive power delivered to capacitance = %0.2f VARs'%abs(Q_C)\n", + "print 'power delivered to resistance = %0.2f watts'%P_R" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 189 Ex:5.8 " + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Phasor Current = 14.966 A\n", + "\n", + " Angle = 49.59 degrees\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import degrees,pi,sqrt,acos,tan,atan,cos\n", + "Vrms = 10**2 #V\n", + "Irms= 10**2 #amp\n", + "pf= 0.5\n", + "pf1= 0.7\n", + "r= 1.41\n", + "#CALCULATIONS\n", + "PA= Vrms*Irms*pf\n", + "QA= -sqrt((Vrms*Irms)**2-PA**2)/1000\n", + "a= acos(pf1)*180/pi\n", + "QB= PA*tan(pi/180*a)/1000\n", + "P= 2*PA/1000\n", + "Q= QA+QB\n", + "o= atan(Q/P)\n", + "pf2= cos(o)\n", + "A= degrees(o)+69.18\n", + "S= sqrt(P**2+Q**2)\n", + "I= S*r\n", + "#RESULTS\n", + "print 'Phasor Current = %.3f A'%I\n", + "print '\\n Angle = %.2f degrees'%A" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 190 Ex: 5.9" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "Required capacitance = 1.13 micro-farads\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import degrees,pi,sqrt,acos,tan,atan,cos\n", + "#L is load\n", + "P_L=50*10**3# #power of load\n", + "f=60# #frequency\n", + "V_rms=10*10**3# #rms voltage\n", + "PF_L=0.6# #power factor\n", + "phi_L=acos(PF_L)# #power angle\n", + "Q_L=P_L*tan(phi_L)# #reactive power of load\n", + "#when capacitor is added, power angle changes\n", + "PF_L_new=0.9#\n", + "phi_L_new=acos(PF_L_new)#\n", + "Q_new=P_L*tan(phi_L_new)#\n", + "Q_C=Q_new-Q_L# #reactive power of capacitance\n", + "X_C=-V_rms**2/Q_C# #reactance of capacitor\n", + "W=2*pi*f# #angular frequency\n", + "C=1/(W*abs(X_C))# #capacitance\n", + "print \"All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'Required capacitance = %0.2f micro-farads'%(C*10**6)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 191 Ex: 5.10" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "FOR THEVENIN CIRCUIT:\n", + "thevenin voltage\n", + "peak value of voltage = 100.00 volts\n", + "90.0 phase angle in degrees\n", + "thevenin resistance\n", + "peak value of resistance = 70.71 ohms\n", + "phase angle = -45.00 degrees\n", + "FOR NORTON CIRCUIT:\n", + "norton current\n", + "peak value of norton current = 1.41 amperes\n", + "phase angle = -45.00 degrees\n", + "resistance\n", + "peak value of resistance = 70.71 ohms\n", + "phase angle = -45.00 degrees\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import degrees,pi,sqrt,acos,tan,atan,cos\n", + "R=100#\n", + "V_s_max=100# #peak value of voltage\n", + "V_s_phi=0# #phase angle of voltage\n", + "V_s=complex(V_s_max*cos(V_s_phi),V_s_max*sin(V_s_phi))# #phasor of voltage\n", + "Z_C=-1J*100# #impedance of capacitance\n", + "I_s_max=1# #peak value of current\n", + "I_s_phi=pi/2# #phase angle of current\n", + "I_s=complex(I_s_max*cos(I_s_phi),I_s_max*sin(I_s_phi))# #phasor of current\n", + "#zeroing sources to find Z_t i.e., thevenin impedance\n", + "Z_t=1/((1/R)+(1/Z_C))# #R and Z_C are in parallel combination\n", + "#apply short-circuit to find I_sc i.e., short-circuit current\n", + "I_R=abs(V_s)/R# #ohm's law\n", + "I_sc=I_R-I_s# #applying KCL\n", + "V_t=I_sc*Z_t# #thevenin voltage\n", + "print \"All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'FOR THEVENIN CIRCUIT:'\n", + "print 'thevenin voltage'\n", + "print 'peak value of voltage = %0.2f volts'%abs(V_t)\n", + "#cos(t)=cos(t-180)\n", + "print atan((V_t.imag)/(V_t.real))*180/pi,'phase angle in degrees'\n", + "print 'thevenin resistance'\n", + "print 'peak value of resistance = %0.2f ohms'%abs(Z_t)\n", + "print 'phase angle = %0.2f degrees'%(atan((Z_t.imag)/(Z_t.real))*180/pi)\n", + "print 'FOR NORTON CIRCUIT:'\n", + "print 'norton current'\n", + "print 'peak value of norton current = %0.2f amperes'%(abs(I_sc))\n", + "print 'phase angle = %0.2f degrees'%(atan((I_sc.imag)/(I_sc.real))*180/pi)\n", + "print 'resistance'\n", + "print 'peak value of resistance = %0.2f ohms'%abs(Z_t)\n", + "print 'phase angle = %0.2f degrees'%(atan((Z_t.imag)/(Z_t.real))*180/pi)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 192 Ex: 5.11" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "FOR ANY COMPLEX LOAD\n", + "required complex load impedance : 50.00+j*50.00\n", + "power delivered to load = 25.00 watts\n", + "FOR PURE RESISTIVE LOAD\n", + "required pure resistive load : 70.71\n", + "power delivered to load: 20.71\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import degrees,pi,sqrt,acos,tan,atan,cos\n", + "from numpy import conj\n", + "#thevenin voltage\n", + "V_t_max=100#\n", + "V_t_phi=-pi/2#\n", + "V_t=complex(V_t_max*cos(V_t_phi),V_t_max*sin(V_t_phi))#\n", + "#thevenin resistance\n", + "Z_t_max=70.71#\n", + "Z_t_phi=-pi/4#\n", + "Z_t=complex(Z_t_max*cos(Z_t_phi),Z_t_max*sin(Z_t_phi))#\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "#a) Any complex load\n", + "print 'FOR ANY COMPLEX LOAD'\n", + "Z_load=conj(Z_t)#\n", + "I_a=V_t/(Z_t+Z_load)# #ohm's law\n", + "I_a_rms=I_a/sqrt(2)# #rms value\n", + "P_1=abs(I_a_rms)**2*(Z_load.real)# #power\n", + "print 'required complex load impedance : {0:0.2f}+j*{0:0.2f}'.format(Z_load.real,Z_load.imag)\n", + "print 'power delivered to load = %0.2f watts'%P_1\n", + "#b) purely resistive load\n", + "print 'FOR PURE RESISTIVE LOAD'\n", + "R_load=abs(Z_t)#\n", + "I_b=V_t/(Z_t+R_load)#\n", + "I_b_rms=I_b/sqrt(2)#\n", + "P_2=abs(I_b_rms)**2*R_load#\n", + "print 'required pure resistive load : ',R_load\n", + "print 'power delivered to load: %0.2f'%P_2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 193 Ex: 5.12" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "LINE CURRENTS\n", + "IaA= 12.751+j*-9.614\n", + "IbB= -14.702+j*-6.236\n", + "IcC= 1.951+j*15.850\n", + "LINE-LINE VOLTAGES\n", + "Vab= 1500.000+j*866.025\n", + "Vbc= 0.000+j*-1732.051\n", + "Vca= -1500.000+j*866.025\n", + "POWER = 19126.69 WATTS\n", + "REACTIVE POWER = 14421.18 VARs\n", + "the phasor diagram cannot be plotted\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import degrees,pi,sqrt,acos,tan,atan,cos\n", + "V_Y=1000# #line to neutral voltage\n", + "f=60# #frequency\n", + "L=0.1# #inductance\n", + "R=50#\n", + "W=2*pi*f# #angular frequency\n", + "Z=complex(R,W*L)# #complex impedance\n", + "phi=atan((Z.imag)/(Z.real))#\n", + "#Balanced wye-wye calculations\n", + "V_an=complex(1000*cos(0),1000*sin(0))#\n", + "V_bn=complex(1000*cos(-2*pi/3),1000*sin(-2*pi/3))#\n", + "V_cn=complex(1000*cos(2*pi/3),1000*sin(2*pi/3))#\n", + "I_aA=V_an/Z#\n", + "I_bB=V_bn/Z#\n", + "I_cC=V_cn/Z#\n", + "#line-line phasors\n", + "V_ab=V_an*sqrt(3)*complex(cos(pi/6),sin(pi/6))#\n", + "V_bc=V_bn*sqrt(3)*complex(cos(pi/6),sin(pi/6))#\n", + "V_ca=V_cn*sqrt(3)*complex(cos(pi/6),sin(pi/6))#\n", + "I_L=abs(I_aA)#\n", + "P=(3/2)*V_Y*I_L*cos(phi)# #power\n", + "Q=(3/2)*V_Y*I_L*sin(phi)# #reactive power\n", + "print \" All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'LINE CURRENTS'\n", + "print 'IaA= {0:0.3f}+j*{1:0.3f}'.format(I_aA.real,I_aA.imag)\n", + "print 'IbB= {0:0.3f}+j*{1:0.3f}'.format(I_bB.real,I_bB.imag)\n", + "print 'IcC= {0:0.3f}+j*{1:0.3f}'.format(I_cC.real,I_cC.imag)\n", + "print 'LINE-LINE VOLTAGES'\n", + "print 'Vab= {0:0.3f}+j*{1:0.3f}'.format(V_ab.real,V_ab.imag)\n", + "print 'Vbc= {0:0.3f}+j*{1:0.3f}'.format(V_bc.real,V_bc.imag)\n", + "print 'Vca= {0:0.3f}+j*{1:0.3f}'.format(V_ca.real,V_ca.imag)\n", + "print 'POWER = %0.2f WATTS'%P\n", + "print 'REACTIVE POWER = %0.2f VARs'%Q\n", + "print 'the phasor diagram cannot be plotted'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 194 Ex: 5.13" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "LINE CURRENTS\n", + "IaA= 53.167+j*-12.388\n", + "IbB= -14.702+j*-6.236\n", + "IcC= 1.951+j*15.850\n", + "LINE-LINE VOLTAGES\n", + "VAB= 866.025+j*500.000\n", + "VBC= 0.000+j*-1000.000\n", + "VCA= -866.025+j*500.000\n", + "power delivered to load = 44702.73 watts\n", + "total power dissipated in the line = 1341.08 VArs\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import degrees,pi,sqrt,acos,tan,atan,cos\n", + "\n", + "Z_line=complex(0.3,0.4)# #impedance of wire\n", + "Z_d=complex(30,6)# #load impedance\n", + "R=(Z_d.real)#\n", + "R_line=(Z_line.real)#\n", + "#source voltages\n", + "V_ab=complex(1000*cos(pi/6),1000*sin(pi/6))#\n", + "V_bc=complex(1000*cos(-pi/2),1000*sin(-pi/2))#\n", + "V_ca=complex(1000*cos(5*pi/6),1000*sin(5*pi/6))#\n", + "#choosing A phase of wye-equivalent circuit\n", + "V_an=V_ab/(sqrt(3)*complex(cos(pi/6),sin(pi/6)))#\n", + "Z_Y=Z_d/3#\n", + "I_aA=V_an/(Z_line+Z_Y)# #line current\n", + "I_aA_rms=abs(I_aA)/sqrt(2)#\n", + "V_An=I_aA*Z_Y# #line to neutral voltage\n", + "V_AB=V_An*sqrt(3)*complex(cos(pi/6),sin(pi/6))# #line to line voltage at the load\n", + "I_AB=V_AB/Z_d# #current through phase AB\n", + "I_AB_rms=abs(I_AB)/sqrt(2)# #rms value\n", + "P_AB=I_AB_rms**2*R# #power delivered to phase AB\n", + "#power delivered in other two phases is same\n", + "P=3*P_AB# #total power\n", + "P_A=I_aA_rms**2*R_line# #power lost in line A\n", + "#power lost in other two lines is same\n", + "P_line=3*P_A#\n", + "print \"All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "IbB= I_aA*complex(cos(-2*pi/3),sin(-2*pi/3))\n", + "IcC= I_aA*complex(cos(2*pi/3),sin(2*pi/3))\n", + "print 'LINE CURRENTS'\n", + "print 'IaA= {0:0.3f}+j*{1:0.3f}'.format(I_aA.real,I_aA.imag)\n", + "print 'IbB= {0:0.3f}+j*{1:0.3f}'.format(I_bB.real,I_bB.imag)\n", + "print 'IcC= {0:0.3f}+j*{1:0.3f}'.format(I_cC.real,I_cC.imag)\n", + "VBB=V_AB*complex(cos(-2*pi/3),sin(-2*pi/3)),'VBB='\n", + "VCC=V_AB*complex(cos(2*pi/3),sin(2*pi/3)),'VCC='\n", + "\n", + "print 'LINE-LINE VOLTAGES'\n", + "print 'VAB= {0:0.3f}+j*{1:0.3f}'.format(V_ab.real,V_ab.imag)\n", + "print 'VBC= {0:0.3f}+j*{1:0.3f}'.format(V_bc.real,V_bc.imag)\n", + "print 'VCA= {0:0.3f}+j*{1:0.3f}'.format(V_ca.real,V_ca.imag)\n", + "\n", + "print 'power delivered to load = %0.2f watts'%P\n", + "print 'total power dissipated in the line = %0.2f VArs'%P_line" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 194 Ex: 5.14" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "All the values in the textbook are approximated hence the values in this code differ from those of Textbook\n", + "real power supplied by V1 = 27.12 watts\n", + "reactive power supplied by V1 = 2.84 VARs\n" + ] + } + ], + "source": [ + "from numpy import mat,conj\n", + "from __future__ import division\n", + "from math import sqrt,pi,sin,cos\n", + "V_1=10**3*2.2*sqrt(2)*complex(cos(0),sin(0))#\n", + "V_2=10**3*2*sqrt(2)*complex(cos(-pi/18),sin(-pi/18))#\n", + "#writing matrix form of mesh current equaions obtained by KVL\n", + "Z=[[5+3*1J+50*complex(cos(-pi/18),sin(-pi/18)),-50*complex(cos(-pi/18),sin(-pi/18))],[-50*complex(cos(-pi/18),sin(-pi/18)),4+1J+50*complex(cos(-pi/18),sin(-pi/18))]] #coefficient matrix\n", + "V=[[2200*sqrt(2)],[-2000*sqrt(2)*complex(cos(-pi/18),sin(-pi/18))]]# #voltage matrix\n", + "Z=mat(Z);V=mat(V)\n", + "I=Z/V# #current matrix\n", + "S_1=(1/2)*V_1*conj((I[0,0]))# #complex power\n", + "P_1=(S_1.real)# #power\n", + "Q_1=(S_1.imag)# #reactive power\n", + "print \"All the values in the textbook are approximated hence the values in this code differ from those of Textbook\"\n", + "print 'real power supplied by V1 = %0.2f watts'%P_1\n", + "print 'reactive power supplied by V1 = %0.2f VARs'%Q_1" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter6.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter6.ipynb new file mode 100644 index 00000000..0d2c482a --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter6.ipynb @@ -0,0 +1,547 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Ch-6 : Frequency response, bode plots and resonance" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 255 Ex: 6.1" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "peak value of Vout = 6.00 volts\n", + "phase angle of Vout = 70.00 degrees\n", + "with frequency equal to = 1000.00\n" + ] + } + ], + "source": [ + "from math import pi, cos, sin, atan, sqrt\n", + "# given V_in(t)=2*cos(2000*pi*t+A), A=40*pi/180\n", + "w=2000*pi# #omega\n", + "f=w/(2*pi)# #frequency\n", + "A=40*pi/180# #40 degrees = %0.2f radians\n", + "#equation of straight line of H_magnitude vs f is x+1000*y-4000=0\n", + "H_max=(4000-f)/1000# #magnitude of H(traansfer function)\n", + "#equation of straight line of H_phase angle vs f is 6000*y=pi*x (phase angle = %0.2f radians)\n", + "H_phi=pi*f/6000# #phase angle of H\n", + "H=H_max*complex(cos(H_phi),sin(H_phi))\n", + "V_in=2*complex(cos(A),sin(A))# #input voltage phasor\n", + "V_out=H*V_in# #output voltage phasor\n", + "V_out_R=(V_out.real)# #real part\n", + "V_out_I=(V_out.imag)# #imaginary part\n", + "V_out_max=sqrt((V_out_R**2)+(V_out_I**2))# #peak value\n", + "V_out_phi=atan(V_out_I/V_out_R)\n", + "print 'peak value of Vout = %0.2f volts'%V_out_max\n", + "print 'phase angle of Vout = %0.2f degrees'%(V_out_phi*180/pi)\n", + "print 'with frequency equal to = %0.2f'%f" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 257 Ex: 6.2" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Output voltage is Vout1+Vout2+Vout3 where\n", + "\n", + "FOR Vout1:\n", + "peak value = 12.00 volts\n", + "phase angle = 0.00 degrees\n", + "with frequency = 0.00 hertz\n", + "\n", + "FOR Vout2:\n", + "peak value = 6.00 volts\n", + "phase angle = 30.00 degrees\n", + "with frequency = 1000.00 hertz\n", + "\n", + "FOR Vout3:\n", + "peak value = 2.00 volts\n", + "phase angle = -10.00 degrees\n", + "with frequency = 2000.00 hertz\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi, cos, sin, atan, sqrt\n", + "\n", + "#given V_in(t)=3+2*cos(2000*pi*t)+cos(4000*pi*t-A), A=70*pi/180\n", + "#the three parts of V_in(t) are V_in_1=3, V_in_2=2*cos(2000*pi*t),V_in_3=cos(4000*pi*t-A)\n", + "\n", + "#first component V_1\n", + "V_in_1=3\n", + "f_1=0# #as omega is zero\n", + "#equation of straight line of H_magnitude vs f is x+1000*y-4000=0\n", + "H_1_max=(4000-f_1)/1000# #magnitude of H(traansfer function)\n", + "#equation of straight line of H_phase angle vs f is 6000*y=pi*x (phase angle = %0.2f radians)\n", + "H_1_phi=pi*f_1/6000# #phase angle of H\n", + "H_1=H_1_max*complex(cos(H_1_phi),sin(H_1_phi))\n", + "V_out_1=H_1*V_in_1\n", + "V_out_1_R=(V_out_1).real# #real part\n", + "V_out_1_I=(V_out_1).imag# #imaginary part\n", + "V_out_1_max=sqrt((V_out_1_R**2)+(V_out_1_I**2))# #peak value\n", + "V_out_1_phi=atan(V_out_1_I/V_out_1_R)# #phase angle\n", + "\n", + "#second component V_in_2\n", + "V_in_2=2*complex(cos(0),sin(0))# #V_in_2 phasor\n", + "w=2000*pi# #omega\n", + "f_2=w/(2*pi)# #frequency\n", + "#equation of straight line of H_magnitude vs f is x+1000*y-4000=0\n", + "H_2_max=(4000-f_2)/1000# #magnitude of H(traansfer function)\n", + "#equation of straight line of H_phase angle vs f is 6000*y=pi*x (phase angle = %0.2f radians)\n", + "H_2_phi=pi*f_2/6000# #phase angle of H\n", + "H_2=H_2_max*complex(cos(H_2_phi),sin(H_2_phi))\n", + "V_out_2=H_2*V_in_2\n", + "V_out_2_R=(V_out_2).real# #real part\n", + "V_out_2_I=(V_out_2).imag# #imaginary part\n", + "V_out_2_max=sqrt((V_out_2_R**2)+(V_out_2_I**2))# #peak value\n", + "V_out_2_phi=atan(V_out_2_I/V_out_2_R)# #phase angle\n", + "\n", + "#third component\n", + "A=-70*pi/180# #-70 degrees = %0.2f radians\n", + "V_in_3=complex(cos(A),sin(A))# #V_in_3 phasor\n", + "w=4000*pi# #omega\n", + "f_3=w/(2*pi)# #frequency\n", + "#equation of straight line of H_magnitude vs f is x+1000*y-4000=0\n", + "H_3_max=(4000-f_3)/1000# #magnitude of H(traansfer function)\n", + "#equation of straight line of H_phase angle vs f is 6000*y=pi*x (phase angle = %0.2f radians)\n", + "H_3_phi=pi*f_3/6000# #phase angle of H\n", + "H_3=H_3_max*complex(cos(H_3_phi),sin(H_3_phi))\n", + "V_out_3=H_3*V_in_3\n", + "V_out_3_R=(V_out_3).real# #real part\n", + "V_out_3_I=(V_out_3).imag# #imaginary part\n", + "V_out_3_max=sqrt((V_out_3_R**2)+(V_out_3_I**2))# #peak value\n", + "V_out_3_phi=atan(V_out_3_I/V_out_3_R)# #phase angle\n", + "\n", + "print 'Output voltage is Vout1+Vout2+Vout3 where'\n", + "print ''\n", + "print 'FOR Vout1:'\n", + "print 'peak value = %0.2f volts'%V_out_1_max\n", + "print 'phase angle = %0.2f degrees'%(V_out_1_phi*180/pi)\n", + "print 'with frequency = %0.2f hertz'%f_1\n", + "print ''\n", + "print 'FOR Vout2:'\n", + "print 'peak value = %0.2f volts'%V_out_2_max\n", + "print 'phase angle = %0.2f degrees'%(V_out_2_phi*180/pi)\n", + "print 'with frequency = %0.2f hertz'%f_2\n", + "print ''\n", + "print 'FOR Vout3:'\n", + "print 'peak value = %0.2f volts'%V_out_3_max\n", + "print 'phase angle = %0.2f degrees'%(V_out_3_phi*180/pi)\n", + "print 'with frequency = %0.2f hertz'%f_3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 258 Ex: 6.3 " + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\n", + "Output voltage is Vout1+Vout2+Vout3 where\n", + "\n", + "FOR Vout1:\n", + "peak value = 4.98 volts\n", + "phase angle = -5.71 degrees\n", + "with frequency = 10.00 hertz\n", + "\n", + "FOR Vout2:\n", + "peak value = 3.54 volts\n", + "phase angle = -45.00 degrees\n", + "with frequency = 100.00 hertz\n", + "\n", + "FOR Vout3:\n", + "peak value = 0.50 volts\n", + "phase angle = -84.29 degrees\n", + "with frequency = 1000.00 hertz\n" + ] + } + ], + "source": [ + "from math import pi, cos, sin, atan, sqrt\n", + "\n", + "R=1000/(2*pi)# #resistance\n", + "C=10*10**-6# #capacitance\n", + "f_B=1/(2*pi*R*C)# #half-power frequency\n", + "#the three parts of V_in are V_1=5*cos(20*pi*t)+5*cos(200*pi*t)+5*cos(2000*pi*t)\n", + "\n", + "#first component V_in_1\n", + "V_in_1=5*complex(cos(0),sin(0))# #V_in_1 phasor\n", + "w_1=20*pi# #omega\n", + "f_1=w_1/(2*pi)# #frequency\n", + "H_1=1/(1+1J*(f_1/f_B))# #transfer function\n", + "V_out_1=H_1*V_in_1\n", + "V_out_1_R=(V_out_1).real# #real part\n", + "V_out_1_I=(V_out_1).imag# #imaginary part\n", + "V_out_1_max=sqrt((V_out_1_R**2)+(V_out_1_I**2))# #peak value\n", + "V_out_1_phi=atan(V_out_1_I/V_out_1_R)# #phase angle\n", + "\n", + "#second component V_in_2\n", + "V_in_2=5*complex(cos(0),sin(0))# #V_in_2 phasor\n", + "w_2=200*pi# #omega\n", + "f_2=w_2/(2*pi)# #frequency\n", + "H_2=1/(1+1J*(f_2/f_B))# #transfer function\n", + "V_out_2=H_2*V_in_2\n", + "V_out_2_R=(V_out_2).real #real part\n", + "V_out_2_I=(V_out_2).imag #imaginary part\n", + "V_out_2_max=sqrt((V_out_2_R**2)+(V_out_2_I**2))# #peak value\n", + "V_out_2_phi=atan(V_out_2_I/V_out_2_R)# #phase angle\n", + "\n", + "#third component V_in_3\n", + "V_in_3=5*complex(cos(0),sin(0))# #V_in_3 phasor\n", + "w_3=2000*pi# #omega\n", + "f_3=w_3/(2*pi)# #frequency\n", + "H_3=1/(1+1J*(f_3/f_B))# #transfer function\n", + "V_out_3=H_3*V_in_3\n", + "V_out_3_R=(V_out_3).real #real part\n", + "V_out_3_I=(V_out_3).imag #imaginary part\n", + "V_out_3_max=sqrt((V_out_3_R**2)+(V_out_3_I**2))# #peak value\n", + "V_out_3_phi=atan(V_out_3_I/V_out_3_R)# #phase angle\n", + "\n", + "print \" All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\"\n", + "print 'Output voltage is Vout1+Vout2+Vout3 where'\n", + "print ''\n", + "print 'FOR Vout1:'\n", + "print 'peak value = %0.2f volts'%V_out_1_max\n", + "print 'phase angle = %0.2f degrees'%(V_out_1_phi*180/pi)\n", + "print 'with frequency = %0.2f hertz'%f_1\n", + "print ''\n", + "print 'FOR Vout2:'\n", + "print 'peak value = %0.2f volts'%V_out_2_max\n", + "print 'phase angle = %0.2f degrees'%(V_out_2_phi*180/pi)\n", + "print 'with frequency = %0.2f hertz'%f_2\n", + "print ''\n", + "print 'FOR Vout3:'\n", + "print 'peak value = %0.2f volts'%V_out_3_max\n", + "print 'phase angle = %0.2f degrees'%(V_out_3_phi*180/pi)\n", + "print 'with frequency = %0.2f hertz'%f_3\n", + "#we can observe that there is a clear discrimination = %0.2f output signals based on frequencies i.e, lesser the frequency lesser the effect." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 261 Ex: 6.4 " + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\n", + "Break frequency = 1897.37 Hz\n" + ] + } + ], + "source": [ + "H_max=-30# #transfer function magnitude\n", + "f=60\n", + "m=20# #low-frequency asymptote slope rate = %0.2f db/decade\n", + "#f_B must be K higher than f where K is\n", + "K=abs(H_max)/m\n", + "#(base 10)log(f_B/60)=1.5 ==>\n", + "f_B=60*10**1.5\n", + "print \" All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\"\n", + "print 'Break frequency = %0.2f Hz'%f_B" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 262 Ex: 6.5 " + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Phasor voltage across Resistance\n", + "peak value = 1.00 volts\n", + "phase angle = 0.00 degrees\n", + "\n", + "Phasor voltage across Inductance\n", + "peak value = 10.00 volts\n", + "phase angle = 90.00 degrees\n", + "\n", + "Phasor voltage across Capacitance\n", + "peak value = 10.00 volts\n", + "phase angle = -90.00 degrees\n" + ] + } + ], + "source": [ + "from math import pi, cos, sin, atan, sqrt\n", + "V_s=1*complex(cos(0),sin(0))\n", + "L=159.2*10**-3\n", + "R=100\n", + "C=0.1592*10**-6\n", + "f_o=1/(2*pi*sqrt(L*C))# #resonant frequency\n", + "Q_s=2*pi*f_o*L/R# #quality factor\n", + "B=f_o/Q_s# #Bandwidth\n", + "#Approximate half-power frequencies are\n", + "f_H=f_o+(B/2)\n", + "f_L=f_o-(B/2)\n", + "#At resonance\n", + "Z_L=1J*2*pi*f_o*L# #impedance of inductance\n", + "Z_C=-1J/(2*pi*f_o*C)# #impedance of capacitance\n", + "Z_s=R+Z_L+Z_C\n", + "I=V_s/Z_s# #phasor current\n", + "#voltages across diffrent elements are\n", + "#for resistance\n", + "V_R=R*I\n", + "V_R_R=(V_R).real #real part\n", + "V_R_I=(V_R).imag #imaginary part\n", + "V_R_max=sqrt((V_R_R**2)+(V_R_I**2))# #peak value\n", + "V_R_phi=atan(V_R_I/V_R_R)# #phase angle\n", + "#for inductance\n", + "V_L=Z_L*I\n", + "V_L_R=(V_L).real #real part\n", + "V_L_I=(V_L).imag #imaginary part\n", + "V_L_max=sqrt((V_L_R**2)+(V_L_I**2))# #peak value\n", + "#Z_L is pure imaginary ==> V_L is pure imaginary which means V_L_phi can be +or- pi/2\n", + "if ((V_L/1J)==abs(V_L)):\n", + " V_L_phi=pi/2\n", + "elif ((V_L/1J)==-abs(V_L)):\n", + " V_L_phi=-pi/2\n", + "\n", + "\n", + "#for capacitance\n", + "V_C=Z_C*I\n", + "V_C_R=(V_C).real #real part\n", + "V_C_I=(V_C).imag #imaginary part\n", + "V_C_max=sqrt((V_C_R**2)+(V_C_I**2))# #peak value\n", + "#Z_C is pure imaginary ==> V_C is pure imaginary which means V_C_phi can be +or- pi/2\n", + "if ((V_C/1J)==abs(V_C)) :\n", + " V_C_phi=pi/2\n", + "elif ((V_C/1J)==-abs(V_C)) :\n", + " V_C_phi=-pi/2\n", + "\n", + " \n", + "print 'Phasor voltage across Resistance'\n", + "print 'peak value = %0.2f volts'%V_R_max\n", + "print 'phase angle = %0.2f degrees'%(V_R_phi*180/pi)\n", + "print ''\n", + "print 'Phasor voltage across Inductance'\n", + "print 'peak value = %0.2f volts'%V_L_max\n", + "print 'phase angle = %0.2f degrees'%(V_L_phi*180/pi)\n", + "print ''\n", + "print 'Phasor voltage across Capacitance'\n", + "print 'peak value = %0.2f volts'%V_C_max\n", + "print 'phase angle = %0.2f degrees'%(V_C_phi*180/pi)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 264 Ex: 6.6 " + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current phasor across Resistance\n", + "peak value = 0.001 amperes\n", + "phase angle = 0 degrees\n", + "\n", + "Current phasor across Inductance\n", + "peak value = 0.010 amperes\n", + "phase angle = -90.00 degrees\n", + "\n", + "current phasor across capacitance\n", + "peak value = 0.010 amperes\n", + "phase angle = 90.00 degrees\n" + ] + } + ], + "source": [ + "from math import pi, cos, sin, atan, sqrt\n", + "R=10*10**3\n", + "f_o=1*10**6\n", + "B=100*10**3\n", + "I=10**-3*complex(cos(0),sin(0))\n", + "Q_p=f_o/B# #quality factor\n", + "L=R/(2*pi*f_o*Q_p)\n", + "C=Q_p/(2*pi*f_o*R)\n", + "#At resonance\n", + "V_out=I*R\n", + "Z_L=1J*2*pi*f_o*L\n", + "Z_C=-1J/(2*pi*f_o*C)\n", + "\n", + "#across resistance\n", + "I_R=V_out/R\n", + "I_R_R=(I_R).real# #real part\n", + "I_R_I=(I_R).imag# #imaginary part\n", + "I_R_max=sqrt((I_R_R**2)+(I_R_I**2))# #peak value\n", + "I_R_phi=atan(I_R_I/I_R_R)# #phase angle\n", + "\n", + "#across inductance\n", + "I_L=V_out/Z_L\n", + "I_L_R=(I_L).real #real part\n", + "I_L_I=(I_L).imag# #imaginary part\n", + "I_L_max=sqrt((I_L_R**2)+(I_L_I**2))# #peak value\n", + "#Z_L is pure imaginary ==> V_L is pure imaginary which means V_L_phi can be +or- pi/2\n", + "if ((I_L/1J)==abs(I_L)):\n", + " I_L_phi=pi/2\n", + "elif ((I_L/1J)==-abs(I_L)) :\n", + " I_L_phi=-pi/2\n", + "\n", + "\n", + "#across capacitor\n", + "I_C=V_out/Z_C\n", + "I_C_R=(I_C).real# #real part\n", + "I_C_I=(I_C).imag# #imaginary part\n", + "I_C_max=sqrt((I_C_R**2)+(I_C_I**2))# #peak value\n", + "#Z_C is pure imaginary ==> V_C is pure imaginary which means V_C_phi can be +or- pi/2\n", + "if ((I_C/1J)==abs(I_C)):\n", + " I_C_phi=pi/2\n", + "elif ((I_C/1J)==-abs(I_C)) :\n", + " I_C_phi=-pi/2\n", + "\n", + "\n", + "print 'Current phasor across Resistance'\n", + "print 'peak value = %0.3f amperes'%I_R_max\n", + "print 'phase angle = %0.f degrees'%(I_R_phi*180/pi)\n", + "print ''\n", + "print 'Current phasor across Inductance'\n", + "print 'peak value = %0.3f amperes'%I_L_max\n", + "print 'phase angle = %0.2f degrees'%(I_L_phi*180/pi)\n", + "print ''\n", + "print 'current phasor across capacitance'\n", + "print 'peak value = %0.3f amperes'%I_C_max\n", + "print 'phase angle = %0.2f degrees'%(I_C_phi*180/pi)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 265 Ex: 6.7 " + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\n", + "\n", + "The required second order circuit configuration is\n", + "Inductance = 50.00 KH\n", + "Capacitance = 0.51 mF(micro Farads)\n", + "Resistance = 314.16 ohms\n" + ] + } + ], + "source": [ + "from math import pi\n", + "#We need a high-pass filter\n", + "L=50*10**-3\n", + "#for the transfer function to be approximately constant = %0.2f passband area(from graph given = %0.2f the text), we choose\n", + "Q_s=1\n", + "f_o=1*10**3\n", + "C=1/(((2*pi)**2)*f_o**2*L)\n", + "R=2*pi*f_o*L/Q_s\n", + "print \" All the values in the textbook are approximated, hence the values in this code differ from those of Textbook\"\n", + "print ''\n", + "print 'The required second order circuit configuration is'\n", + "print 'Inductance = %0.2f KH'%(L*10**3)\n", + "print 'Capacitance = %0.2f mF(micro Farads)'%(C*10**6)\n", + "print 'Resistance = %0.2f ohms'%R\n", + "\n" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter7.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter7.ipynb new file mode 100644 index 00000000..5e4a89eb --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter7.ipynb @@ -0,0 +1,146 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 7 : Logic circuits" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 312 Ex: 7.1 " + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Binary equivalent of 343 is 101010111\n" + ] + } + ], + "source": [ + "N=343# #decimal integer\n", + "N2=bin(N)[2:]# #binary equivalent of N\n", + "print 'Binary equivalent of 343 is',N2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 313 Ex: 7.2" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Binary form of 0.392 is 0.0110010\n" + ] + } + ], + "source": [ + "from math import floor\n", + "N=0.392# #decimal\n", + "def float_to_binary(num):\n", + " exponent=0\n", + " shifted_num=num\n", + " while shifted_num != int(shifted_num): \n", + " shifted_num*=2\n", + " exponent+=1\n", + " if exponent==0:\n", + " return '{0:0b}'.format(int(shifted_num))\n", + " binary='{0:0{1}b}'.format(int(shifted_num),exponent+1)\n", + " integer_part=binary[:-exponent]\n", + " fractional_part=binary[-exponent:].rstrip('0')\n", + " return '{0}.{1}'.format(integer_part,fractional_part) \n", + "DP =float_to_binary(N)[0:9] \n", + "print 'Binary form of 0.392 is',DP" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 316 Ex: 7.3" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "binary form of 343.392 : 101010111.101010111\n" + ] + } + ], + "source": [ + "n=343.392#\n", + "n1=n%1 # decimal float part\n", + "n2=int(n-n1) # decimal integer part\n", + "b1=bin(n2)[2:] # binary integer part\n", + "def float_to_binary(num):\n", + " exponent=0\n", + " shifted_num=num\n", + " while shifted_num != int(shifted_num): \n", + " shifted_num*=2\n", + " exponent+=1\n", + " if exponent==0:\n", + " return '{0:0b}'.format(int(shifted_num))\n", + " binary='{0:0{1}b}'.format(int(shifted_num),exponent+1)\n", + " integer_part=binary[:-exponent]\n", + " fractional_part=binary[-exponent:].rstrip('0')\n", + " return '{0}.{1}'.format(integer_part,fractional_part) \n", + "b2 =float_to_binary(n2)[0:9] # binary float part\n", + "#combining these two\n", + "b=str(b1)+'.'+str(b2)\n", + "print 'binary form of 343.392 : ',b" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter9.ipynb b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter9.ipynb new file mode 100644 index 00000000..010ee883 --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/chapter9.ipynb @@ -0,0 +1,63 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 9 : Computer based instrumentation diodes" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pg: 389 Ex: 9.1" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The minimum value of Rin required = 9985.00 kilo-ohms\n" + ] + } + ], + "source": [ + "P=0.1# #system sensitivity change percent\n", + "R_th_U=15*10**3# #thevenin resistance upper limit\n", + "R_th_L=5*10**3# #thevenin resistance lower limit\n", + "#The required inequality is V_sensor*R_in/(R_th_U+R_in)>=(1-P/100)*V_sensor*R_in/(R_th_L+R_in), cancelling same terms on both sides of inequality and calculating R_in by taking equality we'll get minimum value of R_in ===>R_th_L+R_in=(1-P/100)*(R_th_U+R_in) which gives\n", + "R_in=(((1-P/100)*R_th_U)-R_th_L)*100/P#\n", + "print 'The minimum value of Rin required = %0.2f kilo-ohms'%(R_in/1000)" + ] + } + ], + "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 +} diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh11ipNopVStime.png b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh11ipNopVStime.png Binary files differnew file mode 100644 index 00000000..073c3af2 --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh11ipNopVStime.png diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh13inANDOpVSTime.png b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh13inANDOpVSTime.png Binary files differnew file mode 100644 index 00000000..b4d3c53b --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh13inANDOpVSTime.png diff --git a/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh1chargeNcurrentVSTime.png b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh1chargeNcurrentVSTime.png Binary files differnew file mode 100644 index 00000000..350afca6 --- /dev/null +++ b/Electrical_Engineering_-_Principles_And_Applications_by_Allan._R._Hambley/screenshots/zzzCh1chargeNcurrentVSTime.png |