Chapter4-Inelastic Material Behavior

Ex1-pg110

In [1]:
##calculate the constants beta and gamma for annealed high carbon steel and compute the deflection U 
## initialization of variables
import math
P=170. ##kN
A=645. ## (mm)^2
## part (a)
E=211.4 ## G Pa (from figure)
Y=252.6 ## M Pa (from figure)
Beta=0.0799 ## G Pa (from figure)
Ey=Y/E
## The stress strain law given is
## Sigma= E*eps  for eps< Ey
## Sigma= (1-Beta)*Y + Beta*E*eps  otherwise

## part (b)
th=math.atan(1.8/2.4)## radians
F=P/(2.*math.cos(th))
F=F*10**3 ##N
A=A*10**-6 ##m^2
E=E*10**9 ##Pa
Y=Y*10**6 ##Pa
L=3.0 ##m
Sigma=F/A
if(Sigma<Y):
    eps=Sigma/E
else:
   eps=(Sigma-(1-Beta)*Y )/(Beta*E) 

u=eps*L/math.cos(th)
u=u*10**3 ##mm
## results
print('part (b)\n')
print"%s %.2f %s"%(' Deflection = ',u,' mm')

## part (c)
P=270. ##kN
F=P/(2.*math.cos(th))
F=F*10**3 ##N
Sigma=F/A
if(Sigma<Y):
    eps=Sigma/E
else:
   eps=(Sigma-(1-Beta)*Y )/(Beta*E) 
u=eps*L/math.cos(th)
u=u*10**3 ##mm
## results
print('\n part (c)\n')
print"%s %.2f %s %.2f %s "%(' Deflection = ',u,' mm'and  'for P = ',P,'kN')

P=300. ##kN
F=P/(2.*math.cos(th))
F=F*10**3 ##N
Sigma=F/A
if(Sigma<Y):
    eps=Sigma/E
else:
   eps=(Sigma-(1-Beta)*Y )/(Beta*E) 

u=eps*L/math.cos(th)
u=u*10**3 ##mm
## results
print"%s %.2f %s %.2f %s"%('\n Deflection = ',u,' mm'and  'for P = ',P,' kN')
part (b)

 Deflection =  2.92  mm

 part (c)

 Deflection =  6.49 for P =  270.00 kN 

 Deflection =  12.94 for P =  300.00  kN

Ex2-pg111

In [2]:
##calculate the load parameter and residual forces and fully plastic load 
## initialization of variables
import math
## Material properties
E=200. ##GPa
A=100. ##mm^2
Y1=500. ##M Pa
Y2=250. ## MPa
## calculations
E=E*10**9 ## Pa
A=A*10**-6 ##m^2
Y1=Y1*10**6 ## Pa
Y2=Y2*10**6 ##Pa
L_FG=1. ##m
L_CD=2. ## m
P1=Y2*A
e=P1*L_FG/(E*A)
e_FG=e
e_CD=e
P2=E*A*e_FG/L_FG
P3=E*A*e_CD/L_CD
Py=2.*P1+2.*P2+P3
##results
print('part (a) \n')
print"%s %.2f %s %.2f %s "%(' Yield Load Py = ',Py/10**3,' kN' and 'the displacement is ',e*10**3,' mm')

## part(b)
P4=Y1*A
e=P4*L_FG/(E*A)
P5=E*A*e/L_CD
P=2.*P1+2.*P4+P5
print('\n part (b) \n')
print"%s %.2f %s %.2f %s "%(' Yield Load P = ',P/10**3,' kN' and 'the displacement is ',e*10**3,' mm')
## Fully plastic load
P6=Y2*A*2.
Pp=2.*P1+2.*P4+P6
e_CD=P6*L_CD/(E*A)
print"%s %.2f %s %.2f %s "%('\n Fully Plastic Load Pp = ',Pp/10**3,' kN' and 'the displacement is ',e_CD*10**3,' mm')
part (a) 

 Yield Load Py =  112.50 the displacement is  1.25  mm 

 part (b) 

 Yield Load P =  175.00 the displacement is  2.50  mm 

 Fully Plastic Load Pp =  200.00 the displacement is  5.00  mm 

Ex3-pg124

In [3]:
##calculate the determine factor of safety SF against yeild and determine which criterion tersca or vonmises and illustrate stress state
## initialization of variables
import math
## Stresses
import numpy
Sxx=100. ## MPa
Syy=-14. ## MPa
Sxy=50. ## MPa
Y=300. ## MPa
## part (a)
Szz=0. ## MPa
Syz=0. ##MPa
Sxz=0. ## MPa
## To calculate principal stresses
I1=Sxx+Syy+Szz
I2=Sxx*Syy-Sxy**2+Szz*Sxx-Sxz**2+Szz*Syy-Syz**2
M=([[Sxx, Sxy, Sxz],
   [Sxy ,Syy, Syz],
   [Sxz, Syz, Szz]])
I3=numpy.linalg.det(M)   
p=([1, -I1, I2 ,-I3])
Sigma=numpy.roots(p)
Smax=Sigma[0]
Smin=Sigma[1]
## Smax=max(Sigma)
## Smin=min(Sigma)
tau_max=Y/2.
SF=tau_max*2./(Smax-Smin)
print('part (a)\n')
print"%s %.2f %s"%(' SF = ',SF,' if the material obeys Tresca criterion')

## part (b)
SF=math.sqrt(2)*Y/math.sqrt((Smax**2)+(Smin**2)+(Smin-Smax)**2)
print('\n part (b)')
print"%s %.2f %s"%('\n SF = ',SF,' if the material obeys von Mises criterion')
part (a)

 SF =  1.98  if the material obeys Tresca criterion

 part (b)

 SF =  2.17  if the material obeys von Mises criterion