﻿ Sample Problems > Applications > Stress > axisymmetric_stress

# axisymmetric_stress

Navigation:  Sample Problems > Applications > Stress >

# axisymmetric_stress   {  AXISYMMETRIC_STRESS.PDE

This example shows the application of FlexPDE to problems in

axi-symmetric stress.

The equations of Stress/Strain arise from the balance of forces in a

material medium, expressed in cylindrical geometry as

dr(r*Sr)/r - St/r  + dz(Trz) + Fr = 0

dr(r*Trz)/r + dz(Sz) + Fz = 0

where Sr, St and Sz are the stresses in the r- theta- and z- directions,

Trz is the shear stress, and Fr and Fz are the body forces in the

r- and z- directions.

The deformation of the material is described by the displacements,

U and V, from which the strains are defined as

er = dr(U)

et = U/r

ez = dz(V)

grz = dz(U) + dr(V).

The quantities U,V,er,et,ez,grz,Sr,St,Sz and Trz are related through the

constitutive relations of the material,

Sr  =  C11*er + C12*et + C13*ez - b*Temp

St  =  C12*er + C22*et + C23*ez - b*Temp

Sz  =  C13*er + C23*et + C33*ez - b*Temp

Trz =  C44*grz

In isotropic solids we can write the constitutive relations as

C11 = C22 = C33 = G*(1-nu)/(1-2*nu)     = C1

C12 = C13 = C23 = G*nu/(1-2*nu)         = C2

b = alpha*G*(1+nu)/(1-2*nu)

C44 = G/2

where G = E/(1+nu) is the Modulus of Rigidity

E is Young's Modulus

nu is Poisson's Ratio

and   alpha is the thermal expansion coefficient.

from which

Sr  =  C1*er + C2*(et + ez) - b*Temp

St  =  C1*et + C2*(er + ez) - b*Temp

Sz  =  C1*ez + C2*(er + et) - b*Temp

Trz =  C44*grz

Combining all these relations, we get the displacement equations:

dr(r*Sr)/r - St/r + dz(Trz) + Fr = 0

dr(r*Trz)/r + dz(Sz) + Fz = 0

These can be written as

div(P) = St/r - Fr

div(Q) = -Fz

where P = [Sr,Trz]

and   Q = [Trz,Sz]

The natural (or "load") boundary condition for the U-equation defines the

outward surface-normal component of P, while the natural boundary condition

for the V-equation defines the surface-normal component of Q. Thus, the

natural boundary conditions for the U- and V- equations together define

On a free boundary, both of these vectors are zero, so a free boundary

is simply specified by

The problem analyzed here is a steel doughnut of rectangular cross-section,

supported on the inner surface and loaded downward on the outer surface.

}

title "Doughnut in Axial Shear"

coordinates

ycylinder('R','Z')

variables

U           { declare U and V to be the system variables }

V

definitions

nu = 0.3           { define Poisson's Ratio }

E  = 20             { Young's Modulus x 10^-11 }

alpha = 0           { define the thermal expansion coefficient }

G = E/(1+nu)

C1 = G*(1-nu)/(1-2*nu)     { define the constitutive relations }

C2 = G*nu/(1-2*nu)

b = alpha*G*(1+nu)/(1-2*nu)

Fr = 0             { define the body forces }

Fz = 0

Temp = 0           { define the temperature }

Sr  =  C1*dr(U) + C2*(U/r + dz(V)) - b*Temp

St  =  C1*U/r + C2*(dr(U) + dz(V)) - b*Temp

Sz  =  C1*dz(V) + C2*(dr(U) + U/r) - b*Temp

Trz =  G*(dz(U) + dr(V))/2

r1 = 2             { define the inner and outer radii of a doughnut }

r2 = 5

q21 = r2/r1

L = 1.0             { define the height of the doughnut }

initial values

U = 0

V = 0

equations               { define the axi-symmetric displacement equations }

U:  dr(r*Sr)/r - St/r + dz(Trz) + Fr = 0

V:  dr(r*Trz)/r + dz(Sz) + Fz = 0

boundaries

region 1

start(r1,0)

load(U) =  0         { define a free boundary along bottom }

line to (r2,0)

value(U) = 0         { constrain R-displacement on right }

line to (r2,L)

load(U) =  0         { define a free boundary along top }

line to (r1,L)

value(U) = 0         { constrain all displacement on inner wall }

value(V) = 0

line to close

monitors

grid(r+U,z+V)           { show deformed grid as solution progresses }

plots                       { hardcopy at to close: }

grid(r+U,z+V)           { show final deformed grid }

contour(U) as "X-Displacement"         { show displacement field }

contour(V) as "Y-Displacement"         { show displacement field }

vector(U,V) as "Displacement"           { show displacement field }

contour(Trz) as "Shear Stress"