You are on page 1of 13

Advanced FEM

A Complete
Axisymmetric
FEM Program

AFEM Ch 6 Slide 1

Advanced FEM

Accessing NoteBook Quad4.SOR.nb for HWs


AFEM Chapter 6 Index
*Chapter 6: A Complete Axisymmetric FEM Program. Note: benchmark examples moved to Chapter 14
because of length.
*Chapter 6: Slides in PDF.
*Notebook containing the axisymmetric program QuadSOR documented in this Chapter and used in Chapter
7 for benchmarks. Implements 4-node and 8-node quadrilateral ring elements. Plotting problem under Mma
v6.0 and 7.0 fixed. Cells 17 and 18, useful for HW#5 added.
HW Assignment #6 (Chapters 5-7)
noon, due Th Mar 1 at class time.

due Thursday Mar 7. Note: First midterm will be posted by Feb 20

Last update: February 18, 2013

AFEM Ch 6 Slide 2

Advanced FEM

Axisymmetric (SOR) Program Configuration


User prepares
script for each
problem

Problem
Driver
Utilities:
Tabular Printing,
Graphics, etc

Analysis
Driver

Assembler

Element
Stiffnesses

BC
Application

Built in
Equation
Solver

Presented in
Chapter 5

Element Library

AFEM Ch 6 Slide 3

Nodal Stress
Recovery

Element
Stresses

Advanced FEM

Internally Pressurized Thick Tube:


Problem Definition
z
2b
2a

TUBE CROSS
SECTION

tube extends indefinitely


along the z axis

AFEM Ch 6 Slide 4

internal pressure p

Advanced FEM

Internally Pressurized Thick Tube:


FEM Discretization
(a) THICK TUBE UNDER
INTERNAL PRESSURE

e"

i Slic

m
"Sala

(b) FEM DISCRETIZATION

; ;
; ;
; ;

pr2

2
2 (1)
1
1

pr1
r=a
r = (a+b)/2
r=b

AFEM Ch 6 Slide 5

4
4 (2) 6 6
3
5 5
3

Advanced FEM

Model Definition
(Cell 15A of Quad4.SOR.nb)
ClearAll[Em,,a,b,h,p,Kfac,Ner,Nez];
Em=1000.; =0; Ner=4; Nez=1;
Kfac=1; a=4; b=10; h=1; p=10.0; aspect=h/(b-a);
(*

Define FEM model *)

MeshCorners=N[{{a,0},{b,0},{b,h},{a,h}}];
NodeCoordinates=GenerateRingNodeCoordinates[MeshCorners,Ner,Nez];
ElemNodeLists= GenerateQuad4NodeNumbers[Ner,Nez];
numnod=Length[NodeCoordinates]; numele=Length[ElemNodeLists];
ElemTypes=Table[{"Quad4"},{numele}];
ElemMaterial=
Table[{Em,},{numele}];
ElemFabrication= {}; ElemBodyForces= {};
FreedomValues= Table[{0,0},{numnod}];
FreedomValues[[1]]=FreedomValues[[2]]={Kfac*p*a*h/2,0};
FreedomTags=Table[{0,1},{numnod}];
ElemOptions={True,2,Kfac};

AFEM Ch 6 Slide 6

Advanced FEM

Model Definition (cont'd)

Plot2DElementsAndNodes[NodeCoordinates,ElemNodeLists,aspect,
"Thick tube mesh",True,True];

Thick tube mesh


2

4
1

6
2

8
3

AFEM Ch 6 Slide 7

10
4

Advanced FEM

Invoking the Solution Process

(*

Solve problem and print results *)

{NodeDisplacements,NodeForces,NodeStresses}=RingSolution[
NodeCoordinates,ElemTypes,ElemNodeLists,
ElemMaterial,ElemFabrication,ElemBodyForces,
ElemOptions,FreedomTags,FreedomValues];

AFEM Ch 6 Slide 8

Advanced FEM

Printing Solution Results


Print["Computed displacements:"];
PrintRingNodeDisplacements[NodeDisplacements];
Print["Node forces including reactions:"];
PrintRingNodeForces[NodeForces];
Print["Averaged nodal stresses:"];
PrintRingNodeStresses[NodeStresses];

Computed displacements:

Averaged nodal stresses:

Node
1
2
3
4
5
6
7
8
9
10

node
1
2
3
4
5
6
7
8
9
10

ur
0.255711
0.255711
0.239405
0.239405
0.234836
0.234836
0.231569
0.231569
0.224084
0.224084

uz
0
0.0244494
0.00312417
0.0213253
0.00426995
0.0201795
0.00637181
0.0180776
0.00801246
0.016437

sigrr
12.3626
12.3626
8.04755
8.04755
9.0946
9.0946
6.15515
6.15515
2.91302
2.91302

sigzz
2.17846
2.17846
0.384588
0.384588
0.878575
0.878575
0.0637133
0.0637133
0.336958
0.336958

AFEM Ch 6 Slide 9

sig
67.5211
67.5211
45.402
45.402
35.9983
35.9983
29.1534
29.1534
23.3714
23.3714

sigrz
0.781042
0.781042
0.533743
0.533743
0.405955
0.405955
0.467814
0.467814
0.410162
0.410162

Advanced FEM

Comparing with Exact (Analytical) Solution


(Cell 15B of Quad4.SOR.nb)
urexact[r_]:=p*a^2*(1+)*(b^2+r^2*(1-2*))/((b^2-a^2)*Em*r);
sigrrexact[r_]:=p*a^2/(b^2-a^2)*(1-b^2/r^2);
sig exact[r_]:=p*a^2/(b^2-a^2)*(1+b^2/r^2);
urlist=Table[{NodeCoordinates[[2*n-1,1]],
NodeDisplacements[[2*n-1,1]]},{n,Ner+1}];
pFEM=ListPlot[urlist,PlotJoined->True,DisplayFunction->Identity];
pexact=Plot[urexact[r],{r,a,b},DisplayFunction->Identity];
Show[Graphics[AbsoluteThickness[2]],pexact,Graphics[RGBColor[1,0,0]],
pFEM,DisplayFunction->$DisplayFunction,
TextStyle->{FontFamily->"Times",FontSize->12},
GridLines->Automatic,Axes->True,PlotRange->All,
PlotLabel->"Radial displacements (black=exact,red=FEM)"];

(Similar scripts for radial stress and hoop stress omitted


for brevity)

AFEM Ch 6 Slide 10

Advanced FEM

Comparing with Exact (Analytical) Solution (cont'd)


radial displacement

radial stress

Radial displacement ur (black=exact,red=FEM)

0.055
0.0525

hoop stress
14

12

0.0475

10

0.045

0.05

0.0425
0.04
0.0375

10

10

Radial stress (black=exact,red=FEM)

Radial stress rr (black=exact,red=FEM)

AFEM Ch 6 Slide 11

10

10

Advanced FEM

Homework Problem #2

;
;
;
;
;
z

;;
;;
;;

(b)

9 18 27

(a)

CONCRETE
PILE

36

45

44

43

42

41

4
3

40
39

38

SOIL

d/2

AXISYMMETRIC
FEM MODEL

1 10 19

28

37

A coarser mesh (9 elements) is solved in Cell 18 of Quad4.SOR.nb

AFEM Ch 6 Slide 12

Advanced FEM

Homework Problem #3
z

Mother
Earth

22
17
12
7
2

r
6 11 16 21 26

A coarser mesh (4 elements) is solved in Cell 19 of Quad4.SOR.nb

AFEM Ch 6 Slide 13

You might also like