{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Chapter 12:Retaining Walls"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex12.1:pg-649"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Summary of design:\n",
      "Thickness of stem (at base) =  450  mm\n",
      "Thickness of stem at top =  200  mm\n",
      "Refer Fig. 12.4 of textbook for reinforcement details\n"
     ]
    }
   ],
   "source": [
    "import math\n",
    "sigma_cbc=5 #in MPa\n",
    "sigma_st=230 #in MPa\n",
    "phi=30 #angle of repose, in degrees\n",
    "H=5 #height of wall, in m\n",
    "B=0.6*H #assume, in m\n",
    "T=B/4 #assume toe to base ratio as 1:4\n",
    "W=16 #density of retained earth, in kN/cu m\n",
    "P=W*H**2/2*(1-math.sin(phi))/(1+math.sin(phi)) #in kN\n",
    "P=67 #assume, in kN\n",
    "M1=P*H/3 #in kN-m\n",
    "M1=112 #assume, in kN-m\n",
    " #bending moment at 2.5 m below the top\n",
    "h=2.5 #in m\n",
    "M2=W*h**2/2*(1-math.sin(phi))/(1+math.sin(phi))*h/3 #in kN-m\n",
    "M2=14 #in kN-m\n",
    " #thickness of stem (at the base)\n",
    "d=math.sqrt(M1*10**6/0.65/1000) #in mm\n",
    "d=415 #in mm\n",
    "dia=20 #assume 20 mm dia bars\n",
    "D1=d+dia/2+25 #in mm\n",
    "D2=200 #thickness at top, in mm\n",
    "D3=D2+(D1-D2)*h/H #in mm\n",
    "d3=math.sqrt(M2*10**6/0.65/1000) #in mm\n",
    "D3=d3+dia/2+25 #< 325 mm (provided), hence OK\n",
    "D3=325 #in mm\n",
    "d3=D3-dia/2-25 #in mm\n",
    "#main steel\n",
    "#(a) 5 m below the top\n",
    "Ast=M1*10**6/sigma_st/0.9/d #in sq mm\n",
    " #provide 20 mm dia bars\n",
    "s1=1000*0.785*20**2/Ast #in mm\n",
    "s1=240 #assume, in mm\n",
    " #(b) 2.5 m below the top\n",
    "Ast=M2*10**6/sigma_st/0.9/d3 #in sq mm\n",
    "Astmin=0.12/100*10**3*D3 #in sq mm\n",
    "Ast=max(Ast,Astmin) #in sq mm\n",
    " #provide 12 mm dia bars\n",
    "s2=1000*0.785*12**2/Ast #in mm\n",
    "s2=290 #assume, in mm\n",
    " #distribution steel\n",
    "Ads=0.12/100*10**3*D3 #in sq mm\n",
    " #provide 8 mm dia bars\n",
    "s3=1000*0.785*8**2/Ads #in mm\n",
    "s3=125 #assume, in mm\n",
    " #check for shear\n",
    "V=P #in kN\n",
    "Tv=V*10**3.0/10**3/d #in MPa\n",
    " #for M15 grade concrete and pt=0.31\n",
    "Tc=0.22 #in MPa\n",
    "#as Tc > Tv, no shear reinforcement required\n",
    "#development length\n",
    "#(a) At the base of stem\n",
    "dia=20 #in mm\n",
    "Tbd=0.84 #in MPa\n",
    "Ld=dia*sigma_st/4/Tbd #in mm\n",
    "Ld=1370 #assume, in mm\n",
    " #(b) At 2.5 m below the top\n",
    "dia=12 #in mm\n",
    "Ld=dia*sigma_st/4/Tbd #in mm\n",
    "Ld=825 #assume, in mm\n",
    " #check for stability\n",
    "D4=500 #thickness of base, in mm (assume)\n",
    "V1=1/2.0*(D1-D2)/10**3*H*25 #in kN\n",
    "V2=(D2/10**3)*H*25 #in kN\n",
    "V3=(D4/10**3)*B*25 #weight of base, in kN\n",
    "V4=(B-T-D1/10**3)*H*W #weight of soil, in kN\n",
    "V=V1+V2+V3+V4 #in kN\n",
    "M=V1*(T+2/3*(D1-D2)/10**3)+V2*(T+(D1-D2)/10**3+D2/10**3.0/2)+V3*B/2+V4*(B-(B-T-D1/10**3)/2) #in kN-m\n",
    "x=M/V #in m\n",
    "x=1.8 #assume, in m\n",
    "#factor of safety\n",
    "#for overturning\n",
    "F1=V*x/P/(H/3) #> 1.5, hence OK\n",
    "mu=0.5\n",
    " #for sliding\n",
    "F2=mu*V/P #> 1.5, hence OK\n",
    "print \"Summary of design:\\nThickness of stem (at base) = \",(D1),\" mm\\nThickness of stem at top = \",(D2),\" mm\\nRefer Fig. 12.4 of textbook for reinforcement details\"\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex12.2:pg-650"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Summary of design:\n",
      "Thickness of stem (at base) =  485  mm\n",
      "Thickness of stem at top =  200  mm\n",
      "Refer Fig. 12.7 of textbook for reinforcement details\n"
     ]
    }
   ],
   "source": [
    "import math\n",
    "sigma_cbc=5 #in MPa\n",
    "sigma_st=140 #in MPa\n",
    "phi=35 #angle of repose, in degrees\n",
    "H=6 #height of wall, in m\n",
    "B=0.4*H #assume, in m\n",
    "T=B/4 #assume toe to base ratio as 1:4\n",
    "W=18 #density of retained earth, in kN/cu m\n",
    "P=W*H**2/2*(1-math.sin(phi))/(1+math.sin(phi)) #in kN\n",
    "P=88 #assume, in kN\n",
    "M1=P*H/3 #in kN-m\n",
    " #bending moment at 3 m below the top\n",
    "h=3 #in m\n",
    "M2=W*h**2/2*(1-math.sin(phi))/(1+math.sin(phi))*h/3 #in kN-m\n",
    "M2=22 #in kN-m\n",
    " #thickness of stem (at the base)\n",
    "d=math.sqrt(M1*10**6/0.87/1000) #in mm\n",
    "d=450 #in mm\n",
    "dia=20 #assume 20 mm dia bars\n",
    "D1=d+dia/2+25 #in mm\n",
    "D2=200 #thickness at top, in mm\n",
    "D3=D2+(D1-D2)*h/H #in mm\n",
    "d3=math.sqrt(M2*10**6/0.87/1000) #in mm\n",
    "D3=d3+dia/2+25 #< 342.5 mm (provided), hence OK\n",
    "D3=342.5 #in mm\n",
    "d3=D3-dia/2-25 #in mm\n",
    "#main steel\n",
    "#(a) 6 m below the top\n",
    "Ast=M1*10**6/sigma_st/0.87/d #in sq mm\n",
    " #provide 20 mm dia bars\n",
    "s1=1000*0.785*20**2/Ast #in mm\n",
    "s1=95 #assume, in mm\n",
    " #(b) 3 m below the top\n",
    "Ast=M2*10**6/sigma_st/0.87/d3 #in sq mm\n",
    " #provide 10 mm dia bars\n",
    "s2=1000*0.785*10**2/Ast #in mm\n",
    "s2=130 #assume, in mm\n",
    " #distribution steel\n",
    "Ads=0.15/100*10**3*D3 #in sq mm\n",
    " #provide 10 mm dia bars\n",
    "s3=1000*0.785*10**2/Ads #in mm\n",
    "s3=150 #assume, in mm\n",
    " #check for shear\n",
    "V=P #in kN\n",
    "Tv=V*10**3.0/10**3/d #in MPa\n",
    " #for M15 grade concrete and pt=0.71\n",
    "Tc=0.34 #in MPa\n",
    "#as Tc > Tv, no shear reinforcement required\n",
    "#development length\n",
    " #(a) At the base of stem\n",
    "dia=20 #in mm\n",
    "Tbd=0.6 #in MPa\n",
    "Ld=dia*sigma_st/4/Tbd #in mm\n",
    "Ld=1170 #assume, in mm\n",
    " #(b) At 3 m below the top\n",
    "dia=10 #in mm\n",
    "Ld=dia*sigma_st/4/Tbd #in mm\n",
    "Ld=590 #assume, in mm\n",
    " #check for stability\n",
    "D4=500 #thickness of base, in mm (assume)\n",
    "V1=1.0/2*(D1-D2)/10**3*H*25 #in kN\n",
    "V2=(D2/10**3)*H*25 #in kN\n",
    "V3=(D4/10**3)*B*25 #weight of base, in kN\n",
    "V4=(B-T-D1/10**3)*H*W #in kN\n",
    "V=V1+V2+V3+V4 #in kN\n",
    "M=V1*(T+2/3*(D1-D2)/10**3)+V2*(T+(D1-D2)/10**3+D2/10**3/2)+V3*B/2+V4*(B-(B-T-D1/10**3)/2) #in kN-m\n",
    "x=M/V #in m\n",
    "#factor of safety\n",
    "#for overturning\n",
    "F1=V*x/P/(H/3) #> 1.5, hence OK\n",
    "mu=0.5\n",
    "#for sliding\n",
    "F2=mu*V/P #< 1.5, hence it is not safe against sliding\n",
    "print \"Summary of design:\\nThickness of stem (at base) = \",(D1),\" mm\\nThickness of stem at top = \",(D2),\" mm\\nRefer Fig. 12.7 of textbook for reinforcement details\"\n",
    " #answers in textbook for factor of safety against overturning and sliding are incorrect\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex.3:pg-652"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Summary of design:\n",
      "Thickness of base slab= 500  mm. Refer to Fig. 12.11 of textbook for reinforcement details.\n"
     ]
    }
   ],
   "source": [
    "import math\n",
    "sigma_cbc=5 #in MPa\n",
    "sigma_st=230 #in MPa\n",
    "phi=30 #angle of repose, in degrees\n",
    "H=5 #height of wall, in m\n",
    "B=0.6*H #assume, in m\n",
    "T=B/4 #assume toe to base ratio as 1:4\n",
    "t=450 #thickness of wall, in mm\n",
    "W=16 #density of retained earth, in kN/cu m\n",
    "P=W*H**2/2*(1-math.sin(phi))/(1+math.sin(phi)) #in kN\n",
    "P=67 #assume, in kN\n",
    "y=1.8 #in m\n",
    "P=67 #in kN\n",
    "Wt=223 #in kN\n",
    "D=0.5 #thickness of base, in m\n",
    "x=1.8-P*(H/3+D/10**3)/Wt #in m\n",
    "x=1.15 #in m\n",
    "e=B/2-x #in m\n",
    "q1=Wt/B+Wt*e/(1*B**2.0/6) #maximum pressure, in kN/sq m\n",
    "q2=Wt/B-Wt*e/(1*B**2.0/6) #minimum pressure, in kN/sq m\n",
    "Pa=q1-(q1-q2)/B*T #pressure at A, in kN/sq m\n",
    "Pa=100 #assume, in kN/sq m\n",
    "Pb=q1-(q1-q2)/B*(T+t/10**3) #pressure at B, in kN/sq m\n",
    "Pb=85 #assume, in kN/sq m\n",
    "Ma=Pa*T**2/2+1/2*(q1-Pa)*T*2/3*T-T*D*25*T/2 #bending moment at A, in kN-m\n",
    "Ma=30 #round-off, in kN-m\n",
    "Mb=(B-T-t/10**3)**2*H*W/2+(B-T-t/10**3)**2*D*25/2-q2*(B-T-t/10**3)**2/2-(Pb-q2)*1/3*(B-T-t/10**3)**2/2 #bending moment at B, in kN-m\n",
    "Mb=80 #in kN-m\n",
    " #design of toe\n",
    "d=math.sqrt(Ma*10**6/0.65/10**3) #in mm\n",
    "D=d+10/2+70 #<500 mm (provided), hence OK\n",
    "D=500 #in mm\n",
    "d=D-70 #in mm\n",
    "Ast=Ma*10**6/sigma_st/0.9/d #in sq mm\n",
    "Astmin=0.12/100*10**3*D #in sq mm\n",
    "Ast=max(Ast,Astmin) #in sq mm\n",
    "s1=1000*0.785*10**2/Ast #in mm\n",
    "s1=130 #assume, in mm\n",
    "#distribution steel is same as above\n",
    "#check for shear\n",
    "V=(q1+Pa)/2*T #in kN\n",
    "Tv=V*10**3/10**3/d #in MPa\n",
    "#for M15 grade concrete and pt=0.32\n",
    "Tc=0.2368 #in MPa\n",
    "#as Tc > Tv, no shear reinforcement required\n",
    "#development length\n",
    "dia=10 #in mm\n",
    "Tbd=0.84 #in MPa\n",
    "Ld=dia*sigma_st/4/Tbd #in mm\n",
    "Ld=685 #assume, in mm\n",
    " #design of heel\n",
    "d=math.sqrt(Mb*10**6/0.65/10**3) #< 430 mm (provided), hence OK\n",
    "d=430 #in mm\n",
    "Ast=Mb*10**6/sigma_st/0.9/d #in sq mm\n",
    "s2=1000*0.785*10**2/Ast #in mm\n",
    "s2=85 #assume, in mm\n",
    "#distribution steel: 0.12% of Ag, hence provide 10 mm dia bars @ 130 mm c/c \n",
    "V=(B-T-t/10**3)*H*W-(Pb+q2)/2*(B-T-t/10**3) #in kN\n",
    "Tv=V*10**3.0/10**3/d #in MPa\n",
    "#for M15 grade concrete and pt=0.32\n",
    "Tc=0.2368 #in MPa\n",
    "#as Tc > Tv, no shear reinforcement required\n",
    "#development length\n",
    "dia=10 #in mm\n",
    "Tbd=0.84 #in MPa\n",
    "Ld=dia*sigma_st/4/Tbd #in mm\n",
    "Ld=685 #assume, in mm\n",
    "print \"Summary of design:\\nThickness of base slab=\",(D),\" mm. Refer to Fig. 12.11 of textbook for reinforcement details.\"\n",
    " #answer in textbook for spacing of 10 mm dia bars for main steel in toe and distribution steel is incorrect\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.11"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
