diff options
Diffstat (limited to 'Aircraft_Structures_for_Engineering_Students/Chapter21.ipynb')
-rwxr-xr-x | Aircraft_Structures_for_Engineering_Students/Chapter21.ipynb | 256 |
1 files changed, 256 insertions, 0 deletions
diff --git a/Aircraft_Structures_for_Engineering_Students/Chapter21.ipynb b/Aircraft_Structures_for_Engineering_Students/Chapter21.ipynb new file mode 100755 index 00000000..1195a6a9 --- /dev/null +++ b/Aircraft_Structures_for_Engineering_Students/Chapter21.ipynb @@ -0,0 +1,256 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b8ffe836d5b15b63c70d69d0a02ef23ccdf3f03c0f15c98f0fa5e62d24f5d894"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 21: Wing spars and box beams"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 21.1 Pg.No.585"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "from scipy import integrate\n",
+ "import math\n",
+ "\n",
+ "Mx=20*10**6 #internal bending moment (N.mm)\n",
+ "Sy=-20*10**3 #force applied(N)\n",
+ "l1=400\n",
+ "l2=300 #lengths of webs respectively from left to right in Fig 21.2\n",
+ "l3=200\n",
+ "\n",
+ "#Ixx=I_C+Ab^2\n",
+ "Ixx=2*l1*150**2+2*l2**3/12\n",
+ "y=150\n",
+ "sigma_z1=Mx*y/Ixx\n",
+ "sigma_z2=-Mx*y/Ixx\n",
+ "\n",
+ "Pz1=sigma_z1*l1\n",
+ "Pz2=sigma_z2*l1\n",
+ "\n",
+ "#from fig 21.1 and 21.2\n",
+ "del_y1_by_del_z=-0.05\n",
+ "del_y2_by_del_z=0.05\n",
+ "Syw=Sy-Pz1*del_y1_by_del_z-Pz2*del_y2_by_del_z\n",
+ "\n",
+ "# equ 21.6 qs=-Syw/Ixx*integrate(t_D*y*ds+B1*Y1) from 0 to s\n",
+ "fn=lambda s:300-2*s\n",
+ "\n",
+ "def shear(s):\n",
+ " return -Syw/Ixx*(integrate.quad(fn, 0, s)[0]+400*150)\n",
+ "print \"maximum value of shear flow @s=150mm =%2.1f N/mm\\n\"%(shear(150.0))\n",
+ "print \"value of shear @s=0mm = %2.1f N/mm\\n\"%(shear(0))\n",
+ "print \"value of shear @s=300 mm = %2.1f N/mm\\n\"%(shear(300))\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "maximum value of shear flow @s=150mm =53.8 N/mm\n",
+ "\n",
+ "value of shear @s=0mm = 39.1 N/mm\n",
+ "\n",
+ "value of shear @s=300 mm = 39.1 N/mm\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 21.2 Pg.No.589"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "from sympy import symbols\n",
+ "import math\n",
+ "\n",
+ "Sy=100*10**6 #load applied in y direction (N)\n",
+ "Sx=0 #load in x direction (N)\n",
+ "y=[0.3,0.3,0.3,-0.3,-0.3,-0.3]\n",
+ "B=[900,1200,900,900,1200,900] #boom area\n",
+ "dx_dz=[0.1,0,-0.1,-0.1,0,0.1]\n",
+ "dy_dz=[-0.05,-0.05,-0.05,0.05,0.05,0.05]\n",
+ "Er=[0.6,0,0.6,0.6,0,0.6] \n",
+ "nr=[0.3,0.3,0.3,0.3,0.3,0.3]\n",
+ "Mx=-Sy*2\n",
+ "My=-Sx*2\n",
+ "Ixy=0\n",
+ "Ixx=4*900*300**2+2*1200*300**2\n",
+ "Pzr=[0]*6\n",
+ "Pxr=[0]*6 #array initialization\n",
+ "Pyr=[0]*6\n",
+ "Pr=[0]*6\n",
+ "print \"Boom \\t Pzr(kN) \\t dx_dz \\t dy_dz \\t Pxr(kN) \\t Pyr(kN) \\t Pr(kN)\"\n",
+ "for i in range (0,6):\n",
+ " Pzr[i]=Mx*y[i]/Ixx*B[i]\n",
+ " Pxr[i]=Pzr[i]*dx_dz[i] #Pr is not correct in (7) column in book\n",
+ " Pyr[i]=Pzr[i]*dy_dz[i]\n",
+ " Pr[i]=(Pzr[i]**2+Pxr[i]**2+Pyr[i]**2)**0.5\n",
+ " if Pzr[i]>0 :\n",
+ " print \"%1.0f \\t %3.0f \\t\\t %1.1f \\t %1.2f \\t %2.0f \\t\\t %1.1f \\t\\t %3.1f\"%(i+1,Pzr[i],dx_dz[i],dy_dz[i],Pxr[i],Pyr[i],Pr[i])\n",
+ " else:\n",
+ " print \"%1.0f \\t %3.0f \\t\\t %1.1f \\t %1.2f \\t %2.0f \\t\\t %1.1f \\t\\t %3.1f\"%(i+1,Pzr[i],dx_dz[i],dy_dz[i],Pxr[i],Pyr[i],-Pr[i])\n",
+ " \n",
+ "Sxw=0\n",
+ "Syw=66.6*10**3\n",
+ "qb16=0 #open section here\n",
+ "qb12=qb16-Syw/Ixx*B[0]*300\n",
+ "qb23=qb12-Syw/Ixx*B[1]*300\n",
+ "qb34=qb23-Syw/Ixx*B[2]*300\n",
+ "qb45=qb23\n",
+ "qb56=qb12\n",
+ "qs0=-97\n",
+ "\n",
+ "\n",
+ "print \"\\n\\nqb16 = %3.1f N/mm\"%(qb16)\n",
+ "print \"qb12 = %3.1f N/mm\"%(qb12)\n",
+ "print \"qb23 = %3.1f N/mm\"%(qb23)\n",
+ "print \"qb34 = %3.1f N/mm\"%(qb34)\n",
+ "print \"qb45 = %3.1f N/mm\"%(qb45)\n",
+ "print \"qb56 = %3.1f N/mm\"%(qb56)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Boom \t Pzr(kN) \t dx_dz \t dy_dz \t Pxr(kN) \t Pyr(kN) \t Pr(kN)\n",
+ "1 \t -100 \t\t 0.1 \t -0.05 \t -10 \t\t 5.0 \t\t -100.6\n",
+ "2 \t -133 \t\t 0.0 \t -0.05 \t -0 \t\t 6.7 \t\t -133.5\n",
+ "3 \t -100 \t\t -0.1 \t -0.05 \t 10 \t\t 5.0 \t\t -100.6\n",
+ "4 \t 100 \t\t -0.1 \t 0.05 \t -10 \t\t 5.0 \t\t 100.6\n",
+ "5 \t 133 \t\t 0.0 \t 0.05 \t 0 \t\t 6.7 \t\t 133.5\n",
+ "6 \t 100 \t\t 0.1 \t 0.05 \t 10 \t\t 5.0 \t\t 100.6\n",
+ "\n",
+ "\n",
+ "qb16 = 0.0 N/mm\n",
+ "qb12 = -33.3 N/mm\n",
+ "qb23 = -77.7 N/mm\n",
+ "qb34 = -111.0 N/mm\n",
+ "qb45 = -77.7 N/mm\n",
+ "qb56 = -33.3 N/mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 21.3 Pg.No.593\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "from __future__ import division\n",
+ "from sympy import symbols\n",
+ "import numpy as np\n",
+ "import math\n",
+ "yr=symbols('yr')\n",
+ "\n",
+ "Mx=-100*1.9*10**6 #bending moment(N.mm)\n",
+ "Ixx=4*900*295**2+2*1200*295**2 #second moment of area (mm^4)\n",
+ "sigma_zr=Mx/Ixx*yr\n",
+ "P1_1=P3_1=-0.364*295*900\n",
+ "P4_1=P6_1=0.364*295*900\n",
+ "P2_1=-0.364*295*1200\n",
+ "P5_1=0.364*295*1200\n",
+ "\n",
+ "Mx=-100*2.1\n",
+ "Ixx=4*900*305**2+2*1200*305**2\n",
+ "sigma_zr=Mx/Ixx*yr\n",
+ "P1_2=P3_2=-0.376*305*900\n",
+ "P4_2=P6_2=0.376*305*900\n",
+ "P2_2=-0.376*305*1200\n",
+ "P5_2=0.376*305*1200\n",
+ "\n",
+ "deltaP1=deltaP3=(P1_1-P1_2)/200\n",
+ "deltaP4=deltaP6=-(P4_1-P4_2)/200\n",
+ "deltaP2=(P2_1-P2_2)/200\n",
+ "deltaP5=(P5_1-P5_2)/200\n",
+ "\n",
+ "a=np.array([[1,-1,0,0,0,0],[0,1,-1,0,0,0],[0,0,1,-1,0,0],[0,0,0,1,-1,0],[0,0,0,0,1,-1],[600*300*2,2*600*300,600*600,0,0,600*600]])\n",
+ "\n",
+ "b=np.array([43.8,32.85,-32.85,-43.8,-32.85,600*10**5])\n",
+ "q=np.linalg.solve(a,b)\n",
+ "print \"shear flow distribution :\"\n",
+ "print \"q12 = %2.1f N/mm\"%(q[0])\n",
+ "print \"q23 = %2.1f N/mm\"%(q[1])\n",
+ "print \"q34 = %2.1f N/mm\"%(q[2])\n",
+ "print \"q45 = %2.1f N/mm\"%(q[3])\n",
+ "print \"q56 = %2.1f N/mm\"%(q[4])\n",
+ "print \"q61 = %2.1f N/mm\\n\"%(q[5])"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "shear flow distribution :\n",
+ "q12 = 63.6 N/mm\n",
+ "q23 = 19.8 N/mm\n",
+ "q34 = -13.1 N/mm\n",
+ "q45 = 19.8 N/mm\n",
+ "q56 = 63.6 N/mm\n",
+ "q61 = 96.4 N/mm\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 40
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [],
+ "language": "python",
+ "metadata": {},
+ "outputs": [],
+ "prompt_number": 41
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file |