summaryrefslogtreecommitdiff
path: root/Solid_Mechanics_by_S._M._A._Kazimi/Chapter7.ipynb
blob: b24f124a58fd7766fe63ef66cf3bb3278bd0b82d (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
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
{
 "metadata": {
  "name": "",
  "signature": "sha256:49fb320e4e9f8bda8c482a6df5a6d862902fe6b1b70d63f85fdebe1d70bf5a2c"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "heading",
     "level": 1,
     "metadata": {},
     "source": [
      "Chapter7-Beams and Bendings"
     ]
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex2-pg234"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "import numpy\n",
      "#calculate sf and Bm\n",
      "import matplotlib\n",
      "from matplotlib import pyplot\n",
      "%matplotlib inline\n",
      "#initialization of variables\n",
      "s=3. #m\n",
      "n=60.\n",
      "p=50. #kg\n",
      "## calculations\n",
      "W=n*p\n",
      "Rc=W*2./s\n",
      "Rb=W-Rc\n",
      "dx = 0.001;\n",
      "x = numpy.linspace(0,s,3001)\n",
      "n = round(s/dx +1);\n",
      "n=int(n)\n",
      "Sx=numpy.zeros(n)\n",
      "Mx=numpy.zeros(n)\n",
      "i=0;\n",
      "for i in range (0,n):\n",
      "    Sx[i] = -Rb + Rc*x[i]**2./6.;\n",
      "    Mx[i] = Rb*x[i] - Rc*x[i]**3 /18.;\n",
      "\n",
      "##Results\n",
      "pyplot.plot(x,Sx);pyplot.title(\"Shear force diagram\");pyplot.xlabel(\"X (in m)\");pyplot.ylabel(\"Shear force (in kg)\");\n",
      "pyplot.show()\n",
      "pyplot.plot(x,Mx);pyplot.title(\"Bending Moment diagram\");pyplot.xlabel(\"X (in m)\");pyplot.ylabel(\"Bending Moment (in kg-m)\");\n",
      "pyplot.show()"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "iVBORw0KGgoAAAANSUhEUgAAAZcAAAEZCAYAAABb3GilAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xm8XfPZ///XW8yEGIqEoDRKOhBDaLQcLW5KBTVrjfXV\nKvrT4UZ7t9JqlbqpoXdSLSWKkMSUGGKInBZBhJC0EZISkkiiKUnElJPk+v3xWYftOMPOOXuftfc+\n7+fjsR5Ze62117rWWZzrfNZnUkRgZmZWSqvkHYCZmdUeJxczMys5JxczMys5JxczMys5JxczMys5\nJxczMys5JxerKpJOkvRojtffU9J0SW9LOiSvOJqSVC/p1Gz9eEkP5B2TdW1OLlZxJH1Z0nhJCyX9\nR9JjknbNO67Mr4CrIqJ7RIzKO5gCkS1ExM0R8V85x2Nd3Kp5B2BWSNJ6wD3A6cBwYA3gK8AHnRzH\nqhGxrJldWwJT23nObhGxvGOR5aeVn4nZJ7jkYpVmOyAi4rZI3o+IhyJiSuFBki6V9KaklyUdULB9\nfUnXSXpd0mxJF0paJdu3raRHJC2Q9G9JN0lav+C7MyX9t6TJwNuN3yvY/y9gG2C0pMWSVpPUS9Ko\nrIQ1XdJ3Co4fJGmkpL9KWgScKGlDSddLmpPFf2fB8QdLek7SW5Iel/SFln5IkvaTNC0r3V0NqGDf\nx14dSrpS0muSFkmaKOnLBfvWkjQ0i2Vqdv+zWvmZdJN0nqQZ2c/gn5IObXLtxyVdnt3HDEkDJJ2c\nxTBf0gktPn2rGU4uVmleBJZLukHSAZI2aOaY3YFpwEbA74DrCvbdACwFtgX6AfsD3ynY/xugJ7AD\n0BsY1OTcxwAHAj0iYkXhjojYFngNODgi1ouIBuDWbFtP4AjgIkn7FHztEGBERKwP3AL8FVgT6Ats\nAlwOIKlfdh+nARsC1wCjJK3e9OYlbQzcDvw0+xn8C9izmZ9TownAjsAGWQwjCs57Aak09mlgP+Bb\nZK/XWviZLAdmAF+OiPWAXwI3Sdq04Pj+wPPZfQwjlUB3Jj2TbwF/kLR2K/FaLYgIL14qagG2B64H\nZgENwN3AJtm+k4DpBceuDawg/aLeFHgfWLNg/7HAIy1c51Dg2YLPrwAntRHbK8BXs/XewDJgnYL9\nFwHXZ+uDgPqCfT2B5cD6zZx3CPCrJtumAXs1c+wJwPgm22YBpxT8jB5t5R7eBL6Qrf8L2K9g36nA\n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\nAAAASUVORK5CYII=\n",
       "text": [
        "<matplotlib.figure.Figure at 0x1d2b1f0>"
       ]
      },
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "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\nOZex/w8lkRYwINnARQAAAABJRU5ErkJggg==\n",
       "text": [
        "<matplotlib.figure.Figure at 0x5910590>"
       ]
      }
     ],
     "prompt_number": 5
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex8-pg249"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "##initialization of new variables\n",
      "#centriod of the section and momets of inertia and product of inertia about xx and yy axes and direction of principal axes and value of maximum and minimum\n",
      "b=10075 ##mm\n",
      "h=10 ##mm\n",
      "p1=7.5\n",
      "p2=9\n",
      "##part (a)\n",
      "ybar=1*p1*0.5+1*p2*5.5\n",
      "ybar=ybar/16.5\n",
      "xbar=1*p1*0.5+1*p1*4.75\n",
      "xbar=xbar/16.5\n",
      "print('part (a)')\n",
      "print'%s %.2f %s %.2f %s '%('\\n Centroid coordinates (x,y) = ',xbar,''and '',ybar,'cm')\n",
      "\n",
      "##part (b)\n",
      "Ixx=p1*1**3/12.+p1*1*(3.23-0.5)**2+1*p2**3/12.+p2*1*(5.5-3.23)**2\n",
      "Iyy=1*p1**3/12.+p1*1*(3.75-2.43)**2+p2*1**3/12.+p2*1*(2.43-0.5)**2\n",
      "Ixy=p1*1.32*2.73+9*(-1.93)*(-2.27)\n",
      "print('\\n part (b)')\n",
      "print'%s %.2f %s %.2f %s %.2f %s '%('\\n Moment of Areas: \\n Ixx = ',Ixx,' cm^4 \\n Iyy = ',Iyy,' cm^4' and'Ixy=',Ixy,'cm^4')\n",
      "\n",
      "##part (c)\n",
      "alpha=0.5*math.atan(2*Ixy/(Iyy-Ixx))\n",
      "alpha=alpha*180/math.pi\n",
      "print('\\n part (c)')\n",
      "print('\\n Direction of principal axes:')\n",
      "print'%s %.2f %s'%('\\n alpha = ',alpha,' degrees')\n",
      "\n",
      "##part (d)\n",
      "Iuu=(Ixx+Iyy)/2+math.sqrt((Iyy-Ixx)**2/4.+Ixy**2)\n",
      "Ivv=(Ixx+Iyy)/2-math.sqrt((Iyy-Ixx)**2/4.+Ixy**2)\n",
      "print('\\n part (d)')\n",
      "print'%s %.2f %s %.2f %s '%('\\n Iuu = ',Iuu,' cm^4 \\n Ivv = ',Ivv,' cm^4')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "part (a)\n",
        "\n",
        " Centroid coordinates (x,y) =  2.39  3.23 cm \n",
        "\n",
        " part (b)\n",
        "\n",
        " Moment of Areas: \n",
        " Ixx =  163.65  cm^4 \n",
        " Iyy =  82.50 Ixy= 66.46 cm^4 \n",
        "\n",
        " part (c)\n",
        "\n",
        " Direction of principal axes:\n",
        "\n",
        " alpha =  -29.30  degrees\n",
        "\n",
        " part (d)\n",
        "\n",
        " Iuu =  200.94  cm^4 \n",
        " Ivv =  45.21  cm^4 \n"
       ]
      }
     ],
     "prompt_number": 1
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex10-pg256"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "##initialization of variables\n",
      "#determine bending stress and find the minimum radius \n",
      "Ys=17000. ##kg/cm^2\n",
      "E=2*10**6 ##kg/cm^2\n",
      "d1=1. ##mm\n",
      "d=1. ##cm\n",
      "##calculations: 1 cm\n",
      "R=E*d/(2*Ys)\n",
      "M=Ys*math.pi*d**3/32.\n",
      "## results\n",
      "print'%s %.2f %s'%(' daimeter wire:',d,'cm')\n",
      "print'%s %.2f %s'%('\\n Minimum radius = ',R,' cm')\n",
      "print'%s %.2f %s'%('\\n Bending Moment = ',M,' kg-cm')\n",
      "## calculations: 1 mm\n",
      "R1=R/(d1*10.)\n",
      "M1=M/(d1*1000.)\n",
      "## results\n",
      "print'%s %.2f %s'%('\\n  daimeter wire:',d1,'mm')\n",
      "print'%s %.2f %s'%('\\n Minimum radius = ',R1,' cm')\n",
      "print'%s %.2f %s'%('\\n Bending Moment = ',M1,' kg-cm')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        " daimeter wire: 1.00 cm\n",
        "\n",
        " Minimum radius =  58.82  cm\n",
        "\n",
        " Bending Moment =  1668.97  kg-cm\n",
        "\n",
        "  daimeter wire: 1.00 mm\n",
        "\n",
        " Minimum radius =  5.88  cm\n",
        "\n",
        " Bending Moment =  1.67  kg-cm\n"
       ]
      }
     ],
     "prompt_number": 2
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex11-pg258"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#calculate the section modulus per meter width of plate \n",
      "##initialization of variables\n",
      "import math\n",
      "t=0.5 ##cm\n",
      "s=2. ##m\n",
      "p1=7.5 ##cm\n",
      "p2=10. ##cm\n",
      "d=p2/2.\n",
      "D=1650. ##kg/cm**2\n",
      "## calculations\n",
      "## ab\n",
      "IxX=p1*t**3./12.+t*p1*d**2.\n",
      "## bc\n",
      "alpha=math.atan(3/4.)*57.3\n",
      "Ixx=t*(p1+d)**3./12.\n",
      "Iyy=0.\n",
      "Ixy=0.\n",
      "Iuu=Ixx*math.cos(alpha)**2+Iyy*math.sin(alpha)**2-Ixy*math.sin(2.*alpha)\n",
      "Ixx=Iuu+IxX\n",
      "IXX=Ixx*100./(2.*p1)\n",
      "Z=IXX/(d+t/2.)\n",
      "w=D*Z*8./(s**2*100.)\n",
      "w=w/1000.\n",
      "##Results\n",
      "print'%s %.2f %s'%('w = ',w,' tonne/m')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "w =  5.50  tonne/m\n"
       ]
      }
     ],
     "prompt_number": 3
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex12-pg261"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#find the total u.d load that can be supported \n",
      "##initialization of variables\n",
      "import math\n",
      "wb=10. ##cm\n",
      "wh=20. ##cm\n",
      "sb=0.5 ##cm\n",
      "sh=10. ##cm\n",
      "s=6. ##m\n",
      "fs=1650. ##kg/cm^2\n",
      "fw=150. ##kg/cm^2\n",
      "Es=2*10**6 ##kg/cm^2\n",
      "Ew=12*10**4 ##kg/cm^2\n",
      "\n",
      "##calculations\n",
      "## Method 1\n",
      "A=2*fs/(21.*Es)\n",
      "aw=2.*fw/(20.*Ew)\n",
      "a=min(A,aw)\n",
      "ss=a*Ew*wh/2.\n",
      "##Moment resistance of steel portion\n",
      "F=(fs+1573.)/2.*sb*sh\n",
      "k=sb/3*(fs+2*1573.)/(fs+1573.)\n",
      "Ms=2*F*(10.5-k)\n",
      "##Moment resistance of wooden portion\n",
      "F=ss*wb*wb/2.\n",
      "Mw=2*(F*(wb-wb/3.))\n",
      "M=Ms+Mw\n",
      "##Total udl supported\n",
      "W=M*8./(s*100.)\n",
      "\n",
      "##Results\n",
      "print('Using method 1')\n",
      "print'%s %.2f %s'%('\\n W = ',W,' kg')\n",
      "\n",
      "##Method 2\n",
      "nE=Es/Ew\n",
      "nf=fs/fw\n",
      "Is=2*(0+sb*sh*10.25**2)\n",
      "Iw=0.6*wh**3/12.\n",
      "I=Is+Iw\n",
      "W=fs*I*8./(s*100*10.5)\n",
      "\n",
      "##Results\n",
      "print('\\n Using method 2')\n",
      "print'%s %.2f %s'%('\\n W = ',W,' kg')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Using method 1\n",
        "\n",
        " W =  3040.91  kg\n",
        "\n",
        " Using method 2\n",
        "\n",
        " W =  3039.40  kg\n"
       ]
      }
     ],
     "prompt_number": 4
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex13-pg264"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#calculate stiffness ratio \n",
      "##initialization of variables\n",
      "import math\n",
      "p=6. ##mm\n",
      "Ixx=2375. ##cm**4\n",
      "Es=2*10**6. ##kg/cm**2\n",
      "EAl=0.667*10**6 ##kg/cm**2\n",
      "d1=10.6 ##cm\n",
      "d2=10. ##cm\n",
      "## calculations\n",
      "I1=2.*(0.+p/10*10*10.3**2)\n",
      "I2=Ixx*EAl/Es\n",
      "I=I1+I2\n",
      "n=I/I2\n",
      "## results\n",
      "print'%s %.2f %s'%('stiffness ratio =  ',n,'')\n",
      "n1=Es*d1/(d2*EAl)\n",
      "print'%s %.2f %s'%('\\n Stress ration = ',n1,'')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "stiffness ratio =   2.61 \n",
        "\n",
        " Stress ration =  3.18 \n"
       ]
      }
     ],
     "prompt_number": 5
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex14-pg269"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#calculate shape factor \n",
      "##initilization of new variables\n",
      "import math\n",
      "wt=0.8 ##cm\n",
      "ft=1.4 ##cm\n",
      "w=10. ##cm\n",
      "y=20. ##cm\n",
      "## Sigma_y: yield stress is not given explicitly\n",
      "k1=wt*(40.-2*ft)/2.\n",
      "Zp=(14*19.3+k1*9.3)*2\n",
      "If=2*(w*ft**3/12+w*ft*19.3**2)\n",
      "Iw=wt*(40-2*ft)**3/12.\n",
      "I=Iw+If\n",
      "Z=I/y\n",
      "sf=Zp/Z\n",
      "##Results\n",
      "print'%s %.2f %s'%('shape factor =  ',sf,'')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "shape factor =   1.18 \n"
       ]
      }
     ],
     "prompt_number": 6
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex15-pg270"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#calculate elastic core \n",
      "##initilization of new variables\n",
      "import math\n",
      "wt=0.8 ##cm\n",
      "ft=1.4 ##cm\n",
      "w=10. ##cm\n",
      "y=20. ##cm\n",
      "T=750. ##T==750*sigma_y\n",
      "## calculations\n",
      "MpF=ft*w*(40-2*ft)\n",
      "c1=((40.-2*ft)/2)**2-(T-MpF)/wt\n",
      "c=math.sqrt(3*c1)\n",
      "## results\n",
      "print'%s %.2f %s'%('Elastic core of ',2*c,' cm depth is present')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Elastic core of  26.71  cm depth is present\n"
       ]
      }
     ],
     "prompt_number": 7
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex17-pg274"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#find stress at the inner side of the hook \n",
      "##initialization of new variables\n",
      "P=2000. ##kg\n",
      "a=4. ##cm\n",
      "b=1. ##cm\n",
      "d=7. ##cm\n",
      "r=3. ##cm\n",
      "## calculations\n",
      "A=(a+b)/2*d\n",
      "xbar=(a+b*2.)*d/(r*(a+b))\n",
      "rbar=r+xbar\n",
      "I=b*d**3/12.+r*d**3/12.\n",
      "Ixx=I-A*2.8**2\n",
      "e=Ixx/(rbar*A)\n",
      "f1=P*5.8*(xbar-0.62)/(A*0.62*r)\n",
      "f2=P*5.8*(-d+2.18)/(A*0.62*(5.18+d-2.18))\n",
      "str=P/A\n",
      "Str_i=f1+str\n",
      "Str_o=-f2-str\n",
      "##Results\n",
      "print'%s %.2f %s'%('stress at the inner side of the hook =',Str_i,' kg/cm^2 (tensile)')\n",
      "print'%s %.2f %s'%('\\n stress at the outer side of the hook = ',Str_o,' kg/cm^2 (compressive)')\n",
      "## approximations involved in the text\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "stress at the inner side of the hook = 891.18  kg/cm^2 (tensile)\n",
        "\n",
        " stress at the outer side of the hook =  401.03  kg/cm^2 (compressive)\n"
       ]
      }
     ],
     "prompt_number": 8
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex20-pg281"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#  find Ratio of maximum bending stress in the stem and flange at various point\n",
      "##initialization of new variables\n",
      "import math\n",
      "t=1. ##cm\n",
      "a=40. ##cm\n",
      "A=236.\n",
      "## calculations\n",
      "ybar=a*t*0.5+(50-1)*4*0.5/(a*t+(50-1)*4)\n",
      "y1bar=1.25*a-ybar\n",
      "IAA=a*t**3/3.+(50-1)**3*4/12.+(50-1)*4*25.5**2\n",
      "Io=IAA-A*ybar**2.\n",
      "##part (1)\n",
      "r=y1bar/ybar\n",
      "## results\n",
      "print('Ratio of maximum bending stress in the stem and flange')\n",
      "print'%s %.2f %s'%('\\n Ratio = ',r,'')\n",
      "##part(2)\n",
      "## calculations\n",
      "r=(2/3.*388*29.56)-(2/3.*160*20.44)-(228*20.44)\n",
      "r=r/(2*2/3.*388*29.56)\n",
      "## results\n",
      "print('\\n Ratio of S.F in flange to total S.F')\n",
      "print'%s %.2f %s'%('\\n Ratio = ',r*100,' percent')\n",
      "## part (3)\n",
      "## calculations\n",
      "r=359.*200./Io\n",
      "## results\n",
      "print('\\n Ratio of maximum shear stress in the flange to average sher stress in the stem')\n",
      "print'%s %.2f %s'%('\\n Ratio =  ',r,'')\n",
      "##part (4)\n",
      "## calculations\n",
      "s=10 ##m\n",
      "r=r/0.922\n",
      "sigma=1650 ##kg/cm**2\n",
      "shear=945 ##kg/cm**2\n",
      "wsh=2*200*shear/(r*s)\n",
      "wsi=8*Io*sigma/(s**2*10*29.56)\n",
      "w=min(wsh,wsi)\n",
      "## results\n",
      "print'%s %.2f %s'%('\\n Maximum u.d.l. = ',w,' kg/m ')\n",
      "\n",
      "print('wrong moment of Inertia (Io) in the text and hence part (3) and part (4) are wrong')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Ratio of maximum bending stress in the stem and flange\n",
        "\n",
        " Ratio =  1.45 \n",
        "\n",
        " Ratio of S.F in flange to total S.F\n",
        "\n",
        " Ratio =  5.27  percent\n",
        "\n",
        " Ratio of maximum shear stress in the flange to average sher stress in the stem\n",
        "\n",
        " Ratio =   1.05 \n",
        "\n",
        " Maximum u.d.l. =  30507.35  kg/m \n",
        "wrong moment of Inertia (Io) in the text and hence part (3) and part (4) are wrong\n"
       ]
      }
     ],
     "prompt_number": 9
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex21-pg284"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#find the design force two cases\n",
      "##initialization of new variables\n",
      "import math\n",
      "a=30. ##cm\n",
      "t=2.5 ##cm\n",
      "S=15. ##cm\n",
      "s=5. ##Tonne\n",
      "## calculations\n",
      "I=a*a**3-25*25**3\n",
      "I=I/12.\n",
      "tau_zx=s*1000.*27.5*t*25/(4*35000.*t)\n",
      "FA=S*t*tau_zx\n",
      "tau_xy=s*1000.*a*t*27.5/(4.*35000.*t)\n",
      "FB=tau_xy*t*S\n",
      "##Results\n",
      "print'%s %.2f %s'%('case A \\n F = ',FA,' kg')\n",
      "print'%s %.2f %s'%('\\n case B \\n F= ',FB,' kg')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "case A \n",
        " F =  920.76  kg\n",
        "\n",
        " case B \n",
        " F=  1104.91  kg\n"
       ]
      }
     ],
     "prompt_number": 10
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex23-pg288"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#calculate shear centre\n",
      "##initialization of variables\n",
      "import math\n",
      "h=40. ##cm\n",
      "b=10. ##cm\n",
      "t1=1.4 ##cm\n",
      "t2=0.8 ##cm\n",
      "Ixx=13989.5 ##cm^4\n",
      "##calculations\n",
      "e=b**2*h**2*t1/(4.*Ixx)*(1-t1/h-t1/b+t1**2/(b*h))*(1-t1/h)\n",
      "##Results\n",
      "print'%s %.2f %s'%('Shear center: \\n e = ',e,' cm')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Shear center: \n",
        " e =  3.21  cm\n"
       ]
      }
     ],
     "prompt_number": 11
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex33-pg303"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#calculate deflection\n",
      "##initialization of new variables\n",
      "import math\n",
      "L=50. ##cm\n",
      "k=15. ##cm\n",
      "I=200. ##cm^4\n",
      "II=40. ##cm^4\n",
      "d=30. ##cm\n",
      "Pd=40. ##cm\n",
      "E=0.6667*10**6 ##kg/cm^2\n",
      "##calculations\n",
      "delta=(100.*10./2*16.33+L*d*35+L*k/2.*25+d*k/2.*45)\n",
      "delta1=delta/E\n",
      "##Results\n",
      "print'%s %.2f %s'%('deflection = ',delta1*10**1,'mm')\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "deflection =  1.20 mm\n"
       ]
      }
     ],
     "prompt_number": 12
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Ex39-pg312"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#design suitable I design section\n",
      "W=1\n",
      "L=6\n",
      "f=1650\n",
      "Z=305.9\n",
      "w=31.2\n",
      "z=8\n",
      "t=0.65\n",
      "d=22.5\n",
      "M=4.5*10**5\n",
      "##part(i)\n",
      "#maximum B.M\n",
      "BM= W*L**2/(z)\n",
      "SF=W*L/2\n",
      "print'%s %.2f %s %.2f %s '%('Bm=',Bm,''and '',SF,'')\n",
      "#part(ii)\n",
      "Z=M/f\n",
      "#part(iii)\n",
      "#for ISMB 225 having weight 31.2\n",
      "Z1=305.9\n",
      "print'%s %.2f %s'%('z=',Z1,'')\n",
      "#Additional Beam\n",
      "Bm=w*12/z\n",
      "Z2=Bm/f\n",
      "TZ=Z+Z2\n",
      "print'%s %.2f %s'%('TZ=',TZ,'')\n",
      "#thickness\n",
      "WA=t*d\n",
      "print'%s %.2f %s'%('WA=',WA,'')"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Bm= 4.00  3.00  \n",
        "z= 305.90 \n",
        "TZ= 272.76 \n",
        "WA= 14.62 \n"
       ]
      }
     ],
     "prompt_number": 19
    }
   ],
   "metadata": {}
  }
 ]
}