summaryrefslogtreecommitdiff
path: root/Engineering_Mechanics_of_Solids_by_Popov_E_P/chapter11.ipynb
blob: aa2f8723e54a551b3f57fbea74f50e25cf19332c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
{
 "metadata": {
  "name": "",
  "signature": "sha256:1a88ac8a4ae99a352f7f49d975099441ec02a55d62cfaa2e8c07de364172180d"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "heading",
     "level": 1,
     "metadata": {},
     "source": [
      "Chapter 11:Stability of Equilibrium: columns "
     ]
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.2 page number 589"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#Given \n",
      "h =  60             #mm - the length of the crossection \n",
      "b = 100             #mm - the width of hte crossection \n",
      "E = 200             #Gpa - The youngs modulus\n",
      "stress_cr  = 250    #Mpa - The proportionality limit\n",
      "#Caliculations \n",
      "\n",
      "I = b*(h**3)/12     #mm3 The momentof inertia of the crossection\n",
      "A = h*b             #mm2 - The area of teh crossection \n",
      "#From Eulier formula\n",
      "r_min  =  pow((I/A),0.5)                            #mm - The radius of the gyration \n",
      "#(l/r)**2= (pi**2)*E/stress_cr                      #From Eulier formula\n",
      "l = (((math.pi**2)*E*(10**3)/stress_cr)**0.5)*r_min #mm - the length after which the beam starts buckling\n",
      "print \"The length after which the beam starts buckling is \",round(l,0),\"mm\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "The length after which the beam starts buckling is  1539.0 mm\n"
       ]
      }
     ],
     "prompt_number": 6
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.6 page number 613"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#Given\n",
      "L = 15                                    #ft - The length of the each rod\n",
      "A = 46.7                                  #in2 - The length of the crossection \n",
      "r_min = 4                                 #in - The radius of gyration\n",
      "stress_yp = 36                            #Ksi - the yielding point stress\n",
      "E = 29*(10**3)                            #ksi - The youngs modulus\n",
      "C_c = ((2*(math.pi**2)*E/stress_yp)**0.5) #Slenderness ratio L/R\n",
      "C_s = L*12/r_min                          # Slenderness ratio L/R of the present situation \n",
      "#According to AISC formulas \n",
      "if C_s <C_c :\n",
      "    print \"a)The following approch is solvable\"\n",
      "else: \n",
      "    print \"The caliculation is not possible\"\n",
      "F_S = 5.0/3 +3*C_s/(8*C_c) -(3*C_s**3)/(8*C_c**3)        #Safety factor \n",
      "Stress_all = (1 - (C_s**2)/(2*C_c**2))*stress_yp/F_S    #The allowable strees \n",
      "print \"a) The allowable stress in this case is\",round(Stress_all,2),\"Kips\" \n",
      "#Part - B\n",
      "#Given\n",
      "L = 40                                   #ft - The length of the each rod\n",
      "A = 46.7                                  #in2 - The length of the crossection \n",
      "r_min = 4                                 #in - The radius of gyration\n",
      "stress_yp = 36                            #Ksi - the yielding point stress\n",
      "E = 29*(10**3)                            #ksi - The youngs modulus\n",
      "C_c = ((2*(math.pi**2)*E/stress_yp)**0.5) #Slenderness ratio L/R\n",
      "C_s = L*12/r_min                          # Slenderness ratio L/R of the present situation \n",
      "#According to AISC formulas \n",
      "if C_s <C_c :\n",
      "    print \"b) The following approch is solvable\"\n",
      "else: \n",
      "    print \"The caliculation is not possible\"\n",
      "F_S = 5.0/3 +3*C_s/(8*C_c) -(3*C_s**3)/(8*C_c**3)        #Safety factor \n",
      "Stress_all = (1 - (C_s**2)/(2*C_c**2))*stress_yp/F_S    #The allowable strees \n",
      "print \"b) The allowable stress in this case is\",round(Stress_all,2),\"Kips\"\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "a)The following approch is solvable\n",
        "a) The allowable stress in this case is 18.9 Kips\n",
        "b) The following approch is solvable\n",
        "b) The allowable stress in this case is 11.59 Kips\n"
       ]
      }
     ],
     "prompt_number": 18
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.7 page number 614"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#Given\n",
      "L = 15                                    #ft - The length of the each rod      \n",
      "p  = 200                                  #Kips The concentric load applied \n",
      "r_min = 2.10                              #in - The radius of gyration\n",
      "stress_yp =   50                          #Ksi - the yielding point stress\n",
      "E = 29*(10**3)                            #ksi - The youngs modulus\n",
      "C_c = ((2*(math.pi**2)*E/stress_yp)**0.5) #Slenderness ratio L/R\n",
      "C_s = L*12/r_min  #Slenderness ratio L/R present situation\n",
      "if C_s <C_c :\n",
      "    print \"a)The following approch is solvable\"\n",
      "else: \n",
      "    print \"The caliculation is not possible\"\n",
      "F_S = 5.0/3 +3*C_s/(8*C_c) -(3*C_s**3)/(8*C_c**3)        #Safety factor \n",
      "Stress_all = (1 - (C_s**2)/(2*C_c**2))*stress_yp/F_S    #The allowable strees\n",
      "a = p/Stress_all #in2 the alloawble area of the beam \n",
      "print \"The allowable stress in this case is\",round(Stress_all,2),\"Kips\"\n",
      "print \"This stress requires \",round(a,2),\"in2\"\n",
      "if a <11.5:\n",
      "    print \"This case is satisfying W8x24 section\" #From AISC Manual \n",
      "else:\n",
      "    print \"This case is not satisfying W8x24 section\"\n",
      "                                #The ans are quiet varying because of rounding\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "a)The following approch is solvable\n",
        "The allowable stress in this case is 19.14 Kips\n",
        "This stress requires  10.45 in2\n",
        "This case is satisfying W8x24 section\n"
       ]
      }
     ],
     "prompt_number": 31
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.8 pagenumber 614 "
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#Given\n",
      "L = 15.0                                        #ft - The length of the each rod\n",
      "A = 46.7                                        #in2 - The length of the crossection \n",
      "r_min = 4                                       #in - The radius of gyration\n",
      "stress_yp = 36.0                                #Ksi - the yielding point stress\n",
      "E = 29*(10**3)                                  #ksi - The youngs modulus\n",
      "lamda = L*12*((stress_yp/E)**0.5)/(4*(math.pi)) #column slenderness ratio\n",
      "if lamda<1.5:\n",
      "    print \"The following approach is right\"\n",
      "else:\n",
      "    print \"The following approach is wrong\"\n",
      "stress_cr = (0.658**(lamda**2))*stress_yp    #Ksi - The critical stress  \n",
      "P_n = stress_cr*A                            #Kips #Nominal compressive strength \n",
      "o = 0.85                                     #Resistance factor\n",
      "p_u = o*P_n                                  #Kips ,column design compressive strength \n",
      "print \"column design compressive strength \",p_u,\"Kips\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "The following approach is right\n",
        "column design compressive strength  1284.51846781 Kips\n"
       ]
      }
     ],
     "prompt_number": 38
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.9 page number 615"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#Given \n",
      "#FOR FLANGS\n",
      "l = 5 #in - The length of the flang\n",
      "b = 5 #in - Teh width of the flang\n",
      "t  = 0.312 #in - the thickness of the flang\n",
      "L = 20 #in - Length of the beam, Extracted from AISC manuals\n",
      "A = 4.563 #in2 - The area of crossection of the beam\n",
      "r = 1.188 #in - radius of the gyration, Extracted from AISC manuals \n",
      "#b/t- value of the flang \n",
      "k = (5 -t)/(2*t) #b/t ratio \n",
      "#AISC, lets check maximum allowable stress for slang\n",
      "Stressf_all = 23.1 - 0.79*k #ksi The maximum allowable stress in case of flang,AISC\n",
      "\n",
      "#web width thickness ratio\n",
      "k_2 = (5 -2*t)/(t)\n",
      "if k_2<16:\n",
      "    Stressw_all = 19 #ksi - The allowable stress in case of web width\n",
      "    \n",
      "#a) Overall buckling investment \n",
      "k_3 = L/r #slenderness ratio\n",
      "Stressb_all = 20.2 - 0.216*k_3#ksi The maximum allowable stress in case of Buckling,AISC\n",
      "p_allow = A*Stressb_all #Kips The allowable concentric load \n",
      "\n",
      "#b) Overall buckling investment\n",
      "L_2 = 60 #in \n",
      "k_3 = L_2/r #slenderness ratio\n",
      "Stressb_all_2 = 20.2 - 0.126*k_3#ksi The maximum allowable stress in case of Buckling,AISC\n",
      "p_allow_2 = A*Stressb_all_2 #Kips The allowable concentric load \n",
      "\n",
      "print \"The maximum allowable stress in case of web width\",round(Stressw_all,2),\"Ksi\"\n",
      "print \"The maximum allowable stress in case of flang\",round(Stressf_all,2),\"Ksi\"\n",
      "print \"a) The maximum allowable load in case of Buckling\",round(p_allow,2),\"Kips\"\n",
      "print \"b) The maximum allowable load in case of Buckling\",round(p_allow_2,2),\"Kips\"\n",
      "\n",
      "\n",
      "     \n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "The maximum allowable stress in case of web width 19.0 Ksi\n",
        "The maximum allowable stress in case of flang 17.16 Ksi\n",
        "a) The maximum allowable load in case of Buckling 75.58 Kips\n",
        "b) The maximum allowable load in case of Buckling 63.14 Kips\n"
       ]
      }
     ],
     "prompt_number": 43
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 11.11 page number 620 "
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "P = 200.0       #K The force on the beam \n",
      "L = 15          #ft - The length of the rod\n",
      "F_y = 50.0 #Ksi \n",
      "F_a = F_y/(5.0/3) #Ksi -AISC MANUAL ,allowable axial stress if axial force is alone\n",
      "F_b = F_a         #Allowable compressive bending stress\n",
      "M_1 = 600.0       #k-in - The moment acting on the ends of the rod\n",
      "M_2 = 800.0       #k-in - the moment acting on the other end of teh rod\n",
      "B_x = 0.264       #in - Extracted from AISC manual \n",
      "A = P/F_a + M_2*B_x/F_b #in2- The minimum area \n",
      "print \"The minimum area is \",round(A,2),\"in2\"\n",
      "#we will select W10x49 section \n",
      "A_s = 14.4         #in2 - The area of the section \n",
      "r_min  = 2.54      #in The minimum radius \n",
      "r_x = 4.35         #in \n",
      "f_a = P/A_s        #Ksi- The computed axial stress\n",
      "f_b =  M_2*B_x/A_s #Computed bending stess\n",
      "C_c = ((2*(math.pi**2)*E/F_y)**0.5) #Slenderness ratio L/R\n",
      "C_s = L*12/r_min                    # Slenderness ratio L/R of the present situation\n",
      "if C_s <C_c :\n",
      "    print \"The following approch is solvable\"\n",
      "else: \n",
      "    print \"The caliculation is not possible\"\n",
      "F_a_1 = 19.3                              #Ksi - AISC lets try this\n",
      "c_m = 0.6 - 0.4*(-M_1/M_2) \n",
      "F_e = (12*(math.pi**2)*E)/(23*(L*12/r_x)**2) \n",
      "k = f_a/F_a_1 + c_m*f_b*(1-(f_a/F_e))/F_b #Condition mentioned in AISC\n",
      "if k>1:\n",
      "    print \"The following W10x49 section is not satisfying our constraints since f_a/F_a_1 + c_m*f_b*(1-(f_a/F_e))/F_b\",round(k,3),\">1\"\n",
      "else:\n",
      "    print \"The following W10x49 section is satisfying our constraints since f_a/F_a_1 + c_m*f_b*(1-(f_a/F_e))/F_b\",k,\"<1\"\n",
      " \n",
      "#trail - 2\n",
      "#Lets take  W10 x 60\n",
      "A_s = 17.6                         #in2 - The area of the section \n",
      "r_min  = 2.57                      #in The minimum radius \n",
      "r_x = 4.39                         #in \n",
      "f_a = P/A_s                        #Ksi- The computed axial stress\n",
      "f_b =  M_2*B_x/A_s                 #Computed bending stess\n",
      "C_c = ((2*(math.pi**2)*E/F_y)**0.5) #Slenderness ratio L/R\n",
      "C_s = L*12/r_min                    # Slenderness ratio L/R of the present situation\n",
      "if C_s <C_c :\n",
      "    print \"The following approch is solvable\"\n",
      "else: \n",
      "    print \"The caliculation is not possible\"\n",
      "F_a_1 = 19.3                              #Ksi - AISC lets try this\n",
      "c_m = 0.6 - 0.4*(-M_1/M_2) \n",
      "F_e = (12*(math.pi**2)*E)/(23*(L*12/r_x)**2) \n",
      "k = f_a/F_a_1 + c_m*f_b*(1-(f_a/F_e))/F_b #Condition mentioned in AISC\n",
      "if k>1:\n",
      "    print \"The following W10x49 section is not satisfying our constraints since f_a/F_a_1 + c_m*f_b*(1-(f_a/F_e))/F_b\",round(k,3),\">1\"\n",
      "else:\n",
      "    print \"The following W10x49 section is satisfying our constraints since f_a/F_a_1 + c_m*f_b*(1-(f_a/F_e))/F_b\",round(k,2),\"<1\"\n",
      " \n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "The minimum area is  13.71 in2\n",
        "The following approch is solvable\n",
        "The following W10x49 section is not satisfying our constraints since f_a/F_a_1 + c_m*f_b*(1-(f_a/F_e))/F_b 1.09 >1\n",
        "The following approch is solvable\n",
        "The following W10x49 section is satisfying our constraints since f_a/F_a_1 + c_m*f_b*(1-(f_a/F_e))/F_b 0.9 <1\n"
       ]
      }
     ],
     "prompt_number": 67
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [],
     "language": "python",
     "metadata": {},
     "outputs": []
    }
   ],
   "metadata": {}
  }
 ]
}