Skip to content

Instantly share code, notes, and snippets.

@crmccreary
Created June 12, 2018 14:33
Show Gist options
  • Save crmccreary/5693b927a0811ad37b4ef40838419570 to your computer and use it in GitHub Desktop.
Save crmccreary/5693b927a0811ad37b4ef40838419570 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Calculation of axial load and bending moment that will produce a unit stress"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Axial load"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The stress from an axial load is\n",
"\n",
"$$\n",
"\\sigma_{axial} = \\frac{P}{A}\n",
"$$"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [],
"source": [
"from math import pi\n",
"from pint import UnitRegistry\n",
"u = UnitRegistry()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [],
"source": [
"D_leg = 1917.7*u.mm\n",
"t_leg = 38.1*u.mm\n",
"d_leg = D_leg - 2*t_leg"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [],
"source": [
"A_leg = pi*(D_leg**2 - d_leg**2)/4.0"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [],
"source": [
"D_pile = 2133.6*u.mm\n",
"t_pile = 38.1*u.mm\n",
"d_pile = D_pile - 2*t_pile"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [],
"source": [
"A_pile = pi*(D_pile**2 - d_pile**2)/4.0"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [],
"source": [
"A = A_leg + A_pile"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"P = 4.7580e+05 newton\n"
]
}
],
"source": [
"P=1.0E6*u.Pa*A\n",
"print('P = {0:0.4e}'.format(P.to(u.N)))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Bending moment"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The composite area moment of inertia of a grouted section can be defined as\n",
"$$\n",
"I_{comp} = \\frac{\\pi}{64}\\left[\\left(D_{pile}^4 + D_{leg}^4\\right) - \\left(d_{pile}^4 +d_{leg}^4\\right)\\right]\n",
"$$"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [],
"source": [
"I_comp=pi/64.0*((D_pile**4 + D_leg**4) - (d_pile**4 + d_leg**4))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The extreme fiber stress from bending is calculated from\n",
"\n",
"$$\n",
"\\sigma_b = \\frac{M c}{I}\n",
"$$\n",
"\n",
"We want to solve for the moment which will produce a unit stress on the extreme fiber"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"M = 2.2226e+08 millimeter * newton\n"
]
}
],
"source": [
"c = D_pile/2\n",
"M = 1.0e6*u.Pa*I_comp/c\n",
"print('M = {0:0.4e}'.format(M.to(u.N*u.mm)))"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Extreme fiber stress = 1.00 megapascal\n"
]
}
],
"source": [
"print('Extreme fiber stress = {0:0.2f}'.format((M*c/I_comp).to(u.MPa)))"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.2"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment