summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhardythe12014-07-28 14:01:58 +0530
committerhardythe12014-07-28 14:01:58 +0530
commit73b0bffc1781c6cf1eec459813767508da507c33 (patch)
tree81c5dc85e69261df791d26c88dca60dbf765970b
parent5571c8f5bda1334edf8ef9d8c69928d46cc9f163 (diff)
downloadPython-Textbook-Companions-73b0bffc1781c6cf1eec459813767508da507c33.tar.gz
Python-Textbook-Companions-73b0bffc1781c6cf1eec459813767508da507c33.tar.bz2
Python-Textbook-Companions-73b0bffc1781c6cf1eec459813767508da507c33.zip
adding book
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/README.txt8
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch10_1.ipynb142
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch11_1.ipynb188
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch12_1.ipynb208
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch13_1.ipynb131
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch14_1.ipynb284
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch1_1.ipynb103
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch2_1.ipynb187
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch4_1.ipynb240
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch5_1.ipynb377
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch6_1.ipynb188
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch7_1.ipynb708
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch8_1.ipynb562
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/ch9_1.ipynb284
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/screenshots/12_4.pngbin0 -> 16041 bytes
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/screenshots/13_1.pngbin0 -> 17020 bytes
-rwxr-xr-xBasic_Electronics_and_Linear_Circuits/screenshots/6_1.pngbin0 -> 22419 bytes
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/README.txt0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_01.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_02.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_03.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_04.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_05.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_06.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_07.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_08.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_09.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_10.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_11.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_12.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_13.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_14.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_15.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_16.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_17.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_18.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_19.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_20.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_21.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_22.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_23.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_24.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_25.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_26.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_27.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_28.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_29.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_30.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_31.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_32.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_33.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_34.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_35.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_36.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_37.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_38.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_39.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_40.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_41.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_42.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_43.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_44.ipynb0
-rwxr-xr-x[-rw-r--r--]Electrical_Circuit_Theory_And_Technology/chapter_45.ipynb0
-rwxr-xr-xMaterial_Science_In_Engineering/README.txt10
-rwxr-xr-xMaterial_Science_In_Engineering/ch10.ipynb234
-rwxr-xr-xMaterial_Science_In_Engineering/ch12.ipynb141
-rwxr-xr-xMaterial_Science_In_Engineering/ch14.ipynb344
-rwxr-xr-xMaterial_Science_In_Engineering/ch15.ipynb489
-rwxr-xr-xMaterial_Science_In_Engineering/ch16.ipynb313
-rwxr-xr-xMaterial_Science_In_Engineering/ch17.ipynb104
-rwxr-xr-xMaterial_Science_In_Engineering/ch19.ipynb223
-rwxr-xr-xMaterial_Science_In_Engineering/ch2.ipynb316
-rwxr-xr-xMaterial_Science_In_Engineering/ch20.ipynb225
-rwxr-xr-xMaterial_Science_In_Engineering/ch21.ipynb147
-rwxr-xr-xMaterial_Science_In_Engineering/ch3.ipynb104
-rwxr-xr-xMaterial_Science_In_Engineering/ch4.ipynb195
-rwxr-xr-xMaterial_Science_In_Engineering/ch5.ipynb384
-rwxr-xr-xMaterial_Science_In_Engineering/ch6.ipynb341
-rwxr-xr-xMaterial_Science_In_Engineering/ch7.ipynb201
-rwxr-xr-xMaterial_Science_In_Engineering/ch8.ipynb275
-rwxr-xr-xMaterial_Science_In_Engineering/ch9.ipynb105
-rwxr-xr-xMaterial_Science_In_Engineering/screenshots/chapter_6.pngbin0 -> 137431 bytes
-rwxr-xr-xMaterial_Science_In_Engineering/screenshots/chapter_9.pngbin0 -> 136104 bytes
-rwxr-xr-xMaterial_Science_In_Engineering/screenshots/strain_time_curve.pngbin0 -> 14065 bytes
-rwxr-xr-xMaterial_Science_In_Engineering/screenshots/strain_vs_stress.pngbin0 -> 12965 bytes
-rwxr-xr-xMaterial_Science_In_Engineering/screenshots/stress_strain_diagram.pngbin0 -> 12991 bytes
-rwxr-xr-xMaterial_Science_In_Engineering/screenshots/stress_time_curve.pngbin0 -> 14023 bytes
-rwxr-xr-xMechanics_of_Materials/APPENDIX_A.ipynb366
-rwxr-xr-xMechanics_of_Materials/Chapter1.ipynb843
-rwxr-xr-xMechanics_of_Materials/Chapter10.ipynb674
-rwxr-xr-xMechanics_of_Materials/Chapter11.ipynb267
-rwxr-xr-xMechanics_of_Materials/Chapter12.ipynb437
-rwxr-xr-xMechanics_of_Materials/Chapter13.ipynb636
-rwxr-xr-xMechanics_of_Materials/Chapter14.ipynb447
-rwxr-xr-xMechanics_of_Materials/Chapter2.ipynb207
-rwxr-xr-xMechanics_of_Materials/Chapter3.ipynb334
-rwxr-xr-xMechanics_of_Materials/Chapter4.ipynb728
-rwxr-xr-xMechanics_of_Materials/Chapter5.ipynb736
-rwxr-xr-xMechanics_of_Materials/Chapter6.ipynb798
-rwxr-xr-xMechanics_of_Materials/Chapter7.ipynb390
-rwxr-xr-xMechanics_of_Materials/Chapter8.ipynb412
-rwxr-xr-xMechanics_of_Materials/Chapter9.ipynb454
-rwxr-xr-xMechanics_of_Materials/README.txt18
-rwxr-xr-xMechanics_of_Materials/screenshots/10_5.pngbin0 -> 37393 bytes
-rwxr-xr-xMechanics_of_Materials/screenshots/14_5.pngbin0 -> 30138 bytes
-rwxr-xr-xMechanics_of_Materials/screenshots/1_1.pngbin0 -> 32264 bytes
106 files changed, 15495 insertions, 13 deletions
diff --git a/Basic_Electronics_and_Linear_Circuits/README.txt b/Basic_Electronics_and_Linear_Circuits/README.txt
index 92007db7..bc8e5c2b 100755
--- a/Basic_Electronics_and_Linear_Circuits/README.txt
+++ b/Basic_Electronics_and_Linear_Circuits/README.txt
@@ -1,10 +1,10 @@
-Contributed By: Rahul Garg
+Contributed By: Rahul garg
Course: btech
-College/Institute/Organization: Gurgaon College of Engineering
-Department/Designation: Electronics and Communication En
+College/Institute/Organization: MDU,Rohtak
+Department/Designation: ECE
Book Title: Basic Electronics and Linear Circuits
Author: Bhargava N. N., Kulshreshtha D. C., Gupta S.C.
Publisher: Tata McGraw - Hill Education, New Delhi
Year of publication: 2008
Isbn: 0074519654
-Edition: 1st \ No newline at end of file
+Edition: 1 \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch10_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch10_1.ipynb
new file mode 100755
index 00000000..6cd9de36
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch10_1.ipynb
@@ -0,0 +1,142 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:c0e331b614f072bb0c21b302f0e54b6a8366fa46ba53ae4810b072360f344e0d"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 10: Power Amplifiers"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 10.1 Page No.345"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "RL=16 # Ohms, load resistance\n",
+ "RLd=10000.0 # Ohms ,effective load resistance\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "N12=math.sqrt(RLd/RL) #N12=N1/N2\n",
+ "\n",
+ "# Result\n",
+ "print \" The Transformer Turns Ratio is N1/N2\",N12,\":1\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Transformer Turns Ratio is N1/N2 25.0 :1\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 10.2 Page No.345"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "#Given Circuit Data\n",
+ "Rl=8.0 #Ohms, load resistance\n",
+ "N12=15.0 #N12=N1/N2, transformer turns ratio\n",
+ "\n",
+ "#Calculation\n",
+ "Rld=(N12)**2*Rl #effective resistance\n",
+ "\n",
+ "# Result\n",
+ "print \" The Effective Resistance seen looking into the Primary, Rld = \",Rld/10**3,\"k ohm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": []
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 10.3 Page No.353"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "I1=15 #A\n",
+ "I2=1.5 #A\n",
+ "I3=1.2 #A\n",
+ "I4=0.5 #A\n",
+ "\n",
+ "#Calculation\n",
+ "D2=(I2/I1)*100 #percentage harmonic distribution of component 2\n",
+ "D3=(I3/I1)*100 #percentage harmonic distribution of component 3\n",
+ "D4=(I4/I1)*100 #percentage harmonic distribution of component 4\n",
+ "\n",
+ "#Result\n",
+ "print \" The Second Harmonic Distortion is, D2 = percent .\",D2\n",
+ "print \" The Third Harmonic Distortion is, D3 = percent .\",D3\n",
+ "print \" The Fourth Harmonic Distortion is, D4 = percent .\",round(D4,2)\n",
+ "\n",
+ "#(b)\n",
+ "import math\n",
+ "P1=1 #say\n",
+ "\n",
+ "#Calculation\n",
+ "D=math.sqrt(D2**2+D3**2+D4**2) #Distortion Factor\n",
+ "P=(1+(D/100)**2)*P1\n",
+ "Pi=((P-P1)/P1)*100\n",
+ "\n",
+ "#Result\n",
+ "print \"The Percentage Increase in Power because of Distortion is, Pi (in percent)= \",round(Pi,2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Second Harmonic Distortion is, D2 = percent . 10.0\n",
+ " The Third Harmonic Distortion is, D3 = percent . 8.0\n",
+ " The Fourth Harmonic Distortion is, D4 = percent . 3.33\n",
+ "The Percentage Increase in Power because of Distortion is, Pi (in percent)= 1.75\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch11_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch11_1.ipynb
new file mode 100755
index 00000000..1bf2118b
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch11_1.ipynb
@@ -0,0 +1,188 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:42316ce336a06a4afe76966dd3df12fd0f55e47e7182329e33e900184918fde7"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11: Tuned Voltage mplifiers"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.1 Page No.374"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "C=300*10**(-12) #F, capacitance\n",
+ "L=220*10**(-6) #H, inductance\n",
+ "R=20.0 #Ohms, resistance\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "fr=1/(2*math.pi*math.sqrt(L*C)) #resonant frequency\n",
+ "#result\n",
+ "print \" The Resonant Frequency, fr = \",round(fr/10**3,0),\"khz\"\n",
+ "\n",
+ "#(b) find The Impedance at Resonance\n",
+ "#Calculation\n",
+ "Rr=R\n",
+ "#result\n",
+ "print \" The Impedance at Resonance, Rr = \",Rr,\"ohm\"\n",
+ "\n",
+ "#(c) find The Current at Resonance\n",
+ "V=10.0 #V, voltage\n",
+ "#Calculation\n",
+ "I=V/R\n",
+ "#result\n",
+ "print \" The Current at Resonance, I = \",I,\"A\"\n",
+ "\n",
+ "#(d)\n",
+ "#Calculation\n",
+ "fr=1/(2*math.pi*math.sqrt(L*C))\n",
+ "I=V/R\n",
+ "Xl=2*math.pi*fr*L #reactance of inductor\n",
+ "Vl=I*Xl # Voltage across the Inductance\n",
+ "Xc=1/(2*math.pi*fr*C) #reactance of capacitance\n",
+ "Vc=I*Xc # Voltage across the Capacitance,\n",
+ "Vr=I*R #Voltage across the Resistance\n",
+ "\n",
+ "#result\n",
+ "print \" Voltage across the Inductance, Vl = \",round(Vl,0),\"V\"\n",
+ "print \" Voltage across the Capacitance, Vc = \",round(Vc,0),\"V\"\n",
+ "print \" Voltage across the Resistance, Vr = \",round(Vr,0),\"V\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Resonant Frequency, fr = 620.0 khz\n",
+ " The Impedance at Resonance, Rr = 20.0 ohm\n",
+ " The Current at Resonance, I = 0.5 A\n",
+ " Voltage across the Inductance, Vl = 428.0 V\n",
+ " Voltage across the Capacitance, Vc = 428.0 V\n",
+ " Voltage across the Resistance, Vr = 10.0 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.2 Page No.378"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "C=100*10**(-12) #F\n",
+ "L=100*10**(-6) #H\n",
+ "R=10 #Ohms\n",
+ "V=100 #V\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "fr=1/(2*math.pi*math.sqrt(L*C)) #Hz, resonant frequency\n",
+ "Xl=2*math.pi*fr*L #ohm, inductive reactance\n",
+ "Il=V/Xl #A, current in inductive branch\n",
+ "Xc=1/(2*math.pi*fr*C) #ohm, capacitance reactance\n",
+ "Ic=V/Xc #A, current in capacitive branch \n",
+ "Zp=L/(R*C) #ohm , series impedance\n",
+ "I=V/Zp #A, line current\n",
+ "\n",
+ "#Result\n",
+ "print \"fr= \",round(fr/10**3,0),\"khz\"\n",
+ "print \"Il= \",Il,\"A\"\n",
+ "print \"Ic= \",Ic,\"A\"\n",
+ "print \"Zp= \",Zp,\"ohm\"\n",
+ "print \"I= \",I/10**(-3),\"mA\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "fr= 1592.0 khz\n",
+ "Il= 0.1 A\n",
+ "Ic= 0.1 A\n",
+ "Zp= 100000.0 ohm\n",
+ "I= 1.0 mA\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.3 Page no. 379"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math\n",
+ "C=100*10**(-12) #F, capacitance\n",
+ "L=150*10**(-6) #H, inductance\n",
+ "R=15 #Ohms, resistance\n",
+ "\n",
+ "#Calculation\n",
+ "fr=1/(2*math.pi*math.sqrt(L*C))\n",
+ "Zp=L/(R*C)\n",
+ "Q=2*math.pi*fr*L/R\n",
+ "df=fr/Q #Bandwidth\n",
+ "\n",
+ "#The Result\n",
+ "print \" Impedance, Zp= \",Zp/10**3,\"kohm\"\n",
+ "print \" Quality Factor, Q= \",round(Q,1)\n",
+ "print \" Bandwidth, df= \",round(df/10**3,2),\"khz\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Impedance, Zp= 100.0 kohm\n",
+ " Quality Factor, Q= 81.6\n",
+ " Bandwidth, df= 15.92 khz\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch12_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch12_1.ipynb
new file mode 100755
index 00000000..7dbf9226
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch12_1.ipynb
@@ -0,0 +1,208 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:1fc7b4e7810aaec71230ef3ddc13645d6efc0b44874bc6bf484268f68693d914"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 12:Feedback in amplifiers"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 12.1 Page no.395"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "A=100.0 #Internal Gain\n",
+ "B=0.1 #Feedback Factor\n",
+ "\n",
+ "#Calculation\n",
+ "Af=A/(1+A*B) # Gain of Feedback Amplifier \n",
+ "# Result\n",
+ "print \" The Value of the Gain of Feedback Amplifier is = \",round(Af,2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Value of the Gain of Feedback Amplifier is, = 9.09\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 12.2 Page no. 395"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Af=100.0 #Voltage Gain\n",
+ "Vin=.05 #V , Input Signal without Feedaback Gain\n",
+ "Vi=0.6 #V , Input Signal with Feedaback Gain\n",
+ "\n",
+ "#Calculation\n",
+ "Vo=Af*Vi\n",
+ "A=Vo/Vin\n",
+ "B=((A/Af)-1)/A\n",
+ "#Result\n",
+ "print \"The Value of the Internal Gain A is, A = \",A\n",
+ "print \" The Value of the Feedback Gain B is, B = percent \",round(B*100,2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Value of the Internal Gain A is, A = 1200.0\n",
+ " The Value of the Feedback Gain B is, B = percent 0.92\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 12.3 Page no. 401"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "A=1000 #60dB Voltage Gain\n",
+ "B=0.005 #Negative Feedback\n",
+ "dAbyA=-0.12 #dA/A = 12 %\n",
+ "\n",
+ "#Calculation\n",
+ "dAfbyAf=1/(1+A*B)*dAbyA #dAf/Af=1/(1+A*B)*dA/A\n",
+ "\n",
+ "# Result\n",
+ "print \" The change in overall Gain of the Feedback Amplifier is\",dAfbyAf\n",
+ "print \"Therefore the overall gain of feedback amplifier will be reduce by \",-dAfbyAf*100,\"%\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The change in overall Gain of the Feedback Amplifier is -0.02\n",
+ "Therefore the overall gain of feedback amplifier will be reduce by 2.0 %\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 12.4 Page no. 401"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Zi=1000.0 #Ohms\n",
+ "A=1000.0 #Voltage Gain\n",
+ "B=0.01 #Negative Feedback\n",
+ "\n",
+ "#Calculation\n",
+ "Zid=(1+A*B)*Zi\n",
+ "# Result\n",
+ "print \" The Value of the Input Impedance of the Feedback Amplifier is, Zid = \",Zid/10**3,\"K ohm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Value of the Input Impedance of the Feedback Amplifier is, Zid = 11.0 K ohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 12.5 Page no. 401"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "A=1000.0 #60dB, Voltage Gain\n",
+ "Zo=12000.0 #Ohms\n",
+ "Zod=600.0 #Ohms\n",
+ "dAbyA=0.1 #dA/A = 10 %\n",
+ "\n",
+ "#Calculation\n",
+ "B=((Zo/Zod)-1)/A #Zod=Zo/(1+A*B)\n",
+ "dAfbyAf=1/(1+A*B)*dAbyA #dAf/Af=1/(1+A*B)*dA/A\n",
+ "# Result\n",
+ "print \" The Feedback Factor of the Feedback Amplifier is, B = \",B*100,\"percent\"\n",
+ "print \" The change in overall Gain of the Feedback Amplifier is, dAf/Af = \",dAfbyAf*100,\"percent\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Feedback Factor of the Feedback Amplifier is, B = 1.9 percent\n",
+ " The change in overall Gain of the Feedback Amplifier is, dAf/Af = 0.5 percent\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch13_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch13_1.ipynb
new file mode 100755
index 00000000..5bbf5b4b
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch13_1.ipynb
@@ -0,0 +1,131 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:599e62479fb81312d9e71ded8b631cb3f6c046aff5ae2a1f3f8129c2f46ca250"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 13:Oscillators"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 13.1 Page no.421"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "L=58.6*10**(-6) # H, inductance\n",
+ "C=300*10**(-12) # F, capacitance\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "fo=1/(2*math.pi*math.sqrt(L*C))\n",
+ "\n",
+ "#Result\n",
+ "print \" The Frequency of Oscillation of Tuned Collector Oscillator is fo = \",round(fo/10**3,2),\"KHz\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Frequency of Oscillation of Tuned Collector Oscillator is fo = 1200.36 KHz\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 13.2 Page no.427"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "R=100000.0 # Ohms, resistance\n",
+ "C=0.01*10**(-6) #F, capacitance\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "fo=1/(2*math.pi*R*C*math.sqrt(6))\n",
+ "#Result\n",
+ "print \"The Frequency of Oscillation of Vacuum Tube Phase Shift Oscillator is fo = \",round(fo,2),\"Hz\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Frequency of Oscillation of Vacuum Tube Phase Shift Oscillator is fo = 64.97 Hz\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 13.3 Page no.427"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "R1=220000.0 # Ohms, Resistance 1\n",
+ "R2=220000.0 # Ohms Resistance 2\n",
+ "C1=250*10**(-12) #F, capacitance 1 \n",
+ "C2=250*10**(-12) #F, capacitance 2\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "fo=1/(2*math.pi*math.sqrt(R1*C1*R2*C2))\n",
+ "# Result\n",
+ "print \"The Frequency of Oscillation of Wein Bridge Oscillator is fo = \",round(fo/10**3,2),\"KHz\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Frequency of Oscillation of Wein Bridge Oscillator is fo = 2.89 KHz\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch14_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch14_1.ipynb
new file mode 100755
index 00000000..a36cd2dc
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch14_1.ipynb
@@ -0,0 +1,284 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:cfa443285df31619aefbaacada3721c633441a1550bfa091bb356c1fe13c7815"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14 :Electronic Instruments"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.1 Page no.443"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Rm=100.0 #Ohms, coil resistance\n",
+ "Is=100*10**(-6 ) #A current sensivity\n",
+ "Vr=100.0 #V, voltage\n",
+ "\n",
+ "#Calculation\n",
+ "Rtotal=Vr/Is #series resistance\n",
+ "Rs=Rtotal-Rm #additional series resistance\n",
+ "#Result\n",
+ "print \" The Series Resistance to Convert given dArsonval movement into a Voltmeter is, Rs = \",Rs/10**3,\"Kohm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Series Resistance to Convert given dArsonval movement into a Voltmeter is, Rs = 999.9 Kohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.2 Page no. 445"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Rm=100.0 #. meter resistance #Ohms\n",
+ "CS=100*10**(-6) #A. current sensivity\n",
+ "Imax=10*10**(-3) #A. maximum current\n",
+ "\n",
+ "#Calculation\n",
+ "Ish=Imax-CS\n",
+ "Rsh=Rm*CS/Ish\n",
+ "# Result\n",
+ "print \" The Value of Shunt Resistance is, Rsh = \",round(Rsh,6),\"ohm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Value of Shunt Resistance is, Rsh = 1.010101 ohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.3 Page no.446"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "CS=100*10**(-6) #A, current source\n",
+ "R=100.0 #Ohms, resistance\n",
+ "Rm=900.0 #Ohms, resistance of a meter\n",
+ "\n",
+ "#(a)\n",
+ "#Calculation\n",
+ "Imax1=1*10**(-3) #A, maximum current\n",
+ "Rsh=CS*R/(Imax1-CS) #ohm, shunt path resistance\n",
+ "Rm1=Rm #ohm, meter branch resistance\n",
+ "Ish1=Imax1-CS #A shunt path current\n",
+ "Rsh1=Rm1*CS/Ish1 #ohm shunt path resistance\n",
+ "\n",
+ "#(b)\n",
+ "#Calculation\n",
+ "Imax2=0.01 #A, maximum current\n",
+ "Ish2=Imax2-CS #A, shunt path current\n",
+ "R1=(R*Ish2-Rm*CS)/(Ish2+CS) #ohm, resistance in branch 1\n",
+ "\n",
+ "#(c)\n",
+ "#Calculation\n",
+ "Imax3=100*10**(-3) #A. maximum current\n",
+ "Ish3=Imax3-CS #A, shunt path current\n",
+ "R2=((R-R1)*Ish3-Rm*CS)/(Ish3-CS) #ohm, resistance in branch 2\n",
+ "\n",
+ "#(d)\n",
+ "#Calculation\n",
+ "Imax4=500*10**(-3) #A , maximum current\n",
+ "Ish4=Imax4-CS #A, shunt path current\n",
+ "R3=((R-R1-R2)*Ish4-Rm*CS)/(Ish4-CS) #ohm, resistance in branch 3\n",
+ "\n",
+ "#(e)\n",
+ "#Calculation\n",
+ "Imax5=1 #A\n",
+ "Ish5=Imax5-CS #A, shunt path current\n",
+ "R4=((R-R1-R2-R3)*Ish5-Rm*CS)/(Ish5-CS) #ohm, resistance in branch 4\n",
+ "R5=R-R1-R2-R3-R4 #ohm, resistance in branch 2\n",
+ "\n",
+ "# Result\n",
+ "print \" Shunt Resistance =\",round(Rsh,6),\"ohm\"\n",
+ "print \" For Range switch at 1 mA , Rsh1 \",Rsh1,\"ohm\"\n",
+ "print \" For Range switch at 10 mA , R1 = \",R1,\"ohm\"\n",
+ "print \" For Range switch at 100 mA, R2 = \",round(R2,0),\"ohm\"\n",
+ "print \" For Range switch at 500 mA, R3 = \",round(R3,1),\"ohm\"\n",
+ "print \" For Range switch at 1 A , R4 = \",round(R4,1),\"ohm\"\n",
+ "print \" R5 = \",round(R5,1),\"ohm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Shunt Resistance = 11.111111 ohm\n",
+ " For Range switch at 1 mA , Rsh1 100.0 ohm\n",
+ " For Range switch at 10 mA , R1 = 90.0 ohm\n",
+ " For Range switch at 100 mA, R2 = 9.0 ohm\n",
+ " For Range switch at 500 mA, R3 = 0.7 ohm\n",
+ " For Range switch at 1 A , R4 = 0.1 ohm\n",
+ " R5 = 0.1 ohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.4 Page no.469"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "DS=5 #V/cm, Deflection Sensitivity\n",
+ "l=10 #cm, Trace Length\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "Vp=DS*l\n",
+ "Vm=Vp/2\n",
+ "V=Vm/math.sqrt(2)\n",
+ "# Result\n",
+ "print \" The RMS AC Voltage is=\",round(V,3),\"V\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The RMS AC Voltage is= 17.678 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "%pylab inline"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].\n",
+ "For more information, type 'help(pylab)'.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.5 Page no. 471"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import numpy\n",
+ "#Given Circuit Data\n",
+ "Am=3.5 #V, Amplitude\n",
+ "tb=0.1*10**(-3) #seconds\n",
+ "TP=4 #Time Period\n",
+ "x=linspace(-10,10,1000)\n",
+ "plt.grid()\n",
+ "plot(x,cos(x))\n",
+ "title('Display of a sine wave voltage on CRO ')\n",
+ "show()\n",
+ "#Calculation\n",
+ "import math\n",
+ "Vm=2*Am\n",
+ "V=Vm/math.sqrt(2)\n",
+ "T=TP*tb\n",
+ "f=1/T\n",
+ "\n",
+ "# Result\n",
+ "print \"The Magnitude of Wave Voltage, \",round(V,2),\"V\"\n",
+ "print \" The Frequency of Wave Voltage, f = \",f/10**3,\"KHz\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n"
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Magnitude of Wave Voltage, 4.95 V\n",
+ " The Frequency of Wave Voltage, f = 2.5 KHz\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch1_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch1_1.ipynb
new file mode 100755
index 00000000..aa323b17
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch1_1.ipynb
@@ -0,0 +1,103 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:d40864745b0958ff90d45e29ecc4874d2fd0d20b38ed09535ff46977537fd224"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter no. 1: Introduction To Electronics"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1.1 Page no.8"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "A=4 #NUMERICAL CODE FOR BAND YELLOW\n",
+ "B=7 #NUMERICAL CODE FOR BAND VIOLET\n",
+ "C=3 #NUMERICAL CODE FOR BAND ORANGE\n",
+ "D=5 #TOLERANCE VALUE FOR BAND GOLD i.e. 5%\n",
+ "\n",
+ "#Resistor Value Calculation\n",
+ "R=(A*10+B)*10**C\n",
+ "#Tolerance Value Calulation\n",
+ "T=D*R/100;\n",
+ "R1=R-T;\n",
+ "R2=R+T;\n",
+ "\n",
+ "# Results\n",
+ "print \"Therefore thr resistance should be within the range \", R1*10**(-3) ,\"kohm\",\"and\", R2*10**(-3),\"kohm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Therefore thr resistance should be within the range 44.65 kohm and 49.35 kohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.2 Page no.8"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "A=8 #NUMERICAL CODE FOR BAND GRAY\n",
+ "B=6 #NUMERICAL CODE FOR BAND BLUE\n",
+ "C=-1 #NUMERICAL CODE FOR BAND GOLD\n",
+ "D=5 #TOLERANCE VALUE FOR BAND GOLD i.e. 5%\n",
+ "#Resistor Value Calculation\n",
+ "R=(A*10+B)*10**C\n",
+ "#Tolerance Value Calulation\n",
+ "T=D*R/100\n",
+ "R1=R-T\n",
+ "R2=R+T\n",
+ "# Results \n",
+ "print \"Range of Values of the Resistor is between \",R1,\"ohm\",\"and\",R2,\"ohm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Range of Values of the Resistor is between 8.17 ohm and 9.03 ohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch2_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch2_1.ipynb
new file mode 100755
index 00000000..cdec3a81
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch2_1.ipynb
@@ -0,0 +1,187 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:d04dc734c5bc464767e0da96b38331e03b832b88f0bd8644b242b3682feeb9d9"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 2:Current and Voltage Source"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.1 Page no.39"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vs=2 #V open circuit voltage\n",
+ "Rs=1 #ohm . internal impedence\n",
+ "#Current Source or Norton's Representaion (Parallel Current Source & Resistor\n",
+ "Is=Vs/Rs #Ampere, short circuit current\n",
+ "#result\n",
+ "print \"The Short Circuit Current Value is \",Is,\"A\"\n",
+ "print \"The Source Impedence Value is \",Rs,\"ohm\"\n",
+ "print \"The Current Source & Source Impedance are connected in Parallel.\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Short Circuit Current Value is 2 A\n",
+ "The Source Impedence Value is 1 ohm\n",
+ "The Current Source & Source Impedance are connected in Parallel.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.2 Page no.40"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Is=0.2 #Amperes\n",
+ "Zs=100 #Ohms\n",
+ "#Voltage Source or Thevenin's Representaion (Series Voltage Source & Resistor)\n",
+ "Vs=Is*Zs #Volts\n",
+ "# Results \n",
+ "print \"The Open Circuit Voltage is \",Vs,\"V\"\n",
+ "print \"The Source Impedence Value is \",Zs,\"ohm\"\n",
+ "print \"The Voltage Source & Source Impedance are connected in Series.\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Open Circuit Voltage is 20.0 V\n",
+ "The Source Impedence Value is 100 ohm\n",
+ "The Voltage Source & Source Impedance are connected in Series.\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.3 Page no.40"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Is=1.5*10**(-3) #Amperes ,source current\n",
+ "Zs=2000 #Ohms, resistance connected to the loads\n",
+ "Z1=10000 #Ohms , load resistance 1\n",
+ "Z2=40000 #Ohms load resistance 2\n",
+ "#Calculation for Current Source Representation\n",
+ "Zl=Z1*Z2/(Z1+Z2)\n",
+ "I2=Is*Zs/(Zs+Zl)\n",
+ "I4I=I2*Z1/(Z1+Z2) #Using Current Divider Rule\n",
+ "\n",
+ "#Calculation for Current Source Representation\n",
+ "Vs=Is*Zs #Open Circuit Volatge\n",
+ "I=Vs/(Zs+Zl)\n",
+ "I4V=I*Z1/(Z1+Z2) #Using Current Divider Rule\n",
+ "# Results \n",
+ "print \"The Load Current using Current Source Representaion is I4I = \",I4I,\"A\"\n",
+ "print \"The Load Current using Voltage Source Representaion is I4V = \",I4V,\"A\"\n",
+ "print \"I4I==I4V so\"\n",
+ "print \" Both Results are same.\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Load Current using Current Source Representaion is I4I = 6e-05 A\n",
+ "The Load Current using Voltage Source Representaion is I4V = 6e-05 A\n",
+ "I4I==I4V so\n",
+ " Both Results are same.\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.4 Page no.45"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "Vs=0.01 #V ,dc voltage\n",
+ "Rs=1000 # ohm, resistance\n",
+ "#Output Side resistance\n",
+ "Ro1=20000 #ohm, 20 kOhms\n",
+ "Ro2=2000 # Ohms\n",
+ "\n",
+ "#Calculation\n",
+ "i=Vs/Rs #Input Current\n",
+ "Io=100*i #Output Current\n",
+ "Il=Io*Ro1/(Ro1+Ro2) #Using Current Divider Rule\n",
+ "Vo=Il*Ro2 #Output Volatge\n",
+ "\n",
+ "# Result\n",
+ "print \"The Output Voltage Vo = \",round(Vo,3),\"V\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Output Voltage Vo = 1.818 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch4_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch4_1.ipynb
new file mode 100755
index 00000000..1c55c39d
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch4_1.ipynb
@@ -0,0 +1,240 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:ae9612ced78590c195456849014e70cbd1cdee113840d747c19ee249579f79a3"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 4:Semiconductor Diode"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 4.1 Page No.85"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vrms=220 #Volts, power supply\n",
+ "n2=1 #Assumption\n",
+ "n1=12*n2 #Turns Ratio\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "Vp=math.sqrt(2)*Vrms #Maximum(Peak) Primary Voltage\n",
+ "Vm=n2*Vp/n1 #Maximum Secondary Voltage\n",
+ "Vdc=Vm/math.pi #DC load Voltage \n",
+ "# Results \n",
+ "print \"The DC load Voltage is = \",round(Vdc,2),\"V\"\n",
+ "print \"The Peak Inverse Voltage(PIV) is = \",round(Vm,1),\"V\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The DC load Voltage is = 8.25 V\n",
+ "The Peak Inverse Voltage(PIV) is = 25.9 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 4.2 Page No.90"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vrms=220 #Volts, power supply rms voltage\n",
+ "n2=1 #Assumption\n",
+ "n1=12*n2 #Turns Ratio\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "Vp=math.sqrt(2)*Vrms #Maximum(Peak Primary Voltage\n",
+ "Vm=n2*Vp/n1 #Maximum Secondary Voltage\n",
+ "Vdc=2*Vm/math.pi #DC load Voltage \n",
+ "\n",
+ "# Results \n",
+ "print \"The DC load Voltage is = \",round(Vdc,1),\"V\"\n",
+ "print \"The Peak Inverse Voltage(PIV of Bridge Rectifier is = \",round(Vm,1),\"V\"\n",
+ "print \"The Peak Inverse Voltage(PIV of Centre-tap Rectifier is = \",round(2*Vm,1),\"v\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The DC load Voltage is = 16.5 V\n",
+ "The Peak Inverse Voltage(PIV of Bridge Rectifier is = 25.9 V\n",
+ "The Peak Inverse Voltage(PIV of Centre-tap Rectifier is = 51.9 v\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 4.3 Page No.95"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math\n",
+ "Rl=1000.0 #Ohms, load resistance\n",
+ "rd=10.0 #Ohms forward base dynamic resistance\n",
+ "Vm=220.0 #Volts(Peak Value of Voltage)\n",
+ "#Calculation\n",
+ "Im=Vm/(rd+Rl) #Peak Value of Current\n",
+ "\n",
+ "# Result\n",
+ "print \"The Peak Value of Current is = \",round(Im*1000,1),\"mA\"\n",
+ "\n",
+ "#(b) dc or av value of current\n",
+ "\n",
+ "Idc=2*Im/math.pi #DC Value of Current\n",
+ "# Results \n",
+ "print \"The DC or Average Value of Current is \",round(Idc*1000,2),\"mA\"\n",
+ "\n",
+ "#(c)\n",
+ "Irms=Im/math.sqrt(2) #RMS Value of Current\n",
+ "# Results \n",
+ "print \"The RMS Value of Current is = \",round(Irms*1000,1),\"mA\"\n",
+ "\n",
+ "#(d)\n",
+ "r=math.sqrt((Irms/Idc)**2-1) #Ripple Factor\n",
+ "# Results i\n",
+ "print \" The Ripple Factor r = \",round(r,3)\n",
+ "\n",
+ "#(e)\n",
+ "Pdc=Idc**2*Rl\n",
+ "Pac=Irms**2*(rd+Rl)\n",
+ "n=Pdc/Pac #Rectification Efficiency\n",
+ "# Results\n",
+ "print \"The Rectification EFficiency n(eeta) = percent.\",round(n*100,2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Peak Value of Current is = 217.8 mA\n",
+ "The DC or Average Value of Current is 138.67 mA\n",
+ "The RMS Value of Current is = 154.0 mA\n",
+ " The Ripple Factor r = 0.483\n",
+ "The Rectification EFficiency n(eeta) = percent. 80.25\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 4.4 Page No.103"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vz=9.1 #Volts\n",
+ "P=0.364 #Watts\n",
+ "#Calculation\n",
+ "Iz=P/Vz\n",
+ "#Result\n",
+ "print \" The Maximum permissible Current is \",Iz*1000,\"mA\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Maximum permissible Current is 40.0 mA\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 4.5 Page No.105"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Ci=18*10**(-12) #i.e. 18 pF, capacitance of diode\n",
+ "Vi=4 #volt, initial voltage\n",
+ "Vf=8 #v, final voltage\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "Vf=8 \n",
+ "K=Ci*math.sqrt(Vi)\n",
+ "Cf=K/math.sqrt(Vf)\n",
+ "#Result\n",
+ "print \" The Final Value of Capacitance is C = \",round(Cf/10**(-12),3),\"pF\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Final Value of Capacitance is C = 12.728 pF\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch5_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch5_1.ipynb
new file mode 100755
index 00000000..984c68da
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch5_1.ipynb
@@ -0,0 +1,377 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:fb72fb6e3e7bfcc92ab695858992d86597c1a24269bab39240e9f25a8dff8c2d"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5: Transistors"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.1 Page No 134"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "alpha=0.98 #alpha(dc), current gain\n",
+ "Ico=1*10**(-6) #Ampere, collector leakage current\n",
+ "Ie=1*10**(-3) # Ampere, emitter current\n",
+ "\n",
+ "#Calculation\n",
+ "Ic=alpha*Ie+Ico #Collector Current\n",
+ "Ib=Ie-Ic #Base Current \n",
+ "#result\n",
+ "print \" The Collector Current is Ic= \",Ic*1000,\"mA\"\n",
+ "print \" The Base Current is Ib= \",Ib*10**6,\"microA\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Collector Current is Ic= 0.981 mA\n",
+ " The Base Current is Ib= 19.0 microA\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.2 Page No 141"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "dIe=(0.7-0.3)*10**(-3) #A, change in emitter current\n",
+ "dVeb=(0.7-0.62) #V, change in emitter base voltage\n",
+ "#Calculation\n",
+ "ri=dVeb/dIe #Dynamic Input Resistance at Vcb= -10 V \n",
+ "#Result\n",
+ "print \" The Dynamic Input Resistance is ri= \",ri,\"ohm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Dynamic Input Resistance is ri= 200.0 ohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.3 Page No 144"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "dIe=1*10**(-3) #A, change in emitter current\n",
+ "dIc=0.99*10**(-3) #A, change in the collector current\n",
+ "\n",
+ "#Calculation\n",
+ "hfb=dIc/dIe #Short Circuit Current Gain\n",
+ "#Result\n",
+ "print \"The Short Circuit Current Gain is alpha or hfb= \",hfb"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": []
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.4 Page No 147 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "dIe=1*10**(-3) #A, change in emitter current\n",
+ "dIc=0.995*10**(-3) #A, change in collector current\n",
+ "\n",
+ "#Calculation\n",
+ "alpha=dIc/dIe #Common Base Short Circuit Current Gain\n",
+ "#Result\n",
+ "print \" The Common Base Short Circuit Current Gain is alpha= \",alpha\n",
+ "\n",
+ "#(b)\n",
+ "beeta=alpha/(1-alpha) #Common Emitter Short Circuit Current Gain\n",
+ "# Result\n",
+ "print \" The Common Emitter Short Circuit Current Gain is beeta= \",beeta\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Common Base Short Circuit Current Gain is alpha= 0.995\n",
+ " The Common Emitter Short Circuit Current Gain is beeta= 199.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.5 Page No 147 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Beeta=100.0 #dc current gain\n",
+ "\n",
+ "#Calculation\n",
+ "Alpha=Beeta/(Beeta+1) #DC Current Gain in Common Base Configuration\n",
+ "# Result\n",
+ "print \" The DC Current Gain in Common Base Configuration is Alpha= \",round(Alpha,2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The DC Current Gain in Common Base Configuration is Alpha= 0.99\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.6 Page No 150"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vce=10 #V, collector emitter voltage\n",
+ "Ib=30*10**(-6) #A, base current\n",
+ "\n",
+ "#Calculation from Given Output Characteristics at Ib = 30uA\n",
+ "dVce=(12.5-7.5) #V, change in collector emitter voltage\n",
+ "dic=(3.7-3.5)*10**(-3) #A, change in collector current\n",
+ "Ic=3.6*10**(-3) #A, collector current at operating point \n",
+ "ro=dVce/dic # Dynamic Output Resistance\n",
+ "Beeta_dc=Ic/Ib # DC Current Gain\n",
+ "Beeta_ac=((4.7-3.6)*10**(-3))/((40-30)*10**(-6)) #AC Current Gain, From Graph, Bac=delta(ic)/delta(ib) for given Vce\n",
+ "\n",
+ "# Result\n",
+ "print \"Dynamic Output Resistance ,ro = \",ro/10**(3),\"kohm\"\n",
+ "print \" DC Current Gain ,Bdc = \",Beeta_dc\n",
+ "print \" AC Current Gain ,Bac = \",Beeta_ac"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Dynamic Output Resistance ,ro = 25.0 kohm\n",
+ " DC Current Gain ,Bdc = 120.0\n",
+ " AC Current Gain ,Bac = 110.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.7 Page No 159"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " \n",
+ "Vcc=12 #V, collector bias juncyion voltage\n",
+ "Rc=1000.0 #Ohms, collector resistance\n",
+ "Vbb=10.7 #V. base bias junction voltage\n",
+ "Rb=200000.0 #Ohms, base resistance\n",
+ "Vbe=0.7 #V, base emitter voltage\n",
+ "\n",
+ "#Calculation\n",
+ "Ib=(Vbb-Vbe)/Rb # base current\n",
+ "#Value of Ib comes out to be 50uA. A dotted Curve is drawn for \n",
+ "#Ib=40uA and Ib=60uA. At the Point of Intersection:\n",
+ "Vce=6 #V, collector emitter voltage\n",
+ "Ic=6*10**(-3) #A, collector current\n",
+ "# Result\n",
+ "print \" Q point: Ib = \",Ib/10**(-6),\"microA\"\n",
+ "print \" Vce = \",Vce,\"V\"\n",
+ "print \" Ic = \",Ic/10**(-3),\"mA\"\n",
+ "#Plot\n",
+ "\n",
+ "#DC Load LIne AT Ib=50 microA\n",
+ "Vce1=[0,12]\n",
+ "Ic1=[12,0]\n",
+ "a1=plot(Vce1,Ic1)\n",
+ "xlim(0,14)\n",
+ "ylim(0,17)\n",
+ "\n",
+ "\n",
+ "# AT Ib=20 microA\n",
+ "Vce2=[0,1,12]\n",
+ "Ic2=[0,1.5,3]\n",
+ "a2=plot(Vce2,Ic2)\n",
+ "\n",
+ "# AT Ib=40 microA\n",
+ "Vce3=[0,1,12]\n",
+ "Ic3=[0,4,5]\n",
+ "a3=plot(Vce3,Ic3)\n",
+ "\n",
+ "#At IB=50\n",
+ "Vcex=[3.2,9]\n",
+ "Icx=[5.5,6]\n",
+ "ax=plot(Vcex,Icx,linestyle='--')\n",
+ "qx=plot(6.1,5.9,marker='o',label='$Q point$')\n",
+ "legend()\n",
+ "\n",
+ "# AT Ib=60 microA\n",
+ "Vce4=[0,1,12]\n",
+ "Ic4=[0,6.5,8]\n",
+ "a4=plot(Vce4,Ic4)\n",
+ "\n",
+ "# AT Ib=80 microA\n",
+ "Vce5=[0,1,12]\n",
+ "Ic5=[0,9,10]\n",
+ "a5=plot(Vce5,Ic5)\n",
+ "\n",
+ "# AT Ib=100 microA\n",
+ "Vce6=[0,1,12]\n",
+ "Ic6=[0,12,12.5]\n",
+ "a6=plot(Vce6,Ic6)\n",
+ "\n",
+ "# AT Ib=120 microA\n",
+ "Vce7=[0,1,12]\n",
+ "Ic7=[0,14.2,15]\n",
+ "a7=plot(Vce7,Ic7)\n",
+ "xlabel(\"$Vce(volt)$\")\n",
+ "ylabel(\"$Ic(mA)$\")\n",
+ "show(a1)\n",
+ "show(ax)\n",
+ "show(qx)\n",
+ "show(a2)\n",
+ "show(a3)\n",
+ "show(a4)\n",
+ "show(a5)\n",
+ "show(a6)\n",
+ "show(a7)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Q point: Ib = 50.0 microA\n",
+ " Vce = 6 V\n",
+ " Ic = 6.0 mA\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\nExNDkyZNCA4O5vbbb9c6LJudP3+eyMhIACIjIzl//rzGEdXckiVLuPPOO7UOwybr1q0jOjqajh07\nWsW/nSgAAAZCSURBVHW+S/ylu2L3hSV5eXmMGDGCt99+G39/f63Dscr69etp1KgRnTt3drm7BYCS\nkhL27t3LY489xt69e/Hz83PqboxrHT9+nAULFpCamsqZM2fIy8vj448/1jqsWtHpdC77N/3aa6/h\n6enJ6NGjtQ7Favn5+cyaNYuXXnqp/Fh1f8sukRisWePg7IxGI/fccw8PPPAAw4YN0zocq+3cuZOv\nvvqK2NhYRo0axbZt2xg7dqzWYVktOjqa6OhounfvDsCIESPYu3evxlFZLzk5mV69ehEWFoa7uzt/\n/etf2blzp9Zh2SwyMpJz584BcPbsWRo1cr09U5YtW8bGjRtdLjEfP36c1NRUEhISiI2N5dSpU3Tt\n2pULFy5U+RyXSAyuvsZBURQmTpxI27Zteeqpp7QOxyazZs0iLS0Ng8HAp59+St++fVmxYoXWYVkt\nKiqKZs2akZKSAsDWrVtp166dxlFZr02bNuzatYuCggIURWHr1q20bdtW67BsNmTIEJYvXw7A8uXL\nXeriCNRZkXPnzmXdunV4e3trHY5NOnTowPnz5zEYDBgMBqKjo9m7d+/1k7PiIjZu3Ki0bt1aiYuL\nU2bNmqV1ODbZsWOHotPplISEBKVTp05Kp06dlE2bNmkdls2SkpKUwYMHax2GzX777TelW7duSseO\nHZXhw4crWVlZWodkkzlz5iht27ZV2rdvr4wdO1YpLi7WOqTruv/++5XGjRsrHh4eSnR0tLJkyRIl\nPT1d6devn9KqVSulf//+SmZmptZhVuna+D/88EOlZcuWSkxMTPnf76OPPqp1mFUqi9/T07P8519R\nbGyskp6eft3XcJpaSUIIIZyDS3QlCSGEcBxJDEIIIcxIYhBCCGFGEoMQQggzkhiEEEKYkcQghBDC\njCQGIWrJHmWwCwsL7RCJEPYhiUE0aIcPH+amm27iwQcf5OLFiwDs27ePdu3asXHjxmqfv379enJz\nc216z2eeeYYZM2aYHTt16hRbt2616XWEqCuSGESD1rZtW+666y769etHREQEoBZ5W7NmTbUVNM+e\nPUtOTg7h4eE2vWdcXBw333wzAEeOHGHWrFm0bNmSw4cPU1BQULNvRAg7ksQgGrzo6GizIo2HDh2y\nqh7R0qVLGT58uM3v9+uvv5aXXd++fTudO3cG4K677mLVqlU2v54Q9iaJQTR40dHR5RuvfPfdd/Tr\n148NGzawdOlSRo0axcmTJwHYtGkTb731FosWLeLcuXNcuHABHx8f4Gp57M8//5zU1NTyTWnWr1/P\n8uXLmTdvXvmufRcuXCA8PJxNmzbx4YcfcurUKc6dO0dcXBwHDx7U4CcghDlJDKLBK7tjKC0t5cKF\nC+Tk5LBixQrGjx/PsmXLiImJ4cSJE8yaNYt//OMfxMfHk5eXZzZgfOHCBRo1akRhYSEtWrQgLi6O\nlJQUPvroI8aNG8edd97J//3f/5GTk1O+u9agQYNo0qQJkyZNIioqClD3jxBCa5IYRINXdsewbt06\nhgwZwrJly3jggQcA8PLyAmDt2rW0atWK9evXo9PpaNmyJUajsfw1evbsydq1axk0aBAA7dq1Y/ny\n5YwZMwaAEydOEBwczO7du7npppsAOHfuXHlCKONKu8uJ+ksSg2jwgoKCyMjIQK/X4+fnR0lJCTEx\nMYC6KdSZM2fw8fFhyJAh3H333fTu3Zvz58/j5uZm9jrnz58nLCyM5ORkbr75ZoqKispf5/PPP+fB\nBx8kOTmZbt26sX379vIksXv37vKE4Irbp4r6R34LhQD+8pe/lG/+9Mgjj7Bx40a+/vprfv/9d5o0\nacLIkSM5cOAAGzZsYPXq1QQHB+Pr62v2Gn369OHzzz8nMzOTpk2bMmnSJL799luWL1/OiBEjaN26\nNXFxcfz444907NiRJk2acPr0aXJzc/H19UVRFAICArT49oUwI/sxCFFD8+bNY+LEieVjBrW1f/9+\n/vjjD0aOHGmX1xOipuSOQYgamjRpEmvWrLHb63333Xfce++9dns9IWpKEoMQNRQUFER8fHz5dNba\nOHToEP369ZMxBuEUpCtJCCGEGbk8EUIIYUYSgxBCCDOSGIQQQpiRxCCEEMKMJAYhhBBmJDEIIYQw\nI4lBCCGEGUkMQgghzPx/TjiQ+AqbBlQAAAAASUVORK5CYII=\n"
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.8 Page No 173"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "u=80.0 # Amplification Factor\n",
+ "gm=200*10**(-6) # S, Transconductance\n",
+ "\n",
+ "#Calculation\n",
+ "rd=u/gm #Dynamic Drain Resistance\n",
+ "# Result\n",
+ "print \" The Dynamic Drain Resistance of JFET is rd= \",rd/10**(3),\"kohm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Dynamic Drain Resistance of JFET is rd= 400.0 kohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch6_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch6_1.ipynb
new file mode 100755
index 00000000..cc5402ef
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch6_1.ipynb
@@ -0,0 +1,188 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:e45efbc918d6e082147a3abf5687f38acaf875f9fd899adb5638679d888fbdcb"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 6: Vaccum Tubes"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.1 Page no.195"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "from pylab import *\n",
+ "#Given Circuit Data\n",
+ "V=[0,0.5,1,1.5,2] #V, voltage\n",
+ "I=[0,1.6,4,6.7,9.4] #mA, current\n",
+ "\n",
+ "#Calculation\n",
+ "dVp=0.5 #V, change in plate voltage\n",
+ "dIp=2.7*10**(-3) #A, change in plate current\n",
+ "rp=dVp/dIp # Dynamic Plate Resistance\n",
+ "\n",
+ "#Result\n",
+ "print \"The Dynamic Plate Resistance is rp= \",rp,\"ohm\"\n",
+ "\n",
+ "#plot\n",
+ "\n",
+ "a=plot(V,I)\n",
+ "xlabel(\"V\") \n",
+ "ylabel(\"I (mA)\") \n",
+ "\n",
+ "show(a)\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Dynamic Plate Resistance is rp= 185.185185185 ohm\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\nb3wzYgAAAABJRU5ErkJggg==\n"
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.2 Page no.202"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "from math import *\n",
+ "from pylab import *\n",
+ "#Calculation\n",
+ "dip=(14.0-10.7)*10**(-3) #A\n",
+ "dvp=20 #V\n",
+ "rp=dvp/dip\n",
+ "diP=(12.4-5.3)*10**(-3) #A\n",
+ "dvG=1 #V\n",
+ "gm=diP/dvG\n",
+ "u=gm*rp\n",
+ "ut=(192-150)/1\n",
+ "\n",
+ "# Result\n",
+ "print \" The Plate AC Resistance is rp= \",round(rp/10**(3),2),\"kohm\"\n",
+ "print \" The Mutual Conductance is gm= \",gm/10**(-3),\"mS\"\n",
+ "print \" The Graphical Amplification Factor is u= \",round(u,2)\n",
+ "print \" The Theoretical Amplification Factor is ut= \",ut\n",
+ "\n",
+ "\n",
+ "#plot\n",
+ "#At Vg=0\n",
+ "V1=[0,50,100,150]\n",
+ "I1=[0,3.5,11.2,20.0]\n",
+ "\n",
+ "#at Vg=-1\n",
+ "V2=[60,100,150,200]\n",
+ "I2=[0,4,12.4,21.5]\n",
+ "\n",
+ "\n",
+ "#at Vg=-2\n",
+ "V3=[100,150,200]\n",
+ "I3=[0,5.4,14.1]\n",
+ "\n",
+ "#at Vg=-3\n",
+ "V4=[160,200,250]\n",
+ "I4=[0,3.4,12.4]\n",
+ "\n",
+ "#at Vg=-4\n",
+ "V5=[220,250,300]\n",
+ "I5=[0,2.5,11.3]\n",
+ "\n",
+ "figure(1)\n",
+ "import numpy \n",
+ "import pylab\n",
+ "fig = plt.figure()\n",
+ "ax = fig.add_subplot(111)\n",
+ "\n",
+ "\n",
+ "a1=plot(V1,I1)\n",
+ "a2=plot(V2,I2)\n",
+ "a3=plot(V3,I3)\n",
+ "a4=plot(V4,I3)\n",
+ "a5=plot(V5,I4)\n",
+ "xlabel(\"Vp (V)\") \n",
+ "ylabel(\"Ip(mA)\") \n",
+ "ax.annotate('vg=0', xy=(152,21),\n",
+ " arrowprops=dict(facecolor='black', shrink=0.5),\n",
+ " )\n",
+ "ax.annotate('vg=-1', xy=(200,21.5), \n",
+ " arrowprops=dict(facecolor='black', shrink=0.5),\n",
+ " )\n",
+ "ax.annotate('vg=-2', xy=(200,14.1), \n",
+ " arrowprops=dict(facecolor='black', shrink=0.5),\n",
+ " )\n",
+ "ax.annotate('vg=-3', xy=(250,12.4),\n",
+ " arrowprops=dict(facecolor='black', shrink=0.5),\n",
+ " )\n",
+ "ax.annotate('vg=-4',xy=(300,11.3), \n",
+ " arrowprops=dict(facecolor='black', shrink=0.5),\n",
+ " )\n",
+ "show(a1)\n",
+ "show(a2)\n",
+ "show(a3)\n",
+ "show(a4)\n",
+ "show(a5)\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Plate AC Resistance is rp= 6.06 kohm\n",
+ " The Mutual Conductance is gm= 7.1 mS\n",
+ " The Graphical Amplification Factor is u= 43.03\n",
+ " The Theoretical Amplification Factor is ut= 42\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n"
+ }
+ ],
+ "prompt_number": 30
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch7_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch7_1.ipynb
new file mode 100755
index 00000000..08996c5e
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch7_1.ipynb
@@ -0,0 +1,708 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:a8e6eec0c3406a8b34f53cdcd04f5f3e158306e880eeefff72f3f3980fec597f"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7 :Transistor Biasing And Stabilization of Operation Point"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.1 Page No.230"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "Vcc=9.0 #V, collector bias junction voltage\n",
+ "Rb=300*10**3 #Ohms, , base resistance\n",
+ "Rc=2*10**3 #Ohms, collector resistance\n",
+ "Beeta=50.0 #current gain factor\n",
+ "\n",
+ "#Calculation\n",
+ "Ib=(Vcc)/Rb\n",
+ "Ic=Beeta*Ib\n",
+ "Icsat=Vcc/Rc\n",
+ "Vce=Vcc-Ic*Rc\n",
+ "\n",
+ "#Result\n",
+ "print \"a) Base current is \",Ib,\"A\"\n",
+ "print \"b) collector current is = \",Ic/10**(-3),\"mA\"\n",
+ "print \"collector saturation current is = \",Icsat/10**(-3),\"mA\"\n",
+ "if Ic < Icsat:\n",
+ " \n",
+ " print\"Since Ic < Icsat \\nSo Transistor is not in saturation\" \n",
+ "else:\n",
+ " print \"Transistor is in saturation\"\n",
+ "\n",
+ "print \"c) The collector to emitter voltage is = \",Vce,\"V\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a) Base current is 3e-05 A\n",
+ "b) collector current is = 1.5 mA\n",
+ "collector saturation current is = 4.5 mA\n",
+ "Since Ic < Icsat \n",
+ "So Transistor is not in saturation\n",
+ "c) The collector to emitter voltage is = 6.0 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 21
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.2 Page No.230"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=10.0 #V, collector bias junction voltage\n",
+ "Rb=100*10**3 #Ohms, base resistance\n",
+ "Rc=1*10**3 #Ohms, collector resistance\n",
+ "Beeta=60 #current gain\n",
+ " \n",
+ "#Calculation\n",
+ "Ib=(Vcc)/Rb #A, base current\n",
+ "Ic=Beeta*Ib #A, collector current\n",
+ "Icsat=Vcc/Rc #A, collector saturated current\n",
+ "Vce=Vcc-Ic*Rc #V, collector emitter voltage\n",
+ "\n",
+ "#Result\n",
+ "print \"a) Base current is \",Ib*10**6,\"microA\"\n",
+ "print \"b) collector current is \",Ic*10**3,\"mA\"\n",
+ "print \"collector saturation current is \",Icsat*10**3,\"mA\"\n",
+ "if Ic < Icsat:\n",
+ " \n",
+ " print\"Since Ic < Icsat \\nSo Transistor is not in saturation\" \n",
+ "else:\n",
+ " print \"Transistor is in saturation\"\n",
+ "print \"c) The collector emitter voltage is \",Vce,\"V\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a) Base current is 100.0 microA\n",
+ "b) collector current is 6.0 mA\n",
+ "collector saturation current is 10.0 mA\n",
+ "Since Ic < Icsat \n",
+ "So Transistor is not in saturation\n",
+ "c) The collector emitter voltage is 4.0 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 23
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.3 Page No.231"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=10.0 #V, collector bias junction voltage\n",
+ "Rb=100*10**3 #Ohms, Base resistance\n",
+ "Rc=1*10**3 #Ohms, collector resistance\n",
+ "Beeta=150 #current gain\n",
+ "\n",
+ "#Calculation\n",
+ "Ib=(Vcc)/Rb #Base current\n",
+ "Ic=Beeta*Ib #collector resistance\n",
+ "Icsat=Vcc/Rc #A, collector saturation current\n",
+ "Vce=0 #V, collector emitter voltage\n",
+ "\n",
+ "#Result\n",
+ "print \"collector current is Ic = \",Ic/10**(-3),\"mA\"\n",
+ "print \"collector saturated current is \",Icsat*10**3,\"mA\" \n",
+ "if Ic < Icsat:\n",
+ " \n",
+ " print\" Transistor is not in saturation.\" \n",
+ "else:\n",
+ " print \"Since Ic > Icsat \\n So Transistor is in saturation\"\n",
+ "print \"collector emitter voltage is \",Vce,\"V\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "collector current is Ic = 15.0 mA\n",
+ "collector saturated current is 10.0 mA\n",
+ "Since Ic > Icsat \n",
+ " So Transistor is in saturation\n",
+ "collector emitter voltage is 0 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 25
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.4 Page No.231"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=6 #V,collector base junction voltage\n",
+ "Vbe=0.3 #V,base emittor voltage\n",
+ "Icbo=.000002 #A,colector leakage current\n",
+ "Ic=.001 #A,collector current\n",
+ "Beeta=20.0\n",
+ "\n",
+ "#Calculation\n",
+ "#Case 1: Considering Icbo and Vbe in the calculations\n",
+ "Ib=(Ic-(Beeta+1)*Icbo)/Beeta\n",
+ "print Ib\n",
+ "Rb1=(Vcc-Vbe)/Ib\n",
+ "print \"value of base resistance is =\",round(Rb1/1000,3),\"K ohm\"\n",
+ "\n",
+ "#Case 2: Neglecting Icbo and Vbe in the calculations\n",
+ "Ib2=Ic/Beeta\n",
+ "Rb2=Vcc/Ib2\n",
+ "#Percentage Error\n",
+ "E=(Rb2-Rb1)/Rb1*100\n",
+ "#Displaying The Results in Command Window\n",
+ "print\"The Base Resistance (Neglecting Icbo and Vbe) is \",Rb2/1000,\"k ohm\"\n",
+ "print\" Percentage Error is = \",round(E,3)\n",
+ "\n",
+ "#b Due to rise in temprature\n",
+ "beeta1=25.0\n",
+ "Icbo1=10.0\n",
+ "Ic1=beeta1*Ib+(beeta1+1)*Icbo1*10**-6\n",
+ "print \"Now collector current is \",round(Ic1*10**3,2),\"mA\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "4.79e-05\n",
+ "value of base resistance is = 118.998 K ohm\n",
+ "The Base Resistance (Neglecting Icbo and Vbe) is 120.0 k ohm\n",
+ " Percentage Error is = 0.842\n",
+ "Now collector current is 1.46 mA\n"
+ ]
+ }
+ ],
+ "prompt_number": 40
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.5 Page No.235"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=10.0 #V,collectoe base junction voltage\n",
+ "Rc=500.0 #Ohms,colector resistance\n",
+ "Rb=500000 #Ohms,base resistance\n",
+ "Beeta=100.0 #current gain\n",
+ "#Calculation\n",
+ "Ib=Vcc/(Rb+Beeta*Rc) #emittor currenr\n",
+ "Ic=Beeta*Ib\n",
+ "Ie=Ic\n",
+ "Vce=Vcc-Ic*Rc\n",
+ "Vc=Vce\n",
+ "\n",
+ "# Results \n",
+ "print \"emittor current is \",round(Ie*1000,1),\"mA\"\n",
+ "print\"The collector voltage is \",round(Vc,1),\"V\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "emittor current is 1.8 mA\n",
+ "The collector voltage is 9.1 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.6 Page No.235"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "#Given Circuit Data\n",
+ "Vcc=20.0 #V,collector base voltage\n",
+ "Rc=2000.0 #Ohms.collector resistance\n",
+ "Rb=200000.0 #Ohms,base resistance\n",
+ "Beeta1=50.0 #current gain factor\n",
+ "Beeta2=200.0\n",
+ "\n",
+ "#Calculation CASE-1: Minimum Collector Current\n",
+ "#from fig 7.14\n",
+ "Ibmin=Vcc/(Rb+Beeta1*Rc)\n",
+ "Icmin=Beeta1*Ibmin\n",
+ "#result\n",
+ "print \"minimum base curent is \",round(Ibmin,6),\"A\"\n",
+ "print \"minimum collector current is \",round(Icmin*1000,3),\"mA\"\n",
+ "#Calculation CASE-2: Maximum Collector Current\n",
+ "Ibmax=Vcc/(Rb+Beeta2*Rc)\n",
+ "Icmax=Beeta2*Ibmax\n",
+ "\n",
+ "#Results \n",
+ "print\"The maximum base current = \",round(Ibmax/10**(-3),6),\"A\"\n",
+ "print\"The Maximum Collector Current = \",round(Icmax/10**(-3),2),\"mA\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "minimum base curent is 6.7e-05 A\n",
+ "minimum collector current is 3.333 mA\n",
+ "The maximum base current = 0.033333 A\n",
+ "The Maximum Collector Current = 6.67 mA\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.7 Page No.238"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=10.0 #V collector junction voltage\n",
+ "Rc=2000.0 #Ohms collector resistane\n",
+ "Rb=1000000.0 #Ohms,base resistance\n",
+ "Re=1000.0 #Ohms emittor resstance\n",
+ "Beeta=100.0 #current gain\n",
+ "\n",
+ "#Calculation\n",
+ "Ib=Vcc/(Rb+(Beeta+1)*Re)\n",
+ "Ic=Beeta*Ib\n",
+ "Ie=Ic+Ib\n",
+ "#Results \n",
+ "print \" The Collector Current Ic = \",round(Ic*1000,3),\"mA\"\n",
+ "print \" The Base Current Ib .\",round(Ib*1000000,2),\"microA\"\n",
+ "print \" The Emitter Current Ie = \",round(Ie*1000,3),\"mA\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Collector Current Ic = 0.908 mA\n",
+ " The Base Current Ib . 9.08 microA\n",
+ " The Emitter Current Ie = 0.917 mA\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.8 Page No.239"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=6 #V,collector bias junction volage\n",
+ "Vbe=0.3 #V base emittor voltage\n",
+ "Rc=50 #Ohms collector resistance\n",
+ "Rb=10*10**3 #Ohms base resistance\n",
+ "Re=100 #Ohms emittor resistance\n",
+ "Beeta1=50 # gain factor\n",
+ "Beeta2=200\n",
+ "\n",
+ "#Calculation CASE-1: Minimum Emitter Current & corresponding Vce\n",
+ "Iemin=(Vcc-Vbe)*(Beeta1+1)/(Rb+(Beeta1+1)*Re)\n",
+ "Vcemin=Vcc-(Rc+Re)*Iemin\n",
+ "#Calculatioen CASE-2: Maximum Emitter Current & corresponding Vce\n",
+ "Iemax=(Vcc-Vbe)*(Beeta2+1)/(Rb+(Beeta2+1)*Re)\n",
+ "Vcemax=Vcc-(Rc+Re)*Iemax\n",
+ "\n",
+ "#Results \n",
+ "print\"The Minimum Emitter Current Ie(min) is\",round(Iemin*1000,2),\"mA\"\n",
+ "print \"The Corresponding Vce = V .\",round(Vcemin,1),\"v\"\n",
+ "print \"The Maximum Emitter Current Ie(max) = .\",round(Iemax*1000,1),\"mA\"\n",
+ "print \"The Corresponding Vce = V .\",round(Vcemax,1),\"v\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Minimum Emitter Current Ie(min) is 19.25 mA\n",
+ "The Corresponding Vce = V . 3.1 v\n",
+ "The Maximum Emitter Current Ie(max) = . 38.1 mA\n",
+ "The Corresponding Vce = V . 0.3 v\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.9 Page No. 240"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=6.0 #V, collector bias junction voltage\n",
+ "Vbe=0.3 #V, base emitter voltage\n",
+ "Rc=1*10**3 #Ohms, collector resistance\n",
+ "Rb=10*10**3 #Ohms, base resistance\n",
+ "Re=100.0 #Ohms, emitter resistance\n",
+ "Beeta1=50 #current gain factor\n",
+ "Beeta2=200\n",
+ "Ie1=19.25*10**(-3) #A,for beeta=50, from example 7.8 \n",
+ "Ie2=38.2*10**(-3) #A,for beeta=200, from example 7.8\n",
+ "\n",
+ "#Calculation (i)\n",
+ "\n",
+ "Ie1=19.25*10**(-3) #A,for beeta=50, from example 7.8 \n",
+ "Vce=Vcc-(Rc+Re)*Ie1 #V, collector emitter voltage\n",
+ "Icsat1=Vcc/(Rc+Re) #collector saturated current\n",
+ "Vcesat1=0\n",
+ "print \"The collector voltage is Vcc \",Vcc,\"V\"\n",
+ "print \"The collector emitter voltage is Vce\",Vce,\"V\"\n",
+ "print \"Because Collector voltage is greater than collector emitter voltage so Transistor is in saturation \"\n",
+ "print \"collector saturated current is \",round(Icsat1*10**3,2),\"mA\"\n",
+ "print \"collector emitter satirated voltage is\",Vcesat1,\"V\"\n",
+ "\n",
+ "# ii\n",
+ "Icsat2=Icsat1\n",
+ "Vcesat2=Vcesat1\n",
+ "print \"(ii) collector saturated current is \",round(Icsat2*10**3,3),\"mA\"\n",
+ "print \"collector emitter satirated voltage is\",Vcesat2,\"V\"\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The collector voltage is Vcc 6.0 V\n",
+ "The collector emitter voltage is Vce -15.175 V\n",
+ "Because Collector voltage is greater than collector emitter voltage so Transistor is in saturation \n",
+ "collector saturated current is 5.45 mA\n",
+ "collector emitter satirated voltage is 0 V\n",
+ "(ii) collector saturated current is 5.455 mA\n",
+ "collector emitter satirated voltage is 0 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 48
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.10 Page No.240"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=9 #V,collector bias junction voltge\n",
+ "Vce=3 #V,collector emittor voltage\n",
+ "Re=500 #Ohms,emittor resistance\n",
+ "Ic=8*10**(-3) #A,collector current\n",
+ "Beeta=80\n",
+ "#Calculation\n",
+ "Ib=Ic/Beeta\n",
+ "Rb=(Vcc-(Beeta+1)*Ib*Re)/Ib\n",
+ "#Displaying The Results in Command Window\n",
+ "print\"The Base Resistance is :\",round(Rb/1000,5),\"kohm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Base Resistance is : 49.5 kohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.11 Page No.242"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=12.0 #V collector bias junction voltage\n",
+ "Vbe=0.3 #V base emitter junction voltage\n",
+ "R1=40000.0 #Ohms resistance\n",
+ "R2=5000.0 #Ohms resistance\n",
+ "Re=1000.0 #Ohms emitter reistance\n",
+ "Rc=5000.0 #Ohms collector resistance\n",
+ "Beeta=60\n",
+ "\n",
+ "#Calculation\n",
+ "Vb=(R2/(R1+R2))*Vcc\n",
+ "Ve=Vb-Vbe\n",
+ "Ie=Ve/Re\n",
+ "Ic=Ie\n",
+ "Vc=Vcc-Ic*Rc\n",
+ "Vce=Vc-Ve\n",
+ "# Results \n",
+ "print\" V2= Vb \",round(Vb,1),\"v\"\n",
+ "print\" Ve = \",round(Ve,1),\"v\"\n",
+ "print\" Ie = \",round(Ie/10**(-3),1),\"mA\"\n",
+ "print\" Ic = \",round(Ic/10**(-3),1),\"mA\"\n",
+ "print\" Vc = \",round(Vc,0),\"v\"\n",
+ "print\" Vce = \",round(Vce,0),\"v\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " V2= Vb 1.3 v\n",
+ " Ve = 1.0 v\n",
+ " Ie = 1.0 mA\n",
+ " Ic = 1.0 mA\n",
+ " Vc = 7.0 v\n",
+ " Vce = 6.0 v\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.12 Page No.243"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=15.0 #V collector bias junction voltage\n",
+ "R1=200.0 #Ohms resistor 1\n",
+ "R2=100.0 #Ohms resistor 2\n",
+ "Rc=20.0 #Ohms collector resistace\n",
+ "Ic=.1 #A collector current\n",
+ "\n",
+ "#Calculation\n",
+ "Ie=Ic\n",
+ "Vb=(R2/(R1+R2))*Vcc\n",
+ "Ve=Vb # Neglecting Vbe\n",
+ "Re=Ve/Ie\n",
+ "Vce=Vcc-(Rc+Re)*Ic\n",
+ "# Results\n",
+ "print\" The Emitter Resistance is Re = .\",Re,\"ohm\"\n",
+ "print\" The Collector to Emitter Voltage is Vce = \",Vce,\"v\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Emitter Resistance is Re = . 50.0 ohm\n",
+ " The Collector to Emitter Voltage is Vce = 8.0 v\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.13 Page No.246"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=12.0 #V collector bias junction voltage\n",
+ "Vbe=0.3 #V base emitter voltage\n",
+ "R1=40000.0 #Ohms given resistance\n",
+ "R2=5000.0 #Ohms\n",
+ "Re=1000.9 #Ohms emitter resistance\n",
+ "Rc=5000.0 #Ohms collector resistance\n",
+ "Beeta=60\n",
+ "#Calculation\n",
+ "Vth=(R2/(R1+R2))*Vcc\n",
+ "Rth=R1*R2/(R1+R2)\n",
+ "Ib=(Vth-Vbe)/(Rth+Beeta*Re)\n",
+ "Ic=Beeta*Ib\n",
+ "Vce=Vcc-Ic*(Rc+Re)\n",
+ "\n",
+ "# Results \n",
+ "print \"collector current is \",round(Ic*1000,2),\"mA\"\n",
+ "print \"collector to emitter voltage = \",round(Vce,2),\"v\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "collector current is 0.96 mA\n",
+ "collector to emitter voltage = 6.23 v\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.14 Page No.248"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=12 #V collector bias junction voltage\n",
+ "Vee=15.0 #V emittor bias junction voltage\n",
+ "Rc=5000.0 #Ohms collector resistance\n",
+ "Re=10000.0 #Ohms emitter resistance\n",
+ "Rb=10000.0 #Ohms base resistance\n",
+ "Beeta=100\n",
+ "\n",
+ "#Calculation\n",
+ "Ie=Vee/Re\n",
+ "Ic=Ie\n",
+ "Vce=Vcc-Ic*Rc\n",
+ "#Displaying The Results in Command Window\n",
+ "print\" Ic = \",Ic/10**(-3),\"mA\"\n",
+ "print\" Vce = \",Vce,\"v\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Ic = 1.5 mA\n",
+ " Vce = 4.5 v\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch8_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch8_1.ipynb
new file mode 100755
index 00000000..9b5ea559
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch8_1.ipynb
@@ -0,0 +1,562 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:49ff0cb528d7e276dc193290984b83a2a7d93cab62d6ab90be1af99e7320d3ef"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 8:Small Signal Amplifiers"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 8.1 Page no.271"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "Ic=2*10**(-3) #A, collector current\n",
+ "Vce=8.5 #V, collectoe emitter voltage\n",
+ "\n",
+ "#Calculation\n",
+ "#hfe=delta(ic)/delta(ib), #forward current ratio in CE mode\n",
+ "#Vce=constant #collector emitter voltage\n",
+ "hfe=(2.7-1.7)*10**(-3)/((20-10)*10**(-6))\n",
+ "#hoe=delta(ic)/delta(Vce), #output admittance in CE mode\n",
+ "#ib=constant\n",
+ "hoe=(2.2-2.1)*10**(-3)/(10-7)\n",
+ "#hie=delta(Vbe)/delta(ib), #dynamic input resistance\n",
+ "#Vce=constant\n",
+ "hie=(0.73-0.715)/((20-10)*10**(-6))\n",
+ "#hre=delta(Vbe)/delta(Vce),ib=constant #reverse voltage ratio in CE mode\n",
+ "hre=(0.73-0.72)/(20-0)\n",
+ "\n",
+ "#Result\n",
+ "print \"hfe = \",hfe\n",
+ "print \"hoe = \",round(hoe/10**(-6),2),\"microS\"\n",
+ "print \"hie = \",hie/10**3,\"kohm\"\n",
+ "print \"hre = \",hre\n",
+ "\n",
+ "#a) Plot\n",
+ "#Load Line \n",
+ "Vce0=[0,15]\n",
+ "Ic0=[5,0]\n",
+ "a0=plot(Vce0,Ic0)\n",
+ "q1=plot(8.5,2.1,label='Q point',marker='o')\n",
+ "legend()\n",
+ "# AT Ib=0 microA\n",
+ "Vce1=[0,1,15]\n",
+ "Ic1=[0,0.2,0.7]\n",
+ "a1=plot(Vce1,Ic1)\n",
+ "# AT Ib=10 microA\n",
+ "Vce2=[0,1,15]\n",
+ "Ic2=[0,1.2,1.9]\n",
+ "a2=plot(Vce2,Ic2)\n",
+ "# AT Ib=20 microA\n",
+ "Vce3=[0,1,15]\n",
+ "Ic3=[0,2.2,3]\n",
+ "a3=plot(Vce3,Ic3)\n",
+ "# AT Ib=30 microA\n",
+ "Vce4=[0,1,15]\n",
+ "Ic4=[0,3.1,4.1]\n",
+ "a4=plot(Vce4,Ic4)\n",
+ "# AT Ib=40 microA\n",
+ "Vce5=[0,1,15]\n",
+ "Ic5=[0,4.1,5]\n",
+ "a5=plot(Vce5,Ic5)\n",
+ "# AT Ib=50 microA\n",
+ "Vce6=[0,1,15]\n",
+ "Ic6=[0,5.1,6.1]\n",
+ "a6=plot(Vce6,Ic6)\n",
+ "# AT Ib=60 microA\n",
+ "Vce7=[0,1,15]\n",
+ "Ic7=[0,6.1,7.2]\n",
+ "a7=plot(Vce7,Ic7)\n",
+ "#At Vce=8.5 V\n",
+ "Vce8=[0,15]\n",
+ "Ice8=[2.7,2.7]\n",
+ "a8=plot(Vce8,Ice8)\n",
+ "\n",
+ "Vce9=[0,15]\n",
+ "Ice9=[1.7,1.7]\n",
+ "a9=plot(Vce9,Ice9)\n",
+ "#at Vce=8.5\n",
+ "Vce10=[8.5,8.5]\n",
+ "Ice10=[0,3]\n",
+ "a10=plot(Vce10,Ice10)\n",
+ "xlim(0,18)\n",
+ "ylim(0,8)\n",
+ "xlabel(\"$Vce(volt)$\")\n",
+ "ylabel(\"$Ic(mA)$\")\n",
+ "show(q1)\n",
+ "show(a0)\n",
+ "show(a1)\n",
+ "show(a2)\n",
+ "show(a3)\n",
+ "show(a4)\n",
+ "show(a5)\n",
+ "show(a6)\n",
+ "show(a7)\n",
+ "show(a8)\n",
+ "show(a9)\n",
+ "show(a10)\n",
+ "\n",
+ "#(b) Plot\n",
+ "#Plot\n",
+ "#Load Line \n",
+ "Vce0=[0,15]\n",
+ "Ic0=[5,0]\n",
+ "a0=plot(Vce0,Ic0)\n",
+ "# AT Ib=0 microA\n",
+ "Vce1=[0,1,15]\n",
+ "Ic1=[0,0.2,0.7]\n",
+ "a1=plot(Vce1,Ic1)\n",
+ "# AT Ib=10 microA\n",
+ "Vce2=[0,1,15]\n",
+ "Ic2=[0,1.2,1.9]\n",
+ "a2=plot(Vce2,Ic2)\n",
+ "# AT Ib=20 microA\n",
+ "Vce3=[0,1,15]\n",
+ "Ic3=[0,2.2,3]\n",
+ "a3=plot(Vce3,Ic3)\n",
+ "# AT Ib=30 microA\n",
+ "Vce4=[0,1,15]\n",
+ "Ic4=[0,3.1,4.1]\n",
+ "a4=plot(Vce4,Ic4)\n",
+ "# AT Ib=40 microA\n",
+ "Vce5=[0,1,15]\n",
+ "Ic5=[0,4.1,5]\n",
+ "a5=plot(Vce5,Ic5)\n",
+ "# AT Ib=50 microA\n",
+ "Vce6=[0,1,15]\n",
+ "Ic6=[0,5.1,6.1]\n",
+ "a6=plot(Vce6,Ic6)\n",
+ "# AT Ib=60 microA\n",
+ "Vce7=[0,1,15]\n",
+ "Ic7=[0,6.1,7.2]\n",
+ "a7=plot(Vce7,Ic7)\n",
+ "\n",
+ "#At Vce=8.5 V\n",
+ "Vce8=[0,8.5,10]\n",
+ "Ice8=[2.2,2.2,2.15]\n",
+ "a8=plot(Vce8,Ice8)\n",
+ "# and\n",
+ "Vce9=[0,8.5,10]\n",
+ "Ice9=[2.1,2.1,2.15]\n",
+ "a9=plot(Vce9,Ice9)\n",
+ "#at Vce=8.5\n",
+ "Vce10=[8.5,8.5]\n",
+ "Ice10=[0,2.2]\n",
+ "a10=plot(Vce10,Ice10)\n",
+ "\n",
+ "#at Vce=7 V\n",
+ "Vce11=[7,7]\n",
+ "Ice11=[0,2.5]\n",
+ "a11=plot(Vce11,Ice11)\n",
+ "#at Vce=10 V\n",
+ "Vce12=[10,10]\n",
+ "Ice12=[0,2.2]\n",
+ "a12=plot(Vce12,Ice12)\n",
+ "\n",
+ "q2=plot(8.5,2.15,marker='o',label='Q point')\n",
+ "legend()\n",
+ "\n",
+ "xlim(0,18)\n",
+ "ylim(0,8)\n",
+ "xlabel(\"$Vce(volt)$\")\n",
+ "ylabel(\"$Ic(mA)$\")\n",
+ "show(a0)\n",
+ "show(q2)\n",
+ "show(a1)\n",
+ "show(a2)\n",
+ "show(a3)\n",
+ "show(a4)\n",
+ "show(a5)\n",
+ "show(a6)\n",
+ "show(a7)\n",
+ "show(a8)\n",
+ "show(a9)\n",
+ "show(a10)\n",
+ "show(a11)\n",
+ "show(a12)\n",
+ "\n",
+ "#C) plot\n",
+ "#at Vce=0 V\n",
+ "Vbe1=[0.715,0.730,0.735]\n",
+ "Ib1=[10,20,30]\n",
+ "ab1=plot(Vbe1,Ib1)\n",
+ "q3=plot(0.722,15,marker='o',label='Q Point')\n",
+ "legend()\n",
+ "\n",
+ "#at Vce=8.5 V\n",
+ "Vbe2=[0.710,0.715,0.730,0.735]\n",
+ "Ib2=[5,10,20,26]\n",
+ "ab2=plot(Vbe2,Ib2)\n",
+ "\n",
+ "#at Vce=20 V\n",
+ "Vbe3=[0.6,0.715,0.730,0.740]\n",
+ "Ib3=[0,10,15,22]\n",
+ "ab3=plot(Vbe3,Ib3)\n",
+ "\n",
+ "#at Ib=10 microA\n",
+ "Vbe4=[0,0.7,0.75]\n",
+ "Ib4=[10,10,10]\n",
+ "ab4=plot(Vbe4,Ib4)\n",
+ "\n",
+ "#at Ib=15 microA\n",
+ "Vbe5=[0,0.7,0.75]\n",
+ "Ib5=[15,15,15]\n",
+ "ab5=plot(Vbe5,Ib5)\n",
+ "#at Ib=20microA\n",
+ "Vbe6=[0,0.7,0.75]\n",
+ "Ib6=[20,20,20]\n",
+ "ab6=plot(Vbe6,Ib6)\n",
+ " \n",
+ "xlim(0,0.8)\n",
+ "ylim(0,35)\n",
+ "xlabel(\"$Vbe(volt)$\")\n",
+ "ylabel(\"$Ib(microA)$\")\n",
+ "show(ab1)\n",
+ "show(q3)\n",
+ "show(ab2)\n",
+ "show(ab3)\n",
+ "show(ab4)\n",
+ "show(ab5)\n",
+ "show(ab6)\n",
+ "\n",
+ "#d) plot\n",
+ "#at Vce=0 V\n",
+ "Vbe1=[0.6,0.7,0.72,0.73]\n",
+ "Ib1=[0,6,15,30]\n",
+ "ab_1=plot(Vbe1,Ib1)\n",
+ "q4=plot(0.72,15,marker='o',label='$Q Point$')\n",
+ "legend()\n",
+ "#Vce=20 V\n",
+ "Vbe2=[0.6,0.7,0.72,0.73,0.74]\n",
+ "Ib2=[0,6,10,15,28]\n",
+ "ab_2=plot(Vbe2,Ib2)\n",
+ "#At Ib=15 microA\n",
+ "Vbe3=[0,0.72,0.73]\n",
+ "Ib3=[15,15,15]\n",
+ "ab_3=plot(Vbe3,Ib3)\n",
+ "\n",
+ "#At Vbe=0.72\n",
+ "Vbe4=[0.72,0.72]\n",
+ "Ib4=[0,15]\n",
+ "ab_4=plot(Vbe4,Ib4)\n",
+ "#At Vbe=0.73\n",
+ "Vbe5=[0.73,0.73]\n",
+ "Ib5=[0,15]\n",
+ "ab_5=plot(Vbe5,Ib5)\n",
+ "\n",
+ "xlim(0,0.8)\n",
+ "ylim(0,35)\n",
+ "xlabel(\"$Vbe(volt)$\")\n",
+ "ylabel(\"$Ib(microA)$\")\n",
+ "show(ab_1)\n",
+ "show(q4)\n",
+ "show(ab_2)\n",
+ "show(ab_3)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "hfe = 100.0\n",
+ "hoe = 33.33 microS\n",
+ "hie = 1.5 kohm\n",
+ "hre = 0.0005\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n"
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n"
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n"
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n"
+ }
+ ],
+ "prompt_number": 50
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 8.2 Page no.276"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "ri=2000.0 #Ohms, input resistance\n",
+ "Rb=150000.0 #Ohms, base resistance\n",
+ "\n",
+ "#Calculation\n",
+ "Zin=Rb*ri/(Rb+ri)\n",
+ "\n",
+ "#result\n",
+ "print \" The Input Impedance of the Amplifier is Zin = \",round(Zin/10**3,3),\"kohm\"\n",
+ "\n",
+ "#(b)find the voltage gain (Av)\n",
+ "Beeta=100\n",
+ "ri=2000.0 #Ohms\n",
+ "Rac=5000.0 #Ohms Resistance on outputside\n",
+ "\n",
+ "#Calculation\n",
+ "\n",
+ "Av=Beeta*Rac/ri\n",
+ "#result\n",
+ "\n",
+ "print \" The Voltage Gain of the Amplifier with phase of pi/2 is \",Av\n",
+ "#(c) find the current gain (Ai)\n",
+ "#Let input Current ib=2A\n",
+ "ib=2 #A, Assumption\n",
+ "io=100*ib \n",
+ "\n",
+ "#Calculation\n",
+ "Ai=io/ib # Current Gain\n",
+ "#result\n",
+ "print \"The Current Gain of the Amplifier is Ai = \",Ai"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Input Impedance of the Amplifier is Zin = 1.974 kohm\n",
+ " The Voltage Gain of the Amplifier with phase of pi/2 is 250.0\n",
+ "The Current Gain of the Amplifier is Ai = 100\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 8.3 Page no.277"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Bac=150.0 #ac current gain\n",
+ "rin=2000.0 #Ohms, input resistance\n",
+ "R1=4700.00 #Ohms, resistance\n",
+ "R2=12000.0 #Ohms resistance\n",
+ "\n",
+ "#Calculation\n",
+ "Rac=R1*R2/(R1+R2) # ohm , resistance\n",
+ "Av=Bac*Rac/rin\n",
+ "#result\n",
+ "print \"a\"\n",
+ "print \"the Voltage Gain of the Amplifier with phase of pi/2 is\",round(Av,1)\n",
+ "\n",
+ "#(b)find input impedance\n",
+ "R3=75000.0 #Ohms\n",
+ "R4=7500.00 #Ohms\n",
+ "\n",
+ "#Calculation\n",
+ "Zin=R3*R4*rin/(R3*R4+R4*rin+rin*R3)\n",
+ "\n",
+ "#result\n",
+ "print \"b\"\n",
+ "print \"The Input Impedance of the Amplifier is Zin = \",round(Zin/10**3,1),\"kohm\"\n",
+ "\n",
+ "#(c)Q point\n",
+ "\n",
+ "Vcc=15 #V\n",
+ "R1=75000.0 #Ohms\n",
+ "R2=7500.00 #Ohms\n",
+ "Rc=4700.0 #Ohms\n",
+ "Re=1200.0 #Ohms\n",
+ "\n",
+ "#Calculation\n",
+ "Vb=Vcc*R2/(R1+R2) #V, base voltage\n",
+ "Ve=Vb\n",
+ "Ie=Ve/Re #A, emitter current\n",
+ "Vce=Vcc-(Rc+Re)*Ie #V, collector emitter voltage\n",
+ "#result\n",
+ "print \"c\"\n",
+ "print \"voltage at the base is \",round(Vb,2),\"V\"\n",
+ "print \"Emitter current is \",round(Ie/10**(-3),2),\"mA\"\n",
+ "print \"The collector to emitter voltage is\",round(Vce,2),\"v\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a\n",
+ "the Voltage Gain of the Amplifier with phase of pi/2 is 253.3\n",
+ "b\n",
+ "The Input Impedance of the Amplifier is Zin = 1.5 kohm\n",
+ "c\n",
+ "voltage at the base is 1.36 V\n",
+ "Emitter current is 1.14 mA\n",
+ "The collector to emitter voltage is 8.3 v\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 8.4 Page no.283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "u=20 #amplification factor\n",
+ "Rl=10*10**3 #Ohms, load resistance\n",
+ "rp=10*10**3 #Ohms, resistance\n",
+ "#Calculation\n",
+ "A=u*Rl/(rp+Rl) #V, voltage gain\n",
+ "#result\n",
+ "print \" The Voltage Gain of the Amplifier with phase of pi/2 is\",A"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Voltage Gain of the Amplifier with phase of pi/2 is 10\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 8.5 Page no.286"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "gm=3000*10**(-6) #S, transconductance\n",
+ "Rl=22*10**3 #Ohms, resistance\n",
+ "rp=300*10**3 #Ohms, resistance \n",
+ "\n",
+ "#Calculation\n",
+ "#A=-(gm*Rl/(1+(Rl/rp))), For rp>>Rl we get\n",
+ "A=gm*Rl #with Phase of 180 degrees\n",
+ "# Results \n",
+ "print \"The Gain of the Amplifier with phase of pi/2 is\",A"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Gain of the Amplifier with phase of pi/2 is 66.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 8.6 Page no.286"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Rl=12000.0 #Ohms, load resistance\n",
+ "Rg=1000000.0 #Ohms, given resistance\n",
+ "Rs=1*10**3 #Ohms, given resistance\n",
+ "Cs=25*10**(-6) #F. capacitance\n",
+ "u=20 #amplification factor\n",
+ "rd=10**5 #Ohms, dynamic drain resistance\n",
+ "vi=0.1 #V, input voltage\n",
+ "f=1*10**3 #Hz, frequency\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "Xcs=1/(2*math.pi*f*Cs)\n",
+ "#As Xcs comes out to be much smaller than Rs, Rs is completely bypassed\n",
+ "A=u*Rl/(Rl+rd)\n",
+ "vo=A*vi\n",
+ "# Result\n",
+ "print \" The Output Signal Voltage of the Amplifier is vo = \",round(vo,3),\"v\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Output Signal Voltage of the Amplifier is vo = 0.214 v\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/ch9_1.ipynb b/Basic_Electronics_and_Linear_Circuits/ch9_1.ipynb
new file mode 100755
index 00000000..452f596c
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/ch9_1.ipynb
@@ -0,0 +1,284 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:83bf55a24e2aa90db4083899e2e7c0a6deddf51b02a3e4634d291129436942ec"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 9:Multi stage Amplifiers"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 9.1 Page no.305"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "A1=30 #voltage gain 1\n",
+ "A2=50 #voltage gain 2\n",
+ "A3=80 #voltage gain 3\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "A=A1*A2*A3 #overall Voltage Gain\n",
+ "Adb=20*math.log10(A) #Voltage Gain in dB\n",
+ "# Result\n",
+ "print \" The overall Voltage Gain of the Multistage Amplifier Adb = \",round(Adb,2),\"dB\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The overall Voltage Gain of the Multistage Amplifier Adb = 101.58 dB\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 9.2 Page no.312"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Vcc=30.0 #V, collector bias junction voltage\n",
+ "Vi=1.4 #V, input voltage\n",
+ "Vbe=0.7 #V. base emitter voltage \n",
+ "B=300 #Beeta, gain factor\n",
+ "R1=27000.0 #Ohms, given resistance\n",
+ "R2=680.0 #Ohms given resistance\n",
+ "R3=24000.0 #Ohms\n",
+ "R4=2400.0 #Ohms\n",
+ "\n",
+ "#Calculation\n",
+ "Ve=Vi-Vbe #V, voltage at emitter terminal\n",
+ "Ie1=Vbe/R2 #A, emitter current at 1st stage\n",
+ "Ic1=Ie1 #A, collector current\n",
+ "Vc1=Vcc-round(Ie1,3)*R1 #collector voltage at 1st stage\n",
+ "Vb2=Vc1 #V, base voltage at 2nd stage\n",
+ "\n",
+ "Ve2=Vb2-Vbe #V emitter voltage at 2nd stage\n",
+ "Ie2=Ve2/R4 #A, emitter current at 2nd stage\n",
+ "Ic2=round(Ie2,3) #A collector current at 2nd stage\n",
+ "Vc2=Vcc-Ic2*R3\n",
+ "Vo=Vc2\n",
+ "#Displaying The Results in Command Window\n",
+ "print \" The Voltage at the Output Terminal of Two Stage Direct Coupled Amplifier, Vo = \",Vo,\"V\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Voltage at the Output Terminal of Two Stage Direct Coupled Amplifier, Vo = 6.0 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 9.3 Page no.319"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "A=100 #voltage gain\n",
+ "f1=400 #Hz, frequency 1\n",
+ "f2=25*10**3 #Hz, frequency 2\n",
+ "f3=80 #Hz, frequency 3 \n",
+ "f4=40*10**3 # Hz, frequency 4 \n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "Adb=20*math.log10(A)\n",
+ "Adbc=Adb-3 #Lower by 3dB\n",
+ "# Result\n",
+ "print \" The Gain at Cutoff Frequencies is, Adb (at Cutoff Frequencies) = \",Adbc,\"dB\"\n",
+ "\n",
+ "#plot\n",
+ "from pylab import *\n",
+ "f1=[80,400,25000,40000]\n",
+ "Adb1=[37,40,40,37]\n",
+ "a=plot(f1,Adb1)\n",
+ "xlim(0,40000)\n",
+ "xlabel(\"$f(Hz)$\")\n",
+ "ylabel(\"$AdB$\")\n",
+ "ylim(0,50)\n",
+ "show(a1)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Gain at Cutoff Frequencies is, Adb (at Cutoff Frequencies) = 37.0 dB\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n"
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 9.4 Page no 325."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ " #all the quantities of R are resistances\n",
+ "R1=5600.0 #Ohms\n",
+ "R2=56000.0 #Ohms\n",
+ "R3=1100.0 #Ohms\n",
+ "\n",
+ "#Calculation\n",
+ "Zi=R1*R2*R3/(R1*R2+R2*R3+R3*R1)\n",
+ "#Result\n",
+ "print \" The Input Impedance, Zi = \",round(Zi/10**3,3),\"kohm\"\n",
+ "\n",
+ "#(b) Calculate output Impedance \n",
+ "Ro1=3300.0 #Ohms\n",
+ "Ro2=2200 #Ohms\n",
+ "\n",
+ "#Calculation\n",
+ "Zo=Ro1*Ro2/(Ro1+Ro2)\n",
+ "\n",
+ "#Result\n",
+ "print \" The Output Impedance, Zo = \",Zo/10**3,\"kohm\"\n",
+ "#(c) voltage gain\n",
+ "hfe=120 #current amplification factor\n",
+ "hie=1100.0 #Ohms, dynamic input resistance\n",
+ "R1=6800.0 #Ohms\n",
+ "R2=56000.0 #Ohms\n",
+ "R3=5600.0 #Ohms\n",
+ "R4=1100.0 #Ohms\n",
+ "\n",
+ "#Calculation\n",
+ "Rac2=Ro1*Ro2/(Ro1+Ro2)\n",
+ "A2=-hfe*Rac2/hie\n",
+ "Rac1=R1*R2*R3*R4/(R1*R2*R3+R2*R3*R4+R1*R3*R4+R1*R2*R4)\n",
+ "Rac1=round(Rac1,0)\n",
+ "A1=-hfe*Rac1/hie\n",
+ "\n",
+ "A1=round(A1,2)\n",
+ "A=A1*A2 #Overall Gain\n",
+ "\n",
+ "#Result\n",
+ "print \" The Overall Gain, A = \",round(A,0)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Input Impedance, Zi = 0.905 kohm\n",
+ " The Output Impedance, Zo = 1.32 kohm\n",
+ " The Overall Gain, A = 12535.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 9.5 Page no. 326"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "Rl=10000.0 #Ohms, resistance\n",
+ "Rg=470000.0 #Ohms dynamic input resistance\n",
+ "Cs=100*10**(-12) #F Capacitance\n",
+ "u=25 #amplification factor\n",
+ "rp=8000.0 #Ohms\n",
+ "Cc=0.01*10**(-6) #F, capacitance\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "gm=u/rp #transconductance\n",
+ "Req=rp*Rl*Rg/(rp*Rl+Rl*Rg+Rg*rp) #equivalent resistance\n",
+ "Avm=(u/rp)*Req #voltage gain\n",
+ "Avmd=Avm**2 # Voltage Gain of Two Stages\n",
+ "Rd=(rp*Rl/(rp+Rl))+Rg\n",
+ "f1=1/(2*math.pi*Cc*Rd) #Lower Cutoff Frequency\n",
+ "f1d=f1/math.sqrt(math.sqrt(2)-1) #Lower Cutoff Frequency of Two Stages\n",
+ "Req =(rp*Rl)/(rp+Rl) #approximately\n",
+ "f2=1/(2*math.pi*Cs*Req) #Upper Cutoff Frequency\n",
+ "f2d=f2*math.sqrt(math.sqrt(2)-1) #Upper Cutoff Frequency of Two Stages\n",
+ "BW=f2d-f1d \n",
+ "#Bandwidth\n",
+ "# Result\n",
+ "print \" The Voltage Gain of Two Stages, Avmd = \",round(Avmd,2)\n",
+ "print \" The Bandwidth, BW = \",round(BW/10**3,0),\"KHz\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Voltage Gain of Two Stages, Avmd = 189.3\n",
+ " The Bandwidth, BW = 230.0 KHz\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Basic_Electronics_and_Linear_Circuits/screenshots/12_4.png b/Basic_Electronics_and_Linear_Circuits/screenshots/12_4.png
new file mode 100755
index 00000000..f8f4d102
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/screenshots/12_4.png
Binary files differ
diff --git a/Basic_Electronics_and_Linear_Circuits/screenshots/13_1.png b/Basic_Electronics_and_Linear_Circuits/screenshots/13_1.png
new file mode 100755
index 00000000..e6a2f337
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/screenshots/13_1.png
Binary files differ
diff --git a/Basic_Electronics_and_Linear_Circuits/screenshots/6_1.png b/Basic_Electronics_and_Linear_Circuits/screenshots/6_1.png
new file mode 100755
index 00000000..b00c2a0a
--- /dev/null
+++ b/Basic_Electronics_and_Linear_Circuits/screenshots/6_1.png
Binary files differ
diff --git a/Electrical_Circuit_Theory_And_Technology/README.txt b/Electrical_Circuit_Theory_And_Technology/README.txt
index e94e265f..e94e265f 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/README.txt
+++ b/Electrical_Circuit_Theory_And_Technology/README.txt
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_01.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_01.ipynb
index 52fbd3f7..52fbd3f7 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_01.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_01.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_02.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_02.ipynb
index 8bc22a1d..8bc22a1d 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_02.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_02.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_03.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_03.ipynb
index d9b6cd03..d9b6cd03 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_03.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_03.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_04.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_04.ipynb
index 860dc4f0..860dc4f0 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_04.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_04.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_05.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_05.ipynb
index 0b10490d..0b10490d 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_05.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_05.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_06.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_06.ipynb
index 72813a43..72813a43 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_06.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_06.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_07.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_07.ipynb
index e3a59d72..e3a59d72 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_07.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_07.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_08.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_08.ipynb
index 876584cc..876584cc 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_08.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_08.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_09.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_09.ipynb
index 0248550c..0248550c 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_09.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_09.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_10.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_10.ipynb
index 443b9513..443b9513 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_10.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_10.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_11.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_11.ipynb
index 3454218e..3454218e 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_11.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_11.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_12.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_12.ipynb
index 1cd2cf8d..1cd2cf8d 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_12.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_12.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_13.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_13.ipynb
index 6f69e0f8..6f69e0f8 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_13.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_13.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_14.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_14.ipynb
index d91a1cbb..d91a1cbb 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_14.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_14.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_15.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_15.ipynb
index 4a218793..4a218793 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_15.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_15.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_16.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_16.ipynb
index 691ebea9..691ebea9 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_16.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_16.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_17.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_17.ipynb
index 81f680ae..81f680ae 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_17.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_17.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_18.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_18.ipynb
index 73f373a8..73f373a8 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_18.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_18.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_19.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_19.ipynb
index a3d9112a..a3d9112a 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_19.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_19.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_20.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_20.ipynb
index 538ace20..538ace20 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_20.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_20.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_21.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_21.ipynb
index 373f5943..373f5943 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_21.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_21.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_22.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_22.ipynb
index 531badfb..531badfb 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_22.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_22.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_23.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_23.ipynb
index 7d18b803..7d18b803 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_23.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_23.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_24.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_24.ipynb
index 8160e132..8160e132 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_24.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_24.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_25.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_25.ipynb
index 592a4669..592a4669 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_25.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_25.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_26.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_26.ipynb
index fe6f0a60..fe6f0a60 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_26.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_26.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_27.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_27.ipynb
index c141c129..c141c129 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_27.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_27.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_28.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_28.ipynb
index 100af3b8..100af3b8 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_28.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_28.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_29.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_29.ipynb
index 169830ec..169830ec 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_29.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_29.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_30.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_30.ipynb
index 6732d70c..6732d70c 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_30.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_30.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_31.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_31.ipynb
index bbaa441d..bbaa441d 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_31.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_31.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_32.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_32.ipynb
index a2070ae8..a2070ae8 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_32.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_32.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_33.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_33.ipynb
index d0fda89c..d0fda89c 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_33.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_33.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_34.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_34.ipynb
index 4c4d28d9..4c4d28d9 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_34.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_34.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_35.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_35.ipynb
index d4ffa9bf..d4ffa9bf 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_35.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_35.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_36.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_36.ipynb
index 3cc6ab7f..3cc6ab7f 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_36.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_36.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_37.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_37.ipynb
index de8c7108..de8c7108 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_37.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_37.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_38.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_38.ipynb
index 68af6e5d..68af6e5d 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_38.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_38.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_39.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_39.ipynb
index 6edb5773..6edb5773 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_39.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_39.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_40.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_40.ipynb
index 181b437b..181b437b 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_40.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_40.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_41.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_41.ipynb
index 4bdaf71c..4bdaf71c 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_41.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_41.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_42.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_42.ipynb
index d475997f..d475997f 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_42.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_42.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_43.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_43.ipynb
index 628db606..628db606 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_43.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_43.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_44.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_44.ipynb
index 61794674..61794674 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_44.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_44.ipynb
diff --git a/Electrical_Circuit_Theory_And_Technology/chapter_45.ipynb b/Electrical_Circuit_Theory_And_Technology/chapter_45.ipynb
index 4533f303..4533f303 100644..100755
--- a/Electrical_Circuit_Theory_And_Technology/chapter_45.ipynb
+++ b/Electrical_Circuit_Theory_And_Technology/chapter_45.ipynb
diff --git a/Material_Science_In_Engineering/README.txt b/Material_Science_In_Engineering/README.txt
new file mode 100755
index 00000000..4ad88b95
--- /dev/null
+++ b/Material_Science_In_Engineering/README.txt
@@ -0,0 +1,10 @@
+Contributed By: Girirajsinh Dodiya
+Course: mca
+College/Institute/Organization: Freelancing work
+Department/Designation: Freelancer
+Book Title: Material Science In Engineering
+Author: Dr. K. M. Gupta
+Publisher: Umesh Publication, New Delhi
+Year of publication: 2012
+Isbn: 9789380117249
+Edition: 5 \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch10.ipynb b/Material_Science_In_Engineering/ch10.ipynb
new file mode 100755
index 00000000..2d7438c4
--- /dev/null
+++ b/Material_Science_In_Engineering/ch10.ipynb
@@ -0,0 +1,234 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 10 : Phase Diagram and Equilibrium Diagram"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 10.1 pageno : 251"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "c = 2.; \t\t\t#for 2 component system\n",
+ "p = 4.;\n",
+ "\n",
+ "# Calculations\n",
+ "d = c-p+2;\t\t\t#degree of freedom\n",
+ "t = p*(c-1)+2;\t\t\t#no. of total variables\n",
+ "\n",
+ "# Results\n",
+ "print \"D = C-P+2\"\n",
+ "print \"Total no. of variables = P*(C-1)+2\"\n",
+ "print \"Degree of freedom = \",d\n",
+ "print \"when p = \",p\n",
+ "print \"Two component system cannot have more than 4 phases in an equilibrium\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "D = C-P+2\n",
+ "Total no. of variables = P*(C-1)+2\n",
+ "Degree of freedom = 0.0\n",
+ "when p = 4.0\n",
+ "Two component system cannot have more than 4 phases in an equilibrium\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 10.2 page no : 257"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "p_pb = 11364.1; \t \t\t#density of lead in kg/m**3\n",
+ "p_sn = 7220.14;\t \t \t#density of tin in kg/m**3\n",
+ "\n",
+ "# Calculations\n",
+ "p_e = 100./((38./p_pb)+(62./p_sn));\t\t\t#density of eutectic composition at point D\n",
+ "w = .88*p_e;\t \t\t#in kgf\n",
+ "w_pb = .38*w;\t\t \t#of lead in kgf\n",
+ "w_sn = .62*w;\t\t\t #of tin in kgf\n",
+ "p_b = 7300.; \t\t#density in beta phase in kg/m**3\n",
+ "w1 = .12*p_b;\t\t \t#in kgf\n",
+ "w1_pb = .03*w1;\t\t\t #of lead in kgf\n",
+ "w1_sn = .97*w1;\t\t\t #of tin in kgf\n",
+ "w2_pb = w_pb+w1_pb;\t\t\t#Total weight of lead in kgf\n",
+ "w2_sn = w_sn+w1_sn;\t\t\t#Total weight of tin in kgf\n",
+ "sn = (w2_sn/(w2_sn+w2_pb))*100;\n",
+ "\n",
+ "# Results\n",
+ "print \"Density of eutectic composition at point D (in kg/m3) = %.1f kg/m**3\"%p_e\n",
+ "print \"Total weight of lead (in kgf) = %.2f kgf\"%w2_pb\n",
+ "print \"Total weight of tin (in kgf) = %.1f kgf\"%w2_sn\n",
+ "print \"%% of Sn = %.2f\"%sn\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Density of eutectic composition at point D (in kg/m3) = 8381.6 kg/m**3\n",
+ "Total weight of lead (in kgf) = 2829.07 kgf\n",
+ "Total weight of tin (in kgf) = 5422.7 kgf\n",
+ "% of Sn = 65.72\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 10.4 pageno : 266"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "c_be = 100;\n",
+ "c_e = 1.65;\n",
+ "c_o = 10;\n",
+ "\n",
+ "# Calculations\n",
+ "w = (c_be-c_o)/(c_be-c_e);\n",
+ "\n",
+ "# Results\n",
+ "print \"weight fractions = %.3f\"%w\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "weight fractions = 0.915\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 10.5 pageno : 267"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "#m be amount of tin\n",
+ "w_sn = 900.;\t \t\t#weight of tin\n",
+ "w_pb = 1000.;\t\t \t#weight of lead\n",
+ "\n",
+ "# Calculations\n",
+ "m = ((w_pb*0.97)-w_sn)/(1-.97);\t\t\t#in grams\n",
+ "m1 = m/1000.;\t\t\t #maximum mass of tin in kgm\n",
+ "\n",
+ "# Results\n",
+ "print \"Maximum weight of tin that can be added without changing systems temperature (in kgm) = %.2f kg\"%m1\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Maximum weight of tin that can be added without changing systems temperature (in kgm) = 2.33 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 10.6 page no : 270"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "c = 0.83;\t\t\t#carbon\n",
+ "f = 0.; \t\t\t#ferrite\n",
+ "ce = 6.67;\t\t\t#cementite\n",
+ "\n",
+ "# Calculations\n",
+ "w_a = (ce-c)/(ce-f);\n",
+ "w_b = (c-f)/(ce-f);\n",
+ "\n",
+ "# Results\n",
+ "print \"Weight fraction of errite = %.3f\"%w_a\n",
+ "print \"Weight Fraction of Cementite = %.3f\"%w_b\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Weight fraction of errite = 0.876\n",
+ "Weight Fraction of Cementite = 0.124\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch12.ipynb b/Material_Science_In_Engineering/ch12.ipynb
new file mode 100755
index 00000000..fb6de32d
--- /dev/null
+++ b/Material_Science_In_Engineering/ch12.ipynb
@@ -0,0 +1,141 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 12 : Heat Treatment"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 12.1 page no : 304"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "# Variables\n",
+ "n_bcc = 1./2;\n",
+ "n_fcc = 1./4;\n",
+ "r_fcc = 1.26;\t\t\t#in Angstorm\n",
+ "r_bcc = 1.24;\t\t\t#in Angstorm\n",
+ "\n",
+ "# Calculations\n",
+ "a_bcc = 4.*r_bcc/math.sqrt(3);\t\t\t#in Angstorm\n",
+ "a_fcc = 2.*math.sqrt(2)*r_fcc;\t\t\t#in Angstorm\n",
+ "v_fcc = a_fcc**3;\n",
+ "v_bcc = a_bcc**3;\n",
+ "v = 100*((n_fcc*v_fcc)-(n_bcc*v_bcc))/(n_fcc*v_fcc);\n",
+ "\n",
+ "# Results\n",
+ "print \"Percentage change in volume = %.3f\"%v\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Percentage change in volume = -3.764\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 12.3 pageno : 317"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "e = 51.;\t\t\t#Young modulous in GPa\n",
+ "v = 0.22;\t\t\t#poisson ratio\n",
+ "\n",
+ "# Calculations\n",
+ "g = e/(2*(1-v));\t\t\t#shear modulous in GPa\n",
+ "b = 2*10.**-10;\n",
+ "ue = (1./2)*g*10**9*b**2*10**12;\t\t\t#in J/m**3\n",
+ "\n",
+ "# Results\n",
+ "print \"Change in free energy during recrysatllization (in J/m**3) = %.1f J/m**3\"%ue\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Change in free energy during recrysatllization (in J/m**3) = 653.8 J/m**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 12.5 pageno : 329"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "g = 41.*10**9;\t\t\t#in N/m**2\n",
+ "b = 0.64*10**-9;\t\t\t#in m\n",
+ "l = 20.*10**-6;\t\t\t#in m\n",
+ "\n",
+ "# Calculations\n",
+ "t = g*b/l;\t\t\t#in N/m**2\n",
+ "T = t*10.**-6;\t\t\t#in MPa\n",
+ "\n",
+ "# Results\n",
+ "print \"Contribution of these particles (in MPa) = %.3f MPa\"%T\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Contribution of these particles (in MPa) = 1.312 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch14.ipynb b/Material_Science_In_Engineering/ch14.ipynb
new file mode 100755
index 00000000..14bec84f
--- /dev/null
+++ b/Material_Science_In_Engineering/ch14.ipynb
@@ -0,0 +1,344 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14 : Magnetic Properties and Materials"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.1 pageno : 358"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "x = 1500.;\t\t\t#susceptibility\n",
+ "h = 2400.;\t\t\t#mafnetic field in A/m\n",
+ "\n",
+ "# Calculations\n",
+ "u_r = 1+x;\n",
+ "m = x*h;\t\t\t #in A/m\n",
+ "u_0 = 4*3.14*10**-7;\n",
+ "b = u_0*u_r*h;\t\t\t#in T\n",
+ "\n",
+ "# Results\n",
+ "print \"relative permeability = \",u_r\n",
+ "print \"Intensity of magnetisation (in A/m)\",m\n",
+ "print \"Remanance (in T) = \",b\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "relative permeability = 1501.0\n",
+ "Intensity of magnetisation (in A/m) 3600000.0\n",
+ "Remanance (in T) = 4.5246144\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.2 page no : 368"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "# Variables\n",
+ "w = 80. + 80;\t\t\t#width of loop in A/m from graph\n",
+ "h = 0.15 + .15;\t\t\t#height of loop in Wb/sqm\n",
+ "\n",
+ "# Calculations\n",
+ "a = w*h;\t\t\t #area of the loop in J\n",
+ "\n",
+ "# Results\n",
+ "print \"Hysteresis energy loss per unit volume of magnetic material during one cycle (in J) = %d J\"%a\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Hysteresis energy loss per unit volume of magnetic material during one cycle (in J) = 48 J\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.3 pageno : 370"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "a = 600.;\t\t\t#loop area in J/sqm\n",
+ "f = 50.;\t\t\t#in Hz\n",
+ "v = 0.01\t\t\t#volume in cu. m\n",
+ "\n",
+ "# Calculations\n",
+ "w = a*f*v;\t\t\t#in W\n",
+ "\n",
+ "# Results\n",
+ "print \"Power loss due to Hysteresis (in W) = %.f watt\"%w\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Power loss due to Hysteresis (in W) = 300 watt\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.4 pageno : 370"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "w_h1 = 300.; # hysteresis loss\n",
+ "b_1 = 0.9; # max. flux density\n",
+ "\n",
+ "y = b_1**1.7;\n",
+ "b_2 = 1.1; #raised flux density(Wb/m^2)\n",
+ "x = b_2**1.7;\n",
+ "f1 = 50*10**-7; #frequency(Hz)\n",
+ "f2 = 40*10**-7; #frequency(Hz)\n",
+ "\n",
+ "# Calculations\n",
+ "w_h2 = (w_h1*x*f2)/(y*f1);\n",
+ "\n",
+ "\n",
+ "# Results\n",
+ "print \"Loss at 40 Hz (in W) = %.f W\"%w_h2\n",
+ "\n",
+ "# Note : Answer in book is wrong. Please calculate manually."
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Loss at 40 Hz (in W) = 338 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.5 pageno : 376"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "m = 6000.; # megnetization\n",
+ "u_r = 200000.; # relative permeability\n",
+ "\n",
+ "# Calculations\n",
+ "x = u_r-1;\n",
+ "h = m/x;\n",
+ "u_0 = 4*3.14*10**-7;\n",
+ "b = u_0*u_r*h;\n",
+ "\n",
+ "# Results\n",
+ "print \"Magnetic strength (in T) = %.5f tesla\"%b\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Magnetic strength (in T) = 0.00754 tesla\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.6 pageno : 376"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "b = 9.27*10**-24;\t\t\t#Bohr Magneton in A/sqm\n",
+ "m = 0.6*b;\n",
+ "\n",
+ "# Calculations\n",
+ "a = 0.35*10**-9;\n",
+ "n = 4.;\t\t\t#FCC\n",
+ "m_g = n*m/a**3;\t\t\t#in A/m\n",
+ "\n",
+ "# Results\n",
+ "print \"Saturation Magnetisation (in A/m) = %.2e A/m\"%m_g\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Saturation Magnetisation (in A/m) = 5.19e+05 A/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.9 page no : 381"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "f = 50.;\t\t\t#in Hz\n",
+ "L = 100.;\t\t\t#Eddy current loss in transformer in W\n",
+ "f1 = 60.;\t\t\t#in Hz\n",
+ "f2 = 100;\t\t\t#in Hz\n",
+ "\n",
+ "# Calculations\n",
+ "w_e = L*(f1/f)**2;\t\t\t#in W\n",
+ "w_ee = L*(f2/f)**2;\t\t\t#in W\n",
+ "\n",
+ "# Results\n",
+ "print \"Eddy current loss at 60 Hz (in W) = %.1f W\"%w_e\n",
+ "print \"Eddy current loss at 100 Hz (in W) = %.1f W\"%w_ee\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Eddy current loss at 60 Hz (in W) = 144.0 W\n",
+ "Eddy current loss at 100 Hz (in W) = 400.0 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 14.13 pageno : 382"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "l = .25;\t\t\t#in m\n",
+ "n = 400.;\t\t\t#turns\n",
+ "i = 15.;\t\t\t#in A\n",
+ "\n",
+ "# Calculations\n",
+ "u_0 = 1.257*10**-6;\t\t\t#in H/m\n",
+ "h = n*i/l;\t\t\t#in AT/m\n",
+ "u_r = 1;\t\t\t#relative permeability\n",
+ "b = u_0*u_r*h;\t\t\t#in wB/sqm\n",
+ "\n",
+ "# Results\n",
+ "print \"Magnetic field strength (in AT/m) = %.1f AT/m\"%h\n",
+ "print \"Flux density (in Wb/sq m) = %.2f Wb/m**2\"%b\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Magnetic field strength (in AT/m) = 24000.0 AT/m\n",
+ "Flux density (in Wb/sq m) = 0.03 Wb/m**2\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch15.ipynb b/Material_Science_In_Engineering/ch15.ipynb
new file mode 100755
index 00000000..ef9c8eba
--- /dev/null
+++ b/Material_Science_In_Engineering/ch15.ipynb
@@ -0,0 +1,489 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 15 : Electric Properties"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.1 pageno : 391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "v = 230.;\t\t\t#in volts\n",
+ "d = 0.005;\t\t\t#in m\n",
+ "\n",
+ "# Calculations\n",
+ "E = -v/d;\t\t\t#in V/m\n",
+ "\n",
+ "# Results\n",
+ "print \"Electric field between pair of conducting plates (in V/m) = \",E\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Electric field between pair of conducting plates (in V/m) = -46000.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.2 pageno : 391"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "n = 10.**19;\t\t\t#no. of electrons per unit volume\n",
+ "e = 1.602*10**-19;\t\t\t#charge of an electron in C\n",
+ "a = 0.018;\t\t\t#conductivity in ohm/m\n",
+ "m = 9.1*10**-31;\t\t\t#mass of an electron in kg\n",
+ "v = 0.16;\t\t\t#in volts\n",
+ "t = 0.29;\t\t\t#thickness in mm\n",
+ "\n",
+ "# Calculations\n",
+ "efg = v/t;\t\t\t#electric field gradient in V/m\n",
+ "vd = a*efg/(n*e);\n",
+ "vd1 = 10**3*vd;\t\t\t#in m/s\n",
+ "\n",
+ "# Results\n",
+ "print \"Drift Velocity (in m/sec) = %.3f m/s\"%vd1\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Drift Velocity (in m/sec) = 6.199 m/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.3 pageno : 399"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "l = 200.; \t \t\t#in m\n",
+ "r = 21.;\t \t \t#in ohm\n",
+ "d = 0.44*10**-3;\t\t\t#in m\n",
+ "\n",
+ "# Calculations\n",
+ "a = 3.14*(d/2)**2;\t\t\t#area in sq m\n",
+ "p = r*a/l;\t\t\t#in ohm-m\n",
+ "\n",
+ "# Results\n",
+ "print \"Specific Resistance (in ohm-m) = %.3e ohm-m\"%p\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Specific Resistance (in ohm-m) = 1.596e-08 ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.4 pageno : 400"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "p_cu = 0.015*10**-6;\t\t\t#resistivity of copper in ohm-m\n",
+ "p_ni = 0.012*10**-6;\t\t\t#resistivity of nickel in ohm-m\n",
+ "p_ag = 0.016*10**-6;\t\t\t#resistivity of silver in ohm-m\n",
+ "c1 = 0.25;\t\t\t#atomic % of nickel\n",
+ "c2 = 0.4;\t\t\t#atomic % of silver\n",
+ "\n",
+ "# Calculations\n",
+ "p = p_cu+(c1*p_ni)+(c2*p_ag);\n",
+ "\n",
+ "# Results\n",
+ "print \"Resistivity of Cu-Ni-Ag alloy at 300 K (in ohm-m) = %.2e ohm m\"%p\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Resistivity of Cu-Ni-Ag alloy at 300 K (in ohm-m) = 2.44e-08 ohm m\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.5 pageno : 407"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "m = 0.14;\t\t\t#mobility of electron\n",
+ "u_h = 0.05;\t\t\t#mobility of holes\n",
+ "p = 3000.;\t\t\t#resistivity in ohm-m\n",
+ "\n",
+ "# Calculations\n",
+ "e = 1.602*10**-19;\t\t\t#charge of an electron in C\n",
+ "a = 1./p;\t\t\t#conductivity \n",
+ "n = a/(e*(m+u_h));\n",
+ "\n",
+ "# Results\n",
+ "print \"Intrinsic Carrier density in pure silicon (in per cu m) = %.3e m**3\"%n\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Intrinsic Carrier density in pure silicon (in per cu m) = 1.095e+16 m**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.6 pageno : 410"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "id = 1000.;\t\t\t#in A/sqm\n",
+ "p = 0.05;\t\t\t#resistivity in ohm-m\n",
+ "l = 100.*10**-6;\t\t\t#in m\n",
+ "m_e = 0.4;\t\t\t#in sqm/Vsec\n",
+ "e = 1.602*10**-19;\t\t\t#charge of electron in C\n",
+ "\n",
+ "# Calculations\n",
+ "a = 1./p;\t\t\t#conductivity\n",
+ "n_e = a/(e*m_e);\t\t\t#in per cubic m\n",
+ "v_d = id/(n_e*e);\t\t\t#in m/s\n",
+ "t = l/v_d;\t\t\t#in sec\n",
+ "t1 = t*10**6;\t\t\t#in msec\n",
+ "\n",
+ "# Results\n",
+ "print \"Drift Velocity (in m/s) = %.f m/s\"%v_d\n",
+ "print \"Time taken by electrons (in msec) = %.f ms\"%t1\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Drift Velocity (in m/s) = 20 m/s\n",
+ "Time taken by electrons (in msec) = 5 ms\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.7 pageno : 410"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "d = 1.*10**-3;\t \t\t#diameter in m\n",
+ "a = 3.14*(d/2)**2;\t\t\t#area of cross section of rod in sq m\n",
+ "r = 100.;\t\t\t #in ohm\n",
+ "\n",
+ "# Calculations\n",
+ "l = 10.*10**-3;\t\t\t #in m\n",
+ "p = a*r/l;\t\t\t #in ohm-m\n",
+ "c = 1./p;\t \t\t#conductivity\n",
+ "e = 1.602*10**-19;\t\t\t#charge of electron in C\n",
+ "u_h = 0.19;\t\t\t #mobility of holes in sqm/Vsec\n",
+ "n_h = c/(e*u_h);\n",
+ "\n",
+ "# Results\n",
+ "print \"Impurity concentration in rod (in per cubic m) = %.2e m**3\"%n_h\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Impurity concentration in rod (in per cubic m) = 4.19e+21 m**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.8 pageno : 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "ni = 1.5*10**16;\t\t\t#intrinsic carrier concentration per cu. m\n",
+ "n = 10**19;\t\t\t#no. of conduction electrons in per cu. m\n",
+ "\n",
+ "# Calculations\n",
+ "p = ni**2/n;\t\t\t#in per cu.m\n",
+ "\n",
+ "# Results\n",
+ "print \"Conduction electron and hole density (per cubic m) = %.2e m**3\"%p\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Conduction electron and hole density (per cubic m) = 2.25e+13 m**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.9 pageno : 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "nd = 10.**17;\t\t\t#in per cu cm\n",
+ "ni = 1.5*10**10;\t\t\t#in cu cm\n",
+ "t = 300;\t\t\t#in K\n",
+ "\n",
+ "# Calculations\n",
+ "ne = nd;\t\t\t#nd>>ni\n",
+ "nh = ni**2/ne;\n",
+ "e = 0.0259*math.log(ne/ni);\t\t\t#in eV\n",
+ "\n",
+ "# Results\n",
+ "print \"Hole concentration (in per cubic cm) = %.2e /cm**3\"%nh\n",
+ "print \"Location of Fermi Level (in eV) = %.3f eV\"%e\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Hole concentration (in per cubic cm) = 2.25e+03 /cm**3\n",
+ "Location of Fermi Level (in eV) = 0.407 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.10 pageno : 423"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "# Variables\n",
+ "d = 40000.;\t\t\t #dielectric strength in V/mm\n",
+ "v = 33*10.**3;\t\t\t#in volts\n",
+ "\n",
+ "# Calculations\n",
+ "t = v/d;\t\t\t#in mm\n",
+ "\n",
+ "# Results\n",
+ "print \"thickness of insulation (in mm) = %.3f m m\"%t\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "thickness of insulation (in mm) = 0.825 m m\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.14 page no : 424"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Calculation\n",
+ "\n",
+ "T = 0.0464*10**5/2.9444\n",
+ "\n",
+ "# Result\n",
+ "print \"Temperature T = %.1f K\"%T"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Temperature T = 1575.9 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 15.16 pageno : 425"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "c = 2.99*10**8;\t\t \t#speed of light in m/s\n",
+ "h = 6.62*10**-24;\t\t\t#planck's constant\n",
+ "l = 1.771*10**-6 #wavelength in m\n",
+ "\n",
+ "# Calculations\n",
+ "eg = (h*c)/l;\t \t\t#in J\n",
+ "\n",
+ "# Results\n",
+ "print \"Band gap energy (in J) = %.2e Joules\"%eg\n",
+ "#Incorrect answer int the textbook. Please calculate manually"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Band gap energy (in J) = 1.12e-09 Joules\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch16.ipynb b/Material_Science_In_Engineering/ch16.ipynb
new file mode 100755
index 00000000..7ccccce9
--- /dev/null
+++ b/Material_Science_In_Engineering/ch16.ipynb
@@ -0,0 +1,313 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 16 : Superconductivity and Superconductors"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 16.1 page no : 431"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "# Variables\n",
+ "b = 0;\n",
+ "#m = -h\n",
+ "#m = x*h\n",
+ "# = = >> -h = x*h\n",
+ "\n",
+ "# Calculations\n",
+ "x = -1;\t\t\t#from above realtions\n",
+ "ur = x+1;\t\t\t#relative permeability\n",
+ "\n",
+ "# Results\n",
+ "print \"Susceptibility of superconductor = \",x\n",
+ "print \"Relative permeability of superconductor = \",ur\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Susceptibility of superconductor = -1\n",
+ "Relative permeability of superconductor = 0\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 16.2 pageno : 434"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "ho = 0.0803;\t\t\t#in A/m\n",
+ "t1 = 3.; \t\t\t#in K\n",
+ "t2 = 10.;\t \t\t#in k\n",
+ "tc = 7.17;\t\t \t#in K\n",
+ "\n",
+ "# Calculations\n",
+ "hc1 = ho*(1-(t1/tc)**2);\n",
+ "hc2 = ho*(1-(t2/tc)**2);\n",
+ "\n",
+ "# Results\n",
+ "print \"Critical field at 3K (in A/m) = %f A/m\"%hc1\n",
+ "print \"Critical field at 10K (in A/m) = %.4f A/m\"%hc2\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Critical field at 3K (in A/m) = 0.066242 A/m\n",
+ "Critical field at 10K (in A/m) = -0.0759 A/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 16.3 pageno : 434"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Calculations\n",
+ "r = 1.*10**-3;\t\t\t#in m\n",
+ "hc = 7.9*10**3;\t\t\t#in A/m\n",
+ "ic = 2.*3.14*r*hc;\t\t\t#in m\n",
+ "\n",
+ "# Results\n",
+ "print \"Critical current in superconducting state (in A) = %.2f A\"%ic\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Critical current in superconducting state (in A) = 49.61 A\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 16.4 pageno : 441"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "p = 11.4*10**3;\t\t\t#in kg/m**3\n",
+ "aw = 207.2;\t\t\t#in kg/kg-mol\n",
+ "v = 1200.;\t\t\t#in m/s\n",
+ "\n",
+ "# Calculations\n",
+ "na = 60.23*10**26;\t\t\t#avagadro's no\n",
+ "e = 1.6*10**-19;\t\t\t#charge in C\n",
+ "m = 9.1*10**-31;\t\t\t#mass of electron in kg\n",
+ "mo = 4*3.14*10**-7;\t\t\t#in H/m\n",
+ "ne = 2*p*na/aw;\t\t\t#in per m**3\n",
+ "ied = ne*e*v;\t\t\t#in A/m**2\n",
+ "dp = (m/(mo*(6.62*10**28)*(e**2)))**(1./2);\n",
+ "dp1 = round(dp*10**10,-1);\n",
+ "\n",
+ "# Results\n",
+ "print \"Electron density (in per m**3) = %.2e electron/m**3\"%ne\n",
+ "print \"Current density (in A/m**2) = %.2e A/m**2\"%ied\n",
+ "print \"Depth of penetration (in angstorm) = %.1f A\"%dp1\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Electron density (in per m**3) = 6.63e+29 electron/m**3\n",
+ "Current density (in A/m**2) = 1.27e+14 A/m**2\n",
+ "Depth of penetration (in angstorm) = 210.0 A\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 16.9 page no : 446"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "ho = 65.*10**3;\t\t\t#in A/m\n",
+ "tc = 7.18;\t\t\t#in K\n",
+ "t = 4.2;\t\t\t#in K\n",
+ "r = 0.5*10**-3;\t\t\t#in m\n",
+ "\n",
+ "# Calculations\n",
+ "hc = ho*(1-(t/tc)**2);\t\t\t#in A/m\n",
+ "ic = 2*3.14*r*hc; \t\t\t#in A\n",
+ "a = 3.14*r**2;\t\t \t#area in m**2\n",
+ "j = ic/a;\t\t\t #in A/m**2\n",
+ "\n",
+ "# Results\n",
+ "print \"current density (in A/m**2) = %.2e A/m**2\"%j\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "current density (in A/m**2) = 1.71e+08 A/m**2\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 16.10 page no : 446"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "hc1 = 21.;\t\t\t#in A/m\n",
+ "hc2 = 10.;\t\t\t#in A/m\n",
+ "tc = 7.;\t\t\t#in K\n",
+ "t = 14.;\t\t\t#in K\n",
+ "h = hc1/hc2;\n",
+ "\n",
+ "# Calculations\n",
+ "#Determining critical temperature\n",
+ "tc1 = math.sqrt(3626./11);\t\t\t#by quadratic eqn in the example\n",
+ "ho = hc1/(1-(tc**2/tc1**2));\n",
+ "t = 4.2;\t\t\t#in k\n",
+ "hc = ho*(1-(t/tc1)**2);\n",
+ "\n",
+ "# Results\n",
+ "print \"Critical field at 0 K (in A/m) = %.2f A/m\"%ho\n",
+ "print \"Critical field At 4.2 k (in A/m) = %.3f A/m\"%hc\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Critical field at 0 K (in A/m) = 24.67 A/m\n",
+ "Critical field At 4.2 k (in A/m) = 23.347 A/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 16.11 page no : 447"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "# part (b)\n",
+ "# Variables\n",
+ "m = 39.6 # materials\n",
+ "Tc = 7.19 # K\n",
+ "\n",
+ "# Calculation\n",
+ "dp = math.sqrt(m**2 * (1 - 3**4/Tc**4))\n",
+ "\n",
+ "# Results\n",
+ "print \"Depth of penetration at absolute zero dp(0) = %.3f nm\"%dp"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Depth of penetration at absolute zero dp(0) = 38.995 nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch17.ipynb b/Material_Science_In_Engineering/ch17.ipynb
new file mode 100755
index 00000000..87b2a98d
--- /dev/null
+++ b/Material_Science_In_Engineering/ch17.ipynb
@@ -0,0 +1,104 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 17 : Ceramics and Plastics"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 17.1 pageno : 467"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "mc = 12.;\t\t\t#mol wt of carbon\n",
+ "mh = 1.;\t\t\t#mol wt of hydrogen\n",
+ "m = 8.*(mc+mh);\t\t\t#mol wt of C8H8\n",
+ "DOP = 10000.;\t\t\t#degree of polarization , given\n",
+ "\n",
+ "# Calculations\n",
+ "mp = DOP*m;\n",
+ "\n",
+ "# Results\n",
+ "print \"Molecualr weight of Styrene polymer = %.2e \"%mp\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Molecualr weight of Styrene polymer = 1.04e+06 \n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 17.2 pageno : 468"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "DOP = 100000.;\n",
+ "mc = 12.;\t\t\t#mol wt of carbon\n",
+ "mf = 19.;\t\t\t#mol wt of fluorine\n",
+ "\n",
+ "# Calculations\n",
+ "m = (2*mc)+(4*mf);\t\t\t#mol wt of teflon monomer\n",
+ "mp = DOP*m;\n",
+ "mh = 1.;\t\t\t#mol wt of hydrogen\n",
+ "m1 = (2*mc)+(4*mh);\t\t\t#mol wt of polyethylene\n",
+ "#for same DOP\n",
+ "x = m/m1;\t\t\t#ratio of molecular weights\n",
+ "\n",
+ "# Results\n",
+ "print \"Molecualr weight of Teflon polymer = %e\"%mp\n",
+ "print \"Ratio of molecualr weights of Teflon and Polyethylene = %.2f\"%x\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Molecualr weight of Teflon polymer = 1.000000e+07\n",
+ "Ratio of molecualr weights of Teflon and Polyethylene = 3.57\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch19.ipynb b/Material_Science_In_Engineering/ch19.ipynb
new file mode 100755
index 00000000..c548a0e1
--- /dev/null
+++ b/Material_Science_In_Engineering/ch19.ipynb
@@ -0,0 +1,223 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chatper 19 : Composite Materials"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 19.1 pageno : 507"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "t_s = 3.;\t\t\t#in mm\n",
+ "t_c = 24.;\t\t\t#in mm\n",
+ "b = 100.;\t\t\t#in mm\n",
+ "\n",
+ "# Calculations\n",
+ "d = (t_s+t_c)/2;\t\t\t#in mm\n",
+ "is_ = ((b*t_s**3)/12)+(b*t_s*d**2);\t\t\t#in mm**4\n",
+ "ic = b*t_c**3/12 \t\t\t#in mm**4\n",
+ "Es = 7000.; \t\t\t #moduli of polyester skin in N/mm**2\n",
+ "m_f = 20.; \t\t\t #moduli of foam core in N/mm**2\n",
+ "d_fr = (2*Es*is_)+(m_f*ic);\t\t\t #in N/mm**2\n",
+ "\n",
+ "Ts = 6\n",
+ "D_s = (Es*b*Ts**2)/12\n",
+ "c = d_fr/D_s\n",
+ "\n",
+ "# Results\n",
+ "print \"Flexural rigidity (in N/sqm) = %.2e\"%d_fr\n",
+ "print \"Ds = %.1e N mm**2\"%D_s\n",
+ "print \"Flexural rigidity of sandwich beam is %d times more\"%c\n",
+ "\n",
+ "\n",
+ "# Note : answer in book is wrong for D_s please check manually."
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Flexural rigidity (in N/sqm) = 7.71e+08\n",
+ "Ds = 2.1e+06 N mm**2\n",
+ "Flexural rigidity of sandwich beam is 367 times more\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 19.2 page no : 520"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "ec = 210.;\t\t\t#in GPa\n",
+ "ea = 71.;\t\t\t#in GPa\n",
+ "eb = 440.;\t\t\t#in GPa\n",
+ "\n",
+ "# Calculations\n",
+ "va = (ec-eb)/(ea-eb);\n",
+ "vb = 1-va;\n",
+ "c = vb/va;\n",
+ "\n",
+ "# Results\n",
+ "print \"Volume ratio = %.2f\"%c\n",
+ "\n",
+ "# note : answer in book is wrong . please calculate manually.\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Volume ratio = 0.60\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 19.3 pageno : 521"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "ef = 430.;\t\t\t#in GPa\n",
+ "e = 3.6;\t\t\t#in GPa\n",
+ "m = ef/e;\n",
+ "vf = 0.15;\t\t\t#by volume\n",
+ "\n",
+ "# Calculations\n",
+ "vm = 1-vf;\n",
+ "x = vm/vf;\n",
+ "pf = m;\n",
+ "pc = m+x;\n",
+ "y = pf/pc;\n",
+ "vf1 = 0.65\n",
+ "vm1 = 1-vf1;\n",
+ "z = vm1/vf1;\n",
+ "pc1 = m+z;\n",
+ "zz = pf/pc1;\n",
+ "\n",
+ "# Results\n",
+ "print \"fraction of load carried by fibres (15 %% by volume) = %.2f\"%y\n",
+ "print \"fraction of load carried by fibres (65 %% by volume) = %.4f\"%zz\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "fraction of load carried by fibres (15 % by volume) = 0.95\n",
+ "fraction of load carried by fibres (65 % by volume) = 0.9955\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 19.4 page no : 522"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "vf = 0.65;\n",
+ "vm = 1-vf;\n",
+ "kts = 2.8; \t\t\t#in Gpa\n",
+ "ets = 0.0025;\t\t\t#in GPa\n",
+ "\n",
+ "# Calculations and Results\n",
+ "ac = (kts*vf)+(ets*vm);\t\t\t#in GPa\n",
+ "print \"Longitudinal Strength (in GPa) = %.2f\"%ac\n",
+ "\n",
+ "ktm = 130.;\t\t\t#in GPa\n",
+ "etm = 3.5;\t\t\t#in GPa\n",
+ "ec = (ktm*vf)+(etm*vm);\n",
+ "print \"Longitudianl Modulous (in GPa) = %.2f\"%ec\n",
+ "\n",
+ "e_c = 1/((vf/ktm)+(vm/etm));\n",
+ "print \"Transverse Modulous (in GPa) = %.2f\"%e_c\n",
+ "\n",
+ "kp = 0.34;\t\t\t#in GPa\n",
+ "ep = 0.36;\t\t\t#in GPa\n",
+ "vlt = (vf*kp)+(vm*vm);\n",
+ "print \"Poissons Ratio = \",vlt\n",
+ "\n",
+ "glt = 1./((vf/2.2)+(vm/1.2));\t\t\t#in GPa\n",
+ "print \"Shear Modulous (in GPa) = %.2f\"%glt\n",
+ "\n",
+ "# note: answer in book is wrong for part a. please calculate manually.\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Longitudinal Strength (in GPa) = 1.82\n",
+ "Longitudianl Modulous (in GPa) = 85.72\n",
+ "Transverse Modulous (in GPa) = 9.52\n",
+ "Poissons Ratio = 0.3435\n",
+ "Shear Modulous (in GPa) = 1.70\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch2.ipynb b/Material_Science_In_Engineering/ch2.ipynb
new file mode 100755
index 00000000..3ee92690
--- /dev/null
+++ b/Material_Science_In_Engineering/ch2.ipynb
@@ -0,0 +1,316 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 2 : Review of Atomic concepts, Atomic Models, and Periodic Table"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.1 page no : 21"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "# Variables\n",
+ "a1 = 1.0078;\t\t\t#atomic weight of H-1\n",
+ "a2 = 2.0143;\t\t\t#atomic weight of H-2\n",
+ "p1 = 99.985;\t\t\t#% of H-1\n",
+ "p2 = .015; \t\t\t#% of H-2\n",
+ "\n",
+ "# Calculations\n",
+ "a = ((a1*p1)+(a2*p2))/100\n",
+ "\n",
+ "# Results\n",
+ "print \"Average atomic weight of Hydrogen = %.3f\"%a\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Average atomic weight of Hydrogen = 1.008\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.2 page no : 24"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "z = 79.; \t\t\t#atomic no. of gold\n",
+ "e = 7.68*1.6*10**-13;\t\t\t#ke in J\n",
+ "e_c = 1.6*10**-19;\t \t\t#charge of electron in C\n",
+ "e_0 = 8.854*10**-12;\t\t\t#permittivity F/m\n",
+ "\n",
+ "#Calculations\n",
+ "d = (2*e_c**2*z)/(4*3.14*e_0*e);\t\t\t#distance in m\n",
+ "\n",
+ "# Results\n",
+ "print \"distance (in m) = %.2e m\"%d\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "distance (in m) = 2.96e-14 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.3 pageno : 24"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "n = 44.;\t\t\t#no. of particles scattered per minute\n",
+ "a = 90.;\t\t\t#angle in degrees\n",
+ "b = 75.;\t\t\t#angle in degrees\n",
+ "d = 135.;\t\t\t#angle in degrees\n",
+ "\n",
+ "# Calculations\n",
+ "x = math.sin(math.radians(a/2));\n",
+ "c = n*x**4;\n",
+ "y = math.sin(math.radians(b/2));\n",
+ "n1 = c/y**4;\n",
+ "z = math.sin(math.radians(d/2));\n",
+ "n2 = c/z**4;\n",
+ "\n",
+ "# Results\n",
+ "print \"Proportionality constant = \",c\n",
+ "print \"No. of particles scattered at 75 degree (in per minute) = %d\"%n1\n",
+ "print \"No. of particles scattered at 135 degree (in per minute) = %d\"%n2\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Proportionality constant = 11.0\n",
+ "No. of particles scattered at 75 degree (in per minute) = 80\n",
+ "No. of particles scattered at 135 degree (in per minute) = 15\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.4 pageno : 28"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "n = 1. \t\t\t#first orbit\n",
+ "e_0 = 8.85*10**-12;\t\t\t#permittivity in freee space\n",
+ "h = 6.62*10**-34;\t\t\t#planck's consmath.tant\n",
+ "m = 9.1*10**-31;\t\t\t#mass of an electron in kg\n",
+ "e = 1.6*10**-19;\t\t\t#charge of an electron in C\n",
+ "z = 1.;\n",
+ "\n",
+ "# Calculations\n",
+ "r = n**2*e_0*h**2/(3.14*m*e**2*z);\t\t\t#radius of first orbit in m\n",
+ "r1 = r*10.**10;\t\t\t #radius in Angstorm\n",
+ "\n",
+ "# Results\n",
+ "print \"Radius of first orbit of electron in Hydrogen atom (in Angstorm) = %.2f A\"%r1\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Radius of first orbit of electron in Hydrogen atom (in Angstorm) = 0.53 A\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.5 pageno : 28"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "e_0 = 8.85*10**-12;\t\t\t#permittivity in freee space in sqC/N/sqm\n",
+ "h = 6.62*10**-34;\t\t\t#planck's constant in Js\n",
+ "m = 9.1*10**-31;\t\t\t#mass of an electron in kg\n",
+ "e = 1.6*10**-19;\t\t\t#charge of an electron in C\n",
+ "z = 1.;\t \t\t#for hydrogen\n",
+ "n = 1.;\n",
+ "\n",
+ "# Calculations\n",
+ "e = m*z**2*e**4/(8*e_0**2*h**2*n**2);\t\t\t#ionisation energy in J\n",
+ "e1 = e/(1.602*10**-19);\t\t\t #in eV\n",
+ "\n",
+ "# Results\n",
+ "print \"Ionisation Energy (in J) = %.2e J\"%e\n",
+ "print \"Ionisation Energy (in eV) = %.1f V\"%e1\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Ionisation Energy (in J) = 2.17e-18 J\n",
+ "Ionisation Energy (in eV) = 13.6 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.6 page no : 32"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "n = 4.; \t\t\t#fourth orbit\n",
+ "\n",
+ "# Calculations\n",
+ "a = (0+1)/n;\t\t\t#for s suborbit\n",
+ "b = (1+1)/n;\t\t\t#for p suborbit\n",
+ "c = (2+1)/n;\t\t\t#for d suborbit\n",
+ "d = (3+1)/n;\t\t\t#for f suborbit\n",
+ "\n",
+ "# Results\n",
+ "print \"For s suborbit b/a = \",a,\"a\"\n",
+ "print \"For p suborbit b/a = \",b,\"a\"\n",
+ "print \"For d suborbit b/a = \",c,\"a\"\n",
+ "print \"For f suborbit b/a = \",d,\"a\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For s suborbit b/a = 0.25 a\n",
+ "For p suborbit b/a = 0.5 a\n",
+ "For d suborbit b/a = 0.75 a\n",
+ "For f suborbit b/a = 1.0 a\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 2.7 pageno : 33"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "h = 6.62*10**-34;\t\t\t#planck's constant in Js\n",
+ "p = 10**-27;\t\t\t#uncertainity in momentum in kg m/s\n",
+ "\n",
+ "# Calculations\n",
+ "x = h/(2*3.14*p);\t\t\t#uncertainity in position in m\n",
+ "\n",
+ "# Results\n",
+ "print \"Minimum Uncertainity in Position (in m) = %.3e\"%x\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Minimum Uncertainity in Position (in m) = 1.054e-07\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch20.ipynb b/Material_Science_In_Engineering/ch20.ipynb
new file mode 100755
index 00000000..558f322d
--- /dev/null
+++ b/Material_Science_In_Engineering/ch20.ipynb
@@ -0,0 +1,225 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 20 : Performance of Materials in Service ( Fracture, Fatigue, and Corrosion and its Control)"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 20.1 page no : 537"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "l = 1.5*10**-6;\t\t\t#crack length in m\n",
+ "e = 70*10**9;\t\t\t#Young's modulous in N/m**2\n",
+ "y_e = 1.05;\t\t\t#specific surface energy in j/m**2\n",
+ "\n",
+ "# Calculations\n",
+ "a_f = math.sqrt((2*y_e*e)/(3.14*l));\n",
+ "a_f1 = a_f*10**-6;\t\t\t#in MPa\n",
+ "r = a_f/e;\t\t\t#ratio\n",
+ "\n",
+ "# Results\n",
+ "print \"Fracture strength (in MPa) = %.2f\"%a_f1\n",
+ "print \"Ratio of fracture strength to Youngs modulous = %.2e\"%r\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Fracture strength (in MPa) = 176.66\n",
+ "Ratio of fracture strength to Youngs modulous = 2.52e-03\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 20.2 pageno : 547"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "#Variables\n",
+ "m_m = 58.71;\t\t\t#molecular weight of ni\n",
+ "m_c = 74.71;\t\t\t#molecular weight of nio\n",
+ "p_m = 8900;\t\t\t#density of ni in kg/m**3\n",
+ "p_c = 7080;\t\t\t#desity of nio in kg/m**3\n",
+ "\n",
+ "#Calculations & Reults\n",
+ "x = m_m/p_m;\t\t\t#molar volume of ni in m**3/mol\n",
+ "print \"Mc/Pc (in m**3/mol) %.2e m**3/mol\"%x\n",
+ "y = m_c/p_c;\t\t\t#molar volume of nio in m**3/mol\n",
+ "print \"Mm/Pm (in m**3/mol) %.2e m**3/mol\"%y\n",
+ "print \" Mc/Pc > Mm/Pm Hence protective layer of NiO will form over Ni \";\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mc/Pc (in m**3/mol) 6.60e-03 m**3/mol\n",
+ "Mm/Pm (in m**3/mol) 1.06e-02 m**3/mol\n",
+ " Mc/Pc > Mm/Pm Hence protective layer of NiO will form over Ni \n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 20.3 pageno : 548"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "x1 = 0.1;\t\t\t#in mm\n",
+ "t1 = 25.;\t\t\t#in hours\n",
+ "t2 = 300.;\t\t\t#in hours\n",
+ "\n",
+ "# Calculations\n",
+ "x2 = x1*math.sqrt(t2/t1);\t\t\t#in mm\n",
+ "\n",
+ "# Results\n",
+ "print \"Oxidation loss in 300 hours (in mm) = %.3f mm\"%x2\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Oxidation loss in 300 hours (in mm) = 0.346 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 20.4 pageno : 551"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "p_mg = 1.74;\t\t\t#density of magnesium in gm/cm**3\n",
+ "p_mgo = 3.65;\t\t\t#density of magnesium oxide in gm/cm**3\n",
+ "m_mg = 24.;\t\t\t#mol wt ogf mg\n",
+ "m_mgo = 40.3;\t\t\t#mol wt of mgo\n",
+ "\n",
+ "# Calculations\n",
+ "PBR = (m_mgo/p_mgo)/(m_mg/p_mg);\n",
+ "\n",
+ "# Results\n",
+ "print \"PBR = %.2f\"%PBR\n",
+ "print \"Since PBR < 1. So porous film will form which will be non protective\";\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "PBR = 0.80\n",
+ "Since PBR < 1. So porous film will form which will be non protective\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 20.5 pageno : 562"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "m = 0.0243;\t\t\t#one mole of magnesium in kg\n",
+ "\n",
+ "# Calculations\n",
+ "c = 2.*96490;\t\t\t#in C\n",
+ "j = 20.*10**-3;\t\t\t#in A/m**2\n",
+ "t = 15.*365*24*3600;\t\t\t#in sec\n",
+ "x = j*t; \t\t\t#in A s\n",
+ "w_mg = m*x/c;\t \t\t#in kg/sqm\n",
+ "\n",
+ "# Results\n",
+ "print \"Amount of Magnesium needed (in Kg/m**2) = %.2f kg/m**2\"%w_mg\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Amount of Magnesium needed (in Kg/m**2) = 1.19 kg/m**2\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch21.ipynb b/Material_Science_In_Engineering/ch21.ipynb
new file mode 100755
index 00000000..b1d87105
--- /dev/null
+++ b/Material_Science_In_Engineering/ch21.ipynb
@@ -0,0 +1,147 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 21 : Diffusion of Solids"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 21.1 pageno : 577"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "c_cu = 2.*10**13;\t\t\t#concentration of copper in /m**3\n",
+ "c_al = 4.*10**6;\t\t\t#concn of copper on other side of Al in /m**3\n",
+ "\n",
+ "# Calculations\n",
+ "t = 3.*10**-3;\t\t \t#thickness in m\n",
+ "z = (c_cu-c_al)/t;\t\t\t#z = dm/dx,concentration graient\n",
+ "jx = 10.**21;\t\t \t#outward flux of copperv atoms in /sq m/sec\n",
+ "d = -jx/z;\t\t\t #diffusivity in sq m/sec\n",
+ "\n",
+ "# Results\n",
+ "print \"Diffusivity (in sq m/sec) = %.2e m**2/s\"%d\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Diffusivity (in sq m/sec) = -1.50e+05 m**2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 21.2 pageno : 583"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "c_n = 12.;\t\t\t#nitrogen concentration in kg/m**3\n",
+ "t = 6.*10**-3;\t\t\t#thickness in m\n",
+ "\n",
+ "# Calculations\n",
+ "z = (c_n-0)/t;\t\t\t#concentration gradient in kg/m**4\n",
+ "d0 = 5.*10**-7;\t\t\t#in sqm/sec\n",
+ "q = 75.*10**3;\t\t\t#in j/mol\n",
+ "r = 8.314;\t\t\t#in J/mol/K\n",
+ "t = 400.;\t\t\t#in K\n",
+ "dx = d0*math.exp(-q/(r*t));\t\t\t#diffusivity in sqm/sec\n",
+ "jx = dx * 2*10**-3;\t\t\t#rate of flow of nitrogen in kg/sqm/sec\n",
+ "\n",
+ "# Results\n",
+ "print \"concentration gradient (in kg/m4) = %.0e\"%z\n",
+ "print \"Diffusivity (in sqm/sec) = %.3e m**2/s\"%dx\n",
+ "print \"Rate at which nitrogen escapes (in kg/sqm/sec) = %.3e kg/m**2/s\"%jx\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "concentration gradient (in kg/m4) = 2e+03\n",
+ "Diffusivity (in sqm/sec) = 8.028e-17 m**2/s\n",
+ "Rate at which nitrogen escapes (in kg/sqm/sec) = 1.606e-19 kg/m**2/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 21.4 pageno : 585"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# variables\n",
+ "z = 8.;\t\t\t#ratio of diffusion in silicon at 1350 C and 1100 C\n",
+ "x = math.log(z);\n",
+ "\n",
+ "# calculations\n",
+ "q = x/(1.35*10**-5);\t\t\t#activation energy for silver diffusion in J/mol\n",
+ "q1 = q/1000.;\t \t\t#in kJ/mol\n",
+ "\n",
+ "# results\n",
+ "print \"Activation Energy in Silver diffusion (in kJ/mol) = %d kJ/mol\"%q1\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Activation Energy in Silver diffusion (in kJ/mol) = 154 kJ/mol\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch3.ipynb b/Material_Science_In_Engineering/ch3.ipynb
new file mode 100755
index 00000000..9933f0bf
--- /dev/null
+++ b/Material_Science_In_Engineering/ch3.ipynb
@@ -0,0 +1,104 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 3 : Chemical Bonding"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 3.4 pageno : 59"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "e1 = -13.6;\t\t\t#ionization potential of hydrogen in volts\n",
+ "n = 3.; \t\t\t#third orbit\n",
+ "m = 5.; \t\t\t#fifth orbit\n",
+ "\n",
+ "# Calculations\n",
+ "e3 = e1/(n**2);\t\t\t#Energy of third orbit in volts\n",
+ "e5 = e1/(m**2);\t\t\t#Energy of fifth orbit in volts\n",
+ "\n",
+ "# Results\n",
+ "print \"Energy of third orbit (in volts) = %.2f eV\"%e3\n",
+ "print \"Energy of fifth orbit (in volts) = %.2f eV\"%e5\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Energy of third orbit (in volts) = -1.51 eV\n",
+ "Energy of fifth orbit (in volts) = -0.54 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 3.5 pageno : 61"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "d = 0.9178;\t\t\t#molecular distance in angstorm\n",
+ "\n",
+ "# Calculations\n",
+ "d1 = d*10**-10;\t \t\t#in m\n",
+ "e = 1.602*10**-19;\t\t\t#in C\n",
+ "dm = e*d1; \t\t\t#dipole moment in fully ionic state in Cm\n",
+ "dm_m = 6.375*10**-30;\t\t\t#meaured dipole moment in Cm\n",
+ "p = (dm_m*100)/dm;\t\t\t#Percentage ionic character\n",
+ "\n",
+ "\n",
+ "# Results\n",
+ "print \"Dipole moment of HF in fully ionic state (in Cm) = %.3e Cm\"%dm\n",
+ "print \"Percentage ionic character : %.1f %%\"%p\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Dipole moment of HF in fully ionic state (in Cm) = 1.470e-29 Cm\n",
+ "Percentage ionic character : 43.4 %\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch4.ipynb b/Material_Science_In_Engineering/ch4.ipynb
new file mode 100755
index 00000000..ebcb7af1
--- /dev/null
+++ b/Material_Science_In_Engineering/ch4.ipynb
@@ -0,0 +1,195 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 4 : Crystallography"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 4.3 page no : 82"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "r_na = 0.98;\t\t\t#ionic radius of sodium in angstorm\n",
+ "r_cl = 1.81;\t\t\t#ionic radius of chlorine in angstorm\n",
+ "n = 4.; \t\t\t#in fcc there are 4 Na and 4 Cl ions\n",
+ "\n",
+ "# Calculations\n",
+ "a = ((2*r_na)+(2*r_cl));\t\t\t#latice constant\n",
+ "apf = ((n*(4./3)*3.14*r_na**3)+(n*(4./3)*3.14*r_cl**3))/a**3;\n",
+ "\n",
+ "# Results\n",
+ "print \"Lattice consmath.tant = \",a\n",
+ "print \"atomic packing fraction of NaCl having FCC structure = %.2f\"%apf\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Lattice consmath.tant = 5.58\n",
+ "atomic packing fraction of NaCl having FCC structure = 0.66\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 4.4 pageno : 83"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "r = 1.278;\t\t\t#radius of copper in angstorm\n",
+ "\n",
+ "#copper has FCC structure\n",
+ "a = round(4*r/math.sqrt(2),2);\t\t\t#in angstorm\n",
+ "a1 = a*10**-8;\t\t\t #in cm\n",
+ "aw = 63.54; \t\t\t#atomic weight of copper\n",
+ "ne = 4.;\t\t\t #fcc\n",
+ "na = 6.023*10**23;\t\t\t #Avagadro's no.\n",
+ "p = aw*ne/(na*a1**3);\t\t\t#in g/cm**3\n",
+ "\n",
+ "# Results\n",
+ "print \"a (in Angstorm) = %.2f A\"%a\n",
+ "print \"Density of Copper (in gm/cm**3) : %.2f\"%p\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a (in Angstorm) = 3.61 A\n",
+ "Density of Copper (in gm/cm**3) : 8.97\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 4.5 pageno : 84"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "w_na = 23.; \t\t\t#atomic weight of Na\n",
+ "w_cl = 35.5;\t\t\t#atomic weight of Cl\n",
+ "w = w_na+w_cl;\t\t\t#effective no.of atoms in FCC structure\n",
+ "n = 4.; \t\t\t#FCC\n",
+ "\n",
+ "# Calculations\n",
+ "na = 6.023*10**23;\t\t\t#Avagadrro's no.\n",
+ "w_4 = w*n/na;\t\t\t#weight of 4 molecules in gm\n",
+ "p = 2.18;\t\t\t#density in gm/cm**3\n",
+ "a3 = (w*n)/(na*p)\n",
+ "a = a3**(1./3)\n",
+ "#a = (w_4/p)**(1/3);\t\t\t#in cm\n",
+ "a1 = a*10**8;\t\t\t#in angstorm\n",
+ "d = a1/2;\n",
+ "\n",
+ "# Results\n",
+ "print \"unit cell dimension (in angstorm) = %.2f A\"%a1\n",
+ "print \"Distance between two adjacent atoms (in Angstorm) = %.2f A\"%d\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "unit cell dimension (in angstorm) = 5.63 A\n",
+ "Distance between two adjacent atoms (in Angstorm) = 2.81 A\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 4.6 pageno : 84"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "n = 2.; \t\t\t#BCC \n",
+ "p = 7.86;\t \t\t #density in gm/cm**3\n",
+ "aw = 55.85;\t\t \t#atomic weight of iron\n",
+ "\n",
+ "# Calculations\n",
+ "na = 6.023*10**23;\t\t \t#Avagadrro's no.\n",
+ "a = ((aw*n)/(na*p))**(1./3);\t\t\t#in cm\n",
+ "a1 = a*10**8;\t \t\t#in angstorm\n",
+ "r = math.sqrt(3)*a1/4;\n",
+ "\n",
+ "# Results\n",
+ "print \"unit cell dimension of iron (in angstorm) = %.2f A\"%a1\n",
+ "print \"atomic radius = %.3f A\"%r\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "unit cell dimension of iron (in angstorm) = 2.87 A\n",
+ "atomic radius = 1.242 A\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch5.ipynb b/Material_Science_In_Engineering/ch5.ipynb
new file mode 100755
index 00000000..701408be
--- /dev/null
+++ b/Material_Science_In_Engineering/ch5.ipynb
@@ -0,0 +1,384 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5 : Miller Indices and X-Ray Crystallograph Techniques"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.1 pageno : 96"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "p = 1.;\n",
+ "q = 1./2;\n",
+ "r = 3.;\n",
+ "\n",
+ "# Calculations\n",
+ "h = 1./p;\n",
+ "k = 1./q;\n",
+ "l = 1./r;\n",
+ "h1 = 3.*h;\n",
+ "k1 = 3.*k;\n",
+ "l1 = 3.*l;\n",
+ "\n",
+ "# Results\n",
+ "print \"MILLER INDICES OF THE PLANE are h = \",h1\n",
+ "print \"k = \",k1\n",
+ "print \"l = \",l1\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "MILLER INDICES OF THE PLANE are h = 3.0\n",
+ "k = 6.0\n",
+ "l = 1.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.3 pageno : 97"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "p = 2./4;\t\t\t#intercepts\n",
+ "q = 3./3;\n",
+ "r = 4./2;\n",
+ "\n",
+ "# Calculations\n",
+ "h = 1./p;\n",
+ "k = 1./q;\n",
+ "l = 1./r;\n",
+ "h1 = 2.*h;\n",
+ "k1 = 2.*k;\n",
+ "l1 = 2.*l;\n",
+ "\n",
+ "# Results\n",
+ "print \"MILLER INDICES ARE \",l1,k1,h1\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "MILLER INDICES ARE 1.0 2.0 4.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.5 pageno : 105"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "r = 1.246;\t\t\t#radius in angstorm\n",
+ "h = 2.;\n",
+ "k = 0.;\n",
+ "l = 0.;\n",
+ "h1 = 2.;\n",
+ "k1 = 2.;\n",
+ "l1 = 0.;\n",
+ "h2 = 1.;\n",
+ "k2 = 1.;\n",
+ "l2 = 1.;\n",
+ "\n",
+ "# Calculations\n",
+ "x = math.sqrt(h**2+k**2+l**2);\n",
+ "a = 2*math.sqrt(2)*r;\t\t\t#in angstorm\n",
+ "d_200 = a/x;\t\t\t #interplanar spacing in angstorm\n",
+ "x1 = math.sqrt(h1**2+k1**2+l1**2);\n",
+ "d_220 = a/x1; \t\t\t#interplanar spacing in angstorm\n",
+ "x2 = math.sqrt(h2**2+k2**2+l2**2);\n",
+ "d_111 = a/x2;\t\t \t#interplanar spacing in angstorm\n",
+ "\n",
+ "\n",
+ "print \"Interplanar Spacing (200) (in Angstorm) = %.3f A\"%d_200\n",
+ "print \"Interplanar Spacing (220) (in Angstorm) = %.3f A\"%d_220\n",
+ "print \"Interplanar Spacing (111) (in Angstorm) = %.3f A\"%d_111\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Interplanar Spacing (200) (in Angstorm) = 1.762 A\n",
+ "Interplanar Spacing (220) (in Angstorm) = 1.246 A\n",
+ "Interplanar Spacing (111) (in Angstorm) = 2.035 A\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.6 pageno : 106"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "a = 3.61*10**-10;\t\t\t#unit cell in m\n",
+ "\n",
+ "# Calculations\n",
+ "r_110 = 2/(math.sqrt(2)*a);\t\t\t#in atoms/m\n",
+ "r_a = r_110/10**3;\t \t\t#in atoms/mm\n",
+ "r_111 = 1/(math.sqrt(3)*a);\t\t\t#in atoms/m\n",
+ "r_b = r_111/10**3;\t\t\t #in atoms/mm\n",
+ "\n",
+ "# Results\n",
+ "print \"Linear Density per unit length along direction [110] (in atoms/mm) = %.2e atoms/mm\"%r_a\n",
+ "print \"Linear Density per unit length along direction [111] (in atoms/mm) = %.2e atoms/mm\"%r_b\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Linear Density per unit length along direction [110] (in atoms/mm) = 3.92e+06 atoms/mm\n",
+ "Linear Density per unit length along direction [111] (in atoms/mm) = 1.60e+06 atoms/mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.7 pageno : 110"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "r_po = 1.7*10**-10;\t\t\t #radius of polonium in m\n",
+ "r_rh = 1.34*10**-10;\t\t\t#radius of rhodium in m\n",
+ "r_cr = 1.25*10**-10;\t\t\t#radius of chromium in m\n",
+ "\n",
+ "# Calculations\n",
+ "a_po = 2*r_po;\t\t \t#in m\n",
+ "a_rh = 2*math.sqrt(2)*r_rh;\t\t#in m\n",
+ "a_cr = 4*r_cr/math.sqrt(3);\n",
+ "p_po = 1/a_po**2;\t\t\t # /sqm\n",
+ "p_rh = 1.414/a_rh**2;\t\t\t# /sqm\n",
+ "p_cr = 1.732/a_cr**2;\t\t\t# /sqm\n",
+ "\n",
+ "# Results\n",
+ "print \"Planar Density on [100] in Polonium (per sqm) = %.2e /m**2\"%p_po\n",
+ "print \"Planar Density on [110] in Rhodium (per sqm) = %.2e /m**2\"%p_rh\n",
+ "print \"Planar Density on [111] in Chromium (per sqm) = %.2e /m**2\"%p_cr\n",
+ "\n",
+ "# Note : To check answer , please calculate manually for p_rh"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Planar Density on [100] in Polonium (per sqm) = 8.65e+18 /m**2\n",
+ "Planar Density on [110] in Rhodium (per sqm) = 9.84e+18 /m**2\n",
+ "Planar Density on [111] in Chromium (per sqm) = 2.08e+19 /m**2\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.8 pageno : 113"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "w = 0.824;\t\t\t#wavelength in angstorm\n",
+ "theta1 = 8.35;\t\t\t#angle at n = 1 in degrees\n",
+ "n1 = 1.;\n",
+ "n3 = 3.;\n",
+ "\n",
+ "# Calculations\n",
+ "d = w/(2*math.sin(math.radians(theta1)));\t\t\t#in angstorm\n",
+ "theta3 = math.degrees(math.asin(3*math.sin(math.radians(theta1))))\n",
+ "\n",
+ "# Results\n",
+ "print \"Glancing angle for third order diffraction = %f degrees\"%theta3\n",
+ "print \"Interplanar spacing of the crystal (in Angstorm) = %.3f A\"%d\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Glancing angle for third order diffraction = 25.827235 degrees\n",
+ "Interplanar spacing of the crystal (in Angstorm) = 2.837 A\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.9 pageno : 115"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "a = 17.03;\t\t\t#in degrees\n",
+ "w = 0.71;\t\t\t#in angstorm\n",
+ "n = 1.;\n",
+ "\n",
+ "# Calculations\n",
+ "d = n*w/(2*math.sin(math.radians(a)));\t\t\t#interplanar spacing in angstorm\n",
+ "# given that h**2+k**2+l**2 = 8\n",
+ "a = math.sqrt(8)*d; \t\t\t#in angstorm\n",
+ "\n",
+ "# Results\n",
+ "print \"Interplanar Spacing (in angstorm) = %.3f A\"%d\n",
+ "print \"Lattice parameter of the crystal (in Angstorm) = %.2f A\"%a\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Interplanar Spacing (in angstorm) = 1.212 A\n",
+ "Lattice parameter of the crystal (in Angstorm) = 3.43 A\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 5.10 pageno : 117"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "# Variables\n",
+ "w = 0.0708;\t\t\t #wavelength in nm\n",
+ "h = 1.;\n",
+ "k = 0.;\n",
+ "l = 0.;\n",
+ "s = 0.0132; \t\t\t#a common divisor i.e.math.sin**2(theta) = 0.0132\n",
+ "\n",
+ "# Calculations\n",
+ "a = math.sqrt((w**2*(h**2+k**2+l**2))/(4*s));\t\t\t#in nm\n",
+ "a1 = 10.**3*a;\t\t\t #in pm\n",
+ "\n",
+ "# Results\n",
+ "print \"Dimension of unit cell (in Picometer) = %.1f pm\"%a1\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Dimension of unit cell (in Picometer) = 308.1 pm\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch6.ipynb b/Material_Science_In_Engineering/ch6.ipynb
new file mode 100755
index 00000000..86d72983
--- /dev/null
+++ b/Material_Science_In_Engineering/ch6.ipynb
@@ -0,0 +1,341 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 6 : Imperfections, Defects and Dislocations in Solids"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.1 pageno : 125"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "na = 6.023*10**23;\t\t\t#Avagadro's no.\n",
+ "p = 3170.;\t \t\t#density in kg/m**3\n",
+ "\n",
+ "# Calculations\n",
+ "mw = 7.9*10**-2;\t\t\t#molecular weight of CaF2\n",
+ "nl = na*p/mw;\t\t\t #calcium ions/cubic m\n",
+ "ni = 2.*nl;\t\t\t # /cubic m\n",
+ "t = 1300.;\t \t\t#in K\n",
+ "ef = 2.7*1.6*10**-19.;\t\t\t#energy of formation of one frenkel defect\n",
+ "k = 1.38*10**-23;\t\t\t#boltzmann constant\n",
+ "nf = math.sqrt(nl*ni)*math.exp(-ef/(2*k*t));\t\t\t#in /cubic m\n",
+ "\n",
+ "\n",
+ "# Results\n",
+ "print \"No. of Frenkel defect per unit volume of Calcium Fluoride (in /m**3) = %.2e /m**3\"%nf\n",
+ "\n",
+ "# note: Answers may vary because of rouding error."
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "No. of Frenkel defect per unit volume of Calcium Fluoride (in /m**3) = 2.02e+23 /m**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.2 pageno : 127"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "r = 8.314;\t\t\t# J/mol K\n",
+ "t1 = 300.;\t\t\t#in K\n",
+ "t2 = 1000.;\t\t\t#in K\n",
+ "\n",
+ "# Calculations\n",
+ "ent = 168*10**3; \t\t\t#enthalpy of formation of vacancy in J/mol\n",
+ "x1 = math.exp(-ent/(r*t1));\t\t\t#x1 = n/Na\n",
+ "x2 = math.exp(-ent/(r*t2));\t\t\t#x2 = n/Na\n",
+ "rt = x1/x2; \t\t\t#ratio \n",
+ "\n",
+ "# Results\n",
+ "print \"Ratio of no. of vacancies = %.2e\"%rt\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Ratio of no. of vacancies = 3.34e-21\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.3 page no : 132"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Calculations\n",
+ "# for 1/6[121] dislocation\n",
+ "a1 = 1./6 * 1 # x - component\n",
+ "b1 = 1./6 * 2 # y - component\n",
+ "c1 = 1./6 * 1 # z - component\n",
+ "\n",
+ "# for 1/6[211] dislocation\n",
+ "a2 = 1./6 * 2 # x - component\n",
+ "b2 = 1./6 * 1 # y - component\n",
+ "c2 = 1./6 * -1 # z - component\n",
+ "\n",
+ "a = a1 + a2 # x - component\n",
+ "b = b1 + b2 # y - component\n",
+ "c = c1 + c2 # z - component\n",
+ "\n",
+ "# Results\n",
+ "print \"X-component a = %.1f\"%a\n",
+ "print \"Y-component b = %.1f\"%b\n",
+ "print \"Z-component c = %.1f\"%c\n",
+ "\n",
+ "print \"Thus, [abc] = [%.1f %.1f %.1f] = 1/2[110]\"%(a,b,c)\n",
+ "print \"Hence, 1/6[121] + 1/6[211] -> 1/2[110] proved\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "X-component a = 0.5\n",
+ "Y-component b = 0.5\n",
+ "Z-component c = 0.0\n",
+ "Thus, [abc] = [0.5 0.5 0.0] = 1/2[110]\n",
+ "Hence, 1/6[121] + 1/6[211] -> 1/2[110] proved\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.4 pageno : 136"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "v = 0.31; \t\t\t#poisson's ratio\n",
+ "bv = .25*10**-9;\t\t\t#burger's vector in m\n",
+ "ri = 1.1*10**-9;\t\t\t#in m\n",
+ "\n",
+ "# Calculations\n",
+ "r0 = 10.**5*bv;\t \t\t#in m\n",
+ "sm = 45.*10**9;\t\t \t#shear modulous in n/sqm\n",
+ "gb_2 = sm*bv**2;\n",
+ "u_ed = (gb_2/(4*3.14*(1-v)))*math.log(r0/ri);\n",
+ "u_sd = (gb_2/(4*3.14))*math.log(r0/ri);\n",
+ "r = u_ed/u_sd;\t\t\t#ratio\n",
+ "\n",
+ "# Results\n",
+ "print \"Elastic Strain Energy of Edge dislocation (in J/m) = %.2e J/m\"%u_ed\n",
+ "print \"Elastic Strain Energy of Screw dislocation (in J/m) = %.2e J/m\"%u_sd\n",
+ "print \"Ratio of energies of edge dislocation over screw dislocation = %.2f\"%r\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Elastic Strain Energy of Edge dislocation (in J/m) = 3.26e-09 J/m\n",
+ "Elastic Strain Energy of Screw dislocation (in J/m) = 2.25e-09 J/m\n",
+ "Ratio of energies of edge dislocation over screw dislocation = 1.45\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.5 pageno : 139"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "r = 1.7*10**-10;\t\t\t#atomic radius in m\n",
+ "n1 = 10.**-3; \t\t\t#1mm = 10**-3m\n",
+ "\n",
+ "# Calculations\n",
+ "a = 2*r;\t\t \t#in m\n",
+ "n = n1/a;\n",
+ "ed = 2.*10**-6; \t\t\t#edge dislocation in m\n",
+ "ns = ed/a;\n",
+ "nv = n*ns;\n",
+ "\n",
+ "# Results\n",
+ "print \"Total no. of created vacancies = %.2e\"%nv\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Total no. of created vacancies = 1.73e+10\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.6 pageno : 142"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "# Variables\n",
+ "c1 = 3.61 # lattice parameter of copper\n",
+ "c2 = 44 # shear modulus of copper\n",
+ "\n",
+ "# Calculations\n",
+ "b = c1*math.sqrt(1**2 + 1**2 + 0**2)/2.\n",
+ "U = c2*b**2 * 10**9 * 10**-20/2.\n",
+ "\n",
+ "# Results\n",
+ "print \"The magnitude of the Burgers vector : %.3f A\"%b\n",
+ "print \"LIne energy of dislocation U : %.3e J/m\"%U"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The magnitude of the Burgers vector : 2.553 A\n",
+ "LIne energy of dislocation U : 1.434e-09 J/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.7 pageno : 144"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "# Variables\n",
+ "a = 3.84 # lattice constant\n",
+ "h = 1\n",
+ "k = 1\n",
+ "l = 0\n",
+ "\n",
+ "# calculations\n",
+ "b = a*math.sqrt(h**2 + k**2 + l**2)/2.\n",
+ "h1 = b/math.tan(math.radians(1))\n",
+ "h3 = b/math.tan(math.radians(3))\n",
+ "\n",
+ "# Results\n",
+ "print \"b = %.3f A\"%b\n",
+ "print \"Spacing between dislocaitons in a low angle tilt boundary in iridium\"\n",
+ "print \"When,\"\n",
+ "print \"Angle of tilts 1 = %.2f A\"%h1\n",
+ "print \"Angle of tilts 3 = %.2f A\"%h3"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "b = 2.715 A\n",
+ "Spacing between dislocaitons in a low angle tilt boundary in iridium\n",
+ "When,\n",
+ "Angle of tilts 1 = 155.56 A\n",
+ "Angle of tilts 3 = 51.81 A\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch7.ipynb b/Material_Science_In_Engineering/ch7.ipynb
new file mode 100755
index 00000000..b80c4373
--- /dev/null
+++ b/Material_Science_In_Engineering/ch7.ipynb
@@ -0,0 +1,201 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7 : Mechanical Properties"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.3 pageno : 166"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "%pylab inline\n",
+ "\n",
+ "from matplotlib.pyplot import *\n",
+ "\n",
+ "# Variables\n",
+ "a1 = 222.*10**9;\t\t\t#in N\n",
+ "a2 = 168.*10**9;\t\t\t#in N\n",
+ "e1 = 1.90; \t \t\t#in sqm\n",
+ "e2 = 1.42; \t\t \t#in sqm\n",
+ "da = a1-a2; \t\t\t #in N\n",
+ "de = e1-e2;\t \t \t#in sqm\n",
+ "MPa = [14,28,56,84,110,138,193,221,276]\n",
+ "strain = [.1,.21,.44,.67,.88,1.14,1.7,1.95,2.9]\n",
+ "\n",
+ "# Calculations\n",
+ "e_math_tan = da/de;\n",
+ "e_math_tann = e_math_tan*10**-9;\t\t\t#in Gpa\n",
+ "a3 = 180.*10**9; \t\t\t#in N\n",
+ "e3 = 1.46;\t\t\t #in sqm\n",
+ "e_sec = 10**-9*a3/e3;\t\t\t #in Gpa\n",
+ "a = 85*10**6;\n",
+ "e = .68*10**-3;\n",
+ "e_y = 10**-9*a/e;\t\t\t #in Gpa\n",
+ "plot(strain,MPa)\n",
+ "plot(strain,MPa,\"go\")\n",
+ "xlabel(\"STRAIN\")\n",
+ "ylabel(\"STRESS(MPa)\")\n",
+ "suptitle(\"Stress-strain diagram\")\n",
+ "\n",
+ "# Results\n",
+ "print \"Tangent Modulous of elasticity (in Gpa) = %.1f GPa\"%e_math_tann\n",
+ "print \"Secant modulous of elasticity (in Gpa) = %d GPa\"%e_sec\n",
+ "print \"Youngs modulous (in Gpa) = %d GPa\"%e_y\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Populating the interactive namespace from numpy and matplotlib\n",
+ "Tangent Modulous of elasticity (in Gpa) = 112.5 GPa\n",
+ "Secant modulous of elasticity (in Gpa) = 123 GPa\n",
+ "Youngs modulous (in Gpa) = 125 GPa\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f50104c24d0>"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.4 page no : 179"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "%pylab inline\n",
+ "\n",
+ "from matplotlib.pyplot import *\n",
+ "\n",
+ "# Variables\n",
+ "t = [0,1,2,4,8,16,24,32,40,48,60,72] #time\n",
+ "s = [0,.02,.029,.041,.057,.078,.094,.109,.122,.136,.156,.176] # strain E (mm/mm)\n",
+ "\n",
+ "# calculations\n",
+ "min_creep_rate = 12./14 # from curve\n",
+ "creep_intercept = .055 # from curve\n",
+ "\n",
+ "#results\n",
+ "plot(t,s)\n",
+ "plot(t,s,\"go\")\n",
+ "suptitle(\"Strain-Time Curve\")\n",
+ "xlabel(\"Time(minute)\")\n",
+ "ylabel(\"Strain\")\n",
+ "\n",
+ "print \"Minimum Creep rate : %.3f mm/mm\"%min_creep_rate\n",
+ "print \"The creep intercept : %.3f mm/mm\"%creep_intercept\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Populating the interactive namespace from numpy and matplotlib\n",
+ "Minimum Creep rate : 0.857 mm/mm\n",
+ "The creep intercept : 0.055 mm/mm\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stderr",
+ "text": [
+ "WARNING: pylab import has clobbered these variables: ['draw_if_interactive', 'e']\n",
+ "`%pylab --no-import-all` prevents importing * from pylab and numpy\n"
+ ]
+ },
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "iVBORw0KGgoAAAANSUhEUgAAAYsAAAEhCAYAAACOZ4wDAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XtYVWX6//E3KMmklqORBtvCAeQkIgoyVpOYGSpKB53C\najxExs9G0b52GOs7k9bkYcwpgaavOZPaTJGTzqgJMoqGHRRJwXIklQicLUZTmiEqIpv1+2PnDgQF\nkc3ewOd1XVzXXms9a60bynXvtZ5nPbeLYRgGIiIil+Dq6ABERMT5KVmIiEiDlCxERKRBShYiItIg\nJQsREWmQkoWIiDRIyUKc0osvvki/fv0IDQ0lLCyMTz75BIBXXnmFM2fOXPbxnnvuObZu3dqottOn\nTycsLIzg4GCuvvpqwsLCCAsLY+3atcTExPD9999f9vkbcujQIUaPHk3fvn0ZNGgQ999/P//973+b\n/TwiTeWi9yzE2ezcuZPZs2ezfft23NzcOH78OGfPnuWGG26gT58+7N69mx49etTZr7q6GlfX5vv+\nc/jwYcaMGcO+ffua7Zj1qaiooH///rz88svExMQAsH37dq677jqCg4MbdYzm/t1FLqT/u8TplJaW\nct111+Hm5gZA9+7dueGGG0hKSuLo0aMMGzaM4cOHA9ClSxeeeOIJBgwYwM6dO3nhhRcYPHgwISEh\nJCQk2I45efJk1q5dC4C3tzdz585l0KBB9O/fn4MHD9YbR33fo7y9vTl+/DjFxcUEBAQwZcoU/P39\nefDBB9m8eTO33HILffv2td0JnTp1iocffpjIyEgGDhzIhg0b6hzz7bff5uabb7YlCoChQ4cSHBzM\nypUrmTFjhm39mDFj+OCDD+r87gsWLOC+++6ztcvKymLs2LEAbN68mZtvvplBgwZx3333cerUqUb8\nVxCpTclCnM6dd96J2WzG39+fX//617aLY2JiIp6enmRlZdkeKZ0+fZqf//zn7N27l1tuuYXp06eT\nk5PDvn37OHPmDBs3bgTAxcUFFxcX22cPDw/27NnDtGnTeOmllxod2/ljABQWFvLEE09w4MABDh48\nyOrVq/n444956aWXmD9/PmB9nDZ8+HB27drFtm3bePLJJzl9+nStY+7fv59BgwY1eL4Ll2v+7r/5\nzW/YtWuX7RHd6tWrmTBhAt9++y0vvvgiW7duZc+ePQwaNIg//vGPjf59Rc5TshCn07lzZ/bs2cPr\n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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0x7f50125b9350>"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 7.5 pageno : 183"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#Find Stress\n",
+ "\n",
+ "# Variables\n",
+ "n = 3.;\n",
+ "a = 300.;\n",
+ "t = 365. * 24;\t\t\t#in hours\n",
+ "e = 2.*10**6;\t\t\t#kgf/sqcm\n",
+ "ai = 750.;\t \t\t#in kgf/sqcm\n",
+ "\n",
+ "# Calculations\n",
+ "v_cr = 2.8*10**-8;\t\t\t# in cm/cm/hour creep rate\n",
+ "x = math.log(v_cr)-n*math.log(a);\n",
+ "a1 = math.exp(x);\n",
+ "a_tf = round(math.sqrt(1./((1./ai**(n-1))+(a1*e*(n-1)*t))),-2);\n",
+ "\n",
+ "# Results\n",
+ "print \"Stress Remaining (in kgf/sq cm) = %.f kgf/cm**2\"%a_tf\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Stress Remaining (in kgf/sq cm) = 200 kgf/cm**2\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch8.ipynb b/Material_Science_In_Engineering/ch8.ipynb
new file mode 100755
index 00000000..c6220c7a
--- /dev/null
+++ b/Material_Science_In_Engineering/ch8.ipynb
@@ -0,0 +1,275 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 8 : Mechanical Testing"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 8.1 pageno : 195"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "b = 225.;\t\t\t#in mm\n",
+ "h = 10. \t\t\t#in mm\n",
+ "l = 1100.;\t\t\t#in mm\n",
+ "f1 = 250.;\t\t\t#in N\n",
+ "f2 = 350;\t\t\t#in N at which glass breaks\n",
+ "\n",
+ "# Calculations\n",
+ "m = f1*l/4.;\t\t\t#in N-mm\n",
+ "f = f1/2.; \t\t\t#in N\n",
+ "a = (6*m)/(b*h**2);\t\t\t#in N/mm**2\n",
+ "t = (3*f)/(2*b*h);\t\t\t#in N/sqmm\n",
+ "r = f2*l/4;\t\t\t #in N-mm\n",
+ "i = (b*h**3)/12;\t\t\t#in mm**4\n",
+ "y = h/2;\t \t\t#in mm\n",
+ "mr = r*y/i;\t\t \t#in n/sqmm\n",
+ "\n",
+ "# Results\n",
+ "print \"Flexural Strength (in N/sqmm) = %.2f N/mm**2\"%a\n",
+ "print \"Shear Strength (in N/sqmm) = %3f N/mm**2\"%t\n",
+ "print \"Modulous of Rupture (in N/sqmm) = %.2f N/mm**2\"%mr\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Flexural Strength (in N/sqmm) = 18.33 N/mm**2\n",
+ "Shear Strength (in N/sqmm) = 0.083333 N/mm**2\n",
+ "Modulous of Rupture (in N/sqmm) = 25.67 N/mm**2\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 8.2 pageno : 201"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "d = 5.; \t\t\t#in mm\n",
+ "\n",
+ "# Calculations\n",
+ "id = 32.5/10;\t\t\t#indentation diameter in mm\n",
+ "p = 30*d**2;\t\t\t#load for steel specimen in kgf\n",
+ "bhn = p/((3.14*d/2)*(d-math.sqrt(d**2-id**2)));\t\t\t#in kgf/sqmm\n",
+ "\n",
+ "# Results\n",
+ "print \"Load P for steel specimen (in kgf) = %.f kgf\"%p\n",
+ "print \"BRINELL HARDNESS NUMBER of the steel specimen = %.1f\"%bhn\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Load P for steel specimen (in kgf) = 750 kgf\n",
+ "BRINELL HARDNESS NUMBER of the steel specimen = 79.6\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 8.3 pageno : 209"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "l = 0.1;\t\t\t#frictinal and windage losses in kgf-m\n",
+ "dr = 5.9;\t\t\t#dial reading in kgf-m\n",
+ "w = 19.33;\t\t\t#weight of hammer in kgf-m\n",
+ "t = 10.;\t\t\t#in mm\n",
+ "ui = 30.;\t\t\t#in kgf-m\n",
+ "a = 160.;\t\t\t#angle in degrees\n",
+ "r = 0.8;\t\t\t#swing radius in m\n",
+ "\n",
+ "\n",
+ "# Calculations\n",
+ "u = dr-l;\t \t\t#in kgf-m\n",
+ "d = t/5;\t\t \t#depth of V-notch in mm\n",
+ "te = t-d;\t\t \t #effective thickness in mm\n",
+ "ve = 75.*10*te; \t\t\t#effective volume in cu. mm\n",
+ "vem = ve*10.**-9;\t\t\t#in cu. m\n",
+ "mr = u/vem;\t \t\t#in kgf/sqm\n",
+ "ae = t*te; \t\t\t#effective area of cross section in sqmm\n",
+ "aem = ae*10**-6;\t\t\t#in sqm\n",
+ "is_ = u/aem;\t\t \t#in kg/m\n",
+ "uf = ui-u;\t\t\t#in kgf-m\n",
+ "hf = uf/w;\t\t\t#in m\n",
+ "B = math.degrees(math.acos(1-(uf/(w*r))))\n",
+ "\n",
+ "# Results\n",
+ "print \"Rupture Energy (in kgf-m) = %.1f kgf-m\"%u\n",
+ "print \"Modulous Of Rupture (in kgf/sqm) = %.1e kgf/m**2\"%mr\n",
+ "print \"Notch Imapct Strength (in kg/m) = %.2e kgm\"%is_\n",
+ "print \"Height risen by Hammer (in m) = %.2f m\"%hf\n",
+ "print \"Angle after Breaking the specimen (in degress) = %.1f degrees\"%(B)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rupture Energy (in kgf-m) = 5.8 kgf-m\n",
+ "Modulous Of Rupture (in kgf/sqm) = 9.7e+05 kgf/m**2\n",
+ "Notch Imapct Strength (in kg/m) = 7.25e+04 kgm\n",
+ "Height risen by Hammer (in m) = 1.25 m\n",
+ "Angle after Breaking the specimen (in degress) = 124.4 degrees\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 8.4 pageno : 211"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "a_m = 70.; \t \t\t#mean stress in Mpa\n",
+ "a_r = 210.;\t \t \t#stress amplitude in Mpa\n",
+ "\n",
+ "# Calculations\n",
+ "a_max = ((2*a_m)+a_r)/2;\t\t\t#maximum stress in MPa\n",
+ "a_min = 2*a_m-a_max;\t \t\t#Minimum stress in MPa\n",
+ "s = a_min/a_max;\t\t\t #stress ratio\n",
+ "sr = a_max-a_min; \t\t\t#stress range in MPa\n",
+ "\n",
+ "# Results\n",
+ "print \"Maximum Stress Level (in MPa) = \",a_max\n",
+ "print \"Minimum Stress Level (in MPa) = \",a_min\n",
+ "print \"Stress Ratio = \",s\n",
+ "print \"Stress Range (in MPa) = \",sr\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Maximum Stress Level (in MPa) = 175.0\n",
+ "Minimum Stress Level (in MPa) = -35.0\n",
+ "Stress Ratio = -0.2\n",
+ "Stress Range (in MPa) = 210.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 8.5 pageno : 212"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "p_min = 20.;\t\t\t#in kN\n",
+ "p_max = 50.;\t\t\t#in kN\n",
+ "l = 500.; \t\t\t#in mm\n",
+ "d = 60.;\t \t\t#in mm\n",
+ "a_u = 650.;\t\t \t#in MPa\n",
+ "a_y = 520.;\t\t #in MPa\n",
+ "fos = 1.8;\t\t\t #factor of safety\n",
+ "\n",
+ "# Calculations\n",
+ "m_max = p_max*l/4;\t\t\t#maximum bending moment in kN mm\n",
+ "m_min = p_min*l/4;\t\t\t#minimum bending moment in kN mm\n",
+ "m_m = (m_max+m_min)/2;\t\t\t#mean bending moment in kN mm\n",
+ "m_a = (m_max-m_min)/2;\t\t\t#alternating bending moment in kN mm\n",
+ "z = 3.14*d**3/32;\n",
+ "a_m = (m_m/z)*1000;\t\t\t#mean bending stress in MPa\n",
+ "a_a = (m_a/z)*1000;\t\t\t#alternating bending stress in MPa\n",
+ "a_e1 = a_a/((1/fos)-(a_m/a_u)**2*fos);\t\t\t#in MPa\n",
+ "a_e2 = a_a/((1/fos)-(a_m/a_u));\t\t\t#in MPa\n",
+ "a_e3 = a_a/((1/fos)-(a_m/a_y));\t\t\t#in MPa\n",
+ "\n",
+ "# Results\n",
+ "print \"ENDURANCE STRESS FROM Gerbers Parabolic Function (in MPa) = %.2f MPa\"%a_e1\n",
+ "print \"ENDURANCE STRESS FROM Goodman Straight Line Relation (in MPa) = %.2f MPa\"%a_e2\n",
+ "print \"ENDURANCE STRESS FROM Soderberg Straight Line Relation (in MPa) = %.2f MPa\"%a_e3\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "ENDURANCE STRESS FROM Gerbers Parabolic Function (in MPa) = 236.52 MPa\n",
+ "ENDURANCE STRESS FROM Goodman Straight Line Relation (in MPa) = 371.71 MPa\n",
+ "ENDURANCE STRESS FROM Soderberg Straight Line Relation (in MPa) = 557.78 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/ch9.ipynb b/Material_Science_In_Engineering/ch9.ipynb
new file mode 100755
index 00000000..078d890f
--- /dev/null
+++ b/Material_Science_In_Engineering/ch9.ipynb
@@ -0,0 +1,105 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 9 : Microstructural Examination and Non-Destructive Testing"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 9.1 pageno : 228"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import math \n",
+ "\n",
+ "# Variables\n",
+ "n = 2.**(12-1);\t\t\t#astm no. = 12\n",
+ "\t\n",
+ "# Calculations\n",
+ "#1 sq inch = 645mm**2\n",
+ "d = 1./math.sqrt((n/645)*10**4);\t\t\t#grain diameter in mm\n",
+ "\n",
+ "# Results\n",
+ "print \"grain diameter for ASTM no. 12 (in mm) = %.4f mm\"%d\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "grain diameter for ASTM no. 12 (in mm) = 0.0056 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 9.2 pageno : 228"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Variables\n",
+ "n = 2**(5-1);\t\t\t#astm no. = 5 in grain/inch**2\n",
+ "\n",
+ "# Calculations\n",
+ "#Lineal and Areal magnifications are related as *100 Lineal = *10000 Areal\n",
+ "x = n/(.01*.01);\t\t\t#in grain/inch**2 at 1 x.\n",
+ "a = 1./x; \t\t\t#average area in inch**2\n",
+ "a1 = 2.54*2.54*a;\t\t\t#average area in cm.**2\n",
+ "l = math.sqrt(x);\t\t\t#grains/inch of length\n",
+ "s = (1./l)**2; \t\t\t#surface area in sq inch\n",
+ "s6 = 6.*s;\t\t \t#surface area of 6 surfaces of cubic grain in sq inch\n",
+ "b = 0.5*s6*(l**3);\t\t\t#total boundary area in sq inch\n",
+ "b1 = b/(2.54);\t\t\t #total boundary area in sq cm\n",
+ "\n",
+ "# Results\n",
+ "print \"Average area of one grain (in sq cm) = %.2e cm**2\"%a1\n",
+ "print \"Boundary Area per cubic centimetre of steel (in sq cm) = %.1f cm**2\"%b1\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Average area of one grain (in sq cm) = 4.03e-05 cm**2\n",
+ "Boundary Area per cubic centimetre of steel (in sq cm) = 472.4 cm**2\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science_In_Engineering/screenshots/chapter_6.png b/Material_Science_In_Engineering/screenshots/chapter_6.png
new file mode 100755
index 00000000..d389bb8b
--- /dev/null
+++ b/Material_Science_In_Engineering/screenshots/chapter_6.png
Binary files differ
diff --git a/Material_Science_In_Engineering/screenshots/chapter_9.png b/Material_Science_In_Engineering/screenshots/chapter_9.png
new file mode 100755
index 00000000..2847b91a
--- /dev/null
+++ b/Material_Science_In_Engineering/screenshots/chapter_9.png
Binary files differ
diff --git a/Material_Science_In_Engineering/screenshots/strain_time_curve.png b/Material_Science_In_Engineering/screenshots/strain_time_curve.png
new file mode 100755
index 00000000..86aa9c2b
--- /dev/null
+++ b/Material_Science_In_Engineering/screenshots/strain_time_curve.png
Binary files differ
diff --git a/Material_Science_In_Engineering/screenshots/strain_vs_stress.png b/Material_Science_In_Engineering/screenshots/strain_vs_stress.png
new file mode 100755
index 00000000..7cffb197
--- /dev/null
+++ b/Material_Science_In_Engineering/screenshots/strain_vs_stress.png
Binary files differ
diff --git a/Material_Science_In_Engineering/screenshots/stress_strain_diagram.png b/Material_Science_In_Engineering/screenshots/stress_strain_diagram.png
new file mode 100755
index 00000000..80b2c343
--- /dev/null
+++ b/Material_Science_In_Engineering/screenshots/stress_strain_diagram.png
Binary files differ
diff --git a/Material_Science_In_Engineering/screenshots/stress_time_curve.png b/Material_Science_In_Engineering/screenshots/stress_time_curve.png
new file mode 100755
index 00000000..80d136e5
--- /dev/null
+++ b/Material_Science_In_Engineering/screenshots/stress_time_curve.png
Binary files differ
diff --git a/Mechanics_of_Materials/APPENDIX_A.ipynb b/Mechanics_of_Materials/APPENDIX_A.ipynb
new file mode 100755
index 00000000..b7a1f860
--- /dev/null
+++ b/Mechanics_of_Materials/APPENDIX_A.ipynb
@@ -0,0 +1,366 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "APPENDIX A:Geomatric Properties of an Area"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example A.1:Page no. 786"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "#From fig. A-4(a) The given dimensions are\n",
+ "l1=8 #inch\n",
+ "l2=3 #inch\n",
+ "l3=10 #inch\n",
+ "l4=5 #inch\n",
+ "l5=11.5 #inch\n",
+ "l6=2 #inch\n",
+ "\n",
+ "#calculation\n",
+ "ymean1=((l4*l3*l6)+(l5*l2*l1))/((l3*l6)+(l2*l1))\n",
+ "#From fig. A-4(b)\n",
+ "l1_=-8 #inch\n",
+ "l2_=3 #inch\n",
+ "l3_=10 #inch\n",
+ "l4_=-1.5 #\n",
+ "l5_=2 #inch\n",
+ "ymean2=((l4_*l2_*-l1_)+(l1_*l3_*l5_))/((l2_*-l1_)+(l3_*l5_))\n",
+ "d=ymean1-ymean2 #Depth of beam\n",
+ "#From fig. A-4(c)\n",
+ "la=8 #inch\n",
+ "lb=6.5 #inch\n",
+ "lc=10 #inch\n",
+ "ld=13 #\n",
+ "le=5 #inch\n",
+ "lf=3 #inch\n",
+ "ymean3=((lb*ld*la)-2*(le*lc*lf))/((ld*la-2*(lc*lf)))\n",
+ "print\"Location of centroid in fig (a)is\",ymean1,\"inch\" \n",
+ "print\"Location of centroid in fig (b)is\",ymean2,\"inch\"\n",
+ "print\"Location of centroid in fig (c)is\",ymean3,\"inch\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Location of centroid in fig (a)is 8.54545454545 inch\n",
+ "Location of centroid in fig (b)is -4.45454545455 inch\n",
+ "Location of centroid in fig (c)is 8.54545454545 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example A.2:Page no 789"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "#Dimension in the fig.A-7 a\n",
+ "#The given dimensions are\n",
+ "l1=8 #inch\n",
+ "l2=8.55 #inch\n",
+ "l3=10 #inch\n",
+ "l4=5 #inch\n",
+ "l5=1.5 #inch\n",
+ "l6=2 #inch\n",
+ "l7=4.45 #inch\n",
+ "\n",
+ "#Calculation\n",
+ "Ix1=(1/12.0*l6*l3**3)\n",
+ "A1=l6*l3\n",
+ "dy1=(l2-l4)\n",
+ "Ix2=(1/12.0*l1*(l5+l5)**3)\n",
+ "A2=l1*(l5+l5)\n",
+ "dy2=(l7-l5)\n",
+ "I1=(Ix1+A1*dy1**2)+(Ix2+A2*dy2**2)\n",
+ "print I1\n",
+ "\n",
+ "#Dimension in the fig.A-7 b\n",
+ "l1_= 13 #inch\n",
+ "l2_= 3 #inch\n",
+ "l3_=10 #inch\n",
+ "l4_=5 #inch\n",
+ "l5_= 2 #inch\n",
+ "l6_= 6.5 #inch\n",
+ "l7_=4.45 #inch\n",
+ "l8_=8.55 #inch\n",
+ "l9_=6.5 #inch\n",
+ "\n",
+ "Ix1_=(1/12.0*l1_*(l2_+l5+l2_)**3)\n",
+ "A1_=l1_*(l2_+l5+l2_)\n",
+ "dy1_=(l8_-l9_)\n",
+ "Ix2_=(1/12.0*l2_*(l3_)**3)\n",
+ "A2_=l2_*(l3_)\n",
+ "dy2_=(l7_-l4_)\n",
+ "I2=(Ix1+A1*dy1**2)+(Ix2+A2*dy2**2)\n",
+ "\n",
+ "#Result\n",
+ "print\"Moment of inertia for fig a is\",round(I1,0),\"inch**4\"\n",
+ "print\"Moment of inertia for fig a is\",round(I2,0),\"inch**4\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "645.576666667\n",
+ "645.576666667\n",
+ "Moment of inertia for fig a is 646.0 inch**4\n",
+ "Moment of inertia for fig a is 646.0 inch**4\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example A.3 Page no: 790"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "#From fig A-8(a)\n",
+ "#The given dimensions are\n",
+ "l1=100 #mm\n",
+ "l2=400 #mm\n",
+ "l3=600 #mm\n",
+ "dx=250 #mm\n",
+ "dy=200 #mm\n",
+ "\n",
+ "#Calculation\n",
+ "#Rectangle A:\n",
+ "Ix1=(1/12.0*l1*(l2-l1)**3)\n",
+ "Ady=(l1*(l2-l1)*dy**2)\n",
+ "Ix=(Ix1+Ady)\n",
+ "Iy1=(1/12.0*(l2-l1)*l1**3)\n",
+ "Adx=(l1*(l2-l1)*dx**2)\n",
+ "Iy=(Iy1+Adx)\n",
+ "\n",
+ "#Rectangle B:\n",
+ "Ix_=(1/12.0*l3*l1**3)\n",
+ "Iy_=(1/12.0*l1*l3**3)\n",
+ "\n",
+ "#Rectangle C\n",
+ "Ix3=(1/12.0*l1*(l2-l1)**3)\n",
+ "Ady_=(l1*(l2-l1)*200**2)\n",
+ "Ix3_=(Ix3+Ady_)\n",
+ "Iy3=(1/12.0*(l2-l1)*l1**3)\n",
+ "Adx_=(l1*(l2-l1)*dx**2)\n",
+ "Iy3_=(Iy3+Adx)\n",
+ "\n",
+ "#Total Moment of inertia\n",
+ "Itx=(Ix+Ix_+Ix3_)\n",
+ "Ity=(Iy+Iy_+Iy3_)\n",
+ "\n",
+ "#Result\n",
+ "print\"Moment of inertia across x is \",Itx,\"mm**4\"\n",
+ "print\"Moment of inertia across y is \",Ity,\"mm**4\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Moment of inertia across x is 2900000000.0 mm**4\n",
+ "Moment of inertia across y is 5600000000.0 mm**4\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example A.4 :page no. 793"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "#From fig A-12 a\n",
+ "#The given length of sides are\n",
+ "l1=100 #mm\n",
+ "l2=300 #mm\n",
+ "dy=200 #mm\n",
+ "dx=250 #mm\n",
+ "\n",
+ "#Calculation\n",
+ "#Rectangle A\n",
+ "Ixy1=0\n",
+ "A1=l1*l2\n",
+ "Ixy1=Ixy1+A1*(-dx)*dy\n",
+ "\n",
+ "#Rectangle B\n",
+ "Ixy2=0\n",
+ "A2=0\n",
+ "Ixy2=Ixy2+A2*dx*dy\n",
+ "\n",
+ "#Rectangle D\n",
+ "Ixy3=0\n",
+ "A3=l1*l2\n",
+ "Ixy3=Ixy3+A3*(dx)*(-dy)\n",
+ "Ixy=Ixy1+Ixy2+Ixy3\n",
+ "\n",
+ "#Result\n",
+ "print\"The moment of inertia is\",Ixy,\"mm**4\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The moment of inertia is -3000000000 mm**4\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example A.5 :page no. 796"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "#From fig A-15 and From Example A.3 and A.4\n",
+ "Ix=2.9*10**9 #moment of inertia along x\n",
+ "Iy=5.6*10**9 #moment of inertia along y\n",
+ "Ixy=-3*10**9 #moment of inertia along xy\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "#Using eq. A11\n",
+ "import math\n",
+ "thetaP1=1/2.0*math.atan(-Ixy*2/(Ix-Iy))*100\n",
+ "#As shown in fig. A-15\n",
+ "thetaP2=-32.9 #degree\n",
+ "Imax=(Ix+Iy)/2.0+math.sqrt((((Ix-Iy)/2.0)**2)+Ixy**2)\n",
+ "Imin=(Ix+Iy)/2.0-math.sqrt((((Ix-Iy)/2.0)**2)+Ixy**2)\n",
+ "\n",
+ "#Result\n",
+ "print\"Maximum moment of inertia is\",Imax,\"mm**4\"\n",
+ "print\"Minimum moment of inertia is\",Imin,\"mm**4\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Maximum moment of inertia is 7539756829.92 mm**4\n",
+ "Minimum moment of inertia is 960243170.081 mm**4\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example A.6 :page no. 799"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#given\n",
+ "#From fig. A-17 a and Example A.3 and A.4\n",
+ "Ix=2.9*10**9 #mm**4, moment of inertia\n",
+ "Iy=5.6*10**9\n",
+ "Ixy=-3*10**9\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "d=(Ix+Iy)/2.0 #distance of centre of circle \n",
+ "#from fig A-17 b\n",
+ "BC=1.35\n",
+ "AB=3\n",
+ "CA=math.sqrt(BC**2+AB**2)\n",
+ "\n",
+ "#the circle intersect the I axis at point (7.54,0) and (0.960,0) hence\n",
+ "Imax=7.54*(10**9) #mm**4\n",
+ "Imin=0.960*(10**9) #mm**4\n",
+ "thetap1=1/2.0*(180-(math.atan(AB/BC))*180/math.pi)\n",
+ "\n",
+ "#Result\n",
+ "print\"The maximum moment of inertia is\",Imax,\"mm**4\"\n",
+ "print\"The minimum moment of inertia is\",Imin,\"mm**4\"\n",
+ "print\"The angle is \",round(thetap1,1)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum moment of inertia is 7540000000.0 mm**4\n",
+ "The minimum moment of inertia is 960000000.0 mm**4\n",
+ "The angle is 57.1\n"
+ ]
+ }
+ ],
+ "prompt_number": 33
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter1.ipynb b/Mechanics_of_Materials/Chapter1.ipynb
new file mode 100755
index 00000000..4446458c
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter1.ipynb
@@ -0,0 +1,843 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 1:Equilibrium of a deformable body"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.1 Page no 11"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "w_varying = 270.0 #N/m, torque\n",
+ "l_crossection = 9.0 #m , length\n",
+ "l_cb = 6.0 #m length\n",
+ "l_ac = 2.0 #m length\n",
+ "\n",
+ "#Calculation\n",
+ "w_c = (w_varying/l_crossection) * l_cb #By proportion, load at C is found.\n",
+ "f_resultant_c = 0.5* w_c *l_cb \n",
+ "#Balancing forces in the x direction:\n",
+ "n_c = 0\n",
+ "#Balncing forces in the y direction:\n",
+ "v_c = f_resultant_c\n",
+ "# Balncing the moments about C:\n",
+ "m_c = - (f_resultant_c*l_ac)\n",
+ "\n",
+ "#Results\n",
+ "print\"The resultant force at C is \",f_resultant_c,\"N\"\n",
+ "print\"The horizontal force at C is \",n_c,\"N\"\n",
+ "print\"The vertical force at C is \",v_c,\"N\"\n",
+ "print\"The moment about C is \",m_c,\"Nm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The resultant force at C is 540.0 N\n",
+ "The horizontal force at C is 0 N\n",
+ "The vertical force at C is 540.0 N\n",
+ "The moment about C is -1080.0 Nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.2 Page no 12"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "f_d = 225 #N\n",
+ "w_uniform = 800 # N/m\n",
+ "l_ac = 0.200 #m\n",
+ "l_cb = 0.05+0.1 #m\n",
+ "l_bd = 0.100 #m\n",
+ "l_bearing = 0.05 #m\n",
+ "f_resultant = w_uniform*l_cb #120N\n",
+ "l_f_resultant_b = (l_cb/2)+ l_bearing #0.125m\n",
+ "l = l_ac + l_cb + l_bearing + l_bd \n",
+ "\n",
+ "\n",
+ "#Calculation\n",
+ "m_b = 0 # Net moment about B is zero for equilibrium \n",
+ "a_y = -((f_d*l_bd) - (f_resultant*l_f_resultant_b))/ (l - l_bd) # finding the reaction force at A\n",
+ "\n",
+ "# Refer to the free body diagram in Fig.1-5c.\n",
+ "f_c = 40 #N\n",
+ "#Balancing forces in the x direction\n",
+ "n_c = 0\n",
+ "#Balncing forces in the y direction\n",
+ "v_c = a_y - f_c #-18.75N - 40N-Vc = 0\n",
+ "# Balncing the moments about C\n",
+ "m_c = ((a_y * (l_ac + 0.05)) - f_c*(0.025) ) # Mc+40N(0.025m)+ 18.75N(0.250m) = 0\n",
+ "\n",
+ "\n",
+ "# Result\n",
+ "print'The horizontal force at C =',n_c,\"N\"\n",
+ "print'The vertical force at C =',v_c,\"N\"\n",
+ "print'The moment about C =',round(m_c,2),\"NM\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The horizontal force at C = 0 N\n",
+ "The vertical force at C = -58.75 N\n",
+ "The moment about C = -5.69 NM\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.3 Page no 13"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Given\n",
+ "l_ac = 2 #m.,length\n",
+ "l_cb = 1 #m.\n",
+ "l_ad = 1.5 #m.\n",
+ "#r_a = 0.125 #m.\n",
+ "#r_d = 0.125 #m.\n",
+ "W = 500 # N, force\n",
+ "g=9.81\n",
+ "\n",
+ "#Calculation\n",
+ "#Balancing forces in the x direction\n",
+ "n_c = (W*g*(l_ac+l_cb))/(3*2/5.0) # N\n",
+ "#Balncing forces in the y direction\n",
+ "v_c = n_c*(4/5.0) #N\n",
+ "# Balncing the moments about C\n",
+ "m_c = n_c*(3/5.0)-(W*g)\n",
+ "\n",
+ "\n",
+ "# Result\n",
+ "print'The horizontal force at C = ',-v_c/1000,\"KN\"\n",
+ "print'The vertical force at C = ',-m_c/1000,\"KN\"\n",
+ "print'The moment about C = ',-m_c/1000,\"KNm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The horizontal force at C = -9.81 KN\n",
+ "The vertical force at C = -2.4525 KN\n",
+ "The moment about C = -2.4525 KNm\n"
+ ]
+ }
+ ],
+ "prompt_number": 21
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.4 Page no 14"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "# Given\n",
+ "l_ag = 2 #Length of AG is 1m.\n",
+ "l_gd = 1 #Length of GD is 1m.\n",
+ "l_de = 3 #Length of DE is 1m.\n",
+ "f_a = 1500 #Force at A is 1500N.\n",
+ "l_ec = 1.5 #Length of EC is 1m.\n",
+ "l = l_ag +l_gd +l_de\n",
+ "w_uniform_varying = 600 #Nm.\n",
+ "f_ba = 7750 #N\n",
+ "f_bc = 6200 #N\n",
+ "f_bd = 4650 #N\n",
+ "\n",
+ "#Calculation\n",
+ "w_resultant = 0.5*l_de*w_uniform_varying\n",
+ "# calling point of action of resultant as P\n",
+ "l_ep = (2/3.0)*l_de \n",
+ "l_ap = l - l_ep \n",
+ "\n",
+ "#Free Body Diagram Using the result for Fba, the left section AG of the beam is shown in Fig 1-7d.\n",
+ "# Equations of equilibrium\n",
+ "#Balancing forces in the x direction\n",
+ "n_g = -f_ba * (4/5.0) # N\n",
+ "#Balncing forces in the y direction\n",
+ "v_g = -f_a + f_ba*(3/5.0) #N\n",
+ "\n",
+ "# Balncing the moments about C\n",
+ "m_g = (f_ba * (3/5.0)*l_ag) - (f_a * l_ag) #Nm\n",
+ "\n",
+ "# Result\n",
+ "print'The horizontal force at G = ',n_g,\"lb\"\n",
+ "print'The vertical force at G = ',v_g,\"lb\"\n",
+ "print'The moment about G = ',m_g,\"lb-ft\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The horizontal force at G = -6200.0 lb\n",
+ "The vertical force at G = 3150.0 lb\n",
+ "The moment about G = 6300.0 lb-ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 31
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.5 Page no 15"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Given\n",
+ "f_a = 50 #N, force\n",
+ "m_a = 70 # Moment at A in Nm\n",
+ "l_ad = 1.25 #Length of AD in m.\n",
+ "l_bd = 0.5 #Length of BD in m.\n",
+ "l_cb = 0.75 #Length of BC in m.\n",
+ "w_l = 2 #Kg/m\n",
+ "g = 9.81 #N/kg- acceleration due to gravity\n",
+ "\n",
+ "#Free Body Diagram \n",
+ "import math\n",
+ "w_bd = w_l*l_bd*g #in N. \n",
+ "w_ad = w_l*l_ad*g\n",
+ "# Equations of Equilibrium\n",
+ "#Balancing forces in the x, y and z direction\n",
+ "f_b_x = 0 # N\n",
+ "f_b_y = 0 #N\n",
+ "f_b_z = g + w_ad + f_a #N\n",
+ "# Balancing Moments in the x,y and z direction\n",
+ "m_b_x = - m_a + (f_a*l_bd) + (w_ad*l_bd) + (l_bd/2.0)*g #Nm\n",
+ "m_b_y = - (w_ad*(l_ad/2.0)) - (f_a*l_ad) #Nm\n",
+ "m_b_z = 0 #Nm\n",
+ "v_b_shear = sqrt(f_b_z **2 + 0) #Shear Force in N\n",
+ "t_b = - m_b_y #Torsional Moment in Nm\n",
+ "m_b = math.sqrt(m_b_x **2+ 0) # Bending moment in Nm\n",
+ "\n",
+ "# Result\n",
+ "print' The weight of segment BD =',w_bd,\"N\"\n",
+ "print' The weight of segment AD =',w_ad,\"N\"\n",
+ "print' The force at B in the Z direction =',f_b_z,\"N\"\n",
+ "print' The moment about B in the X direction =',m_b_x,\"Nm\"\n",
+ "print' The moment about G in the Y direction =',m_b_y,\"Nm\"\n",
+ "print' The Shear Force at B =',v_b_shear,\"N\"\n",
+ "print' The Torsional Moment at B =',t_b,\"Nm\"\n",
+ "print' The Bending Moment at B =',m_b,\"Nm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The weight of segment BD = 9.81 N\n",
+ " The weight of segment AD = 24.525 N\n",
+ " The force at B in the Z direction = 84.335 N\n",
+ " The moment about B in the X direction = -30.285 Nm\n",
+ " The moment about G in the Y direction = -77.828125 Nm\n",
+ " The Shear Force at B = 84.335 N\n",
+ " The Torsional Moment at B = 77.828125 Nm\n",
+ " The Bending Moment at B = 30.285 Nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 34
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.6 Page no 28"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "netf_b = 18*(10 **3) #N Net force at B.\n",
+ "netf_c = 8*(10**3) #N Net force at C.\n",
+ "f_a = 12 *(10**3) #N Force at A.\n",
+ "f_d = 22* (10**3) #N Force at D.\n",
+ "w = 35.0 #mm Width.\n",
+ "t = 10.0 #mm Thickness.\n",
+ "\n",
+ "#calculations\n",
+ "p_bc = netf_b + f_a #N Net force in region BC.\n",
+ "a = w*t #m**2 The area of the cross section.\n",
+ "avg_normal_stress = p_bc/a #Average Normal Stress.\n",
+ "\n",
+ "# Result\n",
+ "print'The Average Normal Stress in the bar when subjected to load = ',round(avg_normal_stress,1),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Average Normal Stress in the bar when subjected to load = 85.7 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 37
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.7 Page no: 29"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given :\n",
+ "m_lamp = 80 #Mass of lamp in Kg.\n",
+ "d_ab = 10 # Diameter of AB in mm.\n",
+ "d_bc = 8 # Diameter of BC in mm.\n",
+ "ab_h = 60 *(math.pi/180.0) # In degrees - Angle made by AB with the horizontal.\n",
+ "w = m_lamp*9.81 #N\n",
+ "a_bc = (math.pi/4.0)*(d_bc**2) #m**2 Area of cross section of rod BC\n",
+ "a_ab = (math.pi/4.0)*(d_ab**2) #m**2 Area of cross section of rod AB\n",
+ "\n",
+ "\n",
+ "#calculation\n",
+ "import math # Equations of equilibrium: Solving equilibrium equations simultaneously ,\n",
+ "f_bc=395\n",
+ "f_ab=f_bc*(4/5.0)/(math.cos(60*3.14/180.0))\n",
+ "avg_normal_stress_a = f_ab / a_ab #Mpa Average Normal Stress in AB\n",
+ "avg_normal_stress_c = f_bc/ a_bc# Mpa Average Normal Stress in BC\n",
+ "\n",
+ "# Displaying results:\n",
+ "print\"The Average Normal Stress in AB when subjected to load = MPa\",round(avg_normal_stress_a,2),\"MPa\"\n",
+ "print\"The Average Normal Stress in BC when subjected to load = MPa\",round(avg_normal_stress_c,2),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Average Normal Stress in AB when subjected to load = MPa 8.04 MPa\n",
+ "The Average Normal Stress in BC when subjected to load = MPa 7.86 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.8 Page no 30"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "#Given\n",
+ "h_above_ab = 2.75 #ft , height\n",
+ "h_below_ab = 0.2 \n",
+ "d_a = 0.75 #diameter ft \n",
+ "d_b = 0.1 \n",
+ "sp_w = 490 \n",
+ "\n",
+ "# Equation of Equilibrium\n",
+ "import math\n",
+ "a = math.pi* (d_a**2) # Area of cross section in m**2\n",
+ "p = sp_w * h_above_ab * a\n",
+ "avg_comp_stress = p/a # The average compressive stress in kN/m**2\n",
+ "\n",
+ "#Display\n",
+ "print'The average compressive stress = ',avg_comp_stress,\"lb/ft**2\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The average compressive stress = 1347.5 lb/ft**2\n"
+ ]
+ }
+ ],
+ "prompt_number": 42
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.9 Page no 31"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Determine Distance of force from AB\n",
+ "\n",
+ "#Given \n",
+ "f = 3000 #N Force acting at distance x from AB.\n",
+ "l_ac = 200 #Length of AC in mm.\n",
+ "a_ab = 400 #Cross sectional area of AB in mm**2.\n",
+ "a_c = 650 # area of C in mm**2.\n",
+ "\n",
+ "#Calculation\n",
+ "#Equations are\n",
+ "#Fab+Fc=3000\n",
+ "#-3000*x+Fc*200=0\n",
+ "Fc=1857\n",
+ "Fab=3000-Fc\n",
+ "x=Fc*200/3000\n",
+ "\n",
+ "#Display\n",
+ "print'Distance of force from AB = ',x,\"mm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Distance of force from AB = 123 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 44
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.10 Page no 35"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "af =30\t\t #kN Axial force along centroidal axis\n",
+ "t1 = 2 \t\t#m thickness of square cross section\n",
+ "t2=4\n",
+ "#Internal loading\n",
+ "import math\n",
+ "Fb=af*t1/((t1+t2)*(4/5.0))\n",
+ "Ax=Fb*(3/5.0)\n",
+ "Ay=af-(Fb*(4/5.0))\n",
+ "Fa=math.sqrt(Ax**2+Ay**2)\n",
+ "Va=Fa/t1\n",
+ "Vb=Fb\n",
+ "Aa=(math.pi/4.0)*((t1/100.0)**2)\n",
+ "Ab=(math.pi/4.0)*(((t1+t2)/200.0)**2)\n",
+ "Ta=Va/Aa\n",
+ "Tb=Vb/Ab\n",
+ "\n",
+ "#Display\n",
+ "print'The Average Normal Stress for section b-b = ',round(Ta/1000,0),\"Mpa\"\n",
+ "print'The Average Shear Stress for section b-b = ',round(Tb/1000,1),\"Mpa\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Average Normal Stress for section b-b = 34.0 Mpa\n",
+ "The Average Shear Stress for section b-b = 17.7 Mpa\n"
+ ]
+ }
+ ],
+ "prompt_number": 68
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.11 Page no 36"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given \n",
+ "f = 6 #kN\n",
+ "d_rod = 0.1 #Diameter of steel rod in mm.\n",
+ "l_bc = 0.125 #Length of side bc in mm.\n",
+ "l_ac=0.15\n",
+ "#Calculation\n",
+ "F=f/2.0\n",
+ "#Appling Force balance\n",
+ "Va=F\n",
+ "Vb=F\n",
+ "a_rod=d_rod*l_ac\n",
+ "a_strut=l_bc*l_ac\n",
+ "#Average shear stress\n",
+ "avg_shear_rod = F/a_rod #for rod in Mpa\n",
+ "avg_shear_strut = (f/2)/a_strut #for strut\n",
+ "\n",
+ "#Display\n",
+ "print'The average shear stress for the rod = ',avg_shear_rod,\"Kpa\"\n",
+ "print'The average shear stress for the strut = ',avg_shear_strut,\"Kpa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The average shear stress for the rod = 200.0 Kpa\n",
+ "The average shear stress for the strut = 160.0 Kpa\n"
+ ]
+ }
+ ],
+ "prompt_number": 74
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.12 Page no 37"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "#Given\n",
+ "l_bc = 1 \t#Length of BC in inc.\n",
+ "l_db = 3 \t# in.\n",
+ "l_ed = 2 \t# in.\n",
+ "l_ab = 1.5 \t# in.\n",
+ "f_diagonal = 600 \t#lb\n",
+ "\n",
+ "#Calculation\n",
+ "a1 = l_bc*l_ab \t\t#Area of face AB in mm**2.\n",
+ "a2 = l_ab*l_ed \t#mm**2.\n",
+ "a3 = l_db*l_ab \t# mm**2.\n",
+ "#Balancing forces along the x- direction.\n",
+ "f_ab = f_diagonal*(3/5.0) #Force on segment AB in N\n",
+ "V = f_ab \n",
+ "\n",
+ "#Balancing forces along the Y direction.\n",
+ "f_bc = f_diagonal*(4/5.0) #Force on segment BC in N.\n",
+ "avg_comp_ab = f_ab/a1 # N/mm**2\n",
+ "avg_comp_bc = f_bc/a2 # N/mm**2\n",
+ "avg_shear = f_ab/a3 # N/mm**2\n",
+ "\n",
+ "#Display\n",
+ "print a1\n",
+ "print'The average compressive stress along AB = ',avg_comp_ab,\"psi\"\n",
+ "print'The average compressive stress along BC = ',avg_comp_bc,\"psi\"\n",
+ "print'The average shear stress along EDB = ',avg_shear,\"psi\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "1.5\n",
+ "The average compressive stress along AB = 240.0 psi\n",
+ "The average compressive stress along BC = 160.0 psi\n",
+ "The average shear stress along EDB = 80.0 psi\n"
+ ]
+ }
+ ],
+ "prompt_number": 81
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.13 Page no 49"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "#Given\n",
+ "shear_allow = 3 \t#ksi, stress\n",
+ "tensile_allow = 5 \t#ksi, stress\n",
+ "l_C1 = 3\t\t #in\n",
+ "l_C2 = 2 \t\t #in\n",
+ "l_ac=8 #inch\n",
+ "Tauallow=8 #ksi\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "Fab=(tensile_allow*(3/5.0)*(l_C1+l_C2)+shear_allow*l_C1)/(l_ac)\n",
+ "Cx=-shear_allow+tensile_allow*(4/5.0)\n",
+ "Cy=tensile_allow*(3/5.0)+l_C1\n",
+ "Fc=math.sqrt(Cx**2+Cy**2)\n",
+ "A=(Fc/2.0)/Tauallow\n",
+ "d=2*math.sqrt(A/math.pi)\n",
+ "\n",
+ "#Result\n",
+ "print\" The diameter of rod is = \",round(d,3),\"inch\"\n",
+ "print\"Wse a pin of diameter =\",3/4.0,\"inch\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The diameter of rod is = 0.696 inch\n",
+ "Wse a pin of diameter = 0.75 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 87
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.14 Page no 50"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "P= 20.0\t\t #kN, force\n",
+ "d_hole = 40.0 \t #mm\n",
+ "normal_allow = 60.0 #MPa, pressure\n",
+ "shear_allow = 35.0 #MPa, pressure\n",
+ "\n",
+ "\n",
+ "#Diameter of Rod\n",
+ "import math\n",
+ "area1 = (P*10**3)/(normal_allow*10**6) #Area in m**2\n",
+ "d = ((math.sqrt((4*area1)/math.pi))*1000) # Area = (math.pi\\4)d**2\n",
+ "#Thickness of disc\n",
+ "V = P\n",
+ "area2 = (V*10**3)/(shear_allow*10**6) #Area in m**2\n",
+ "thickness = (area2*10**6)/(d_hole*math.pi)# A = pi*d*t\n",
+ " \n",
+ "\n",
+ "#Result\n",
+ "print\"The diameter of rode = \",round(d,2),\"mm\"\n",
+ "print\"The thickness of disc = \",round(thickness,2),\"mm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The diameter of rode = 20.6 mm\n",
+ "The thickness of disc = 4.55 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 93
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.15 Page no 51"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "bearing_allow = 75.0\t #MPa, pressure\n",
+ "tensile_allow = 55.0 \t#MPa, pressure\n",
+ "d_shaft = 60.0\t\t #mm\n",
+ "r_shaft = d_shaft/2.0 \t#mm\n",
+ "area_shaft = math.pi*(r_shaft**2) #Area = pi*r**2\n",
+ "d_collar = 80 #mm\n",
+ "thick_collar = 20 #mm\n",
+ "\n",
+ "#Calculation\n",
+ "r_collar = d_collar/2.0 #mm\n",
+ "area_collar = math.pi*(r_collar**2) #Area = pi*r**2\n",
+ "#Normal Stress\n",
+ "P1 = (tensile_allow* area_shaft)/3.0 #Tensile stress = 3P/A.\n",
+ "P1_kN = P1/1000.0\n",
+ "#Bearing Stress\n",
+ "bearing_area = area_collar-area_shaft \n",
+ "P2 = (bearing_allow*bearing_area)/3 \n",
+ "P2_kN= P2/1000.0\n",
+ "\n",
+ "#Result\n",
+ "print\"The load calculated by Normal Stress \",round(P1_kN,1),\"kN\"\n",
+ "print\"The load calculated by Bearing Stress \",round(P2_kN,0),\"kN\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The load calculated by Normal Stress 51.8 kN\n",
+ "The load calculated by Bearing Stress 55.0 kN\n"
+ ]
+ }
+ ],
+ "prompt_number": 96
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 1.16 Page no 52"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "d_ac= 20.0 #mm\n",
+ "area_al = 1800.0 #mm**2, area\n",
+ "d_pins = 18.0 #mm\n",
+ "st_fail_stress = 680.0 #MPa, pressure\n",
+ "al_fail_stress = 70.0 #MPa, pressure\n",
+ "shear_fail_pin = 900.0 #MPa\n",
+ "fos = 2.0 #Factor of safety\n",
+ "l_ab = 2.0 #m\n",
+ "l_ap = 0.75 #m\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "area_pins = math.pi*(d_pins/2.0)**2\n",
+ "area_ac = math.pi*(d_ac/2.0)**2 #Area = (math.pi\\4)d**2\n",
+ "st_allow= st_fail_stress /fos #MPa\n",
+ "al_allow = al_fail_stress/fos #MPa\n",
+ "pin_allow_shear = shear_fail_pin/fos #MPa\n",
+ "\n",
+ "#Rod AC\n",
+ "f_ac = (st_allow*area_ac)/1000.0\n",
+ "P1 = ((f_ac*l_ab)/(l_ab-l_ap))\n",
+ "\n",
+ "#Block B\n",
+ "f_b =(al_allow*area_al)/1000.0\n",
+ "P2 = ((f_b*l_ab)/l_ap)\n",
+ "\n",
+ "#Pin A or C\n",
+ "V = (pin_allow_shear*area_pins)/1000.0\n",
+ "P3 = (V*l_ab)/(l_ab-l_ap)\n",
+ "\n",
+ "#Result\n",
+ "print\"The load allowed on rod AC \",round(P1,0),\"kN\"\n",
+ "print\"The load allowed on block B \",P2,\"kN\"\n",
+ "print\"The load allowed on pins A or C \",round(P3,0),\"kN\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The load allowed on rod AC 171.0 kN\n",
+ "The load allowed on block B 168.0 kN\n",
+ "The load allowed on pins A or C 183.0 kN\n"
+ ]
+ }
+ ],
+ "prompt_number": 102
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter10.ipynb b/Mechanics_of_Materials/Chapter10.ipynb
new file mode 100755
index 00000000..8492cf8c
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter10.ipynb
@@ -0,0 +1,674 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 10:Strain Transformation"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.1 Page No 491"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "ep_x = 500 #Normal Strain\n",
+ "ep_y = -300 #Normal Strain\n",
+ "gamma_xy = 200 #Shear Strain\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "theta = 30*(math.pi/180)\n",
+ "theta = theta*-1\n",
+ "ep_x_new = ((ep_x+ep_y)/2) + ((ep_x - ep_y)/2)*math.cos(2*theta) + (gamma_xy/2)*math.sin(2*theta)\n",
+ "gamma_xy_new = -((ep_x - ep_y)/2)*math.sin(2*theta) + (gamma_xy/2)*math.cos(2*theta)\n",
+ "gamma_xy_new = 2*gamma_xy_new\n",
+ "phi = 60*(math.pi/180)\n",
+ "ep_y_new = (ep_x+ep_y)/2 + ((ep_x - ep_y)/2)*math.cos(2*phi) + (gamma_xy/2)*math.sin(2*phi)\n",
+ "\n",
+ "#Display\n",
+ "print'The equivalent strain acting on the element oriented at 30 degrees clockwise = ',round(ep_y_new,1),\"*10**-6\"\n",
+ "print'The equivalent shear strain acting on the element = ',round(gamma_xy_new,0),\"10**-6\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The equivalent strain acting on the element in the y plain oriented at 30 degrees clockwise = -13.4 *10**-6\n",
+ "The equivalent shear strain acting on the element = 793.0 10**-6\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.2 Page No 492"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "ep_x = -350.0 #(*10**-6) Normal Strain\n",
+ "ep_y = 200.0 #*(10**-6) Normal Strain\n",
+ "gamma_xy = 80.0 #*(10**-6) Shear Strain\n",
+ "\n",
+ "#Calculation\n",
+ "#Orientation of the element\n",
+ "import math\n",
+ "tan_thetap = (gamma_xy)/(ep_x - ep_y)\n",
+ "thetap1 =math.atan(tan_thetap)*180/3.14+180\n",
+ "thetap=thetap1/2.0\n",
+ "\n",
+ "#Principal Strains\n",
+ "k = (ep_x + ep_y)/2\n",
+ "l = (ep_x - ep_y)/2\n",
+ "tou = gamma_xy/2\n",
+ "R = math.sqrt( (l)**2 + tou**2)\n",
+ "ep1 = R + k\n",
+ "ep2 = k -R \n",
+ "ep_x1 = k + l*math.cos(2*-4.14*3.14/180.0)+ tou*math.sin(2*-4.14*3.14/180.0)\n",
+ "\n",
+ "#Display\n",
+ "print'The orientation of the element in the positive counterclockwise direction = ',round(thetap,1),\"degree\"\n",
+ "print'The principal strains are ',round(ep1,0),\"*10**-6 and \",round(ep2,0),\"*10**-6\"\n",
+ "print'The principal strain in the new x direction is ',round(ep_x1,0),\"*10**-6\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The orientation of the element in the positive counterclockwise direction = 85.9 degree\n",
+ "The principal strains are 203.0 *10**-6 and -353.0 *10**-6\n",
+ "The principal strain in the new x direction is -353.0 *10**-6\n"
+ ]
+ }
+ ],
+ "prompt_number": 39
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.3 Page No 493"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "ep_x = -350 #(*10**-6) Normal Strain\n",
+ "ep_y = 200.0 #*(10**-6) Normal Strain\n",
+ "gamma_xy = 80.0 #*(10**-6) Shear Strain\n",
+ "\n",
+ "#Orientation of the element\n",
+ "import math\n",
+ "tan_thetap = -(ep_x - ep_y)/(gamma_xy)\n",
+ "thetap1 = math.atan(tan_thetap)*180/3.14+180\n",
+ "thetap=thetap1/2.0\n",
+ "\n",
+ "#Maximum in-plane shear strain\n",
+ "l = (ep_x - ep_y)/2\n",
+ "tou = gamma_xy/2\n",
+ "R = sqrt( l**2 + tou**2)\n",
+ "max_inplane_strain = 2*R\n",
+ "gamma_xy_1 = (-l*math.sin(2*thetap1)+ tou*math.cos(2*thetap1))*2\n",
+ "strain_avg = (ep_x + ep_y)/2\n",
+ "thetap1 = thetap1*(180/math.pi)\n",
+ "thetap2 = (90 + thetap1)\n",
+ "\n",
+ "#Display\n",
+ "print'The orientation of the element =',round(thetap,0,),\"degre\"\n",
+ "print'The maximum in-plane shear strain = ',round(max_inplane_strain,0),\"*10**-6\"\n",
+ "print'The average strain =',strain_avg,\"*10**-6\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The orientation of the element = 131.0 degre\n",
+ "The maximum in-plane shear strain = 556.0 *10**-6\n",
+ "The average strain = -75.0 *10**-6\n"
+ ]
+ }
+ ],
+ "prompt_number": 42
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.4 Page No 496"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "ep_x = 250.0 #(*10**-6) Normal Strain\n",
+ "ep_y = -150.0 #*(10**-6) Normal Strain\n",
+ "gamma_xy = 120.0 #*(10**-6) Shear Strain\n",
+ "\n",
+ "#Calculation\n",
+ "#Construction of the circle\n",
+ "import math\n",
+ "strain_avg = (ep_x + ep_y)/2\n",
+ "tou = gamma_xy/2\n",
+ "R = sqrt((ep_x - strain_avg)**2 + (tou**2))\n",
+ "#Principal Strains\n",
+ "ep1 = (strain_avg + R)\n",
+ "ep2 = (strain_avg - R)\n",
+ "tan_thetap = (tou)/(ep_x - strain_avg)\n",
+ "thetap1 = (math.atan(tan_thetap))/2.0\n",
+ "thetap1 = thetap1*(180/math.pi)\n",
+ "\n",
+ "#Display\n",
+ "print'The principal strains are = ',round(ep1,0),\"*10**-6 and \",round(ep2,0),\"*10**-6\"\n",
+ "print'The orientation of the element = ',round(thetap1,2),\"degree\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The principal strains are = 259.0 *10**-6 and -159.0 *10**-6\n",
+ "The orientation of the element = 8.35 degree\n"
+ ]
+ }
+ ],
+ "prompt_number": 52
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.5 Page No 497"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "ep_x = 250 #(*10**-6) Normal Strain\n",
+ "ep_y = -150 #*(10**-6) Normal Strain\n",
+ "gamma_xy = 120 #*(10**-6) Shear Strain\n",
+ "\n",
+ "#calculation\n",
+ "#Orientation of the element\n",
+ "thetas = 90 - 2*8.35\n",
+ "thetas1 = thetas/2\n",
+ "#Maximum in-plane shear strain\n",
+ "l = (ep_x - ep_y)/2\n",
+ "tou = gamma_xy/2\n",
+ "R = sqrt( l**2 + tou**2)\n",
+ "max_inplane_strain = 2*R\n",
+ "strain_avg = (ep_x + ep_y)/2\n",
+ "\n",
+ "#Display\n",
+ "print'The orientation of the element ',thetas1,\"degree\"\n",
+ "print'The maximum in-plane shear strain',round(max_inplane_strain,0),\"*10**-6\"\n",
+ "print'The average strain = ',strain_avg,\"*10**-6\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The orientation of the element 36.65 degree\n",
+ "The maximum in-plane shear strain 418.0 *10**-6\n",
+ "The average strain = 50 *10**-6\n"
+ ]
+ }
+ ],
+ "prompt_number": 56
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.6 Page No 498"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "ep_x = -300 #(*10**-6) Normal Strain\n",
+ "ep_y = -100 #*(10**-6) Normal Strain\n",
+ "gamma_xy = 100 #*(10**-6) Shear Strain\n",
+ "theta = 20 #degrees\n",
+ "\n",
+ "#Calculation\n",
+ "#Construction of the circle\n",
+ "import math\n",
+ "strain_avg = (ep_x+ ep_y)/2.0\n",
+ "tou = gamma_xy/2.0\n",
+ "R = sqrt((-ep_x + strain_avg)**2 + tou**2)\n",
+ "#Strains on Inclined Element\n",
+ "theta1 = 2*theta\n",
+ "phi = math.atan((tou)/(-ep_x +strain_avg))\n",
+ "phi = phi*(180/math.pi)\n",
+ "psi = theta1 - phi\n",
+ "psi = psi*(math.pi/180)\n",
+ "ep_x1 = -(-strain_avg+ R*math.cos(psi))\n",
+ "gamma_xy1 = -(R*math.sin(psi))*2\n",
+ "ep_y1 = -(-strain_avg - R*math.cos(psi))\n",
+ "\n",
+ "#Display\n",
+ "print'The normal strain in the new x direction = ',round(ep_x1,0),\"10**-6\"\n",
+ "print'The normal strain in the new y direction = ',round(ep_y1,1),\"10**-6\"\n",
+ "print'The shear strain in the new xy direction = ',round(gamma_xy1,0),\"10**-6\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The normal strain in the new x direction = -309.0 10**-6\n",
+ "The normal strain in the new y direction = -91.3 10**-6\n",
+ "The shear strain in the new xy direction = -52.0 10**-6\n"
+ ]
+ }
+ ],
+ "prompt_number": 62
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.7 Page No 503"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "ep_x = -400 #(*10**-6) Normal Strain\n",
+ "ep_y = 200 #*(10**-6) Normal Strain\n",
+ "gamma_xy = 150 #*(10**-6) Shear Strain\n",
+ "\n",
+ "#calculation\n",
+ "#Maximum in-plane Shear Strain\n",
+ "strain_avg = (ep_x+ ep_y)/2\n",
+ "tou = gamma_xy/2\n",
+ "R = sqrt((-ep_x + strain_avg)**2 + tou**2) \n",
+ "strain_max = strain_avg + R\n",
+ "strain_min = strain_avg - R\n",
+ "max_shear_strain = strain_max - strain_min\n",
+ "#Absolute Maximum Shear Strain\n",
+ "abs_max_shear = max_shear_strain\n",
+ "\n",
+ "#Display\n",
+ "print'The maximum in-plane shear strain= ',round(max_shear_strain,0),\"10**-6\"\n",
+ "print'The absolute maximum shear strain ',round(abs_max_shear,0),\"10**-6\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum in-plane shear strain= 618.0 10**-6\n",
+ "The absolute maximum shear strain 618.0 10**-6\n"
+ ]
+ }
+ ],
+ "prompt_number": 66
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.8 Page No 505"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "ep_a = 60.0 #(*10**-6) Normal Strain\n",
+ "ep_b = 135.0 #*(10**-6) Normal Strain\n",
+ "ep_c = 264.0 #*(10**-6) Normal Strain\n",
+ "theta_a = 0\n",
+ "theta_b = 60*(math.pi/180)\n",
+ "theta_c = 120*(math.pi/180)\n",
+ "\n",
+ "#Calculation\n",
+ "a1 = (math.cos(theta_a))**2\n",
+ "b1 = (math.sin(theta_a))**2\n",
+ "c1 = math.cos(theta_a)*math.sin(theta_a)\n",
+ "a2 = (math.cos(theta_b))**2\n",
+ "b2 = (math.sin(theta_b))**2\n",
+ "c2 = math.cos(theta_b)*math.sin(theta_b)\n",
+ "a3 = (math.cos(theta_c))**2\n",
+ "b3 = (math.sin(theta_c))**2\n",
+ "c3 = math.cos(theta_c)*math.sin(theta_c)\n",
+ "\n",
+ "ep_x = 60 #*10**-6\n",
+ "ep_y = 246 #*10**-6\n",
+ "gamma_xy = -149 #*10**-6\n",
+ "strain_avg = (ep_x + ep_y )/2.0\n",
+ "tou = gamma_xy/2.0\n",
+ "R = sqrt((-ep_x + strain_avg)**2 + tou**2) \n",
+ "ep1 = strain_avg + R\n",
+ "ep2 = strain_avg - R\n",
+ "tan_thetap =math.atan(-tou/(-ep_x + strain_avg))\n",
+ "thetap = tan_thetap/2.0\n",
+ "thetap2 = thetap*(180/math.pi)\n",
+ "\n",
+ "#Display\n",
+ "print'The maximum in-plane principal strains are',round(ep1,0),\"*10**-6 and \",round(ep2,1),\"*10**-6\"\n",
+ "print'The angle of orientation ',round(thetap2,1),\"degree\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum in-plane principal strains are 272.0 *10**-6 and 33.8 *10**-6\n",
+ "The angle of orientation 19.3 degree\n"
+ ]
+ }
+ ],
+ "prompt_number": 76
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.9 Page No 512"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "#Given\n",
+ "E_st = 200*10**9 #GPa\n",
+ "nu_st = 0.3 #Poisson's ratio\n",
+ "ep1 = 272 *10**-6\n",
+ "ep2 = 33.8 *10**-6\n",
+ "\n",
+ "#Solving for the equations\n",
+ "#6.78*10**-6=sigma2-0.3sigma1\n",
+ "#54.4*10**-6=sigma1-0.3sigma2\n",
+ "sigma2= 25.4\n",
+ "\n",
+ "#Display\n",
+ "print'The principal stresses at point A are ',sigma1,\"MPa and \" ,sigma2,\"Mpa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The principal stresses at point A are 62 MPa and 25.4 Mpa\n"
+ ]
+ }
+ ],
+ "prompt_number": 79
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.10 Page No 514"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "a = 300.0 #mm\n",
+ "b = 50.0 #mm\n",
+ "t = 20.0 #mm\n",
+ "E_cu = 120*10**3 #MPa\n",
+ "nu_cu = 0.34 # Poisson's ratio\n",
+ "#By inspection\n",
+ "sigma_x = 800 #MPa\n",
+ "sigma_y = -500.0 #MPa\n",
+ "tou_xy = 0\n",
+ "sigma_z = 0\n",
+ "\n",
+ "#calculation\n",
+ "#By Hooke's Law\n",
+ "ep_x = (sigma_x/E_cu) - (nu_cu/E_cu)*(sigma_y + sigma_z)\n",
+ "ep_y = (sigma_y/E_cu) - (nu_cu/E_cu)*(sigma_x + sigma_z)\n",
+ "ep_z = (sigma_z/E_cu) - (nu_cu/E_cu)*(sigma_y + sigma_x)\n",
+ "#New lengths\n",
+ "a_dash = a + ep_x*a\n",
+ "b_dash = b + ep_y*b\n",
+ "t_dash = t + ep_z*t\n",
+ "\n",
+ "#Display\n",
+ "print'The new length = ',round(a_dash,1),\"mm\"\n",
+ "print 'The new nas base is',round(b_dash,1),\"mm\"\n",
+ "print'The new thickness = ',round(t_dash,2),\"mm\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The new length = 300.4 mm\n",
+ "The new nas base is 49.7 mm\n",
+ "The new thickness = 19.98 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 88
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.11 Page No 515"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "p = 20 #psi, pressure\n",
+ "E = 600 #psi, pressure\n",
+ "nu = 0.45\n",
+ "#the given dimension are:\n",
+ "a = 4 #in\n",
+ "b = 2 # in\n",
+ "c = 3 #in\n",
+ "\n",
+ "#Calculation\n",
+ "#Dilatation\n",
+ "sigma_x = -p\n",
+ "sigma_y = -p\n",
+ "sigma_z = -p\n",
+ "e = ((1-2*nu)/E)*(sigma_x + sigma_y + sigma_z)\n",
+ "#Change in Length\n",
+ "ep = (sigma_x - nu*(sigma_y + sigma_z))/E\n",
+ "del_a = ep*a\n",
+ "del_b = ep*b\n",
+ "del_c = ep*c\n",
+ "\n",
+ "#Display\n",
+ "print'The change in length a = ',round(del_a,4),\"inch\"\n",
+ "print'The change in length b = ',round(del_b,4),\"inch\"\n",
+ "print'The change in length c = ',round(del_c,4),\"inch\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The change in length a = -0.0133 inch\n",
+ "The change in length b = -0.0067 inch\n",
+ "The change in length c = -0.01 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 92
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.12 Page No 526"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "#Given\n",
+ "T = 400 #lbft, tourqe\n",
+ "sigma_ult = 20000 #psi\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "x = T*12/(math.pi/2)\n",
+ "r=(x/sigma_ult)**(1/3.0)\n",
+ "\n",
+ "#Display\n",
+ "print'The smallest radius of the solid cast iron shaft ',round(r,3),\"inch\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The smallest radius of the solid cast iron shaft 0.535 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 99
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "EXample 10.13 Page No 527"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "sigmay=36 #ksi, stress\n",
+ "r = 0.5 #cm\n",
+ "sigma_yield = 360 #MPa, yield stress\n",
+ "T = 3.25 #kN/cm\n",
+ "A= (math.pi*r**2)\n",
+ "P = 15 #kN\n",
+ "J = (math.pi/2.0)*(r**4)\n",
+ "sigma_y_sqr = sigma_yield**2\n",
+ "\n",
+ "#Calculations\n",
+ "sigma_x = -(P/A)\n",
+ "sigma_y = 0\n",
+ "tou_xy = (T*r)/J\n",
+ "k = (sigma_x + sigma_y)/2.0\n",
+ "R = sqrt(k**2 + (tou_xy**2))\n",
+ "sigma1 = k+R\n",
+ "sigma2 = k-R\n",
+ "l = sigma1 - sigma2\n",
+ "#Maximum Shear Stress Theory\n",
+ "x=sigma1-sigma2\n",
+ "y=sigma1**2+sigma2**2-sigma1*sigma2\n",
+ "if x>sigmay:\n",
+ " print\"Shear failure of material will occur\"\n",
+ "else:\n",
+ " print\"not\"\n",
+ "if y<sigmay**2:\n",
+ " print\"Failure will not occur\"\n",
+ "else:\n",
+ " print\"it will occur\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Shear failure of material will occur\n",
+ "Failure will not occur\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter11.ipynb b/Mechanics_of_Materials/Chapter11.ipynb
new file mode 100755
index 00000000..fc68b993
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter11.ipynb
@@ -0,0 +1,267 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11:Design of Beams and Shafts"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.1 Page No 544"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "sigma_allow = 24 #ksi, stress\n",
+ "tou_allow = 14.5 #ksi, allowable stress\n",
+ "\n",
+ "#Shear and Moment Diagrams\n",
+ "V_max = 30 #kip, \n",
+ "M_max = 120 #kip, bending moment\n",
+ "\n",
+ "#Bending Stress\n",
+ "S_reqd = (M_max*(10**3))/sigma_allow\n",
+ "#Shear Stress\n",
+ "d = 17.9 #in\n",
+ "tw = 0.315 #inch\n",
+ "tou_avg = (V_max)/(d*tw)\n",
+ "\n",
+ "if tou_avg<14.5:\n",
+ " print\"Use a W18*14\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Use a W18*14\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.2 Page No 545"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "udl = 0.5 #kN/m\n",
+ "h_by_a = 1.5 \n",
+ "sigma_allow = 9 #MPa, allowable bending stress\n",
+ "tou_allow = 0.6 #MPa, allowable shear stress\n",
+ "\n",
+ "#calculation\n",
+ "#Shear and Moment Diagrams\n",
+ "import math\n",
+ "V_max =20 #kNm\n",
+ "M_max =10.67 #kNm\n",
+ "#Bending Stress\n",
+ "S_reqd = (M_max)/(sigma_allow*1000)\n",
+ "c = h_by_a/2.0\n",
+ "a_cube = (S_reqd*c*12)/(1.5**3) #S_reqd = I/c\n",
+ "a = a_cube**(1/3.0)\n",
+ "A = a*h_by_a*a\n",
+ "tou_max = (1.5*V_max)/(A*1000)\n",
+ "if tou_max>tou_allow:\n",
+ " a_sqr = (3/2.0)*(V_max)/(h_by_a*tou_allow*1000)\n",
+ " a =math.sqrt(a_sqr)\n",
+ "else:\n",
+ " print\"not\"\n",
+ "\n",
+ "#Display\n",
+ "print\"The smallest width for the laminated wooden beam = \", round(a,2),\"m\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The smallest width for the laminated wooden beam = 0.18 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.3 Page No 546"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "l = 200/1000.0 #m, length\n",
+ "t = 30/1000.0 #m\n",
+ "sigma_allow = 9 #MPa, shear stress\n",
+ "tou_allow = 0.6 #MPa, bending stress\n",
+ "V_nail = 1.50 #kN\n",
+ "l_bc = 2 #m\n",
+ "l_cd = 2 #m\n",
+ "\n",
+ "#Shear and Moment Diagrams\n",
+ "V_max = 20 #kN\n",
+ "M_max =10.67 #kNm\n",
+ "#Bending Stress\n",
+ "y1 = l/2.0\n",
+ "A1 = l*t\n",
+ "y2 = l+(t/2.0)\n",
+ "A2 = t*l\n",
+ "y_dash = (y1*A1 + y2*A2)/(A1 + A2)\n",
+ "\n",
+ "I1 = (t*l**3)/12.0 + (t*l*(y_dash - y1)**2)\n",
+ "I2 = (l*t**3)/12.0 + (t*l*(y2 - y_dash)**2)\n",
+ "I =I1 + I2\n",
+ "\n",
+ "c = y_dash\n",
+ "sigma = (M_max*c)/(I)\n",
+ "flag1 = 0\n",
+ "sigma_allow = sigma_allow*1000 #kPa\n",
+ "\n",
+ "if(sigma<sigma_allow):\n",
+ " flag1 = 1\n",
+ "else:\n",
+ " print\"otherwisw not\"\n",
+ "\n",
+ "#Shear Stress\n",
+ "y3 = y_dash/2.0\n",
+ "A3 = y_dash*t\n",
+ "Q = y3*A3\n",
+ "\n",
+ "tou = (V_max*Q)/(I*t)\n",
+ "tou_allow = tou_allow*1000 #kPa\n",
+ "flag2 =0\n",
+ "\n",
+ "if(tou<tou_allow):\n",
+ " flag2 = 1\n",
+ "else:\n",
+ " print\"flag2 is not equal to one\"\n",
+ "\n",
+ "#Nail Spacing\n",
+ "y4a = (l+t-y_dash)\n",
+ "y4 = y4a - (t/2.0)\n",
+ "A4 = l*t\n",
+ "Q4 = y4*A4\n",
+ "V_bc = 1.5 #kN\n",
+ "V_cd = 1 #kN\n",
+ "\n",
+ "q_bc = (V_bc*Q4)/I\n",
+ "q_cd = (V_cd*Q4)/I\n",
+ "\n",
+ "s_bc = (V_nail)/(q_bc)\n",
+ "s_cd = (V_nail)/(q_cd)\n",
+ "\n",
+ "chosen_bc = 150 #mm\n",
+ "chosen_cd = 250 #mm\n",
+ "\n",
+ "#Result\n",
+ "print'The design is safe in bending and shear.'\n",
+ "print'The calculated nail spacing BC ',round(s_bc,2),\"m\"\n",
+ "print'The calculated nail spacing CD ',round(s_cd,2),\"m\"\n",
+ "print'The chosen nail spacing BC ',chosen_bc,\"mm\"\n",
+ "print'The chosen nail spacing CD ',chosen_cd,\"mm\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "otherwisw not\n",
+ "flag2 is not equal to one\n",
+ "The design is safe in bending and shear.\n",
+ "The calculated nail spacing BC 0.17 m\n",
+ "The calculated nail spacing CD 0.26 m\n",
+ "The chosen nail spacing BC 150 mm\n",
+ "The chosen nail spacing CD 250 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 11.6 Page No 560"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Find smallest allowable diameter\n",
+ "\n",
+ "#Given\n",
+ "tou_allow = 50*10**6 #MPa, shear stress\n",
+ "T = 7.5 #Nm, torque\n",
+ "R_ah = 150 #N, horizontal force\n",
+ "R_av = 475 #N\n",
+ "l_ac = 0.25 #m\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "mc = R_ah*l_ac\n",
+ "m = R_av*l_ac\n",
+ "M_c = sqrt(m**2 + mc**2)\n",
+ "k = sqrt(M_c**2 + T**2)\n",
+ "c1 = (2*k)/(math.pi*tou_allow)\n",
+ "c = c1**(1/3.0)\n",
+ "d = 2*c*1000\n",
+ "\n",
+ "#Display\n",
+ "print\"The smallest allowable diameter of the shaft =\",round(d,1),\"mm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The smallest allowable diameter of the shaft = 23.3 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter12.ipynb b/Mechanics_of_Materials/Chapter12.ipynb
new file mode 100755
index 00000000..ac815672
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter12.ipynb
@@ -0,0 +1,437 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 12:Deflection of Beams and Shaft"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.10 Page No 610"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "E = 200*10**6 #kN/m**2, stress\n",
+ "I = 17*10**-6 #mm**4, moment of inertia\n",
+ "\n",
+ "#The given dimension are\n",
+ "l_ac = 2 #m\n",
+ "l_cF = 4 #m\n",
+ "l_Fb = 2 #m\n",
+ "l_cb = 6 #m\n",
+ "l_aF = 6 #m\n",
+ "l_ab = 8 #m\n",
+ "F = 16 #kN\n",
+ "R_b = (F*l_cb)/l_ab\n",
+ "R_a = F - R_b\n",
+ "\n",
+ "#Calculation\n",
+ "mc = R_a*l_ac\n",
+ "mf = R_b*l_Fb\n",
+ "theta_ca = (0.5*l_ac*mc)/(E*I)\n",
+ "A1 = 0.5*l_aF*mf\n",
+ "t1_ba = (l_Fb + l_aF/3)*(A1)\n",
+ "A2 = 0.5*l_Fb*mf\n",
+ "t2_ba = (l_Fb*2*A2)/3\n",
+ "t_ba = (t1_ba+t2_ba)/(E*I)\n",
+ "theta_c = (t_ba/l_ab)-(theta_ca)\n",
+ "\n",
+ "#Display\n",
+ "print\"The slope at point C of the steel beam = \",round(theta_c,4),\"rad\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The slope at point C of the steel beam = 0.0094 rad\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.12 Page No 612"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "E = 29*10**3 #ksi, stress\n",
+ "I = 125 #inch**4, moment of inertia\n",
+ "l_ab = 12 #ft, dimension\n",
+ "l_bc =12 #ft\n",
+ "l_ac = l_ab+l_bc\n",
+ "R_a = -5 #kip, normal force\n",
+ "R_b = 10 #kip\n",
+ "R_c = 5 #kip\n",
+ "\n",
+ "#calculation\n",
+ "mb = R_a*l_ab\n",
+ "#Moment-Area Theorem\n",
+ "t_ca = (l_ab*0.5*l_ac*mb)/(E*I)\n",
+ "t_ba = ((1/3.0)*l_ab*0.5*l_ab*mb)/(E*I)\n",
+ "del_c = (t_ca - 2*t_ba)*1728\n",
+ "\n",
+ "#Display\n",
+ "print\"The displacement at point C for the steel overhanging beam =\",round(del_c,2),\"inch\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The displacement at point C for the steel overhanging beam = -2.75 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.13 Page No 620"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "w = 2 #kN/m, load\n",
+ "L = 8 #m, length\n",
+ "P = 8 #kN\n",
+ "\n",
+ "#Calculations\n",
+ "EI_theta_A1 = (3*w*L**3)/(128) #ThetaA1 = (3wL**3)/(128EI)\n",
+ "EI_nu_C1 = (5*w*L**4)/(768) #NuC1 = (5wL**4)/(768EI)\n",
+ "EI_theta_A2 = (P*L**2)/(16) #theta_A2 = (PL**2)/(16EI)\n",
+ "EI_nu_C2 = (P*L**3)/(48) #nu_C2 = (PL**3)/(48EI)\n",
+ "theta_A = EI_theta_A1 + EI_theta_A2\n",
+ "nu_C = EI_nu_C1 + EI_nu_C2\n",
+ "\n",
+ "#Display\n",
+ "print'The slope at A in terms of EI =',theta_A,\"kNm**2\"\n",
+ "print'The displacement at point C in terms of EI =',nu_C,\"kNm**2\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The slope at A in terms of EI = 56 kNm**2\n",
+ "The displacement at point C in terms of EI = 138 kNm**2\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.14 Page No 621"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "w = 5 #kN/m, force per unit length\n",
+ "l_ab = 4 #m, length\n",
+ "l_bc = 2 #m\n",
+ "P = 10 #kN, load\n",
+ "M = w*l_ab #kNm\n",
+ "\n",
+ "#Calculations\n",
+ "EI_theta_B1 = (w*l_ab**3)/(24) #ThetaB1 = (wL**3)/(24EI)\n",
+ "EI_nu_C1 = l_bc*EI_theta_B1\n",
+ "\n",
+ "EI_theta_B2 = (M*l_ab)/(3) #\n",
+ "EI_nu_C2 = l_bc*EI_theta_B2\n",
+ "EI_nu_C3 = (P*l_bc**3)/(3) #nuC3 = (PL**3)/(24EI)\n",
+ "nu_C = -EI_nu_C1 + EI_nu_C2 + EI_nu_C3\n",
+ "\n",
+ "#Display\n",
+ "print'The displacement at end C of the overhanging beam, in terms of EI = ',nu_C,\"kNm**3\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The displacement at end C of the overhanging beam, in terms of EI = 52 kNm**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.15 Page No 622"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "w = 4 #kN/m, force per unit length\n",
+ "l = 6 #m, length\n",
+ "l_bc =2 #m\n",
+ "\n",
+ "#Calculations\n",
+ "EI_theta_B = (w*l**3)/(24.0) #ThetaB1 = (wL**3)/(24EI)\n",
+ "EI_nu_B = (w*l**4)/(30.0) #nuB = (wL**4)/(30EI)\n",
+ "nu_C = EI_nu_B + (EI_theta_B*l_bc)\n",
+ "\n",
+ "#Display\n",
+ "print'The displacement at end C of the cantilever beam, in terms of EI = ',nu_C,\"kNm**3\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The displacement at end C of the cantilever beam, in terms of EI = 244.8 kNm**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.16 Page No 623"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "k = 15.0 #kip/ft, force per unit length\n",
+ "F = 3 #kip, force\n",
+ "E = 29*10**3 #ksi, stress\n",
+ "l_ab = 3.0 #ft, length\n",
+ "l_ac = 1 #ft\n",
+ "l_cb = 2 #ft\n",
+ "I = 12 #in**4, moment of inertia\n",
+ "R_a = (F*l_cb)/(l_ab)\n",
+ "R_b = F-R_a\n",
+ "\n",
+ "#Calculations\n",
+ "mu_a = (R_a)/k\n",
+ "mu_b = (R_b)/k\n",
+ "mu_c1 = mu_b + (l_cb/l_ab)*(mu_a - mu_b)\n",
+ "#From fig b\n",
+ "a=3 #ft\n",
+ "b=6 #ft\n",
+ "L=9 #ft\n",
+ "mu_c2 = ((F*a*b)*(L**2 - a**2 - b**2))/(6*E*144*I*(1/20736.0)*L)\n",
+ "mu_c = mu_c1 + mu_c2\n",
+ "\n",
+ "#Display\n",
+ "print'The vertical displacement of the force at C = ',round(mu_c,3),\"ft\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The vertical displacement of the force at C = 0.126 ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.21 Page No 643"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "l = 10 #ft, length\n",
+ "P = 8 #kip, load\n",
+ "w = 2 #kip/ft, force per unit length\n",
+ "\n",
+ "#Calculation\n",
+ "#Compatibility Equation\n",
+ "EI_nu_b1 = (w*l**4)/8.0 + (5*P*l**3)/48.0 #nu_b = (wl**4)/8EI + (5Pl**3)/48EI\n",
+ "EI_nu_b2 = (l**3)/3.0\n",
+ "B_y = EI_nu_b1 / EI_nu_b2\n",
+ "\n",
+ "#Display\n",
+ "print\"The reactions at roller support B = \",B_y,\"kip\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The reactions at roller support B = 10.0 kip\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.22 Page No 644"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "l = 8 #ft, length\n",
+ "l_ab = 5 #ft\n",
+ "l_bc = 5 #ft\n",
+ "l_af = 1/2.0 #inch\n",
+ "b = 12/1000.0 #m\n",
+ "w = 8 #kip, force per unit length\n",
+ "E = 29*10**3 #Ksi\n",
+ "I = 475.0 # inch**4, moment of inertia\n",
+ "\n",
+ "#Compatibility Equation:\n",
+ "import math\n",
+ "A=math.pi/4.0*(l_af**2)\n",
+ "muB__byFbc=l*12/(A*E)\n",
+ "L=l_ab+l_bc\n",
+ "muB=5*w*L**3*12/(48*E*I)\n",
+ "muB_byFbc=L**3*12/(3*E*I)\n",
+ "#From equation muB__=muB-muB_\n",
+ "Fbc=muB/(muB_byFbc+muB__byFbc)\n",
+ "\n",
+ "#Display:\n",
+ "print \"Force developed in the rod is\",round(Fbc,3),\"kip\"\n",
+ "print\"In the book: Calculation mistake\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Force developed in the rod is 0.042 kip\n",
+ "In the book: Calculation mistake\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.23 Page No: 646"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "L = 12 #ft\n",
+ "#E and I are constant say\n",
+ "E = 29*10**3 #Ksi\n",
+ "I = 475 # inch**4\n",
+ "w = 3 #kip/ft\n",
+ "\n",
+ "#calculation\n",
+ "thetab=w*L**3/(48*E*I)\n",
+ "mub=7*w*L**4/(384*E*I)\n",
+ "theta_bbyBy=L**2/(2*E*I)\n",
+ "mu_bbyBy=L**3/(3*E*I)\n",
+ "theta__byMb=L/(E*I)\n",
+ "muB__byMb=L**2/(2*E*I)\n",
+ "\n",
+ "#From eq 1 and 2 (solving by matrix)\n",
+ "#72By+12Mb=-108\n",
+ "#576By+72Mb=-1134\n",
+ "M = array([[576, 72], [72, 12]])\n",
+ "N=([-108,-1134])\n",
+ "X=inv(M)*N #Inverse matrix\n",
+ "a=X[0,0]\n",
+ "b=X[1,0]*2.5\n",
+ "\n",
+ "#Display:\n",
+ "print\"Moment at B is\",b,\"kip-ft\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Moment at B is 11.25 kip-ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter13.ipynb b/Mechanics_of_Materials/Chapter13.ipynb
new file mode 100755
index 00000000..2e2e42c7
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter13.ipynb
@@ -0,0 +1,636 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 13:Buckling of Columns"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.1 Page NO 665"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "l = 12 #ft, length\n",
+ "E = 29*10**3 #GPa, stress\n",
+ "ro = 75 #mm, outside radius\n",
+ "ri = 70 #mm, inside radius\n",
+ "sigma_y = 250 #MPa, stress\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "Ix=110\n",
+ "Iy=37\n",
+ "A = 9.13\n",
+ "Pcr = (math.pi**2*(E*10**3)*Iy)/((l*12)**2) #Pcr = (math.pi**2*EI)/(l**2)\n",
+ "sigma_cr = (Pcr*1000)/A\n",
+ "p=36*A\n",
+ " \n",
+ "print\"The maximum allowable axial load that the column can support = \",round(p,0),\"kip\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum allowable axial load that the column can support = 329.0 kip\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.2 Page NO 668"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "E = 29*10**3 #GPa, stress\n",
+ "lx= 144 #inch, length\n",
+ "ly=100.8 #inch\n",
+ "A =4.43 #inch**2, area\n",
+ "sigma_y = 60 #ksi, stress\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "Ix=29\n",
+ "Iy=9.32\n",
+ "\n",
+ "Pcrx = ((math.pi**2)*E*Ix)/(lx**2) #Pcr = (math.pi**2*EI)/(l**2)\n",
+ "Pcry = ((math.pi**2)*E*Iy)/(ly**2) #Pcr = (math.pi**2*EI)/(l**2)\n",
+ "sigma_cr = (Pcr*1000)/A\n",
+ "sigmacr = Pcry/A #in kN\n",
+ "if sigmacr<sigma_y:\n",
+ " print\"Buckling will occue before the material yield. So Psr=\",round(Pcry,0),\"kip\"\n",
+ "else:\n",
+ " print\"n\"\n",
+ " \n",
+ " \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Buckling will occue before the material yield. So Psr= 263.0 kip\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.3 Page No 669"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "E = 70 #GPa\n",
+ "Ix = 61.3*10**-6 #Moment of inertia along x-axis\n",
+ "Iy = 23.2*10**-6 ##Moment of inertia along y-axis\n",
+ "l = 5\n",
+ "KLx = 2*l #m\n",
+ "KLy = 0.7*(l) #m\n",
+ "FS = 3 #Factor of safety\n",
+ "sigma_y = 215 #MPa\n",
+ "\n",
+ "\n",
+ "#Calculation\n",
+ "import math\n",
+ "Pcrx = (math.pi**2*E*10**6*Ix)/(KLx**2) #Pcr = (math.pi**2*EI)/(l**2)\n",
+ "Pcry = (math.pi**2*E*10**6*Iy)/(KLy**2) #Pcr = (math.pi**2*EI)/(l**2)\n",
+ "Pcr = min(Pcrx,Pcry)\n",
+ "A = 7.5*10**-3 #mm**2\n",
+ "P_allow = Pcr/FS\n",
+ "sigma_cr = (Pcr*10**-3)/A\n",
+ "\n",
+ "\n",
+ "if(sigma_cr<sigma_y):\n",
+ " print\"The largest allowable load that the column can support = \",round(P_allow,0),\"kN\"\n",
+ "else:\n",
+ " print\"n\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The largest allowable load that the column can support = 141.0 kN\n"
+ ]
+ }
+ ],
+ "prompt_number": 53
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.4 Page NO 683"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "z1 = 4*1000 #mm, length\n",
+ "e = 200 #mm, elongation\n",
+ "KLy = 100.8 #inch**2\n",
+ "Iy = 49.1 #inch**4\n",
+ "E = 29*10**3 #ksi, stress\n",
+ "sigma_y =421.2 #MPa\n",
+ "\n",
+ "#Calculation\n",
+ "#y-y Axis Buckling\n",
+ "import math\n",
+ "Pcry = (math.pi**2*E*10**6*Iy)/(KLy**2) #Pcr = (math.pi**2*EI)/(l**2)\n",
+ "Pcry = Pcry/1000\n",
+ "#x-x Axis Yielding\n",
+ "Kx= 2\n",
+ "KLx = 288 #inch\n",
+ "A=11.7\n",
+ "c = (8.25)/2.0\n",
+ "rx = 3.53 #inch\n",
+ "\n",
+ "#Solved by applying the Secant Formula and then finding Px by trial and error\n",
+ "trial_Px = 88.4 #kN\n",
+ "A = 7850#mm**2\n",
+ "sigma = (trial_Px*1000)/(A)\n",
+ "\n",
+ "if(Pcry>trial_Px and sigma<sigma_y):\n",
+ " print'The maximum eccentric load that the column can support = ',trial_Px\n",
+ " print'Failure will occur about the x-x axis.'\n",
+ "\n",
+ "else:\n",
+ " print\"n\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum eccentric load that the column can support = 88.4\n",
+ "Failure will occur about the x-x axis.\n"
+ ]
+ }
+ ],
+ "prompt_number": 54
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.5 Page NO 686"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "d = 30 #mm, diameter\n",
+ "r = d/2 #mm, radius\n",
+ "L = 600 #mm\n",
+ "sigma_pl = 150#MPa, stress\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "I = (math.pi/4)*(r**4)\n",
+ "A = math.pi*r**2\n",
+ "r_gyr = sqrt(I/A)\n",
+ "K = 1\n",
+ "sl_ratio = (K*L)/(r_gyr)\n",
+ "flag1 = 0\n",
+ "\n",
+ "#Assuming the critical stress is elastic\n",
+ "E = 150/0.001\n",
+ "sigma_cr1 = (math.pi**2*E)/(sl_ratio**2) #Pcr = (math.pi**2*EI)/(l**2)\n",
+ "\n",
+ "\n",
+ "if(sigma_cr1 > sigma_pl):\n",
+ " Et = (270 - 150)/(0.002 - 0.001)\n",
+ " sigma_cr2 = (math.pi**2*Et)/(sl_ratio**2) #Pcr = (math.pi**2*EI)/(l**2)\n",
+ " \n",
+ "if(sigma_cr2>150 and sigma_cr2<270): \n",
+ " Pcr = sigma_cr2*A\n",
+ " Pcr = Pcr/1000.0 #in kN\n",
+ " print'The critical load when used as a pin supported column = ',round(Pcr,0),\"kN\"\n",
+ " \n",
+ "else:\n",
+ " print\"\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The critical load when used as a pin supported column = 131.0 kN\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.6 page No 696"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#given\n",
+ "l=16 #16 ft\n",
+ "A=29.4 #in**2, area\n",
+ "rx=4.60 #in\n",
+ "ry=2.65 #in\n",
+ "k=1\n",
+ "E=29*10**3 #Stress\n",
+ "sigmay=36.0 #ksi\n",
+ "#calculation\n",
+ "import math\n",
+ "x1=k*l*12/ry\n",
+ "x=math.sqrt(2*math.pi**2*E/sigmay)\n",
+ "a=(1-(x1**2/(2.0*x**2)))*((sigmay))\n",
+ "b=(5/3.0)+((3/8.0)*(x1)/(x))-((x1**3)/(8.0*(x**3)))\n",
+ "sigmaallow=a/b\n",
+ "P=sigmaallow*A\n",
+ "\n",
+ "#result\n",
+ "print\" The largest load is\",round(P,0),\"kip\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The largest load is 476.0 kip\n"
+ ]
+ }
+ ],
+ "prompt_number": 24
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.7 Page NO 697"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "P = 18 #kip, load\n",
+ "E = 29*10**3 #ksi, stress\n",
+ "sigma_y = 50 #ksi, shear stress\n",
+ "l = 15 #ft, length\n",
+ "k =0.5 #shape factor\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "I_by_d = (1/4.0)*(math.pi)*(d/2.0)**4\n",
+ "A_by_d = (1/4.0)*(math.pi)*d**2\n",
+ "r_by_d = math.sqrt(I_by_d/A_by_d)\n",
+ "sl_ratio_c = math.sqrt((2*math.pi**2*E)/(sigma_y))\n",
+ "\n",
+ "a1=math.sqrt(2*(math.pi)**2*E/(sigma_y))\n",
+ "\n",
+ "d_=((18*4*16*23*(k**2)*(l**2)*12**2)/(12*math.pi**3*E))**(1/4.0)\n",
+ "print \"The smallest diameter is \",round(d_,2),\"inch. So use d=2.25 inch\"\n",
+ "d=2.25\n",
+ "a1=k*l*12/(d/4.0)\n",
+ "if a1<200:\n",
+ " print\"Use of equation is appropriate\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The smallest diameter is 2.11 inch. So use d=2.25 inch\n",
+ "Use of equation is appropriate\n"
+ ]
+ }
+ ],
+ "prompt_number": 52
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.8 Page NO 698"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "L = 30 #inch\n",
+ "P = 12 #kip\n",
+ "sigma =28.0 #ksi\n",
+ "K = 1\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "b2 = (P)/(2*sigma)\n",
+ "b_ = math.sqrt(b2)\n",
+ "A = 2*b_*b_\n",
+ "Iy = (1/12.0)*(2*b_*b_**3)\n",
+ "ry = sqrt(Iy/A)\n",
+ "sl_ratio = (K*L)/(ry)\n",
+ "if(sl_ratio>12):\n",
+ " b4 = (P*103.9**2)/(2*54000) #Eqn 13.26\n",
+ " b = b4**(1/4.0)\n",
+ " \n",
+ " sl_ratio_ = (2598.1)/(b)\n",
+ " w = 2*b\n",
+ "else:\n",
+ " print\"j\"\n",
+ " \n",
+ "if(sl_ratio>55):\n",
+ " print'The thickness of the bar = ',round(b,2),\"inch\"\n",
+ " \n",
+ "else:\n",
+ " print\"h\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The thickness of the bar = 1.05 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 46
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.9 Page NO 699"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "P = 5.0 #kip. load\n",
+ "y1 = 5.5 #inch, length\n",
+ "x1 = 1.5 #inch\n",
+ "A = (x1*y1) #area\n",
+ "d = 1.5 #inch\n",
+ "K = 1\n",
+ "\n",
+ "#Eqn 13.29\n",
+ "L2 = (540*A*d**2)/(P)\n",
+ "L = sqrt(L2)\n",
+ "KL_d = (K*L)/(d)\n",
+ "\n",
+ "if(KL_d>26 and KL_d<=50):\n",
+ " print'The greatest allowable length L as specified by the NFPA = ',round(L,1),\"inch\"\n",
+ "else:\n",
+ " print\"j\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The greatest allowable length L as specified by the NFPA = 44.8 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 47
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.10 Page NO 705"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "#the given dimansion are\n",
+ "L = 80.0 #inch\n",
+ "K = 2.0\n",
+ "l = 4.0 #inch\n",
+ "b = 2.0 #inch\n",
+ "e = 1 #inch\n",
+ "c = 2 #inch\n",
+ "\n",
+ "#Calculations\n",
+ "I1 = (1/12.0)*(l*b**3)\n",
+ "A = l*b\n",
+ "r = sqrt(I1/A)\n",
+ "sl_ratio = (K*L)/(r)\n",
+ "\n",
+ "#Eqn 13.26\n",
+ "sigma_allow = (54000)/(sl_ratio**2)\n",
+ "I2 = (1/12.0)*(b*l**3)\n",
+ "coefficient = (1/A) + (e*c)/I2\n",
+ "\n",
+ "sigma_max = sigma_allow\n",
+ "P = sigma_max/coefficient\n",
+ "\n",
+ "#Display\n",
+ "print'The load that can be supported if the column is fixed at its base ',P,\"kip\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The load that can be supported if the column is fixed at its base 2.25 kip\n"
+ ]
+ }
+ ],
+ "prompt_number": 48
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.11 Page No 706"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "sigmaB_allow = 22 #ksi, allowable stress\n",
+ "E = 29*10**3 #ksi, stress\n",
+ "sigma_y = 36 #ksi, shear stress\n",
+ "K= 1 #shape factor\n",
+ "A = 5.87 #inch**2, area\n",
+ "Ix = 41.4 #inch**4, moment of inertia\n",
+ "ry = 1.5 #inch\n",
+ "d = 6.2 #inch\n",
+ "c= d/2.0 \n",
+ "e = 30 #inch\n",
+ "L = 15 #ft\n",
+ "\n",
+ "sl_ratio = (K*L*12)/(ry)\n",
+ "sl_ratio_c = math.sqrt((2*math.pi**2*E)/(sigma_y))\n",
+ "\n",
+ "\n",
+ "\n",
+ "if(sl_ratio<sl_ratio_c):\n",
+ " num = (1 - (sl_ratio**2/(2*sl_ratio_c**2)))*sigma_y\n",
+ " denom1 = (5/3.0) + ((3/8.0)*sl_ratio/sl_ratio_c)\n",
+ " denom2 = (sl_ratio**3)/(8*sl_ratio_c**3)\n",
+ " sigmaA_allow = num/(denom1 - denom2)\n",
+ " \n",
+ " coeffP = 1/(sigmaA_allow*A) + (e*c)/(Ix*sigmaB_allow)\n",
+ " P = 1/coeffP\n",
+ " \n",
+ " sigA = (P/A)/(sigmaA_allow)\n",
+ "else:\n",
+ " print\"k\"\n",
+ " \n",
+ " \n",
+ "if(sigA < 0.15):\n",
+ " print'The maximum allowable value of eccentric load = ',round(P,2),\"kN\"\n",
+ "else:\n",
+ " print\"h\"\n",
+ " "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum allowable value of eccentric load = 8.43 kN\n"
+ ]
+ }
+ ],
+ "prompt_number": 49
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.12 Page NO 707"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "K = 2 #shape factor\n",
+ "d= 3.0 #inch, diameter\n",
+ "L = 60 #inch, length\n",
+ "e = 4 #inch\n",
+ "c = d\n",
+ "l = 3.0 #inch\n",
+ "b =6.0 #inch\n",
+ "A = l*b #inch**2\n",
+ "\n",
+ "#Calculations\n",
+ "sl_ratio = (K*L)/(d)\n",
+ "\n",
+ "if(sl_ratio>26 and sl_ratio<50):\n",
+ " sigma_allow = (540)/(sl_ratio**2)\n",
+ " sigma_max = sigma_allow\n",
+ " \n",
+ " I = (1/12.0)*(l*b**3)\n",
+ " coeffP = (1/A) + (e*c)/(I)\n",
+ " P = sigma_max/coeffP\n",
+ " print'The eccentric load that can be supported = ',round(P,2),\"kip\"\n",
+ "else:\n",
+ " print\"no\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The eccentric load that can be supported = 1.22 kip\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter14.ipynb b/Mechanics_of_Materials/Chapter14.ipynb
new file mode 100755
index 00000000..aa30b557
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter14.ipynb
@@ -0,0 +1,447 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14:Energy Methods"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.1 Page No 721"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "sigma_y = 44 #stress ,ksi\n",
+ "db =0.731 #inch, diameter\n",
+ "rb = db/2.0 #radius\n",
+ "import math\n",
+ "Ab = math.pi*(rb**2)\n",
+ "E = 29*10**3 #N/mm**2, stress\n",
+ "da1 = 0.875 #inch, diameter\n",
+ "ra1 = da1/2.0\n",
+ "La1 = 2 #inch\n",
+ "La2= 0.25 #inch\n",
+ "da2 =0.731 #inch\n",
+ "ra2 = da2/2.0\n",
+ "Lb = 2.25 #inch\n",
+ "\n",
+ "#Calculation\n",
+ "#Bolt A\n",
+ "Aa2 = math.pi*(ra2**2)\n",
+ "Aa1 = math.pi*(ra1**2)\n",
+ "P_max = sigma_y*Ab\n",
+ "Uia = (P_max**2/(2*E))*(La1/Aa1 + La2/Aa2) #Ui = (N**2L)/(2AE)\n",
+ "#Bolt B\n",
+ "Uib = (P_max**2/(2*E))*(Lb/Ab)\n",
+ "\n",
+ "#Display\n",
+ "print'The greatest amount of strain energy absorbed by bolt A = ',round(Uia,4),\"J\"\n",
+ "print'The greatest amount of strain energy absorbed by bolt B = ',round(Uib,4),\"J\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0.0230568851609\n",
+ "The greatest amount of strain energy absorbed by bolt A = 0.0231 J\n",
+ "The greatest amount of strain energy absorbed by bolt B = 0.0315 J\n"
+ ]
+ }
+ ],
+ "prompt_number": 29
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.5 Page No 728"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "G = 75*10**9 #N/m**2, stress\n",
+ "ro = 80/1000.0 #m, outside radius\n",
+ "t = 15/1000.0 #m, thickness\n",
+ "ri = ro - t #inside radius\n",
+ "l1 = 750/1000.0 #m, length\n",
+ "l2 = 300/1000.0 #m\n",
+ "T1 = 40 #Nm. torque\n",
+ "T2 =15 #Nm\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "J = (math.pi/2.0)*(ro**4 - ri**4)\n",
+ "#Eqn 14-22\n",
+ "U1 = (T1**2*l1)/(2*G*J) \n",
+ "U2 = (T2**2*l2)/(2*G*J)\n",
+ "Ui = U1 + U2\n",
+ "Ui = Ui*10**6 #in micro Joule\n",
+ "\n",
+ "#Display\n",
+ "print'The strain energy stored in the shaft = ',round(Ui,0),\"micro J\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The strain energy stored in the shaft = 233.0 micro J\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.6 Page No 735"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "F=5.0 #kip, horizontal distance\n",
+ "A=0.20 #inch**2, area\n",
+ "E=29*10**3 #ksi, stress\n",
+ "Nab=2.89 #kip, normal stress\n",
+ "Nac=5.77 #kip\n",
+ "L1=2 #ft, length\n",
+ "L2=4 #ft\n",
+ "L3=3.46 #ft\n",
+ "\n",
+ "#calculation\n",
+ "#Appling equation 14-24\n",
+ "dBh=(Nab**2*L1/(2*A*E)+(-Nac)**2*L2/(2*A*E)+F**2*L3/(2*A*E))*(2/F)\n",
+ "\n",
+ "#result\n",
+ "print\"The horizontal displacement is\",round(dBh*12,4),\"inch\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The horizontal displacement is 0.0978 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.8 Page No 743"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "ro = 3 #inch, outside radius\n",
+ "ri = 2.5 #inch, inside radius\n",
+ "E = 10*10**3 #ksi, stress\n",
+ "W = 150 #kip, force\n",
+ "L = 12 #inch, length\n",
+ "h = 0\n",
+ "\n",
+ "#Part a\n",
+ "import math\n",
+ "A = (math.pi)*(ro**2 - ri**2)\n",
+ "del_st= (W*L)/(A*E)\n",
+ "#Part b\n",
+ "del_max = del_st*(1 + math.sqrt(1 + 2*(h/del_st)))\n",
+ "\n",
+ "#Display\n",
+ "print'The maximum displacement at the top of the pipe for gradually applied load = ',round(del_st,4),\"inch\"\n",
+ "print'The maximum displacement at the top of the pipe for suddenly applied load = ',round(del_max,4),\"inch\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum displacement at the top of the pipe for gradually applied load = 0.0208 inch\n",
+ "The maximum displacement at the top of the pipe for suddenly applied load = 0.0417 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.9 Page No 744"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "W = 1.5 #kip, force\n",
+ "h = 2 #inch, height\n",
+ "E = 29*1000 #N/mm**2, stress\n",
+ "L = 16 #ft, length\n",
+ "I = 209 #inch**2, area\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "del_st = (W*L**3*12**3)/(48*E*I)\n",
+ "del_max = del_st*(1 + math.sqrt(1 + 2*(h/del_st)))\n",
+ "c = 9.92/2.0\n",
+ "Pmax=48*E*I/(L**3*12**3)\n",
+ "Mmax=Pmax*L/4.0\n",
+ "sigma_max = (12*E*del_max*c)/(L**2*12**2)\n",
+ "\n",
+ "#Display\n",
+ "print'The maximum bending stress in the steel beam = ',round(sigma_max,1),\"ksi\"\n",
+ "print'The maximum deflection in the beam = ',round(del_max,2),\"inch\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum bending stress in the steel beam = 19.7 ksi\n",
+ "The maximum deflection in the beam = 0.42 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.10 Page No 745"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "m = 80*1000 #kg\n",
+ "v = 0.2 #m/s\n",
+ "l_ac = 1.5 #m\n",
+ "E = 200*10**9 #N/m**2\n",
+ "w = 0.2 #m\n",
+ "I = (1/12.0)*(w**4)\n",
+ "l_ab = 1000 #mm\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "del_Amax = math.sqrt((m*v**2*l_ac**3)/(3*E*I))\n",
+ "\n",
+ "P_max = (3*E*I*del_Amax)/(l_ac**3)\n",
+ "theta_A = (P_max*l_ac**2)/(2*E*I)\n",
+ "del_Amax = del_Amax*1000\n",
+ "del_Bmax = del_Amax + (theta_A*l_ab)\n",
+ "\n",
+ "#Display\n",
+ "print'The maximum horizontal displacement of the post at B due to impact =',round(del_Bmax,2),\"mm\"\n",
+ " \n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum horizontal displacement of the post at B due to impact = 23.24 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.11 Page No 758"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "A = 400*10**-6 #m**2\n",
+ "E = 200*10**6 #kN/m**2\n",
+ "P = 100 #kN\n",
+ "\n",
+ "#Virtual Work Equation\n",
+ "n1 = 0\n",
+ "n2=0\n",
+ "n3=-1.414\n",
+ "n4=1\n",
+ "N1=-100\n",
+ "N2=-141.4\n",
+ "N3=-141.4\n",
+ "N4=200\n",
+ "L1=4\n",
+ "L2=2.828\n",
+ "L3=2.828\n",
+ "L4=2\n",
+ "Sum=n1*N1*L1+n2*N2*L2+n3*N3*L3+n4*N4*L4\n",
+ "del_cv = Sum/(A*E)\n",
+ "\n",
+ "#Display\n",
+ "print'The vertical displacement of joint C of the steel truss ',round(del_cv*1000,1),\"mm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The vertical displacement of joint C of the steel truss 12.1 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.12 Page no 759"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#given\n",
+ "A=250*10**(-6) #m**2\n",
+ "E=200*10**6 #pa\n",
+ "alpha=12*10**(-6)\n",
+ "l=4 #m\n",
+ "l1=-1.155 #KN\n",
+ "l2=-12 #KN\n",
+ "\n",
+ "#calculation\n",
+ "x=0 #x=n*N*L/A*E\n",
+ "y=0 #y=n*alpha*delta*T*L\n",
+ "z=(l1*l2*l)/(A*E)\n",
+ "deltabh=(x+y+z)\n",
+ "\n",
+ "#result\n",
+ "print \"The horizontal displacement is \",round(deltabh*1000,2),\"m\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The horizontal displacement is 1.11 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.15 Page No 774"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "E = 200*10**6 #kN/m**2\n",
+ "P = 0 #N\n",
+ "A = 400*10**-6 #m**2\n",
+ "\n",
+ "#Calculation\n",
+ "N_by_P1 = 0\n",
+ "N_by_P2=0\n",
+ "N_by_P3=-1.414\n",
+ "N_by_P4=1\n",
+ "L1=4\n",
+ "L2=2.828\n",
+ "L3=2.828\n",
+ "L4=2\n",
+ "N1=-100\n",
+ "N2=141.4\n",
+ "N3=-141.4\n",
+ "N4=200\n",
+ "\n",
+ "Sum = N_by_P1*L1*N1+N_by_P2*L2*N2+N_by_P3*L3*N3+N_by_P4*L4*N4\n",
+ "del_ch = Sum/(E*A)\n",
+ "\n",
+ "#Display\n",
+ "print'The vertical displacement of joint C of the steel truss =',round(del_ch*1000,1),\"mm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The vertical displacement of joint C of the steel truss = 12.1 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter2.ipynb b/Mechanics_of_Materials/Chapter2.ipynb
new file mode 100755
index 00000000..c29910ba
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter2.ipynb
@@ -0,0 +1,207 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 2: Strain"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.1 page no. 70"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "e_z= 4 #Constant\n",
+ "ab = 0.200 #m, dimension\n",
+ "from scipy import integrate\n",
+ "#Calculations\n",
+ "#Part a)\n",
+ "import math\n",
+ "def f(z):\n",
+ " return(1+(40*10**-3)*(math.sqrt(z)))\n",
+ "z=integrate.quad(f,0,ab) #Strain formula for short line segment = delta(sdash) =(1+e_z)delta(s) \n",
+ "deltaB= z[0]-ab\n",
+ "deltaB_mm= deltaB*1000\n",
+ "\n",
+ "#Part b)\n",
+ "\n",
+ "e_avg = deltaB/ab# Normal strain formula e = (delta(sdash) -delta(s))/delta(s)\n",
+ "\n",
+ "#Display\n",
+ "print\"The displacement at the end of the rod is = \",round(deltaB_mm,2),\"mm\"\n",
+ "print\"The average normal strain in the rod is =\",round(e_avg,4),\"mm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The displacement at the end of the rod is = 2.39 mm\n",
+ "The average normal strain in the rod is = 0.0119 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.2 page no. 71"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "theta = 0.05 #degree, angle\n",
+ "L1=300.0 #mm, length\n",
+ "L2 = 400.0 #mm\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "alpha=math.atan(L2/L1)*180/3.14\n",
+ "phi=90-alpha+theta\n",
+ "Lad=math.sqrt(L1**2+L2**2)\n",
+ "Lbd=math.sqrt(Lad**2+L2**2-2*L2*Lad*math.cos(36.92*3.14/180.0))\n",
+ "epsilonBD=(Lbd-L1)/(L1)\n",
+ "dLbd=(theta*3.14/180.0)*L2\n",
+ "\n",
+ "#Display\n",
+ "print\"The average normal strain =\",round(epsilonBD,3),\"mm/mm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The average normal strain = 0.001 mm/mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.3 page no. 72"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "#The given dimension are\n",
+ "ab= 250.0 #mm\n",
+ "bbdash_x = 3.0 #mm\n",
+ "bbdash_y = 2.0 #mm\n",
+ "ac = 300.0 #mm\n",
+ "\n",
+ "#calculations\n",
+ "#Part(a)\n",
+ "import math\n",
+ "abdash = math.sqrt((ab - bbdash_y)**2 + (bbdash_x)**2) #Pythagoras theorem\n",
+ "avg_normal_strain = (abdash-ab)/ab\n",
+ "\n",
+ "#Part(b)\n",
+ "gamma_xy = math.atan(bbdash_x/(ab - bbdash_y)) #shear strain formula\n",
+ "\n",
+ "#Display\n",
+ "print\"The average normal strain along AB is =\",round(avg_normal_strain,4),\"mm/mm\"\n",
+ "print\"The average shear strain =\",round(gamma_xy,4),\"rad\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The average normal strain along AB is = -0.0079 mm/mm\n",
+ "The average shear strain = 0.0121 rad\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.4 page no. 73"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "ab = 150 #mm\n",
+ "bc = 150 #mm\n",
+ "disp_cd= 2 #mm\n",
+ "ab_half = ab/2.0\n",
+ "addash_half = (bc+disp_cd)/2.0 \n",
+ "\n",
+ "#Calculations\n",
+ "#Part(a)\n",
+ "import math\n",
+ "ac = sqrt((ab)**2 + (bc)**2) #Pythagoras theorem in mm\n",
+ "ac_m = ac/1000.0 #in m\n",
+ "acdash = sqrt((ab)**2 + (bc+disp_cd)**2) #Pythagoras theorem in mm\n",
+ "acdash_m = acdash/1000.0 #in m\n",
+ "avg_strain_ac = (acdash_m - ac_m)/ac_m #Normal strain formula\n",
+ "\n",
+ "#Part(b)\n",
+ "theta_dash = 2* math.atan((addash_half)/(bc/2.0)) \n",
+ "gamma_xy = (math.pi / 2.0)- theta_dash \n",
+ "\n",
+ "#Display\n",
+ "print\"The average normal strain along the diagonal AC is =\",round(avg_strain_ac,5),\"mm/mm\"\n",
+ "print\"The shear strain at E relative to the x,y axes =\",round(gamma_xy,4),\"rad\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The average normal strain along the diagonal AC is = 0.00669 mm/mm\n",
+ "The shear strain at E relative to the x,y axes = -0.0132 rad\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter3.ipynb b/Mechanics_of_Materials/Chapter3.ipynb
new file mode 100755
index 00000000..355e0ff6
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter3.ipynb
@@ -0,0 +1,334 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 3: Mechanics Properties of Materials"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.1 Page no 94"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "offset = 0.2 #\n",
+ "a_x = 0.0016 #in/in\n",
+ "a_y = 50 #ksi\n",
+ "\n",
+ "#Calculations\n",
+ "#Modulus of Elasticity\n",
+ "E = a_y/(a_x*10**3) #E is the slope in GPa.\n",
+ "#Yield Strength\n",
+ "sigma_ys = 68 #ksi, Graphically, for a strain of 0.0016 mm/mm\n",
+ "#Ultimate Stress\n",
+ "sigma_u = 108 #ksi B is the peak of stress strain graph.\n",
+ "#Fracture Stress\n",
+ "ep_f = 0.23 #in/in\n",
+ "sigma_f = 90 #ksi from the graph.\n",
+ "\n",
+ "#Display\n",
+ "print\"The Modulus of Elasticity is \",E,\"ksi\"\n",
+ "print\"The Yield Strength from the graph \",sigma_ys,\"ksi\"\n",
+ "print\"The Ultimate Stress from the graph is \",sigma_u,\"ksi\"\n",
+ "print\"The Fracture Stress from the graph is \",sigma_f,\"ksi\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Modulus of Elasticity is 31.25 ksi\n",
+ "The Yield Strength from the graph 68 ksi\n",
+ "The Ultimate Stress from the graph is 108 ksi\n",
+ "The Fracture Stress from the graph is 90 ksi\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.2 Page No 95"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "stress_b = 600 #MPa, stress\n",
+ "strain_b = 0.023 #mm/mm, strain\n",
+ "stress_a = 450 #Mpa, stress\n",
+ "strain_a = 0.006 #mm/mm, strain\n",
+ "\n",
+ "#Calculations\n",
+ "#Permanent Strain\n",
+ "E = stress_a/strain_a\n",
+ "strain_cd = stress_b/E #The recovered elastic strain\n",
+ "perm_strain = strain_b - strain_cd #mm/mm\n",
+ "\n",
+ "#Modulus of Resilience\n",
+ "ur_initial = (0.5*stress_a*strain_a)\n",
+ "ur_final = (0.5*stress_b*strain_cd) \n",
+ "\n",
+ "#Display\n",
+ "print\"The Permanent Strain is =\",perm_strain,\"mm/mm\"\n",
+ "print\"The Initial Modulus of Resilience is = \",ur_initial,\"MJ/mm**3\"\n",
+ "print\"The Final Modulus of Resilience is = \",ur_final,\"MJ/mm**3\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Permanent Strain is = 0.015 mm/mm\n",
+ "The Initial Modulus of Resilience is = 1.35 MJ/mm**3\n",
+ "The Final Modulus of Resilience is = 2.4 MJ/mm**3\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.3 Page No 96"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "#Given\n",
+ "p = 10000 #N, load\n",
+ "E_al = 70*(10**3) #MPa,pressure\n",
+ "#The given dimension are\n",
+ "l_ab = 600.0 #mm\n",
+ "d_ab = 20.0 #mm\n",
+ "l_bc = 400.0 #mm\n",
+ "d_bc = 15.0 #mm\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "a_ab = (math.pi/4.0)*(d_ab**2) # Area of AB\n",
+ "a_bc = (math.pi/4.0)*(d_bc**2)\n",
+ "stress_ab = p/a_ab\n",
+ "stress_bc = p/a_bc\n",
+ "e_ab = stress_ab/E_al \n",
+ "e_bc = 0.045 #mm/mm . From the graph for stress_bc\n",
+ "elongation = (l_ab*e_ab)+ (l_bc*e_bc)\n",
+ "strain_rec = stress_bc/E_al \n",
+ "e_og = e_bc-strain_rec\n",
+ "rod_elong = e_og*l_bc\n",
+ "\n",
+ "#Display\n",
+ "print\"The elongation of the rod when load is applied is\",round(elongation,1),\"mm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The elongation of the rod when load is applied is 18.3 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.4 Page No 103"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "P = 80 \t#kN load\n",
+ "#Dimensions are\n",
+ "l_z = 1.5\t #m\n",
+ "l_y = 0.05\t#m\n",
+ "l_x = 0.1 \t#m\n",
+ "\n",
+ "#Calculations\n",
+ "Aa= l_x*l_y\n",
+ "normal_stress_z = (P*(10**3))/Aa\n",
+ "Est = 200 #GPa - from the tables.\n",
+ "strain_z = (normal_stress_z)/(Est*(10**9)) \n",
+ "axial_elong = strain_z*l_z #elongation in the y direction\n",
+ "nu_st = 0.32 #Poisson's Ratio - from the tables.\n",
+ "strain_x = -(nu_st)*(strain_z) #strain in the x direction.\n",
+ "strain_y = strain_x\n",
+ "#Elongations\n",
+ "delta_x = strain_x*l_x\n",
+ "delta_y = strain_y*l_y\n",
+ "\n",
+ "#Display\n",
+ "print\"The change in the length (z direction) =\",axial_elong*10**6,\"micrometer\"\n",
+ "print\"The change in the cross section (x direction)=\",delta_x*10**6,\"micrometer\"\n",
+ "print\"The change in the cross section (y direction)=\",delta_y*10**6,\"micrometer\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The change in the length (z direction) = 120.0 micrometer\n",
+ "The change in the cross section (x direction)= -2.56 micrometer\n",
+ "The change in the cross section (y direction)= -1.28 micrometer\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.5 Page No 105"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "#Refer to the graph of shear stress-strain of titanium alloy.\n",
+ "x_A = 0.008 #rad - x co-ordinate of A\n",
+ "y_A = 52\t #MPa - y co-ordinate of A\n",
+ "height = 2 \t#mm\n",
+ "l = 3.0 \t\t #mm\n",
+ "b = 4.0 \t #mm\n",
+ "\n",
+ "\n",
+ "#Calculations\n",
+ "#Shear Modulus\n",
+ "G = y_A/x_A\n",
+ "#Proportional Limit\n",
+ "tou_pl = 52 #ksi Point A\n",
+ "#Ultimate Stresss\n",
+ "tou_u = 73 #ksi - Max shear stress at B\n",
+ "#Maximum Elastic Displacement\n",
+ "tanA= x_A # tan theta is approximated as theta.\n",
+ "d = tanA*height\n",
+ "#Shear Force\n",
+ "A = l*b\n",
+ "V = tou_pl*A\n",
+ "\n",
+ "#Display\n",
+ "print\"The Shear Modulus = \",G,\"ksi\"\n",
+ "print\"The Proportional Limit = \",tou_pl,\"ksi\"\n",
+ "print\"The Ultimate Shear Stress = \",tou_u,\"ksi\"\n",
+ "print\"The Maximum Elastic Displacement = \",d,\"inch\"\n",
+ "print\"The Shear Force = \",V,\"kip\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Shear Modulus = 6500.0 ksi\n",
+ "The Proportional Limit = 52 ksi\n",
+ "The Ultimate Shear Stress = 73 ksi\n",
+ "The Maximum Elastic Displacement = 0.016 inch\n",
+ "The Shear Force = 624.0 kip\n"
+ ]
+ }
+ ],
+ "prompt_number": 23
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.6 Page No 106"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "d_o = 0.025 \t\t#m, outside diameter\n",
+ "l_o =0.25 \t\t #m\n",
+ "F =165 \t\t\t #kN, load\n",
+ "delta = 1.2 \t\t#mm\n",
+ "G_al = 26 \t\t #GPa\n",
+ "sigma_y = 440 \t\t#MPa\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "#Modulus of Elasticity\n",
+ "A = (math.pi/4)*(d_o**2)\n",
+ "avg_normal_stress = (F*10**3)/A\n",
+ "avg_normal_strain = delta/l_o\n",
+ "E_al = avg_normal_stress/ avg_normal_strain\n",
+ "E_al = E_al/10**6\n",
+ "#Contraction of Diameter\n",
+ "nu = (E_al/(2*G_al))-1\n",
+ "strain_lat = nu*(avg_normal_strain) \n",
+ "d_contraction = strain_lat* d_o \n",
+ "\n",
+ "#Display\n",
+ "print\"The Modulus of Elasticity is = \",round(E_al,0),\"GPa\"\n",
+ "print\"The contraction in diameter due to the force = \",round(d_contraction,4),\"mm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "70.0281749604\n",
+ "The Modulus of Elasticity is = 70.0 GPa\n",
+ "The contraction in diameter due to the force = 0.0416 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter4.ipynb b/Mechanics_of_Materials/Chapter4.ipynb
new file mode 100755
index 00000000..8da809d8
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter4.ipynb
@@ -0,0 +1,728 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 4:Axial Load"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.1 Page no 126"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "a_ab = 1\t\t #inch**2, area\n",
+ "a_bd = 2 \t\t #inch**2\n",
+ "a_bc = a_bd\n",
+ "p = 29\t\t\t #kN, load\n",
+ "l_ab = 2\t\t #ft\n",
+ "l_bc = 1.5 \t\t #ft\n",
+ "l_cd = 1 \t #ft\n",
+ "\n",
+ "#Calculations\n",
+ "#Internal Forces By method of Sections\n",
+ "p_bc = 15 #kip\n",
+ "p_cd = 7 #kip\n",
+ "p_ab=9 #kip\n",
+ "#Displacement\n",
+ "d=(p_bc*l_ab*12/(a_ab*p*10**3))+(p_cd*l_bc*12/(a_bd*p*10**3))+(p_ab*l_cd*12/(a_bc*p*10**3))\n",
+ "d_=p_cd*l_bc*12/(a_bd*p*10**3)\n",
+ "\n",
+ "#Display\n",
+ "print\"The displacement of B relative to C is = +%1.3f mm\",round(d*10,4),\"inch\"\n",
+ "print \"Displacement of B relative to C is\",round(d_,5),\"inch\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The displacement of B relative to C is = +%1.3f mm 0.0217 inch\n",
+ "Displacement of B relative to C is 0.00217 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.2 Page no 127"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "a_ab = 400.0 #mm**2, area\n",
+ "d_rod = 10.0 #mm\n",
+ "r_rod = d_rod/(2*1000) #radius in m\n",
+ "P = 80.0 #kN, load\n",
+ "E_st = 200*(10**9) #Pa, pressure\n",
+ "E_al = 70*(10**9) #Pa\n",
+ "l_ab = 400.0 #mm, length of ab\n",
+ "l_bc = 600.0 #mm length of bc\n",
+ "\n",
+ "#Calculations\n",
+ "#Displacement\n",
+ "#delta =PL/AE\n",
+ "import math\n",
+ "numerator1 = P*(10**3)*(l_bc/1000.0) \n",
+ "denominator1 = (math.pi*r_rod**2*E_st)\n",
+ "delta_cb = numerator1/denominator1 #to the right\n",
+ "numerator2 = -P*(10**3)*(l_ab/1000.0) \n",
+ "denominator2 = (a_ab* 10**-6 *E_al)\n",
+ "delta_a = -numerator2/denominator2 #to the right\n",
+ "delta_c = delta_a+delta_cb\n",
+ "\n",
+ "#Display\n",
+ "print\"The displacement of C with respect to B = \",round(delta_cb,4),\"m\"\n",
+ "print\"The displacement of B with respect to A = \",round(delta_a,4),\"m\"\n",
+ "print'The displacement of C relative to A = ',round(delta_c*1000,2),\"mm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The displacement of C with respect to B = 0.0031 m\n",
+ "The displacement of B with respect to A = 0.0011 m\n",
+ "The displacement of C relative to A = 4.2 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.3 Page no 128"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "d_ac = 20.0 #mm, ac diameter\n",
+ "r_ac = d_ac/(2*1000)\t\t #radius in m\n",
+ "d_bd =40.0 \t\t\t #mm\n",
+ "r_bd = d_bd/(2*1000) \t\t#radius in m\n",
+ "P = 90.0 \t\t\t\t#kN\n",
+ "E_st = 200*(10**9) \t\t#Pa\n",
+ "E_al = 70*(10**9) \t\t#Pa\n",
+ "l_af = 200.0 \t\t\t#mm\n",
+ "l_fb = 400.0 \t\t\t#mm\n",
+ "l_bd = 300.0\t\t\t#mm\n",
+ "l_ac = l_bd\n",
+ "\n",
+ "#Calculations\n",
+ "#Internal Force\n",
+ "P_ac = 60 #kN\n",
+ "P_bd = 30 #kN\n",
+ "#Displacement\n",
+ "import math\n",
+ "num1 = -(P_ac*10**3*(l_ac/1000.0))\n",
+ "denom1 = math.pi* r_ac**2*E_st\n",
+ "delta_a = -num1/denom1 \n",
+ "delta_a = delta_a*1000 \n",
+ "#Post BD delta = PL/AE\n",
+ "num2 = -(P_bd*10**3*(l_bd/1000))\n",
+ "denom2 = math.pi* r_bd**2*E_al\n",
+ "delta_b = -num2/denom2 \n",
+ "delta_b = delta_b*1000 \n",
+ "delta_f = delta_b + (0.184)*(l_fb/(l_af+l_fb)) \n",
+ "\n",
+ "#Display\n",
+ "print'The displacement of Post AC =',round(delta_a,3),\"mm downwards\"\n",
+ "print'The displacement of Post BD =',round(delta_b,3),\"mm downwards\"\n",
+ "print'nThe displacement of point F =',round(delta_f,3),\"mm downwards\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The displacement of Post AC = 0.286 mm downwards\n",
+ "The displacement of Post BD = 0.102 mm downwards\n",
+ "nThe displacement of point F = 0.225 mm downwards\n"
+ ]
+ }
+ ],
+ "prompt_number": 24
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.5 Page no 139"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "d_ab = 5 #mm, ab diameter\n",
+ "A = (math.pi/4)*(d_ab/1000)**2\n",
+ "gap = 1 #mm\n",
+ "P = 20 #kN, pressure\n",
+ "E_st = 200 #GPa\n",
+ "l_ac = 0.4 #m\n",
+ "l_cb = 0.8 #m\n",
+ "l_ab = l_ac+l_cb\n",
+ "\n",
+ "#Calculations\n",
+ "#Equilibrium\n",
+ "# Eqn1 -Fa - Fb +P*10**3 = 0 \n",
+ "#Compatibility\n",
+ "delta_ba = gap/1000.0 #in m\n",
+ "delta = delta_ba*(A*E_st*10**9) #delta_ba* Lac/AE \n",
+ "\n",
+ "#Eqn2 (L/AE)*Fa -(Lb/AE)*Fb = delta_ba\n",
+ "#Solving Equations 1 and 2 by matrices\n",
+ "Fa=16 #KN\n",
+ "Fb=4.05 #KN\n",
+ "\n",
+ "#Display\n",
+ "print\"The reaction force at A = \",Fa,\"kN\"\n",
+ "print\"The reaction force at B = \",Fb,\"kN\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The reaction force at A = 16 kN\n",
+ "The reaction force at B = 4.05 kN\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.6 Page no 140"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "P = 9 \t\t #kip, load\n",
+ "E_al = 10 #ksi, \n",
+ "E_br = 15 # ksi\n",
+ "h = 1.5 \t #ft\n",
+ "ri = 1 \t #inch\n",
+ "ro = 2 \t #inch\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "A = (math.pi*(ro**2 -ri**2))\n",
+ "Ai = math.pi*ri**2\n",
+ "#Equilibrium Eqn1 F_al +F_br = P\n",
+ "#Compatibility\n",
+ "coeff_F_br = (A*E_al)/(Ai*E_br) \n",
+ "#Eqn2 F_al- (coeff_F_br*F_br) = 0\n",
+ "#Solving equations 1 and 2 using matrices\n",
+ "Fal=6 \n",
+ "Fbr=3\n",
+ "\n",
+ "avg_stress_al = Fal/A \n",
+ "avg_stress_br = Fbr/Ai \n",
+ "avg_stress_al = avg_stress_al/1000\n",
+ "avg_stress_br = avg_stress_br/1000\n",
+ "\n",
+ "#Display\n",
+ "print\"The axial force experienced by Al = \",Fal,\"ksi\"\n",
+ "print\"The axial force experienced by Brass = \",Fbr,\"ksi\"\n",
+ "print'The average normal stress in Al = ',round(avg_stress_al*1000,3),\"ksi\"\n",
+ "print'The average normal stress in Al Brass = ',round(avg_stress_br*1000,3),\"ksi\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The axial force experienced by Al = 6 ksi\n",
+ "The axial force experienced by Brass = 3 ksi\n",
+ "The average normal stress in Al = 0.637 ksi\n",
+ "The average normal stress in Al Brass = 0.955 ksi\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.7 Page no 141"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "P = 15\t\t #kN. load\n",
+ "a_ab = 50 \t#mm**2, area\n",
+ "a_ef =a_ab\n",
+ "a_cd = 30 \t#mm**2, area\n",
+ "l_ef = 0.5 \t#m, ef length\n",
+ "l_ce = 0.4 \t#m\n",
+ "l_ac = 0.4 \t#m\n",
+ "\n",
+ "#Calculations\n",
+ "#In the y direction F_a +F_c +F_e = P\n",
+ "#of moments -F_a(l_ac)+ P(l_ac/2) +F_e(l_ce) = 0\n",
+ "\n",
+ "#Compatibility equation for displacemnts\n",
+ "coeff_Fc = (1/a_cd) #coefficient of Fc\n",
+ "coeff_Fa = (0.5/a_ab) #coefficient of Fc\n",
+ "coeff_Fe = (0.5/a_ef) #coefficient of Fc\n",
+ "\n",
+ "#Solving the 3 Equations\n",
+ "F_a=9.52\n",
+ "F_b=3.46\n",
+ "F_c=2.02\n",
+ "#Display\n",
+ "print\"The force in rod AB = \",F_a,\"kN\"\n",
+ "print'The force in rod CD = ',F_b,\"kN\"\n",
+ "print'The force in rod EF = ',F_c,\"kN\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The force in rod AB = 9.52 kN\n",
+ "The force in rod CD = 3.46 kN\n",
+ "The force in rod EF = 2.02 kN\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.8 Page no 142"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "r_o = 0.5\t\t #inch, outside radius\n",
+ "r_i = 0.25\t\t#inch, inside radius\n",
+ "l = 3 \t\t\t#inch\n",
+ "one_turn =20 #threads per inch\n",
+ "\n",
+ "#calculations\n",
+ "import math\n",
+ "a_t = (math.pi)*(r_o**2 - r_i**2) #Area of thread\n",
+ "a_b = (math.pi*(r_i**2))# Area of bolt\n",
+ "# In Y direction F_b - F_t = 0\n",
+ "\n",
+ "#Compatibility\n",
+ "half_turn = one_turn/2.0\n",
+ "#Solving the two simultaneous equations for F_b and F_t\n",
+ "F_b =11.22 #kip\n",
+ "F_t = F_b\n",
+ "stress_b = F_b/a_b\n",
+ "stress_t = F_t/a_t\n",
+ "F_b = F_b/1000.0\n",
+ "F_t = F_t/1000.0\n",
+ "\n",
+ "#Display\n",
+ "print'The stress in the bolt ',round(stress_b,1),\"ksi\"\n",
+ "print'The stress in the screw ',round(stress_t,1),\"ksi\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The stress in the bolt 57.1 ksi\n",
+ "The stress in the screw 19.0 ksi\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.9 Page no 144"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "l_ab = 800 + 400\t\t#mm, ab length\n",
+ "P = 20 \t\t \t#kN, load\n",
+ "d = 5/1000.0 \t\t\t#m, diameter\n",
+ "area = (math.pi/4.0)*d**2 \t#Cross sectional area\n",
+ "l_bbdash = 1/1000.0\t\t#m\n",
+ "E = 200.0 \t\t\t#GPa\n",
+ "\n",
+ "#Calculations\n",
+ "#Compatibility\n",
+ "delta_p = (P*10**3*0.4)/(area*E*10**9) #delta = PL/AE\n",
+ "delta_b = delta_p-l_bbdash\n",
+ "F_b = (delta_b*area*E*10**9)/(l_ab/1000.0)\n",
+ "F_b = F_b/1000.0\n",
+ "\n",
+ "#Equilibrium\n",
+ "F_a = P - F_b\n",
+ "\n",
+ "#Display\n",
+ "print\"The reaction at A \",round(F_a,2),\"kN\"\n",
+ "print'The reaction at B',round(F_b,2),\"kN\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The reaction at A 16.61 kN\n",
+ "The reaction at B 3.39 kN\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.10 Page no 152"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "T1 = 60\t\t #degree celcius\n",
+ "T2 = 120\t\t#degress celcius\n",
+ "l_ab = 0.5\t\t#m\n",
+ "area =l_ab**2 \t#m**2\n",
+ "alpha = 6.6*10**-6\t# per degree celcius\n",
+ "E = 29*10**6 \t\t#kPa\n",
+ "\n",
+ "#Equilibrium\n",
+ "#F_a = F_b = F\n",
+ "del_T = T2-T1\n",
+ "F = alpha*del_T*area*E #Thermal Stress Formula\n",
+ "avg_normal_comp_stress = (F*10**-3)/area # sigma = F/A\n",
+ "\n",
+ "#Display\n",
+ "print\"The force at A and B = \",F/1000,\"kip\"\n",
+ "print'The average normal compressive stress = ',avg_normal_comp_stress,\"ksi\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The force at A and B = 2.871 kip\n",
+ "The average normal compressive stress = 11.484 ksi\n"
+ ]
+ }
+ ],
+ "prompt_number": 27
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.12 Page no 154"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "area_sleeve = 600*10**-6 #m**2, area\n",
+ "area_bolt = 400*10**-6 #m**2, area\n",
+ "T1 = 15 #degree celcius\n",
+ "T2 = 80 #degree celcius\n",
+ "alpha_bolt = 12*10**-6 #per degree celcius\n",
+ "alpha_sleeve = 23*10**-6 #per degree celcius\n",
+ "l = 0.15 #m\n",
+ "E_bolt = 200*10**9 #N/m**2 \n",
+ "E_sleeve = 73.1*10**9 #N/m**2 \n",
+ "\n",
+ "#Equilibrium\n",
+ "#F_s = F_b\n",
+ "\n",
+ "#Compatibility\n",
+ "del_T = T2 - T1 \n",
+ "delb_T = alpha_bolt*del_T*l \n",
+ "delb_F = l/(area_bolt*E_bolt)\n",
+ "dels_T = alpha_sleeve*del_T*l \n",
+ "dels_F = l/(area_sleeve*E_sleeve)\n",
+ "\n",
+ "#delb_T + F_b*delb_F = dels_T + F_s*dels_F\n",
+ "F_b = (dels_T-delb_T)/(delb_F+dels_F)\n",
+ "F_b = F_b/1000 #in kN\n",
+ "F_s= F_b\n",
+ "\n",
+ "#Display\n",
+ "print\"The force experienced by sleeve and bolt, Fs=Fb \",round(F_s,1),\"kN\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The force experienced by sleeve and bolt, Fs=Fb 20.3 kN\n"
+ ]
+ }
+ ],
+ "prompt_number": 44
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.13 Page no 165"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "yiel = 250 #MPa, yield stress\n",
+ "r = 4 #mm, radius\n",
+ "width = 40 #mm\n",
+ "thick = 2 #mm\n",
+ "\n",
+ "#a)\n",
+ "r_h = r/(width - (2*r))\n",
+ "w_h = width/(width - (2*r))\n",
+ "K = 1.75\n",
+ "area = (thick*(width - (2*r))*10**-6)\n",
+ "P_y = (yiel*10**6*area)/K\n",
+ "P_y = P_y/1000.0\n",
+ "#b)\n",
+ "P_p = (yiel*10**6*area)\n",
+ "P_p = P_p/1000.0\n",
+ "\n",
+ "#Display\n",
+ "print\"The maximum load P that does not cause the steel to yield \",round(P_y,2),\"kN\"\n",
+ "print'The maximum load that the bar can support ',P_p,\"kN\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum load P that does not cause the steel to yield 9.14 kN\n",
+ "The maximum load that the bar can support 16.0 kN\n"
+ ]
+ }
+ ],
+ "prompt_number": 36
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.14 Page No:166"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "P = 60 #KN, load\n",
+ "sigmaY= 420 #MPa, bending stress\n",
+ "E = 70*10**6 #MPa\n",
+ "l1 = 0.1 #m\n",
+ "l2 = 0.3 #m\n",
+ "r=0.005 #m \n",
+ "\n",
+ "#Maximum Normal Stress:\n",
+ "#r_h = 6/20.0\n",
+ "#w_h = 40/20.0\n",
+ "#K = 1.6\n",
+ "#from sec 4.4\n",
+ "Fa=45\n",
+ "Fb=15\n",
+ "sigmaAC=(Fa/1000.0)/((math.pi)*r**2)\n",
+ "sigmaCB=(Fb/1000.0)/((math.pi)*r**2)\n",
+ "Fay=sigmaY*10**3*(math.pi)*r**2\n",
+ "Fb=P-Fay\n",
+ "if sigmaAC>sigmaY:\n",
+ " print\"Calculate sigmaAC again\"\n",
+ "else:\n",
+ " print\"It is OK\" \n",
+ "sigmaAC_=sigmaY\n",
+ "sigmaCB_=Fb/1000.0/((math.pi)*r**2)\n",
+ "if sigmaCB_<sigmaY:\n",
+ " print\"It is OK\"\n",
+ "else:\n",
+ " print\"Calculate sigmaAC again\" \n",
+ "dL=Fb*l2/(((math.pi)*r**2)*E)\n",
+ "epsilonCB=dL/l2\n",
+ "epsilonAC=dL/l1\n",
+ "epsilonY=sigmaY*10**6/(E*10**3)\n",
+ "sigmaACr=-sigmaAC_+sigmaAC\n",
+ "sigmaCBr=sigmaCB_-sigmaCB\n",
+ "\n",
+ "#Display:\n",
+ "print\"Residual stress in AC is\",round(sigmaACr,0),\"MPa\"\n",
+ "print\"Residual stress in CB is\",round(sigmaCBr,0),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Calculate sigmaAC again\n",
+ "It is OK\n",
+ "420\n",
+ "572.957795131\n",
+ "190.98593171\n",
+ "343.943726841\n",
+ "Residual stress in AC is 153.0 MPa\n",
+ "Residual stress in CB is 153.0 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.15 Page no 168"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "weight = 3.0 #kip, weight\n",
+ "l_ab = 20.0 #ft, length\n",
+ "l_ac= 20.03 #ft\n",
+ "area = 0.05 #inch**2, area\n",
+ "sigmaY=50 #ksi\n",
+ "\n",
+ "#calculations\n",
+ "strain_ab = (l_ac-l_ab)/l_ab \n",
+ "max_strain = 0.0017 \n",
+ "stress_ab = (350*strain_ab)/max_strain\n",
+ "F_ab = stress_ab*area \n",
+ "E_st = 350/max_strain \n",
+ "del1 = l_ab/(area*10**-6*E_st*10**3) \n",
+ "del2 = l_ac/(area*10**-6*E_st*10**3) \n",
+ "\n",
+ "T_ab=sigmaY*area\n",
+ "T_ac = weight-T_ab #kip\n",
+ "stress_in_ab = (T_ab*10**3)/area\n",
+ "stress = (T_ac)/area\n",
+ "strain_ac = (stress*max_strain)/50.0\n",
+ "elong_ac = strain_ac*l_ac #m\n",
+ "elong_ab = (l_ac-l_ab)+elong_ac #m\n",
+ "\n",
+ "#Display\n",
+ "print'The force experienced by wire AB = ',T_ab,\"kip\"\n",
+ "print'The force experienced by wire AC = ',T_ac,\"kip\"\n",
+ "print'The elongation in wire AB = ',round(elong_ab,4),\"ft\"\n",
+ "print'The elongation in wire AC = ',round(elong_ac,5),\"ft\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The force experienced by wire AB = 2.5 kip\n",
+ "The force experienced by wire AC = 0.5 kip\n",
+ "The elongation in wire AB = 0.0368 ft\n",
+ "The elongation in wire AC = 0.00681 ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter5.ipynb b/Mechanics_of_Materials/Chapter5.ipynb
new file mode 100755
index 00000000..649dd3d3
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter5.ipynb
@@ -0,0 +1,736 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5:Torsion"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.2 Page No 188"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "T1 = 4250.0 #kNmm, torque\n",
+ "T2 = -3000.0 #kNm\n",
+ "T3 = T1+T2 #kNm\n",
+ "r = 75.0 #mm, radius\n",
+ "\n",
+ "#Calculation\n",
+ "#Section Property\n",
+ "import math\n",
+ "J = (math.pi/2.0)*(r**4) #polar moment of inertia\n",
+ "#Shear Stress\n",
+ "c_a = 75 #mm\n",
+ "tou_a = (T3*c_a*1000)/J #tou = Tc/J\n",
+ "c_b = 15 #mm\n",
+ "tou_b = (T3*c_b*1000)/J #tou = Tc/J\n",
+ "\n",
+ "#Display\n",
+ "print'The shear stress developed at A = ',round(tou_a*10,1),\"ksi\"\n",
+ "print'The shear stress developed at B = ',round(tou_b*10,2),\"ksi\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The shear stress developed at A = 18.9 ksi\n",
+ "The shear stress developed at B = 3.77 ksi\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.3 Page No 189"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "di = 80 #mm, inside diameter\n",
+ "ri = 40/1000.0 #m, inside radius\n",
+ "d0 = 100 #mm, outside diameter\n",
+ "ro = d0/2000.0 #m outside radius\n",
+ "F = 80 #N, force\n",
+ "l1 = 0.2 #m, length\n",
+ "l2 = 0.3 #m\n",
+ "\n",
+ "#Internal Torque\n",
+ "T = F*(l1+l2)\n",
+ "#Section Property\n",
+ "import math\n",
+ "J = (math.pi/2.0)*((ro**4)-(ri**4))\n",
+ "#Shear Stress\n",
+ "c_o = 0.05#m\n",
+ "tou_o = (T*c_o)/(J*10**6)\n",
+ "c_i = 0.04 #m\n",
+ "tou_i = (T*c_i)/(J*10**6)\n",
+ "\n",
+ "#Display\n",
+ "print'The shear stress in the inner wall = ',round(tou_i,3),\"MPa\"\n",
+ "print'The shear stress in the outer wall = ',round(tou_o,3),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The shear stress in the inner wall = 0.276 MPa\n",
+ "The shear stress in the outer wall = 0.345 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.4 Page No 191"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "P = 5 #hp\n",
+ "N = 175 #rpm\n",
+ "allow_shear = 14.5 #ksi\n",
+ "\n",
+ "#Calculations\n",
+ "import math\n",
+ "P_=P*550 #ftlb/s\n",
+ "ang_vel = (2*math.pi*N)/60.0 # rad/s\n",
+ "T = P_/ang_vel #P = T*angular velocity\n",
+ "c = ((2*T*12)/(math.pi*allow_shear*1000))**(1/3.0)\n",
+ "d =2*c\n",
+ "\n",
+ "#Display\n",
+ "print'The required diameter of the shaft = ',round(d,3),\"inch\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The required diameter of the shaft = 0.858 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.5 Page No 205"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "E = 80*10**9 #N/m**2, longitudinal stress\n",
+ "d = 14/1000.0 #m, diameter\n",
+ "r = d/2.0 #m, radius\n",
+ "R = 100 #mm\n",
+ "l_ac = 0.4 #m, length\n",
+ "l_cd = 0.3 #m\n",
+ "l_de = 0.5 #m\n",
+ "T_c = 280 #Nm, torque\n",
+ "T_a = 150 #Nm\n",
+ "T_d = 40 #Nm\n",
+ "T_ac = T_a #Nm\n",
+ "\n",
+ "#Calculation\n",
+ "T_cd = T_ac - T_c \n",
+ "T_de = T_cd - T_d\n",
+ "#Angle of Twist\n",
+ "import math\n",
+ "J = (math.pi/2.0)*(r**4)\n",
+ "phiA=T_ac*l_ac/(J*E)+T_cd*l_cd/(J*E)+T_de*l_de/(J*E)\n",
+ "Sp=phiA*R\n",
+ "\n",
+ "#Display\n",
+ "print'The angle of twist of the shaft = ',round(phiA,3),\"rad\"\n",
+ "print'The displacement of tooth P on gear A =',round(Sp,3),\"mm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The angle of twist of the shaft = -0.212 rad\n",
+ "The displacement of tooth P on gear A = -21.212 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 28
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.6 Page No 206"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "T = 45\t\t #N, torque\n",
+ "G = 80 \t\t#GPa, pressure\n",
+ "d = 20/1000.0\t\t #m\n",
+ "r = d/2.0\t #m\n",
+ "l_dc = 1.5\t\t #m\n",
+ "l_ab = 2 \t\t#m\n",
+ "r1 = 75/1000.0\t\t #m\n",
+ "r2 = 150/1000.0\t\t #m\n",
+ "\n",
+ "#Calculation\n",
+ "#Internal Torque\n",
+ "F = T/r2\n",
+ "T_d_x = F*r1\n",
+ "#Angle of twist\n",
+ "import math\n",
+ "J = (math.pi/2)*(r**4)\n",
+ "phi_c = (T*l_dc)/(2*J*G*10**9)\n",
+ "phi_b = (phi_c*r1)/r2\n",
+ "phi_ab = (T*l_ab)/(J*G*10**9)\n",
+ "phi_a = phi_b + phi_ab\n",
+ "\n",
+ "#Display\n",
+ "print'The angle of twist of end A of shaft AB = ',round(phi_a,3),\"rad\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The angle of twist of end A of shaft AB = 0.085 rad\n"
+ ]
+ }
+ ],
+ "prompt_number": 31
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.7 Page No 207"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "d = 2 #inch, diameter\n",
+ "r = d/2.0 #radius\n",
+ "c = d/2.0\n",
+ "l_buried = 600\t\t #mm, buried length\n",
+ "G = 5500*10**3 \t\t#MPa\n",
+ "F = 1 \t\t#N\n",
+ "l_handle= 150 \t\t#mm\n",
+ "l_ab = 36 \t\t#inch\n",
+ "\n",
+ "#Internal Torque\n",
+ "T_ab = F*2*l_handle\n",
+ "t = T_ab/l_buried\n",
+ "#Maximum Shear Stress\n",
+ "import math\n",
+ "J = (math.pi/2.0)*(r**4)\n",
+ "tou_max = (T_ab*c)/(J)\n",
+ "\n",
+ "#Angle of Twist\n",
+ "from scipy import integrate\n",
+ "def f(x):\n",
+ " return(x)\n",
+ "x=integrate.quad(f,0,24) #Strain formula for short line segment = delta(sdash) =(1+e_z)delta(s) \n",
+ "X= x[0]\n",
+ "phi_a = ((T_ab*l_ab)+(50*X/4.0))/(J*G) \n",
+ "\n",
+ "#Display\n",
+ "print'The maximum shear stress in the post =',round(tou_max,1),\"psi\"\n",
+ "print'The angle of twist at the top of the post = ',round(phi_a,5),\"rad\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum shear stress in the post = 191.0 psi\n",
+ "The angle of twist at the top of the post = 0.00167 rad\n"
+ ]
+ }
+ ],
+ "prompt_number": 50
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.8 Page No 216"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "d = 20/1000.0 #m, diameter\n",
+ "r = d/2.0\n",
+ "l_bc = 0.2\n",
+ "l_cd = 1.5\n",
+ "l_da = 0.3\n",
+ "T_c = 800 #Nm, torque\n",
+ "T_d = -500 #Nm\n",
+ "\n",
+ "#Calculation\n",
+ "#Eqn 1 300 = T_a + T_b\n",
+ "#Compatibility\n",
+ "#Eqn 2\n",
+ "coeff_Tb = -l_bc\n",
+ "coeff_Ta = l_cd + l_da\n",
+ "#Solving Equations simultaneously using matrices\n",
+ "T_b = 645\n",
+ "T_a = -345\n",
+ "\n",
+ "#Display\n",
+ "print'The reaction at A = ',T_a,\"Nm\"\n",
+ "print'The reaction at B = ',T_b,\"Nm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The reaction at A = -345 Nm\n",
+ "The reaction at B = 645 Nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 54
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.9 Page No 217"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "T = 250 #Nm, torque\n",
+ "G_st = 80 #GPa, pressure\n",
+ "G_br = 36 #GPa\n",
+ "ri = 0.5 #inch, inside radius\n",
+ "ro = 1 #inch, outside radius\n",
+ "l_ab = 1.2 #m\n",
+ "\n",
+ "#Equilibrium\n",
+ "# -Tst-Tbr+250Nm = 0\n",
+ "coeff1_st = -1\n",
+ "coeff1_br = -1\n",
+ "b1 = -250\n",
+ "\n",
+ "#Compatibility\n",
+ "#phi = TL/JG\n",
+ "import math\n",
+ "J1 = (math.pi/2.0)*(ro**4 - ri**4)\n",
+ "J2 = (math.pi/2.0)*(ri**4)\n",
+ "coeff2_st = 1/(J1*G_st*10**3)\n",
+ "coeff2_br = -1/(J2*G_br*10**3)\n",
+ "b2 = 0\n",
+ "\n",
+ "#Solving the above two equations simultaneously using matrices\n",
+ "T_st = 2911.5 #lb-inch\n",
+ "T_br = 88.5 #lb-inch\n",
+ "\n",
+ "shear_br_max = (T_br*10**3*ri)/(J2) #tou = (Tr)/J\n",
+ "shear_st_min = (T_st*10**3*ri)/(J1) #tou = (Tr)/J\n",
+ "shear_st_max = (T_st*10**3*ro)/(J1) #tou = (Tr)/J\n",
+ "\n",
+ "shear_strain = shear_br_max / G_br\n",
+ "shear_strain = shear_strain\n",
+ "\n",
+ "#Display\n",
+ "print'The maximum shear stress experienced by Steel =',round(shear_st_max/1000),\"psi\"\n",
+ "print'The minimum shear stress experienced by Steel =',round(shear_st_min/1000),\"psi\"\n",
+ "print'The maximum shear stress experienced by Brass ',round(shear_br_max/1000),\"psi\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum shear stress experienced by Steel = 1977.0 psi\n",
+ "The minimum shear stress experienced by Steel = 989.0 psi\n",
+ "The maximum shear stress experienced by Brass 451.0 psi\n"
+ ]
+ }
+ ],
+ "prompt_number": 61
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.10 Page No 223"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "l = 4*12 #m, length\n",
+ "a = 1.5 #inch\n",
+ "tou_allow = 8000 #lb\n",
+ "phi_allow = 0.02 #rad\n",
+ "G = 3.7*10**6 #lb/inch**2, pressure\n",
+ "alpha = (60*math.pi)/180.0 #degrees\n",
+ " \n",
+ "#Calculations\n",
+ "T_shear1 = (tou_allow*a**3)/(20.0) # allowable shear stress = (20T)/(a**3)\n",
+ "T_twist1 = (phi_allow*a**4*G)/(46*l) #angle of twist =(46TL)/(a**4*G)\n",
+ "T1 = min(T_shear1, T_twist1)\n",
+ " \n",
+ "#Circular Cross Section\n",
+ "c_ = (a*a*math.sin(alpha))/(math.pi*2)\n",
+ "c = math.sqrt(c_)\n",
+ "\n",
+ "J = (math.pi/2.0)*(c**4)\n",
+ "T_shear2 = (tou_allow*J)/(c*1000)\n",
+ "T_twist2 = (phi_allow*J*G*10**3)/(l*10**6)\n",
+ "T2 = min(T_shear2, T_twist2)\n",
+ "\n",
+ "#Display\n",
+ "print'The largest torque that applied at the end of the triangular shaft ',round(T1,0),\"lb-in\"\n",
+ "print'The largest torque that applied at the end of the circular shaft ',round(T2*1000,0),\"lb-in\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The largest torque that applied at the end of the triangular shaft 170.0 lb-in\n",
+ "The largest torque that applied at the end of the circular shaft 233.0 lb-in\n"
+ ]
+ }
+ ],
+ "prompt_number": 69
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.12 Page No 228"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "#The given dimension are\n",
+ "l_cd = 0.5 #m\n",
+ "l_de = 1.5 #m\n",
+ "h =60/1000.0 #m\n",
+ "w = 40/1000.0 #m\n",
+ "t_h = 3/1000.0 #m\n",
+ "t_w = 5/1000.0 #m\n",
+ "T_c = 60 #Nm\n",
+ "T_d = 25 #Nm\n",
+ "G = 38*10**9 #N/m**2\n",
+ "T1 = T_c - T_d\n",
+ "\n",
+ "#Calculation\n",
+ "#Average Shear Stress\n",
+ "area = (w-t_w)*(h-t_h)\n",
+ "shear_a = T1/(2*t_w*area*10**6)\n",
+ "shear_b = T1/(2*t_h*area*10**6)\n",
+ "\n",
+ "#Angle of Twist\n",
+ "phi=(T_c*l_cd/(4*area**2*G))*((2*57/5.0)+(2*35/3.0))+(T1*l_de/(4*area**2*G))*((2*57/5.0)+(2*35/3.0))\n",
+ "\n",
+ "#Display\n",
+ "print'The average shear stress of the tube at A = ',round(shear_a,2),\"MPa\"\n",
+ "print'The average shear stress of the tube at B = ',round(shear_b,2),\"MPa\"\n",
+ "print'The angle of twist of end C = ',round(phi,5),\"rad\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The average shear stress of the tube at A = 1.75 MPa\n",
+ "The average shear stress of the tube at B = 2.92 MPa\n",
+ "The angle of twist of end C = 0.00629 rad\n"
+ ]
+ }
+ ],
+ "prompt_number": 78
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.13 Page No 236"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "fillet_r = 6 #mm, fillet radius\n",
+ "D = 40/1000.0 #m, diameter\n",
+ "d = 20/1000.0 #m\n",
+ "T = 30 #Nm\n",
+ "\n",
+ "#Calculation\n",
+ "D_d = D/d \n",
+ "r_d = fillet_r/d \n",
+ "k = 1.3\n",
+ "#Maximum Shear Stress\n",
+ "import math\n",
+ "c = D/2.0\n",
+ "J = (math.pi/2.0)*(c**4)\n",
+ "max_shear = (k*T*c)/(J*10**6) # tou = K(Tc/J)\n",
+ "\n",
+ "#Display\n",
+ "print'The maximum shear stress in the shaft is = ',round(max_shear,1),\"MPa\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum shear stress in the shaft is = 3.1 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 83
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.14 Page No 242"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "ro = 50/1000.0 #m, outside radius\n",
+ "ri = 30/1000.0 #m inside radius\n",
+ "c = ro\n",
+ "shear = 20*10**6 #N/m**2\n",
+ "\n",
+ "#Maximum Elastic Torque\n",
+ "import math\n",
+ "J = (math.pi/2.0)*((ro**4)-(ri**4))\n",
+ "T_y = (shear*J)/c # tou = Tc/J\n",
+ "T_y = T_y/1000.0 #in kN\n",
+ "\n",
+ "#Plastic Torque\n",
+ "x0 = 0.03\n",
+ "x1 = 0.05\n",
+ "\n",
+ "from scipy import integrate\n",
+ "def f(rho):\n",
+ " return(rho**2)\n",
+ "I=integrate.quad(f,x0,x1) #Strain formula for short line segment = delta(sdash) =(1+e_z)delta(s) \n",
+ "\n",
+ "Tp =(2*math.pi*I[0]*shear)\n",
+ "Tp_= Tp/1000.0\n",
+ "#Outer Shear Strain\n",
+ "strain = (0.286*10**-3*ro)/(ri)\n",
+ "\n",
+ "#Display\n",
+ "print'The maximum torque that can be applied to the shaft ',round(T_y,2),\"kNm\"\n",
+ "print'The plastic torque that can be applied to the shaft',round(Tp_,2),\"kNm\" \n",
+ "print'The minimum shear strain at the outer radius of the shaft ',round(strain,6),\"rad\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum torque that can be applied to the shaft 3.42 kNm\n",
+ "The plastic torque that can be applied to the shaft 4.11 kNm\n",
+ "The minimum shear strain at the outer radius of the shaft 0.000477 rad\n"
+ ]
+ }
+ ],
+ "prompt_number": 104
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.15 Page No 243"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "r = 20/1000.0 #m, radius\n",
+ "l = 1.5 #m, length\n",
+ "phi = 0.6 #rad\n",
+ "shear_y = 75*10**6 #N/m**2\n",
+ "\n",
+ "#Calculations\n",
+ "max_shear_strain = (phi*r)/(l) #phi = (strain*L)/r\n",
+ "strain_y = 0.0016\n",
+ "r_y = (r*strain_y)/(max_shear_strain) #by ratios\n",
+ "#T= (math.pi*shear_y)*(4c**3 - r_y**3)/6.0\n",
+ "import math\n",
+ "c = r\n",
+ "T = (math.pi*shear_y)*(4*c**3 - r_y**3)/6.0\n",
+ "T = T/1000.0\n",
+ "\n",
+ "#Display\n",
+ "print'The torque needed to twist the shaft by 0.6 rad ',T,\"kNm\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The torque needed to twist the shaft by 0.6 rad 1.25412378731 kNm\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.16 Page No 244"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "l = 5 #m, length\n",
+ "G = 12*10**3 #GPa\n",
+ "co = 2 #inch\n",
+ "ci = 1 #inch\n",
+ "shear_y = 12 #N/mm**2\n",
+ "strain_y = 0.002 #rad, strain\n",
+ "\n",
+ "#Plastic Torque\n",
+ "import math\n",
+ "T_p = ((2*math.pi)*(co**3 - ci**3)*shear_y)/3.0\n",
+ "phi_p = (strain_y*l*shear_y)/ci\n",
+ "J = (math.pi/2.0)*(co**4 - ci**4)\n",
+ "shear_r = (T_p*co)/J\n",
+ "shear_i = (shear_r*ci)/(co)# shear = Tc/J\n",
+ "G = shear_y/strain_y \n",
+ "phi_dash = (T_p*l*10**3)/(J*G) #phi = TpL/JG\n",
+ "phi = phi_p - phi_dash\n",
+ "\n",
+ "\n",
+ "#Display\n",
+ "print'The plastic torque Tp = ',round(T_p,1),\"kip in\"\n",
+ "print'shear stress at inner wall is ',round(shear_i,2),\"ksi\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The plastic torque Tp = 175.9 kip in\n",
+ "shear stress at inner wall is 7.47 ksi\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter6.ipynb b/Mechanics_of_Materials/Chapter6.ipynb
new file mode 100755
index 00000000..7a27f067
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter6.ipynb
@@ -0,0 +1,798 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 6:Bending"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.10 Page No 271"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "Lab=12.0 #ft, length\n",
+ "f=120 #lb/ft , force\n",
+ "shear=240 #shear at x=0\n",
+ "\n",
+ "#Calculation\n",
+ "a=f/Lab #a=w/x\n",
+ "x=(shear*2/(a))**(1/2.0)\n",
+ "#Moment diagram\n",
+ "Mmax=shear*x-(0.5)*(a*x)*x*(1/3.0)*x\n",
+ "\n",
+ "#Result\n",
+ "print\"The Maximum Bending Moment is\",round(Mmax,0),\"lb-ft\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Maximum Bending Moment is 1109.0 lb-ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.11 Page No:289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "b = 6.0 #inch, length\n",
+ "h = 12.0 #inch\n",
+ "sigma_max = 2.0 #ksi\n",
+ "c = b\n",
+ "\n",
+ "#Part (a):\n",
+ "I = (1/12.0)*b*h**3\n",
+ "M1 = (sigma_max*I)/(c) #sigma_max = Mc/I Flexure Formula\n",
+ "\n",
+ "F = (0.5*sigma_max*b*b)\n",
+ "c = (2/3.0)*(b) #distance between centroids of each volume.\n",
+ "d=2*c #distance\n",
+ "M2 = F*d\n",
+ "\n",
+ "#Display:\n",
+ "print\"The internal moment M calculated using : \"\n",
+ "print\"a)The flexure formula = \",M1,\"kip-inch or \",M1/12.0,\"kip-ft\"\n",
+ "print\"b)The resultant of the stress distribution using the basic principles \",M2,\"kip-inch or\",M2/12.0,\"kip-ft\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The internal moment M calculated using : \n",
+ "a)The flexure formula = 288.0 kip-inch or 24.0 kip-ft\n",
+ "b)The resultant of the stress distribution using the basic principles 288.0 kip-inch or 24.0 kip-ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.12 Page No:290"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "udl = 5 #kN/m, force\n",
+ "l1 = 3 #m , lenght\n",
+ "l2 = 6 #m\n",
+ "t = 20/1000.0 #mm\n",
+ "yb = 0.15 #m\n",
+ "\n",
+ "#Section Property:\n",
+ "I_bar1 = (1/12.0)*(0.25)*(t**3)\n",
+ "Ad2 = (0.25)*(0.02)*(yb+(t/2.0))**2\n",
+ "I_bar2 = (1/12.0)*(0.02)*(0.3**3)\n",
+ "I = 2*(I_bar1 + Ad2) + I_bar2\n",
+ "\n",
+ "#Bending stress:\n",
+ "c = 0.15 + t\n",
+ "M= 22.5 #kNm\n",
+ "sigma_max = (M*c)/(I*1000)\n",
+ "sigma_B = (M*yb)/(I*1000)\n",
+ "\n",
+ "#Display:\n",
+ "print\"The absolute maximum bending stress is \",round(sigma_max,1),\"MPa\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The absolute maximum bending stress is 12.7 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.13 Page No:291"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "t1 = 15/1000.0 #m, thickness\n",
+ "t2 = 20/1000.0 #m\n",
+ "l = 250/1000.0 #m\n",
+ "b = 200/1000.0 #m\n",
+ "P = 2.4 #kN, load\n",
+ "l_a = 2 #m\n",
+ "l_b = 1 #m\n",
+ "\n",
+ "#Internal Moment:\n",
+ "y1 = b/2.0\n",
+ "y2 = t2/2.0\n",
+ "A = (2*t1*b)+(t2*l)\n",
+ "y_bar = ((2*y1*t1*b)+(y2*t2*l))/A\n",
+ "M = (P*l_a)+(1*y_bar)\n",
+ "\n",
+ "#Section Property:\n",
+ "I1 = (1/12.0)*(l*t2**3) + (l*t2*(y_bar - y2)**2)\n",
+ "I2 = (1/12.0)*(t1*b**3) + (t1*b*(y1 - y_bar)**2)\n",
+ "I =I1+ 2*I2\n",
+ "\n",
+ "#Maximum Bending Stress:\n",
+ "c = b - y_bar\n",
+ "sigma_max = (M*c)/(I*1000)\n",
+ "\n",
+ "#Display:\n",
+ "print'The maximum bending stress at section a-a is',round(sigma_max,1),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum bending stress at section a-a is 16.2 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 35
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.14 Page No:292"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "b = 60/1000.0 #m, breadth\n",
+ "h = 30/1000.0 #m, height\n",
+ "M = 40 #Nm, moment\n",
+ "c1= h/2.0\n",
+ "rib_t = 5/1000.0 #m\n",
+ "rib_w = 10/1000.0 #m\n",
+ "\n",
+ "#Without Ribs:\n",
+ "I1 = (1/12.0)*(b*h**3)\n",
+ "sigma_max1 = (M*c1)/(I1*10**6)\n",
+ "\n",
+ "#With Ribs:\n",
+ "y1 = c1\n",
+ "y2 = h+(rib_t/2.0)\n",
+ "A1 = h*b\n",
+ "A2 = rib_t*rib_w\n",
+ "y_bar = ((y1*A1)+2*(y2*A2))/(A1 + 2*A2)\n",
+ "\n",
+ "c2 = h+rib_t - y_bar\n",
+ "I2 = I1 + (b*h*(y_bar - y1)**2)\n",
+ "I3 = (1/12)*rib_w*rib_t**3 + (rib_w*rib_t*(y2 - y_bar)**2)\n",
+ "I = I2 + 2*I3\n",
+ "sigma_max2 = (M*c2)/(I*10**6)\n",
+ "\n",
+ "if(sigma_max2>sigma_max1):\n",
+ " print\"The maximum normal stress in the member without ribs\",round(sigma_max1,2),\"MPa\" \n",
+ " print\"The maximum normal stress in the member with ribs = \",round(sigma_max2,2),\"MPa\"\n",
+ " print\"The ribs should be omitted.\"\n",
+ " \n",
+ "else:\n",
+ " print\"no\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum normal stress in the member without ribs 4.44 MPa\n",
+ "The maximum normal stress in the member with ribs = 4.65 MPa\n",
+ "The ribs should be omitted.\n"
+ ]
+ }
+ ],
+ "prompt_number": 39
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.15 Page No:306"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "M = 12 #kNm, moment\n",
+ "l_bc = 0.2 #m, length\n",
+ "l_be = 0.4 #m\n",
+ "\n",
+ "#Internal Moment Components:\n",
+ "import math\n",
+ "My = (-4/5.0)*M\n",
+ "Mz = (3/5.0)*M\n",
+ "\n",
+ "Iy = (1/12.0)*(l_be*l_bc**3)\n",
+ "Iz = (1/12.0)*(l_bc*l_be**3) \n",
+ "\n",
+ "#Bending Stress:\n",
+ "sigma_B = (-Mz*1000*(l_be/2.0))/Iz + (My*1000*(-l_bc/2.0))/Iy\n",
+ "sigma_B = sigma_B/10.0**6\n",
+ "sigma_C = (-Mz*1000*(l_be/2.0))/Iz + (My*1000*(l_bc/2.0))/Iy\n",
+ "sigma_C = sigma_C/10.0**6\n",
+ "sigma_D = (-Mz*1000*(-l_be/2.0))/Iz + (My*1000*(l_bc/2.0))/Iy\n",
+ "sigma_D = sigma_D/10.0**6\n",
+ "sigma_E = (-Mz*1000*(-l_be/2.0))/Iz + (My*1000*(-l_bc/2.0))/Iy\n",
+ "sigma_E = sigma_E/10.0**6\n",
+ "\n",
+ "#Orientation of Nuetral Axis:\n",
+ "z = (0.45)/(sigma_E + sigma_B)\n",
+ "\n",
+ "#theta = -atan(4/3.0)\n",
+ "import math\n",
+ "tanA = (Iz/Iy)*(-4/3.0)\n",
+ "alpha = math.atan(tanA)\n",
+ "alpha = alpha*(180/math.pi)\n",
+ "\n",
+ "\n",
+ "#Display:\n",
+ "print\"The normal stress at B\",sigma_B,\"MPa\"\n",
+ "print\"The normal stress at C \",sigma_C,\"MPa\"\n",
+ "print\"The normal stress at D \",sigma_D,\"MPa\"\n",
+ "print\"The normal stress at E \",sigma_E,\"MPa\"\n",
+ "print\"The orientation of the nuetral axis \",round(alpha,1),\"degree\"\n",
+ " \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The normal stress at B 2.25 MPa\n",
+ "The normal stress at C -4.95 MPa\n",
+ "The normal stress at D -2.25 MPa\n",
+ "The normal stress at E 4.95 MPa\n",
+ "The orientation of the nuetral axis -79.4 degree\n"
+ ]
+ }
+ ],
+ "prompt_number": 29
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.16 Page No:308"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "import math\n",
+ "M =20 #kN, moment\n",
+ "Iy = 0.96*10**-3 #m**4, moment of inertia\n",
+ "Iz = 7.54*10**-3 #m**4\n",
+ "theta = 57.1*(math.pi/180.0) #angle\n",
+ "\n",
+ "#Calculation\n",
+ "#Internal moment Components:\n",
+ "My = M*sin(theta) \n",
+ "Mz = M*cos(theta) \n",
+ "#Bending Stress:\n",
+ "y_p = -0.2 #y Coordinate of P\n",
+ "z_p = 0.35 #z Coordinate of P\n",
+ "\n",
+ "theta1 = (math.pi/2)-(theta)\n",
+ "yp = -z_p*math.sin(theta1)+ y_p*math.cos(theta1)\n",
+ "zp = z_p*math.cos(theta1) + y_p*math.sin(theta1)\n",
+ "\n",
+ "#Eq 6-17\n",
+ "\n",
+ "sigma_p = ((Mz*-yp)/Iz) + ((My*zp)/Iy) \n",
+ "sigma_p = sigma_p/10.0**3\n",
+ "#Orientation of the Nuetral Axis:\n",
+ "alpha = math.atan((Iz/Iy)*math.tan(theta))\n",
+ "alpha = alpha*(180/math.pi)\n",
+ "\n",
+ "#Display:\n",
+ "print\"The maximum normal stress at point P is\",round(sigma_p,1),\"Mpa\"\n",
+ "print\"The orientation of the nuetral axis is\",round(alpha,1),\"degree\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum normal stress at point P is 3.8 Mpa\n",
+ "The orientation of the nuetral axis is 85.3 degree\n"
+ ]
+ }
+ ],
+ "prompt_number": 34
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.17 Page No:316"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "M = 2 #kNm, moment\n",
+ "Ew = 12 #GPa, Pressure\n",
+ "Est = 200.0 #GPa\n",
+ "bw = 150/1000.0 #m\n",
+ "t = 20/1000.0 #m\n",
+ "rib = 9/1000.0#m\n",
+ "\n",
+ "#Section Properties:\n",
+ "n = (Ew/Est)\n",
+ "bst = n*bw\n",
+ "y1 = t/2.0\n",
+ "A1 = t*bw\n",
+ "y2 = bw/2.0 + t\n",
+ "A2 = rib*bw\n",
+ "\n",
+ "y_bar = (y1*A1 +y2*A2)/(A1+A2)\n",
+ "I1 = (1/12.0)*(bw)*(t**3) + A1*(y_bar - y1)**2\n",
+ "I2 = (1/12.0)*(rib)*(bw**3) + A2*(y2-y_bar)**2\n",
+ "Ina = I1+I2\n",
+ "\n",
+ "#Normal Stress:\n",
+ "sigma_B = (M*(bw+t-y_bar))/(Ina*1000)\n",
+ "sigma_C = (M*(y_bar))/(Ina*1000)\n",
+ "\n",
+ "#Normal Stress in the wood:\n",
+ "sigmaB = n*sigma_B\n",
+ "\n",
+ "#Display:\n",
+ "print\"The normal stress at point B = \",round(sigma_B,1),\"MPa\"\n",
+ "print\"The normal stress at point C = \",round(sigma_C,1),\"MPa\"\n",
+ "print\"The normal stress at point B in the wood =\",round(sigmaB,2),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The normal stress at point B = 28.6 MPa\n",
+ "The normal stress at point C = 7.8 MPa\n",
+ "The normal stress at point B in the wood = 1.71 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 42
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.18 Page No:308"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "M = 60 #kip, moment \n",
+ "Est = 29*10**3 #GPa, stress\n",
+ "Econc = 3.6*10**3 #GPa\n",
+ "d = 25.0 #mm, diameter\n",
+ "r = d/2.0 #radius\n",
+ "w = 12 #inch, width\n",
+ "ht =16 #inch, height\n",
+ "\n",
+ "#Section Properties:\n",
+ "import math\n",
+ "n = Est/Econc\n",
+ "Ast = 2*math.pi*r**2\n",
+ "A = n*Ast\n",
+ "\n",
+ "#h**2+2.11h-33.7=0\n",
+ "#Constants (a,b,c) of quadratic no\n",
+ "a=1\n",
+ "b=2.11\n",
+ "c=-33.7\n",
+ "d=b**2-4*a*c\n",
+ "x1 = (-b+math.sqrt(b**2-4*a*c))/2*a\n",
+ "x2 = (-b-math.sqrt(b**2-4*a*c))/2*a\n",
+ "I = (1/12.0)*(w*x1**3) +w*x1*(x1/2.0)**2 + 12.65*(ht - x1)**2\n",
+ "\n",
+ "#Normal Stress:\n",
+ "sigma_conc_max = (M*12*x1)/(I)\n",
+ "sigma_conc = (M*12*(ht-x1))/(I)\n",
+ "sigma_st = n*sigma_conc\n",
+ "\n",
+ "#Display:\n",
+ "print\"The normal stress in each steel reinforcing rod = \",round(sigma_st,1),\"ksi\"\n",
+ "print\"The maximum normal stress in the concrete = \",round(sigma_conc_max,2),\"ksi\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The normal stress in each steel reinforcing rod = 31.9 ksi\n",
+ "The maximum normal stress in the concrete = 1.72 ksi\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.19 Page No:324"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "#The given radius are\n",
+ "ri = 200/1000.0 #m\n",
+ "r1 = 250/1000.0 #m\n",
+ "ro = 280/1000.0 #m\n",
+ "M = 4 #kNm\n",
+ "a = 0.05 #m\n",
+ "h = 0.03 #m\n",
+ "\n",
+ "#Section Properties:\n",
+ "import math\n",
+ "A1 = a**2 \n",
+ "A2 = (0.5*a*h)\n",
+ "A = A1+A2\n",
+ "r_avg1 = (r1+ri)/2.0\n",
+ "r_avg2 = r1+(h/3.0)\n",
+ "r_bar =((r_avg1*A1)+(r_avg2*A2))/A\n",
+ "\n",
+ "int_dA_r1 = a*math.log(r1/ri)\n",
+ "int_dA_r2 = (a*ro*math.log(ro/r1))/(ro-r1) - a\n",
+ "R = (A)/(int_dA_r1+ int_dA_r2)\n",
+ "k= r_bar - R\n",
+ "\n",
+ "#Normal Stress:\n",
+ "sigma_B = (-M*(R-ri))/(A*ri*k*1000)\n",
+ "sigma_A = (-M*(R-ro))/(A*ro*k*1000)\n",
+ "sigma = max(abs(sigma_B),abs(sigma_A))\n",
+ "\n",
+ "#Display:\n",
+ "print\"The maximum normal stress in the bar =\",round(sigma,0),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum normal stress in the bar = 129.0 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 46
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.20 Page No:328"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "M = 5 #kNm, moment\n",
+ "sigma_y = 500 #MPa, stress\n",
+ "r = 16 #mm, radius\n",
+ "h = 80.0 #mm, height\n",
+ "w = 120 #mm, width\n",
+ "r_h = r/h\n",
+ "w_h = w/h\n",
+ "k = 1.45 \n",
+ "c = h/(2000.0)\n",
+ "t = 20/1000.0 #m\n",
+ "\n",
+ "#Calculations:\n",
+ "I = (1/12.0)*(t)*(h/1000.0)**3\n",
+ "sigma_max = (k*M*c)/(I*1000)\n",
+ "\n",
+ "#Display:\n",
+ "print\"The maximum normal stress in the steel =\",round(sigma_max,0),\"Mpa\"\n",
+ " \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum normal stress in the steel = 340.0 Mpa\n"
+ ]
+ }
+ ],
+ "prompt_number": 50
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.21 Page No:341"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "sigma_y = 36 #ksi, stress\n",
+ "t = 0.5 #inch, thickness\n",
+ "w = 8 #inch, width\n",
+ "h = 9 #inch, height\n",
+ "\n",
+ "#Maximum Elastic Moment:\n",
+ "yy = (h+t)/2.0\n",
+ "I1 = (1/12.0)*(w*t**3) + (w*t*yy**2)\n",
+ "I = (1/12.0)*(t*h**3) + 2*(I1)\n",
+ "c = 5.0 #mm\n",
+ "\n",
+ "My = (sigma_y*I)/(c) #Flexure Formula\n",
+ "#Plastic Moment:\n",
+ "C1= sigma_y*t*(h/2.0)\n",
+ "C2= sigma_y*t*(w)\n",
+ "Mp = (2*2.25*C1) + (2*yy*C2)\n",
+ "\n",
+ "#Shape Factor:\n",
+ "k = Mp/My\n",
+ "\n",
+ "#Display:\n",
+ "print\"The shape factor for the beam = \",round(k,2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The shape factor for the beam = 1.14\n"
+ ]
+ }
+ ],
+ "prompt_number": 60
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.22 Page no 342"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "sigma_y = 250 #MPa, bending stress\n",
+ "t = 15/1000.0 #m, thickness\n",
+ "w = 100/1000.0 #m, width\n",
+ "h = 120/1000.0 #m, height\n",
+ "c = 10/1000.0 #m\n",
+ "\n",
+ "#Calculations:\n",
+ "d = ((sigma_y*t*w)+(sigma_y*t*h))/(sigma_y*t*2)\n",
+ "T = sigma_y*t*d*10**3\n",
+ "C1 = sigma_y*t*c*10**3\n",
+ "C2 = sigma_y*t*w*10**3\n",
+ "Mp = (T*d/2.0)+(C1*c/2.0)+(C2*(c+t/2.0))\n",
+ "\n",
+ "#Display:\n",
+ "print\"The plastic moment that can be resisted by the beam = \",round(Mp,1),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The plastic moment that can be resisted by the beam = 29.4 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 62
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.23 Page no 343"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "sigma_y = 36 #ksi, bending stress\n",
+ "t = 12.5 #mm, thickness\n",
+ "w = 8 #inch, width\n",
+ "h = 9 #inch, height\n",
+ "c = (h/2.0)+t\n",
+ "I = 211 #inch**4, moment of inertia\n",
+ "Mp = 1732.5 #kip\n",
+ "\n",
+ "#Calculations:\n",
+ "sigma_allow = (Mp*c)/(I)\n",
+ "y = (sigma_y*c)/(sigma_allow)\n",
+ "\n",
+ "#Display:\n",
+ "print\"The point of zero normal stress = \",round(y,2),\"inch\"\n",
+ " \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The point of zero normal stress = 4.38 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 65
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 6.24,Page no :344"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "ep1 = 0.01 #Strain at top\n",
+ "ep2 = 0.05 #strain at bottom\n",
+ "sig1 = 150 #kip\n",
+ "sig2 = 150 #N/mm**2\n",
+ "sig3 = 40 #N/mm**2\n",
+ "y = 0.3 #in\n",
+ "h = 3 #in\n",
+ "w = 2 #in\n",
+ "\n",
+ "#Calculations:\n",
+ "yy = (h/2.0)-y\n",
+ "T1 = (1/2.0)*(sig3*yy*w)\n",
+ "y1 = y +(2/3.0)*(yy)\n",
+ "T2 = yy*sig1*w\n",
+ "y2 = y+(0.5*yy)\n",
+ "T3 = (0.5*y*sig1*w)\n",
+ "y3 = (2/3.0)*(y)\n",
+ "M = 2*(T1*y1 + T2*y2 + T3*y3)\n",
+ "\n",
+ "#Display:\n",
+ "print\"The bending moment applied that will cause a strain of \",round(M,0),\"kip in\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The bending moment applied that will cause a strain of 772.0 kip in\n"
+ ]
+ }
+ ],
+ "prompt_number": 71
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter7.ipynb b/Mechanics_of_Materials/Chapter7.ipynb
new file mode 100755
index 00000000..2461bf06
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter7.ipynb
@@ -0,0 +1,390 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7:Transverse Shear"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.1 Page No 369"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "V = 4\t\t #kN, load\n",
+ "co = 0.05\t\t#mm, outside radius\n",
+ "ci = 0.02\t\t #mm, inside radius\n",
+ "t1 = 0.1 \t#mm, thickness\n",
+ "t2=0.06\n",
+ "\n",
+ "#Part (a)\n",
+ "#Section Properties\n",
+ "import math\n",
+ "Isolid=1/4.0*(math.pi)*co**4\n",
+ "Itube = 1/4.0*(math.pi)*(co**4-ci**4)\n",
+ "Qsolid=4*co/(3*math.pi)*(math.pi*co**2/2.0)\n",
+ "Qtube=4*co/(3*math.pi)*(math.pi*co**2/2.0)-4*ci/(3*math.pi)*(math.pi*ci**2/2.0)\n",
+ "Tsolid=V*10**3*Qsolid/(Isolid*t1)\n",
+ "Ttube=V*10**3*Qsolid/(Itube*t2)\n",
+ "\n",
+ "#Display\n",
+ "print\"The shear stress in solid = \",round(Tsolid/1000,1),\"KPa\"\n",
+ "print'The shear stress in tube = ',round(Ttube/1000000,2),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The shear stress in solid = 679.1 KPa\n",
+ "The shear stress in tube = 1.16 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.3 Page No 370"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "V = 80.0 \t\t\t#kN, load\n",
+ "thick_1 = 20/1000.0 \t#m, thickness\n",
+ "thick_2 = 15/1000.0 \t#m\n",
+ "l = 300/1000.0 \t\t#m, length\n",
+ "y = 100/1000.0 \t\t#m\n",
+ "h = 2*y\n",
+ "y_dash = y +thick_1/2.0\n",
+ "\n",
+ "#Part(a)\n",
+ "I1 = (thick_2*(h**3))/12.0\n",
+ "I2 = (l*(thick_1**3))/12.0\n",
+ "I3 = (l*thick_1*(y_dash)**2)\n",
+ "I = I1+2*(I2+I3) #Moment of inertia\n",
+ "Q_b = y_dash*l*thick_1\n",
+ "#At B'\n",
+ "tou_b_dash = (V*Q_b)/(I*l*1000)\n",
+ "#At B\n",
+ "tou_b = (V*Q_b)/(I*thick_2*1000)\n",
+ "\n",
+ "#At C\n",
+ "Q_c = (y_dash*l*thick_1)+(y*thick_2*y/2.0)\n",
+ "tou_c = (V*Q_c)/(I*thick_2*1000)\n",
+ "\n",
+ "#Display\n",
+ "print\"The shear stress at B dash = \",round(tou_b_dash,1),\"MPa\"\n",
+ "print\"The shear stress at B = \",round(tou_b,1),\"MPa\"\n",
+ "print\"The shear stress at C = \",round(tou_c,1),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The shear stress at B dash = 1.1 MPa\n",
+ "The shear stress at B = 22.6 MPa\n",
+ "The shear stress at C = 25.2 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.4 Page No 372"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "udl = 6.5\t\t #kN, force\n",
+ "l_bc = 8 \t\t#m, length\n",
+ "l = 150/1000.0\t\t#m\n",
+ "t = 30/1000.0\t\t#m, thickness\n",
+ "\n",
+ "#Calculation\n",
+ "#Internal Shear\n",
+ "w = udl*l_bc/2.0\n",
+ "l_wc = l_bc/4.0\n",
+ "l_bw = l_bc - l_wc\n",
+ "V = (w*l_bw)/l_bc\n",
+ "R_b = w - V\n",
+ "\n",
+ "#Section Properties\n",
+ "y1= l/2.0\n",
+ "A = (l*t)\n",
+ "y2= l+(t/2.0)\n",
+ "y_dash = (y1*A + y2*A)/(2*A)\n",
+ "I1 = (t*l**3)/12.0\n",
+ "I2 = (A*(y_dash-y1)**2)\n",
+ "I3 = (l*t**3)/12.0\n",
+ "I4 = (A*(y2 - y_dash)**2)\n",
+ "I = I1+I2+I3+I4\n",
+ "Q = ((l+t)-(t/2.0)-y_dash)*A\n",
+ "#Shear Stress\n",
+ "tou_max = (V*Q)/(I*t*1000)\n",
+ "\n",
+ "#Display\n",
+ "print\"The maximum shear stress in the glue necessary to hold the boards together\",round(tou_max,2),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum shear stress in the glue necessary to hold the boards together 4.88 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.5 Page No 380"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "V = 850 #kN, force\n",
+ "#The given dimension are\n",
+ "l1 =250/1000.0 #m.\n",
+ "l2 = 300/1000.0 #m\n",
+ "l3 = 125/1000.0 #m\n",
+ "t = 10/1000.0 #m\n",
+ "h = 200/1000.0 #m\n",
+ "\n",
+ "#Calculation\n",
+ "A1 = l1*t\n",
+ "A2 = l2*t\n",
+ "A3 = l3*t\n",
+ "y1 = l2+(t/2.0)\n",
+ "y2 = l2/2.0\n",
+ "y3 = h+(t/2.0)\n",
+ "y_dash = (2*y2*A2 + A1*y1 + A3*y3)/(2*A2 + A1 + A3)\n",
+ "I1 = ((l1*t**3)/12.0) +(A1 * (l2+(t/2.0)-y_dash)**2)\n",
+ "I2 = ((t*l2**3)/12.0) +(A2 * (y_dash - (l2/2.0))**2)\n",
+ "I3 = ((l3*t**3)/12.0) +(A1 * (h+(t/2.0)-y_dash)**2)\n",
+ "I = 2*I2 + I1 + I3\n",
+ "Q_b = (l2+(t/2.0) - y_dash)*A1 #Q = y'A'\n",
+ "Q_c = (h+(t/2.0) - y_dash)*A3 #Q = y'A'\n",
+ "\n",
+ "#Shear Flow\n",
+ "q_b = (V*Q_b)/I\n",
+ "q_c = (V*Q_c)/I\n",
+ "q_b = q_b/(2*1000)\n",
+ "q_c = q_c/(2*1000)\n",
+ "\n",
+ "#Display\n",
+ "print\"The shear flow at B, resisted by the glue is \",round(q_b,2),\"MN/m\"\n",
+ "print\"The shear flow at C, resisted by the glue is \",round(q_c,4),\"MN/m\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The shear flow at B, resisted by the glue is 1.31 MN/m\n",
+ "The shear flow at C, resisted by the glue is 0.0498 MN/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.6 Page No 381"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "V = 80 #lb, load\n",
+ "#The given dimension are\n",
+ "t = 1.5 #inch\n",
+ "a = 7.5 #inch\n",
+ "b = a-2*t #inch\n",
+ "F_nail= 30 #lb\n",
+ "\n",
+ "\n",
+ "#Calculation\n",
+ "#Section Properties\n",
+ "I = (a*a**3 - b*b**3 )/12.0\n",
+ "Q_b = (((a-2*t)/2.0)+(t/2.0))*a*t #Q = y'A'\n",
+ "Q_c = (((a-2*t)/2.0)+(t/2.0))*(a-2*t)*t #Q = y'A'\n",
+ "\n",
+ "#Shear Flow\n",
+ "q_b = (V*Q_b)/I\n",
+ "q_c = (V*Q_c)/I\n",
+ "s_b = F_nail/(q_b/2.0)\n",
+ "s_c = F_nail/(q_c/2.0)\n",
+ "\n",
+ "#Display\n",
+ "print\"The maximum spacing of nails required at B is =\",s_b,\"inch\"\n",
+ "print\"The maximum spacing of nails required at C is =\",s_c,\"inch\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum spacing of nails required at B is = 5.1 inch\n",
+ "The maximum spacing of nails required at C is = 8.5 inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.7 Page No 382"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "F = 40 #lb, force\n",
+ "#The other dimension are\n",
+ "s = 9.0 #inch\n",
+ "h = 5 #inch\n",
+ "t = 0.5 #inch\n",
+ "w = 3 #inch\n",
+ "w_3 = w/3.0 #inch\n",
+ "\n",
+ "#Calculations\n",
+ "I = (w*h**3)/12.0 - (2*w_3*(h - 2*t)**3)/12.0\n",
+ "#Case 1\n",
+ "Q1 = ((h-t)/2.0)*(w*t)\n",
+ "V1 =((F/s)*I)/Q1 #q = VQ/I\n",
+ "\n",
+ "#Case2\n",
+ "Q2 = ((h-t)/2.0)*(w_3*t)\n",
+ "V2 =((F/s)*I)/Q2 #q = VQ/I\n",
+ "\n",
+ "#Display\n",
+ "print\"The largest vertical shear that can be supported in Case 1 = \",round(V1,1),\"lb\"\n",
+ "print\"The largest vertical shear that can be supported in Case 2 = \",round(V2,1),\"lb\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The largest vertical shear that can be supported in Case 1 = 27.1 lb\n",
+ "The largest vertical shear that can be supported in Case 2 = 81.3 lb\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.8 Page No 381"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "V = 10 #lb, load\n",
+ "b1 = 6 #inch\n",
+ "h1 = 8 #inch\n",
+ "t = 1 #inch\n",
+ "b2 = b1-2*t\n",
+ "h2 = h1-2*t #inch\n",
+ "b3 = 4 #inch\n",
+ "\n",
+ "#Calculations\n",
+ "I = ((b2/2.0*(b1+t)**3))/12.0 +2*((b3+t)*t*((h1-t)/2.0)**2)\n",
+ "q_b = 0\n",
+ "Q_c = (h1-t)/2.0*(b3+t)*t \n",
+ "q_c = 1/2.0*(V*Q_c)/I\n",
+ "Q_d = 2*((h1-t)/4.0)*(h1-t)/2.0*t+(h1-t)/2.0*(b3+t)*t\n",
+ "q_d = 1/2.0*(V*Q_d)/I #Q = VQ/I\n",
+ "\n",
+ "#Display\n",
+ "print\"Variation of shear flow at B = \",q_b,\"kip/inch\"\n",
+ "print\"Variation of shear flow at C = \",round(q_c,3),\"kip/inch\"\n",
+ "print'Variation of shear flow at D = ',round(q_d,3),\"kip/inch\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Variation of shear flow at B = 0 kip/inch\n",
+ "Variation of shear flow at C = 0.487 kip/inch\n",
+ "Variation of shear flow at D = 0.828 kip/inch\n"
+ ]
+ }
+ ],
+ "prompt_number": 30
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter8.ipynb b/Mechanics_of_Materials/Chapter8.ipynb
new file mode 100755
index 00000000..366c18a1
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter8.ipynb
@@ -0,0 +1,412 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 8:Combined Loadings"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.1 Page No 408"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "di=4*12 #inch, diameter\n",
+ "ri=di/2.0 #Radius\n",
+ "t=0.5 #inch, thickness\n",
+ "sigma=20.0 #Ksi, stress\n",
+ "\n",
+ "#Calculation\n",
+ "#Cylindrical Pressure Vessel\n",
+ "p1=(t*sigma)/ri #sigma = pr/t\n",
+ "#Spherical Vessel\n",
+ "p2=(2*t*sigma)/(ri) #sigma = pr/2t\n",
+ "\n",
+ "#Display\n",
+ "print\"The maximum internal pressure the cylindrical pressure vessel can sustainis\",round(p1*1000,0),\"psi\"\n",
+ "print\"The maximum internal pressure a spherical pressure vessel can sustain is\",round(p2*1000,0),\"psi\"\n",
+ "\n",
+ " "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum internal pressure the cylindrical pressure vessel can sustainis 417.0 psi\n",
+ "The maximum internal pressure a spherical pressure vessel can sustain is 833.0 psi\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.2 Page No 414"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Determine stress at point B and C\n",
+ "\n",
+ "#Given\n",
+ "P = 15000.0 #N, force,\n",
+ "a = 40.0 #mm, length\n",
+ "b = 100.0 #mm, breadth\n",
+ "\n",
+ "#CAlculation\n",
+ "#Normal Force\n",
+ "A = a*b #Area\n",
+ "sigma = P/A\n",
+ "#Bending Moment\n",
+ "I = (a*b**3)/12.0 #I = (1/12)*bh**3\n",
+ "M = P*(b/2.0) \n",
+ "c = b/2.0\n",
+ "sigma_max =(M*c)/I\n",
+ "\n",
+ "#Superposition\n",
+ "x = ((sigma_max-sigma)*b)/((sigma_max+sigma)+(sigma_max-sigma))\n",
+ "sigma_b = (sigma_max-sigma)\n",
+ "sigma_c = (sigma_max + sigma)\n",
+ "\n",
+ "#Display\n",
+ "print\"The state of stress at B is(tensile)\",sigma_b,\"psi\"\n",
+ "print\"The state of stress at C is (compressive)\",sigma_c,\"psi\"\n",
+ "\n",
+ "\n",
+ " \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The state of stress at B is(tensile) 7.5 psi\n",
+ "The state of stress at C is (compressive) 15.0 psi\n"
+ ]
+ }
+ ],
+ "prompt_number": 21
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.3 Page No 415"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate the stress\n",
+ "\n",
+ "#Given:\n",
+ "ri =24 #inch, radius\n",
+ "t = 0.5 #inch\n",
+ "ro = ri+t\n",
+ "sp_wt_water = 62.4 #lb/ft**3\n",
+ "sp_wt_steel = 490 #lb/ft**3\n",
+ "l_a = 3 #m depth of point A from the top\n",
+ "\n",
+ "#Internal Loadings:\n",
+ "import math\n",
+ "v = (math.pi*l_a)*((ro/12.0)**2 - (ri/12.0)**2)\n",
+ "W_st = sp_wt_steel*v\n",
+ "p = sp_wt_water*l_a #lb/ft**2,Pascal's Law\n",
+ "p_=p*0.0069 #psi\n",
+ "#Circumferential Stress:\n",
+ "sigma1 = (p_*ri)/t\n",
+ "#Longitudinal Stress:\n",
+ "A_st = (math.pi)*(ro**2 - ri**2)\n",
+ "sigma2 = W_st/A_st\n",
+ "\n",
+ "#Display:\n",
+ "print\"The state of stress at A (Circumferential)\",round(sigma1,0),\"KPa\"\n",
+ "print\"The state of stress at A (Longitudinal) \",round(sigma2,1),\"KPa\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The state of stress at A (Circumferential) 62.0 KPa\n",
+ "The state of stress at A (Longitudinal) 10.2 KPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 30
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.4 Page No 417"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Determine the state of stress\n",
+ "\n",
+ "#Given\n",
+ "y_c = 125/1000.0 #m, length\n",
+ "x_c = 1.5 #m\n",
+ "y_b = 1.5 #m\n",
+ "x_b = 6.0 #m\n",
+ "udl = 50.0 #kN/m, force per unit length\n",
+ "l_udl = 2.5 #m\n",
+ "l = 250/1000.0 #m\n",
+ "width = 50/1000.0 #m \n",
+ "\n",
+ "\n",
+ "#Internal Loadings:\n",
+ "N = 16.45 #kN\n",
+ "V = 21.93 #kN\n",
+ "M = 32.89 #kNm\n",
+ "\n",
+ "#Stress Components:\n",
+ "#Normal Force:\n",
+ "A = l*width\n",
+ "sigma1 = N/(A*1000)\n",
+ "#Shear Force:\n",
+ "tou_c = 0\n",
+ "#Bending Moment:\n",
+ "c = y_c\n",
+ "I = (1/12.0)*(width*l**3)\n",
+ "sigma2 = (M*c)/(I*1000)\n",
+ "#Superposition:\n",
+ "sigmaC = sigma1+sigma2\n",
+ "\n",
+ "#Display:\n",
+ "print\"The stress due to normal force at C \",round(sigma1,2),\"MPa\"\n",
+ "print\"The stress due to shear force at C \",tou_c,\"MPa\"\n",
+ "print\"The stress due to bending moment at C \",round(sigma2,1),\"MPa\"\n",
+ "print\"The resultant stress at C \",round(sigmaC,1),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The stress due to normal force at C 1.32 MPa\n",
+ "The stress due to shear force at C 0 MPa\n",
+ "The stress due to bending moment at C 63.1 MPa\n",
+ "The resultant stress at C 64.5 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 31
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.5 Page No 418"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given:\n",
+ "r = 0.75*10 #mm, radius\n",
+ "f_x =40000 #N, force along x\n",
+ "f_y =800 #N force along y\n",
+ "l1 = 0.8 #mm\n",
+ "l2 = 0.4 #mm\n",
+ "\n",
+ "#Stress Components:\n",
+ "#Normal Force:\n",
+ "A1 =l1*l2\n",
+ "sigma1 = f_x/A1 #stress = P/A\n",
+ "\n",
+ "#Bending Moment:\n",
+ "M_y1 = 8000 #N\n",
+ "c1 = l2/2.0\n",
+ "I1 = (1/12.0)*(l1*l2**3)\n",
+ "sigma_A1 = (M_y1*c1)/I1 \n",
+ "M_y2 = 16000 #N\n",
+ "c2 = l2\n",
+ "I2 = (1/12.0)*(l2*l1**3)\n",
+ "sigma_A2 = (M_y2*c2)/I2 \n",
+ "\n",
+ "#Resultant:\n",
+ "res_normal= -sigma1-sigma_A1-sigma_A2\n",
+ "\n",
+ "#Display:\n",
+ "\n",
+ "print\"The stress due to normal force at A \",sigma1/1000,\"KPa\"\n",
+ "print\"The stress due to bending moment 8KN at A \",sigma_A1/1000,\"KPa\"\n",
+ "print\"The stress due to bending moment 16KN at A \",sigma_A2/1000,\"KPa\"\n",
+ "print\"The resultant normal stress component at A \",res_normal/1000,\"KPa\"\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The stress due to normal force at A 125.0 KPa\n",
+ "The stress due to bending moment 8KN at A 375.0 KPa\n",
+ "The stress due to bending moment 16KN at A 375.0 KPa\n",
+ "The resultant normal stress component at A -875.0 KPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 38
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.7 Page No 420"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate Stress at A\n",
+ "\n",
+ "#Given:\n",
+ "P = 500 #lb, load\n",
+ "r=0.75 #inch, radius\n",
+ "#Stress Components:\n",
+ "\n",
+ "#Normal Force:\n",
+ "import math\n",
+ "A = math.pi*r**2\n",
+ "sigma = P/A\n",
+ "\n",
+ "#Bendng Moments:\n",
+ "M_x =7000 #lb\n",
+ "cy = r\n",
+ "Ix = (1/4.0)*math.pi*(r**4) \n",
+ "sigma_max_1 = (M_x*cy)/Ix \n",
+ "\n",
+ "M_y = P*l_bc/2.0\n",
+ "cx = l_bc/2.0\n",
+ "Iy = (1/12.0)*(l_ab*l_bc**3) #I = (1/12)*(bh**3)\n",
+ "sigma_max_2 = (M_y*cx)/Iy #sigma = My/I\n",
+ "#Superposition\n",
+ "sigmaf=round(sigma/1000,3)+round(sigma_max_1/1000,1)\n",
+ "\n",
+ "#Display:\n",
+ "print\"The normal stress at corner A \",round(sigma/1000,3),\"ksi\"\n",
+ "print\"The normal stress at point A for Bending Moment \",round(sigma_max_1/1000,1),\"ksi\"\n",
+ "print\"The normal stress at point A for Superimposition \",round(sigmaf,1),\"ksi\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The normal stress at corner A 0.283 ksi\n",
+ "The normal stress at point A for Bending Moment 21.1 ksi\n",
+ "The normal stress at point A for Superimposition 21.4 ksi\n"
+ ]
+ }
+ ],
+ "prompt_number": 50
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.8 Page No 421"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Determine the state of stress at point A\n",
+ "\n",
+ "#Given\n",
+ "r=0.75 #radius,inch\n",
+ "V=800 #Forca, lb\n",
+ "\n",
+ "#Calculation\n",
+ "#shear force\n",
+ "import math\n",
+ "Q=(4*r/(3*math.pi))*(0.5*(math.pi*r**2))\n",
+ "Ix=(1/4.0)*math.pi*(r**4) \n",
+ "tau=V*Q/(Ix*2*r)\n",
+ "#Since point A is on neutral axis\n",
+ "sigmaA=0\n",
+ "T=11200 #lb inch, force \n",
+ "Iy=(1/2.0)*math.pi*(r**4) \n",
+ "sigma_a=T*r/Iy\n",
+ "#Superimposition\n",
+ "sigmayzA=tau+sigma_a\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print\"The stress for shear stress distribution is\",round(tau/1000,3),\"ksi\"\n",
+ "print\"The stress for Bending moment is\",sigmaA,\"ksi\"\n",
+ "print\"The stress for torque\",round(sigma_a/1000,2),\"ksi\"\n",
+ "print\"The stress for Superimposition \",round(sigmayzA/1000,1),\"ksi\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The stress for shear stress distribution is 0.604 ksi\n",
+ "The stress for Bending moment is 0 ksi\n",
+ "The stress for torque 16.9 ksi\n",
+ "The stress for Superimposition 17.5 ksi\n"
+ ]
+ }
+ ],
+ "prompt_number": 67
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/Chapter9.ipynb b/Mechanics_of_Materials/Chapter9.ipynb
new file mode 100755
index 00000000..cb81513e
--- /dev/null
+++ b/Mechanics_of_Materials/Chapter9.ipynb
@@ -0,0 +1,454 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 9:Stress Transformation"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.1 Page no 440"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "tou = 25\t\t #MPa, shear stress\n",
+ "sigma1 = 50 \t\t#MPa, stress\n",
+ "sigma2 = 80 \t\t#MPa\n",
+ "phi = 30*(math.pi/180.0)\n",
+ "\n",
+ "# Calculations\n",
+ "sigma_x1 = (sigma1*math.cos(phi)*math.cos(phi))- (tou*math.cos(phi)*math.sin(phi)) - (sigma2*math.sin(phi)*math.sin(phi))- (tou*math.sin(phi)*math.cos(phi))\n",
+ "tou1 = (sigma1*math.cos(phi)*math.sin(phi))+ (tou*math.cos(phi)*math.cos(phi)) + (sigma2*math.sin(phi)*math.cos(phi))- (tou*math.sin(phi)*math.sin(phi))\n",
+ "sigma_x2 = (tou*math.cos(phi)*math.sin(phi))- (sigma2*math.cos(phi)*math.cos(phi)) + (tou*math.sin(phi)*math.cos(phi))+ (sigma1*math.sin(phi)*math.sin(phi))\n",
+ "tou2 = (tou*math.cos(phi)*math.cos(phi))+ (sigma2*math.cos(phi)*math.sin(phi)) - (tou*math.sin(phi)*math.sin(phi))+ (sigma1*math.sin(phi)*math.cos(phi))\n",
+ "\n",
+ "#Display\n",
+ "print\"The normal stress component in the x diection is = \",round(sigma_x1,1),\"MPa\"\n",
+ "print\" The shear stress component in the x diection is = \",round(tou1,1),\"MPa\"\n",
+ "print\" The normal stress component in the y diection is = \",round(sigma_x2,1),\"MPa\"\n",
+ "print\" The shear stress component in the y diection is = \",round(tou2,1),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The normal stress component in the x diection is = -4.2 MPa\n",
+ " The shear stress component in the x diection is = 68.8 MPa\n",
+ " The normal stress component in the y diection is = -25.8 MPa\n",
+ " The shear stress component in the y diection is = 68.8 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.2 Page no 444"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "phi = -30*(math.pi/180) #angle\n",
+ "theta = 60*(math.pi/180) \n",
+ "sigma_x = -80 #MPa\n",
+ "sigma_y = 50 #MPa\n",
+ "tou_xy = -25 #MPa\n",
+ "\n",
+ "#Plane CD\n",
+ "sigma_x1 = (sigma_x+sigma_y)/2 + ((sigma_x-sigma_y)*math.cos(2*phi))/2 + (tou_xy*math.sin(2*phi)) #Eqn 9.1\n",
+ "tou_xy1 = ((-(sigma_x - sigma_y)*math.sin(2*phi))/2) + (tou_xy*math.cos(2*phi)) #Eqn 9.2\n",
+ "\n",
+ "#Plane BC\n",
+ "sigma_x2 = (sigma_x+sigma_y)/2 + ((sigma_x-sigma_y)*math.cos(2*theta))/2 + (tou_xy*math.sin(2*theta)) #Eqn 9.1\n",
+ "tou_xy2 = (-(sigma_x - sigma_y)*math.sin(2*theta))/2 + tou_xy*math.cos(2*theta) #Eqn 9.2\n",
+ "\n",
+ "#Display\n",
+ "print'The normal stress of plane CD inclined at 30 degrees = ',round(sigma_x1,1),\"MPa\"\n",
+ "print'The shear stress of plane CD inclined at 30 degrees = ',round(tou_xy1,1),\"MPa\"\n",
+ "print'The normal stress of plane BC inclined at 60 degrees = ',round(sigma_x2,1),\"MPa\"\n",
+ "print'The shear stress of plane BC inclined at 60 degrees = ',round(tou_xy2,1),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The normal stress of plane CD inclined at 30 degrees = -25.8 MPa\n",
+ "The shear stress of plane CD inclined at 30 degrees = -68.8 MPa\n",
+ "The normal stress of plane BC inclined at 60 degrees = -4.2 MPa\n",
+ "The shear stress of plane BC inclined at 60 degrees = 68.8 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.3 Page no 448"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "sigma_x = -20 #MPa, stress\n",
+ "sigma_y = 90 #MPa\n",
+ "tou_xy = 60 #MPa\n",
+ "\n",
+ "#Orientation of Element\n",
+ "import math\n",
+ "theta_p2 = math.atan((2*tou_xy)/(sigma_x - sigma_y))\n",
+ "theta_p2 = theta_p2/2.0\n",
+ "theta_p1 = (180+2*theta_p2)/2.0\n",
+ "\n",
+ "#Principal Stresses\n",
+ "\n",
+ "sigma1 = ((sigma_x+sigma_y)/2.0)+(math.sqrt(((sigma_x - sigma_y)/2.0)**2 + tou_xy**2))\n",
+ "sigma2 = ((sigma_x+sigma_y)/2.0)- math.sqrt(((sigma_x-sigma_y)/2.0)**2 + tou_xy**2)\n",
+ "sigma_x2 = ((sigma_x+sigma_y)/2.0)+ (((sigma_x-sigma_y)/2.0)*math.cos(2*theta_p2)) + (tou_xy*math.sin(2*theta_p2))\n",
+ "\n",
+ "#Display\n",
+ "print\"The first principal stress is = \",round(sigma1,1),\"MPa\"\n",
+ "print\"The second principal stress is = \",round(sigma2,1),\"MPa\"\n",
+ "print'The normal stress acting on the 23.7 degrees plane = ',round(sigma_x2,1),\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The first principal stress is = 116.4 MPa\n",
+ "The second principal stress is = -46.4 MPa\n",
+ "The normal stress acting on the 23.7 degrees plane = -43.3 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.4 Page no 449"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "sigma_x = -20.0 #MPa, stress along x\n",
+ "sigma_y = 90.0 #MPa stress along y\n",
+ "tou_xy =60.0 #Mpa, shear stress\n",
+ "\n",
+ "#Calculation\n",
+ "#Orientation of Element\n",
+ "import math\n",
+ "theta_s2 = math.atan(-(sigma_x - sigma_y)/(2*tou_xy))\n",
+ "theta_s2 = theta_s2/2.0\n",
+ "theta_s1 = math.pi + 2*theta_s2\n",
+ "theta_s1 = theta_s1/2.0\n",
+ "\n",
+ "#Maximum in plane Shear Stress\n",
+ "tou_max = (math.sqrt(((sigma_x - sigma_y)/2.0)**2 + tou_xy**2))\n",
+ "tou_xy1 = -(sigma_x - sigma_y)*(math.sin(2*theta_s2))/2.0 + (tou_xy*math.cos(2*theta_s2))\n",
+ "#Average Normal Stress\n",
+ "sigma_avg = (sigma_x+sigma_y)/2\n",
+ "\n",
+ "#Display\n",
+ "print\"The maximum in-plane shear stress is = \",round(tou_xy1,1),\"MPa\"\n",
+ "print\"The average normal stress is = \",round(sigma_avg,0),\"MPa\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum in-plane shear stress is = 81.4 MPa\n",
+ "The average normal stress is = 35.0 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 26
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.7 Page no 465"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "sigma_x = -12 #ksi, stress along x\n",
+ "sigma_y = 0\n",
+ "tou_xy = -6 #ksi, stress along xy\n",
+ "\n",
+ "#Calculation\n",
+ "#Construction of the circle\n",
+ "import math\n",
+ "sigma_avg = (sigma_x+sigma_y)/2.0\n",
+ "R = sqrt((-sigma_x+sigma_avg)**2 + (tou_xy)**2)\n",
+ "#Principal Stresses\n",
+ "sigma2 = -R+sigma_avg\n",
+ "sigma1 = R+sigma_avg\n",
+ "theta_p2 = math.atan((-tou_xy)/(-sigma_x+sigma_avg))\n",
+ "theta_p2 = theta_p2/2*(180/math.pi)\n",
+ "\n",
+ "#Display\n",
+ "print'The first principal stress is = ',round(sigma1,2),\"ksi\"\n",
+ "print'The second principal stress is = ',round(sigma2,2),\"ksi\"\n",
+ "print'The direction of the principal plane is = ',theta_p2,\"degree\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The first principal stress is = 2.49 ksi\n",
+ "The second principal stress is = -14.49 ksi\n",
+ "The direction of the principal plane is = 22.5 degree\n"
+ ]
+ }
+ ],
+ "prompt_number": 31
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.8 Page no 466"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "sigma_x = -20.0 #MPa\n",
+ "sigma_y = 90.0 #MPa\n",
+ "tou_xy = 60.0 #MPa\n",
+ "\n",
+ "#Construction of the circle\n",
+ "import math\n",
+ "sigma_avg = (sigma_x+sigma_y)/2\n",
+ "R = math.sqrt(((sigma_x-sigma_avg))**2 + (tou_xy)**2)\n",
+ "#Maximum In plane Shear Stress\n",
+ "tou_max = R\n",
+ "theta_s1 = math.atan(-(sigma_x - sigma_avg)/(tou_xy))\n",
+ "theta_s1 = theta_s1/2.0*(180/math.pi)\n",
+ "\n",
+ "#Display\n",
+ "print'The maximum in-plane shear stresses are = ',round(tou_max,1),\"MPa\"\n",
+ "print'The second principal stress = ',sigma_avg,\"MPa\"\n",
+ "print'The orientation of the element is = ',round(theta_s1,1),\"degree\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum in-plane shear stresses are = 81.4 MPa\n",
+ "The second principal stress = 35.0 MPa\n",
+ "The orientation of the element is = 21.3 degree\n"
+ ]
+ }
+ ],
+ "prompt_number": 38
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.9 Page no 467"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Calculate normal stress and shear stress \n",
+ "\n",
+ "#Given\n",
+ "sigma_x = -8.0 #MPa\n",
+ "sigma_y = 12.0 #MPa\n",
+ "tou_xy = -6.0 #Mpa\n",
+ "\n",
+ "#Construction of the circle\n",
+ "import math\n",
+ "sigma_avg = (sigma_x+sigma_y)/2.0\n",
+ "R = math.sqrt( 10**2 + tou_xy**2)\n",
+ "#Stresses on 30 degree element\n",
+ "phi = math.atan(6/10.0)\n",
+ "psi = (math.pi/3.0) - phi\n",
+ "#On face BD\n",
+ "sigma_x1 = 2 - (R*math.cos(psi))\n",
+ "tou_xy1 = (R*math.sin(psi))\n",
+ "#On face DE\n",
+ "sigma_x2 = 2 + (R*math.cos(psi))\n",
+ "tou_xy2 = -(R*math.sin(psi))\n",
+ "\n",
+ "#Display\n",
+ "print'The normal stress on plane BD inclined at 30 degrees is = ',round(sigma_x1,1),\"ksi\"\n",
+ "print'The normal stress on plane DE inclined at 60 degrees is = ',round(sigma_x2,1),\"ksi\"\n",
+ "print'The shear stress is = ',round(tou_xy1,1),\"ksi\"\n",
+ "print'The shear stress is = ',round(tou_xy2,1),\"ksi\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The normal stress on plane BD inclined at 30 degrees is = -8.2 ksi\n",
+ "The normal stress on plane DE inclined at 60 degrees is = 12.2 ksi\n",
+ "The shear stress is = 5.7 ksi\n",
+ "The shear stress is = -5.7 ksi\n"
+ ]
+ }
+ ],
+ "prompt_number": 43
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.10 Page no 476"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "sigma_max = 32 #MPa\n",
+ "sigma_min = 0 #MPa\n",
+ "sigma_int = 16 #MPa\n",
+ "\n",
+ "#Calculation\n",
+ "tou_max = (sigma_max - sigma_min)/2 \n",
+ "sigma_avg = (sigma_max + sigma_min)/2 \n",
+ "tou_in_plane = (sigma_max - sigma_int)/2\n",
+ "sigma_avg2 = sigma_avg + (tou_in_plane)\n",
+ "\n",
+ "#Display\n",
+ "print 'The normal shears tress is', sigma_avg,\"MPa\"\n",
+ "print'The maximum absolute shear stress = ',tou_max,\"MPa\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The normal shears tress is 16 MPa\n",
+ "The maximum absolute shear stress = 16 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 49
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.11 Page no 477"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "tou = 40 #psi\n",
+ "sigma = -20 #psi\n",
+ "\n",
+ "#Calculation\n",
+ "#Principal Stresses\n",
+ "import math\n",
+ "sigma_avg = sigma/2\n",
+ "R = sqrt( (-sigma + sigma_avg)**2 + tou**2)\n",
+ "sigma_max = sigma_avg + R \n",
+ "sigma_min = sigma_avg - R \n",
+ "theta = math.atan(tou/(-sigma+sigma_avg))\n",
+ "theta = theta/2\n",
+ "#Absolute Maximum Shear Stress\n",
+ "tou_max = (sigma_max - sigma_min)/2\n",
+ "sigma_avg = (sigma_max + sigma_min)/2\n",
+ "\n",
+ "#Display\n",
+ "print'The prinicpal stresses at the point are ',round(sigma_max,2),\"psi and\",round(sigma_min,1),\"psi\"\n",
+ "print'The absolute maximum shear stress at the point ',round(tou_max,1),\"psi\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The prinicpal stresses at the point are 31.23 psi and -51.2 psi\n",
+ "The absolute maximum shear stress at the point 41.2 psi\n"
+ ]
+ }
+ ],
+ "prompt_number": 56
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Mechanics_of_Materials/README.txt b/Mechanics_of_Materials/README.txt
index 433bd9d4..bcc04e6f 100755
--- a/Mechanics_of_Materials/README.txt
+++ b/Mechanics_of_Materials/README.txt
@@ -1,10 +1,10 @@
-Contributed By: Parth Parmar
-Course: mca
-College/Institute/Organization: Indus Ind Bank
-Department/Designation: Relationship Officer
+Contributed By: Ankit Garg
+Course: btech
+College/Institute/Organization: DCRUST, Murthal
+Department/Designation: Chemical Engineering
Book Title: Mechanics of Materials
-Author: James M. Gere
-Publisher: Thomson Learning, USA
-Year of publication: 2004
-Isbn: 0-534-41793-0
-Edition: 6th \ No newline at end of file
+Author: R. C. Hibbeler
+Publisher: Pearson Prentice Hall
+Year of publication: 2011
+Isbn: 978-013-602230-5
+Edition: 8 \ No newline at end of file
diff --git a/Mechanics_of_Materials/screenshots/10_5.png b/Mechanics_of_Materials/screenshots/10_5.png
new file mode 100755
index 00000000..2e50015b
--- /dev/null
+++ b/Mechanics_of_Materials/screenshots/10_5.png
Binary files differ
diff --git a/Mechanics_of_Materials/screenshots/14_5.png b/Mechanics_of_Materials/screenshots/14_5.png
new file mode 100755
index 00000000..5fdc4b38
--- /dev/null
+++ b/Mechanics_of_Materials/screenshots/14_5.png
Binary files differ
diff --git a/Mechanics_of_Materials/screenshots/1_1.png b/Mechanics_of_Materials/screenshots/1_1.png
new file mode 100755
index 00000000..6b09b98f
--- /dev/null
+++ b/Mechanics_of_Materials/screenshots/1_1.png
Binary files differ