30
1 DERIVATION OF LAGRANGIAN SHAPE FUNCTIONS FOR HEXAHEDRAL ELEMENT HANI AZIZ AMEEN Associate Professor of Engineering and Applied Mechanics Dies and Tools Engineering Department Technical College, Baghdad, Iraq E-mail: [email protected] ABSTRACT This paper introduces a general theory for the derivation of the shape functions for the hexahedral element (20-node) in the interval [0,1] .Two basic procedures are introduced; the first by polynomials equation and the second by superposition .The paper also introduces the formulation of the three-dimensional finite element method for elasticity problems. A complete finite element program is introduced in QBASIC for the three-dimensional problems using either local coordinates [ ] 1 , 1 + or intrinsic coordinates [ ] 1 , 0 + . INTRODUCTION The Lagrangian quadrilateral family of finite elements appeared very early in the history of the finite element method. Melosh [1] derived the 4-node rectangular element. Pain [2] gave an algorithm for the direct displacement approach with any number of unknown coefficients. The concept of arbitrary-node elements was described by Irons [3]. Argyris [4] derived the 8-node paralleiogramic element. Ergatoudis [5] derived the shape function for some Lagrangian and serendipity elements. Zafrany [6] derived the Lagrangian and Hermitian shape functions for quadrilateral element. The shape functions for 20-node hexahederal element with intrinsic coordinates using Lagrange superposition is presented in this paper. The main concept here is that the geometry of the element is defined using the nodal coordinates and the shape function which are used to interpolate the main unknowns, e.g., displacement or temperature with an iso- parametric formulation which is convenient to express the shape functions in terms of the non- dimensional element coordinates ξ, η and ζ which varies from –1 to +1 over the element for local coordinates and from 0 to +1 over the element for intrinsic coordinates [7]. This coordinates International Electronic Engineering Mathematical Society IEEMS http://www.ieems.org International e-Journal of Abstract and Applied Engineering Mathematics http://www.ieems.org/iejaaem.htm ISSN 2090-5297 Volume (1), January, 2011, pp.1-30

Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

Embed Size (px)

DESCRIPTION

derivation of lagrangian shape functions for hexahedral element, Hani Aziz Ameen, Finite element method, FEM, superposition method

Citation preview

Page 1: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

1

DERIVATION OF LAGRANGIAN SHAPE FUNCTIONS FOR

HEXAHEDRAL ELEMENT

HANI AZIZ AMEEN

Associate Professor of Engineering and Applied Mechanics

Dies and Tools Engineering Department

Technical College,

Baghdad,

Iraq E-mail: [email protected]

ABSTRACT This paper introduces a general theory for the derivation of the shape functions for the hexahedral element (20-node) in the interval [0,1] .Two basic procedures are introduced; the first by polynomials equation and the second by superposition .The paper also introduces the formulation of the three-dimensional finite element method for elasticity problems. A complete finite element program is introduced in QBASIC for the three-dimensional

problems using either local coordinates [ ]1,1 +− or intrinsic coordinates [ ]1,0 + .

INTRODUCTION

The Lagrangian quadrilateral family of finite elements appeared very early in the history of the

finite element method. Melosh [1] derived the 4-node rectangular element. Pain [2] gave an

algorithm for the direct displacement approach with any number of unknown coefficients. The

concept of arbitrary-node elements was described by Irons [3]. Argyris [4] derived the 8-node

paralleiogramic element. Ergatoudis [5] derived the shape function for some Lagrangian and

serendipity elements. Zafrany [6] derived the Lagrangian and Hermitian shape functions for

quadrilateral element. The shape functions for 20-node hexahederal element with intrinsic

coordinates using Lagrange superposition is presented in this paper. The main concept here is

that the geometry of the element is defined using the nodal coordinates and the shape function

which are used to interpolate the main unknowns, e.g., displacement or temperature with an iso-

parametric formulation which is convenient to express the shape functions in terms of the non-

dimensional element coordinates ξ, η and ζ which varies from –1 to +1 over the element for local

coordinates and from 0 to +1 over the element for intrinsic coordinates [7]. This coordinates

International Electronic Engineering Mathematical Society IEEMS

http://www.ieems.org

International e-Journal of Abstract and Applied Engineering Mathematics

http://www.ieems.org/iejaaem.htm

ISSN 2090-5297

Volume (1), January, 2011, pp.1-30

Page 2: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

2

system is particularly useful when the numerical integration is adopted to evaluate any element

integrals which are required during the stiffness matrix and load vector calculations.

COMPLETE POLYNOMIALS IN THREE DIMENSIONS

In the three dimensions shown in figure (1), it can be used to provide the terms in a complete

polynomial of nth order [8] which may also be found from the expression

nkjizyxzyxfp

r

kji

r ≤++=∑=

,),,(1

γ

Where the number of terms in the polynomial is given as:

( )( )( ) 6/321 +++= nnnp

Figure 1: Complete polynomials in three dimensions

Hence for a linear polynomial

zγyγxγγzyxf 4321),,( +++=

And the number of required terms is 4,

For a quadratic polynomial 2

10

2

9

2

87654321),,( zγyγxγyzγxzγxyγzγyγxγγzyxf +++++++++=

Thus 10 terms are required

For cubic polynomial

yxγzxγzγyγxγyzγxzγxyγzγyγxγγzyxf 2

12

2

11

2

10

2

9

2

87654321 ),,( +++++++++++=

3

20

3

19

3

18

2

17

2

16

2

1514

2

13 zγyγxγzyγyzγxyγxyzγxzγ ++++++++ (1)

And 20 terms are required

Now equation (1) for non-dimensional coordinates (ξ,η,ζ) will be:

ηξγζξγζγηγξγηζγξζγξηγζγηγξγγ 2

12

2

11

2

10

2

9

2

87654321 +++++++++++=Ψ

3

20

3

19

3

18

2

17

2

16

2

1514

2

13 ζγηγξγζηγηζγξηγξηζγξζγ ++++++++ (2)

Where Ψ is any physical variable, i.e., displacement u,v,w or temperature …etc. Applying

equation (2) on each node of the element in figure (2) gives:

13

2014131211 ............................... ζγζγηγξγγ +++++=Ψ

23

2024232212 ............................... ζγζγηγξγγ +++++=Ψ

…………… (3)

Page 3: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

3

203

20204203202120 ............................... ζγζγηγξγγ +++++=Ψ

ξ , η, and ζ for the local node number for this element figure(2), gives the following table (1).

Figure 2: 20-node rectangular parallelepiped element (hexahedral element)

Table (1)

Local node ξi ηi ζi

1 –1 –1 –1

2 1 –1 –1

3 1 1 –1

4 –1 1 –1

5 –1 –1 1

6 1 –1 1

7 1 1 1

8 –1 1 1

9 0 –1 –1

10 1 0 –1

11 0 1 –1

12 –1 0 –1

13 –1 –1 0

14 1 –1 0

15 1 1 0

16 –1 1 0

17 0 –1 1

18 1 0 1

19 0 1 1

20 –1 0 1

Substituting the value of ξi, ηi and ζi from the table (1) into equation (3) and solve it

simultaneously to get the value of constants 20321 ,....,,, γγγγ and then substitute these constants

Page 4: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

4

into equation (2), one can get:

202044332211 ....... NNNNN Ψ++Ψ+Ψ+Ψ+Ψ=Ψ (4)

Where

)2)(1)(1)(1)(8/1(1 −−−−−−−= ζηξζηξN

)2)(1)(1)(1)(8/1(2 −−−−−+= ζηξζηξN

)2)(1)(1)(1)(8/1(3 −−−−++= ζηξζηξN

)2)(1)(1)(1)(8/1(4 −−+−−+−= ζηξζηξN

)2)(1)(1)(1)(8/1(5 −+−−+−−= ζηξζηξN

)2)(1)(1)(1)(8/1(6 −+−+−+= ζηξζηξN

)2)(1)(1)(1)(8/1(7 −+++++= ζηξζηξN

)2)(1)(1)(1)(8/1(8 −++−++−= ζηξζηξN

)1)(1)(1)(4/1( 2

9 ζηξN −−−=

)1)(1)(1)(4/1( 2

10 ζηξN −−+=

)1)(1)(1)(4/1( 2

11 ζηξN −+−=

)1)(1)(1)(4/1( 2

12 ζηξN −−−=

)1)(1)(1)(4/1( 2

13 ζηξN −−−=

)1)(1)(1)(4/1( 2

14 ζηξN +−−=

)1)(1)(1)(4/1( 2

15 ζηξN ++−=

)1)(1)(1)(4/1( 2

16 ζηξN −+−=

)1)(1)(1)(4/1( 2

17 ζηξN +−−=

)1)(1)(1)(4/1( 2

18 ζηξN +−+=

)1)(1)(1)(4/1( 2

19 ζηξN ++−=

)1)(1)(1)(4/1( 2

20 ζηξN +−−=

It can be proved that the above shape functions satisfied the conditions

∑ =1),,( ζηξNi (5)

= =≠),,(

ji if 1

ji if 0iiii ζηξN (6)

LAGRANGIAN SUPERPOSITION METHOD

Hexahedral local element

In this article the shape functions of the general boundary described element can be obtained by

Lagrangian superposition [6] as shown in figure (3).

Page 5: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

5

Figure 3: Superposition for local coordinates

Page 6: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

6

Now;

ΨΨΨΨΨΨ ˆˆ),,( −−++= ζηξζηξ (7)

Applied the Lagrange interpolation on the nodes in the ξ direction, it can be obtained:

522

21

312

21

21

339

21

21

321

21

21

31 )().().()().().()().().()().().( ΨΨΨΨΨ ζLηLξLζLηLξLζLηLξLζLηLξLξ +++=

1121

22

324

21

22

316

22

21

3317

22

21

32 )().().()().().()().().()().().( ΨΨΨΨ ζLηLξLζLηLξLζLηLξLζLηLξL ++++

722

22

3319

22

22

328

22

22

319

22

22

33 )().().()().().()().().()().().( ΨΨΨΨ ζLηLξLζLηLξLζLηLξLζLηLξL ++++

912

)1(

2

)1(

1

)1)(1(

2

)1(

2

)1(

2

)1(ΨΨΨ

−−

−−

−−+

+−−

−−−

=ζηξξζηξξ

ξ

522

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨ

−+

−−−

+−−

−−+

+ζηξξζηξξ

6172

)1(

2

)1(

2

)1(

2

)1(

2

)1(

1

)1)(1(ΨΨ

+−−+

++

−−

−−+

+ζηξξζηξξ

1142

)1(

2

)1(

1

)1)(1(

2

)1(

2

)1(

2

)1(ΨΨ

−−+

−−+

+−−+−

+ζηξξζηξξ

892

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨ

++−+

−−++

+ζηξξζηξξ

7192

)1(

2

)1(

2

)1(

2

)1(

2

)1(

1

)1)(1(ΨΨ

++++

+−−

−++

ζηξξζηξξ (8)

Applied the Lagrange interpolation on the nodes in the η direction, it can be shown that:

222

21

314

21

21

3312

21

21

321

21

21

31 )().().()().().()().().()().().( ΨΨΨΨΨ ζLξLηLζLξLηLζLξLηLζLξLηLη +++=

2021

22

325

21

22

319

22

21

3310

22

21

32 )().().()().().()().().()().().( ΨΨΨΨ ξLζLηLξLζLηLξLζLηLξLζLηL ++++

722

22

3318

22

22

326

22

22

318

22

22

33 )().().()().().()().().()().().( ΨΨΨΨ ζLξLηLζLξLηLζLξLηLξLζLηL ++++

1212

)1(

1

)1)(1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨΨ

−−

−−+

−−

+−−−−

=ζηηξζηηξ

η

242

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨ

+−−−

+−−+

−−

+ζηηξζηηξ

9102

)1(

2

)1(

2

)1(

2

)1(

1

)1)(1(

2

)1(ΨΨ

++−−

++

−−+

−−

+ζηηξζηηξ

2052

)1(

1

)1)(1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨ

−−

−+−

−−

+−−++

+ξηηξξηηζ

682

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨ

+−−+

++−−

+ζηηξζηηξ

7182

)1(

2

)1(

2

)1(

2

)1(

1

)1)(1(

2

)1(ΨΨ

++++

+−

−+++

ζηηξζηηξ (9)

Applied the Lagrange interpolation on the nodes in the ζ direction, it can be shown that:

222

21

315

21

21

3313

21

21

321

21

21

31 )().().()().().()().().()().().( ΨΨΨΨΨ ξLηLζLηLξLζLηLξLζLηLξLζLζ +++=

1621

22

324

21

22

316

22

21

3314

22

21

32 )().().()().().()().().()().().( ΨΨΨΨ ξLηLζLξLηLζLξLηLζLξLηLζL ++++

722

22

3315

22

22

329

22

22

318

22

22

33 )().().()().().()().().()().().( ΨΨΨΨ ζLξLηLξLηLζLξLηLζLξLηLζL ++++

Page 7: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

7

1912

)1)(1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨΨ

−−+

−−

−−

+−

−−

−−

=ζζηξζζηξ

ζ

252

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨ

−−

−−+

+−−

−−+

+ζζηξζηξξ

6142

)1(

2

)1(

2

)1(

1

)1)(1(

2

)1(

2

)1(ΨΨ

+−−+

+−

++−−+

+ζζηξζζηξ

1642

)1(

2

)1(

1

)1)(1(

2

)1(

2

)1(

2

)1(ΨΨ

−−+

−−+

+−+−

+ζηξξζζηξ

982

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨ

++++

−+−−

+ζζηξζζηξ

7152

)1(

2

)1(

2

)1(

2

)1(

2

)1(

1

)1)(1(ΨΨ

++++

++−

−++

ζζηξζηξξ (10)

Applied Lagrange interpolation on the nodes at corner:

922

21

224

21

21

222

21

21

221

21

21

21 )().().()().().()().().()().().(ˆ ΨΨΨΨΨ ζLξLηLζLξLηLζLηLξLζLξLηL +++=

722

22

228

21

22

226

22

22

215

21

22

21 )().().()().().()().().()().().( ΨΨΨΨ ξLζLηLξLζLηLξLζLηLξLζLηL ++++

212

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(ˆ ΨΨΨ−−

−−+

+−−

−−−

=ζηξζηξ

942

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨ

−−++

+−+

−−

+ζηξζηξ

652

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨ

+−−+

++

−−

−+

+ζηξζηξ

782

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(ΨΨ

++++

−−++

+ξηξξηζ

(11)

Substitute equations (8), (9), (10) and (11) into equation (7), it can be deduced that:

1]2

)1(

2

)1(

2

)1(2

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1([),,(

Ψ

Ψ

−−−

−−

−−−

−−

−−

+−−−

−−

+−−

−−−

=

ζηξζζηξ

ζηηξζηξξζηξ

+−−

−−+

−−

−−−

++−

−−

+−−

−−+

+

2]2

)1(

2

)1(

2

)1(2

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1(

2

)1( [

Ψζηξζηξξ

ζηηξζηξξ

20]2

)1(

1

)1)(1(

2

)1([ ................ Ψ

+−

−+−−

+ζηηξ

2020332211 ............................. NNNN ΨΨΨΨΨ ++++=

Where

)2)(1)(1)(1)(8/1(1 −−−−−−−= ζηξζηξN

)2)(1)(1)(1)(8/1(2 −−−−−+= ζηξζηξN

……………………………………………..

)1)(1)(1)(4/1( 2

20 ζηξN +−−=

It can be shown that Ni is identical to what was found previously.

Page 8: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

8

Hexahedral Intrinsic Element In this paper the shape functions for the hexahedral element with intrinsic coordinates by superposition method is presented, now similar as before figure (4) shows the superposition of the element.

Figure 4: Superposition for intrinsic coordinates

Page 9: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

9

The local number of this element can be shown in the table (2):

Table(2)

Local node ξi ηi ζi

1 0 0 0

2 0 1 0

3 1 1 0

4 1 0 0

5 0 0 1

6 0 1 1

7 1 1 1

8 1 0 1

9 0 0.5 0

10 0.5 1 0

11 1 0.5 0

12 0.5 0 0

13 0 0 0.5

14 0 1 0.5

15 1 1 0.5

16 1 0 0.5

17 0 0.5 1

18 0.5 1 1

19 1 0.5 1

20 0.5 0 1

ΨΨΨΨΨΨ ˆˆ),,( −−++= ζηξζηξ (12)

Applied Lagrange interpolation on the nodes in the ξ direction:

522

21

314

21

21

3312

21

21

321

21

21

31 )().().()().().()().().()().().( ΨΨΨΨΨ ζLηLξLζLηLξLζLηLξLζLηLξLξ +++=

1021

22

322

21

22

318

22

21

3320

22

21

32 )().().()().().()().().()().().( ΨΨΨΨ ζLηLξLζLηLξLζLηLξLζLηLξL ++++

722

22

3318

22

22

326

22

22

313

22

22

33 )().().()().().()().().()().().( ΨΨΨΨ ζLηLξLζLηLξLζLηLξLζLηLξL ++++

+−−−+−−−−= 121 )1)(1)(1(4)1)(1)(1)(5.0(2 ΨΨΨ ζηξξζηξξξ

+−−−+−−− 54 )1)(1)(5.0(2)1)(1)(5.0(2 ΨΨ ζηξξζηξξ

+−−+−− 820 )1)(5.0(2)1)(1(4 ΨΨ ζηξξζηξξ

+−−+−−− 102 )1()1(4)1()5.0)(1(2 ΨΨ ζηξζηξξ

71869 )5.0(2)1(4)1)(5.0(2)1()5.0(2 ΨΨΨΨ ηζξξηζξξηζξξζηξξ −+−+−−+−− (13)

Applied Lagrange interpolation on the nodes in the η direction:

422

21

312

21

21

339

21

21

321

21

21

31 )().().()().().()().().()().().( ΨΨΨΨΨ ξLζLηLζLξLηLζLξLηLζLξLηLη +++=

1721

22

325

21

22

319

22

21

3311

22

21

32 )().().()().().()().().()().().( ΨΨΨΨ ξLζLηLξLζLηLξLζLηLξLζLηL ++++

722

22

3319

22

22

328

22

22

316

22

22

33 )().().()().().()().().()().().( ΨΨΨΨ ζLξLηLζLξLηLζLξLηLξLζLηL ++++

Page 10: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

10

+−−−+−−−−= 91 )1)(1)(1(4)1)(1)(5.0)(1(2 ΨΨΨ ζηξηζξηηη

+−−−+−−− 42 )1)(1)(5.0(2)1)(1)(5.0(2 ΨΨ ζξηηζξηη

+−−+−− 911 )1)(5.0(2)1)(1(4 ΨΨ ξζηηξζηη

+−−+−−− 175 )1()1(4)1()1)(5.0(2 ΨΨ ξζηηξζηη

71986 )5.0(2)1(4)1)(5.0(2)1()5.0(2 ΨΨΨΨ ξζηηξζηηξζηηζζηη −+−+−−+−− (14)

Applied Lagrange interpolation on the nodes in the ζ direction, it can be shown that:

422

21

315

21

21

3313

21

21

321

21

21

31 )().().()().().()().().()().().( ΨΨΨΨΨ ξLηLζLηLξLζLηLξLζLηLξLζLζ +++=

1421

22

322

21

22

318

22

21

3316

22

21

32 )().().()().().()().().()().().( ΨΨΨΨ ξLηLζLξLηLζLξLηLζLξLηLζL ++++

722

22

3315

22

22

329

22

22

316

22

22

33 )().().()().().()().().()().().( ΨΨΨΨ ζLξLηLξLηLζLξLηLζLξLηLζL ++++

+−−−+−−−−= 131 )1)(1)(1(4)1)(1)(1)(5.0(2 ΨΨΨ ξηζζξηζζζ

+−−−+−−− 45 )1)(1)(5.0(2)1)(1)(5.0(2 ΨΨ ξηζζξηζζ

+−−+−− 816 )1)(5.0(2)1)(1(4 ΨΨ ξηζζξηζζ

+−−+−−− 142 )1()1(4)1()5.0)(1(2 ΨΨ ξηξζξηζζ

71596 )5.0(2)1(4)1)(5.0(2)1()5.0(2 ΨΨΨΨ ηξζζηξζζηξζζξηζζ −+−+−−+−− (15)

Applied Lagrange interpolation on the nodes at corner:

922

21

222

21

21

224

21

21

221

21

21

21 )().().()().().()().().()().().(ˆ ΨΨΨΨΨ ζLξLηLζLξLηLζLηLξLζLξLηL +++=

722

22

226

21

22

228

22

22

215

21

22

21 )().().()().().()().().()().().( ΨΨΨΨ ξLζLηLξLζLηLξLζLηLξLζLηL ++++

+−−+−−−= 41 )1)(1()1)(1)(1(ˆ ΨΨΨ ηζξξηζ

+−+−− 92 )1()1()1( ΨΨ ξξηξηζ

+−+−− 85 )1()1)(1( ΨΨ ξηζξηζ

76)1( ΨΨ ζηξξζη +− (16)

Substitute equations (13), (14), (15) and (16) into equation (12), it can be deduced that:

20

1

])1)(1(4[

..............)]1)(1)(1(2)1)(1)(5.0)(1(2

)1)(1)(5.0)(1(2)1)(1)(1)(5.0(2[),,(

Ψ

ΨΨ

ζηξξ

ζηξηξζζ

ζξηηζηξξζηξ

−−

++−−−−−−−−

+−−−−+−−−−=

2020332211 ............................. NNNN ΨΨΨΨΨ ++++=

Where:

)5.0)(1)(1)(1(21 ζηξζηξN −−−−−−=

)5.0)(1()1(22 −−+−−−= ζηξζηξN

)5.1)(1(23 −−+−= ζηξζξηN

)5.0)(1)(1(24 −−−−−= ζηξζηξN

)5.0()1)(1(25 −+−−−−= ζηξζηξN

)5.1()1(26 −++−−= ζηξηζξN

)5.2(27 −++= ζηξξηζN

)5.1()1(28 −+−−= ζηξζηξN

)1)(1()1(49 ζηηξN −−−=

)1)(1(410 ζξηξN −−=

Page 11: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

11

)1)(1(411 ζηξηN −−=

)1)(1)(1(412 ζηξξN −−−=

)1()1)(1(413 ζζηξN −−−=

)1()1(414 ζηξξN −−=

ηζξξN )1(415 −=

ζηξξN )1)(1(416 −−=

ζηηξN )1()1(417 −−=

ηζξξN )1(418 −=

ζηξηN )1(419 −=

ζηξξN )1)(1(420 −−=

And it can be proved that the shape function Ni satisfied the conditions mention in equation(5)

and (6).

TRANSFORMATION MATRIX

A most convenient method of establishing the coordinate transformations is to use the shape

functions.

iiNXNXNXNXNXX =++++= 2020332211 .......................),,( ζηξ

iiNYNYNYNYNYY =++++= 2020332211 .............................),,( ζηξ

iiNZNZNZNZNZZ =++++= 2020332211 ..........................),,( ζηξ

Such transformation is known as "iso-parametric transformation". By the usual rules of partial

differentiation, it can be written:

ξ

Z

Z

N

ξ

Y

Y

N

ξ

X

X

N

ξ

N iiii

∂∂

∂∂

+∂∂

∂∂

+∂∂

∂∂

=∂∂

η

Z

Z

N

η

Y

Y

N

η

X

X

N

η

N iiii

∂∂

∂∂

+∂∂

∂∂

+∂∂

∂∂

=∂∂

ζ

Z

Z

N

ζ

Y

Y

N

ζ

X

X

N

ζ

N iiii

∂∂

∂∂

+∂∂

∂∂

+∂∂

∂∂

=∂∂

In a matrix form:

∂∂∂∂∂∂

=

∂∂∂∂∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

=

∂∂∂∂∂∂

Z

NY

NX

N

J

Z

NY

NX

N

ζ

Z

ζ

Y

ζ

X

η

Z

η

Y

η

Z

ξ

Y

ξ

X

ζ

N

η

N

i

i

i

i

i

i

i

i

i

][

Page 12: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

12

Where

Jacobian matrix [J] =

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

ζ

Z

ζ

Y

ζ

Z

η

Y

η

Z

ξ

Y

ξ

X

Strain Matrix [B] Six strain components are relevant in full three-dimensional analysis

X

uεx ∂

∂= ,

Y

vε y ∂

∂= ,

Z

wεz ∂

∂= ,

X

v

Y

uγxy ∂

∂+

∂∂

= , Y

w

Z

vγyz ∂

∂+

∂∂

= , Z

u

X

wγzx ∂

∂+

∂∂

=

We have

2020332211 ............................. NuNuNuNuu ++++=

2020332211 ................................. NvNvNvNvv ++++=

2020332211 ............................ NwNwNwNww ++++=

Since the strain components will be:

X

Nu

X

Nu

X

Nuεx ∂

∂++

∂∂

+∂∂

= 2020

22

11 ...........................

Y

Nv

Y

Nv

Y

Nvε y ∂

∂++

∂∂

+∂∂

= 2020

22

11 ...........................

Z

Nw

Z

Nw

Z

Nwεz ∂

∂++

∂∂

+∂∂

= 2020

22

11 ...........................

X

Nv

X

Nv

X

Nv

Y

Nu

Y

Nu

Y

Nuγxy ∂

∂++

∂∂

+∂∂

+∂∂

++∂∂

+∂∂

= 2020

22

11

2020

22

11 ..............

Y

Nw

Y

Nw

Y

Nw

Z

Nv

Z

Nv

Z

Nvγyz ∂

∂++

∂∂

+∂∂

+∂∂

++∂∂

+∂∂

= 2020

22

11

2020

22

11 ..............

Z

Nu

Z

Nu

Z

Nu

X

Nw

X

Nw

X

Nwγzx ∂

∂++

∂∂

+∂∂

+∂∂

++∂∂

+∂∂

= 2020

22

11

2020

22

11 ..............

In a matrix form

δBε ][= (17)

Where ε is the strain vector that

`}{ yxyzxyzyx γγγεεεε =

Page 13: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

13

∂∂

∂∂

∂∂

∂∂∂∂

∂∂

∂∂

∂∂

∂∂

=

X

N

Z

NY

N

Z

NX

N

Y

NZ

NY

NX

N

B

ii

ii

ii

i

i

i

0

0

0

00

00

00

][

δ is the displacement vector and it takes the following form:

} w vu ........ w vu w v{ 202020222111u=δ

Elasticity Matrix [D] From Hooke's law the stress/ strain relation is

εDσ ][= (18)

Where

`}{ yxyzxyzyx τττσσσσ =

−−

−−

−−

−−

−−

−−

−+−

=

)1(2

)21(00000

0)1(2

)21(0000

00)1(2

)21(000

0001)1()1(

000)1(

1)1(

000)1()1(

1

)21)(1(

)1(][

υ

υ

υ

υυ

υ

υ

υ

υ

υ

υ

υ

υ

υυ

υ

υ

υ

υυ

υED

Where E is the Young modulus of elasticity and υ is the Poisson's ratio.

Stiffness Matrix [K] For many problems of continuum mechanics there are forms of energy balance theorems, which provide variational statement directly. The energy theorem, which is employed in this paper is "the minimum total potential energy theorem". The total potential energy can be expressed as follows [9]:

WUχ −=

Where U is the strain energy stored in the system

Page 14: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

14

W is the work done by the external loads. Of all possible displacement states (u,v,w) a body can assume which satisfy compatibility and given kinematic or displacement boundary equilibrium equation makes the total potential energy

assuming a minimum value, i.e., =χ minimum and the variation of 0=δχ

Hence:

σε2

1=U per volume

For increment ∫∫∫= dxdydzεσUt

)(2

1

And

δFWt.=

Where F is the force vector which takes the following form:

}Fz Fy Fx ..................... Fz Fy { 202020111FxF =

Thus:

∫∫∫ −= Fδdxdydzεσχtt

)(2

1 (19)

Substitute equations (17) and (18) into equation (19) it can be deduced that:

( ) FδδBDBδχttt −∫∫∫= dzdy dx ]][[][

2

1

Minimization 0 , =∂∂δ

χχ , it can be shown that FδK =][

Where

∫∫∫= dzdy dx ]][[][][ BDBK t (20)

When modified Gaussian quadratic product rule is adopted, the integration in equation (20) is carried out using the expression [10]:

∫ ∫ ∫=1

0

1

0

1

0

d d d det[J] ),,(][ ζηξζηξfK (21)

Where

]][[][),,( BDBζηξf t=

ζηξdx d d d det[J] dzdy =

Thus equation (21) can be written:

∫ ∫ ∫=1

0

1

0

1

0

d d d ),,(][ ζηξζηξgK

∑ ∑ ∑== = =

NQ

k

NQ

j

NQ

iiiikji ζηξgwwwK

1 1 1

),,( ][

Where NQ is the number of modified Gaussian points, table(3). Table 3: Modified Gaussian points

NQ iii ζηξ ,, wi,wj,wk

2 0.2113249 0.7886751

0.5 0.5

3 0.11270167 0.5

0.88729833

0.27777778 0.44444444 0.27777778

Page 15: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

15

COMPUTER PROGRAM The FE- program (FEEL3D) is built in QUIKBASIC language as shown in appendix. The flow chart of the program is illustrated in figure (5).

Figure 5: Flow chart for the program

COMPUTER SOLUTION EXAMPLE The cantilever beam with concentrated load is employed. The physical properties are P=20 kN L= 4 m I = 104 * 106 mm4 E=100 GN/m2

3.0=υ

Figure 6 Finite element mesh for this problem can be shown in figure (6).

Figure 7: FE-mesh for cantilever beam

Page 16: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

16

Table (3) shows the deflection of the beam for the two element coordinates (local, intrinsic) and it can be deduced that the results for the intrinsic coordinates element is more efficient than that for local coordinates element and the error for intrinsic coordinates at maximum deflection is much better than that for local intrinsic coordinates.

Length (mm)

Theoretical deflection*

(mm)

Deflection* for intrinsic

coordinates element (mm)

Deflection* for local

coordinates element (mm)

1000 2.08 2.41 2.32

2000 8.97 9.4 9.19

3000 21.63 20.3 19.27

4000 41.02 33.72 31.13

* In the downward direction

The error for local coordinate at maximum deflection = 24.07% The error for intrinsic coordinates at maximum deflection =17.75%

CONCLUSIONS The authors have introduced a general theory for Lagrangian superposition shape functions of hexahedral element (20-node). This theory is simpler than that given in reference [8] and also the authors used their method (superposition) to derive the shape functions for hexahedral element in intrinsic coordinates, i.e., in the interval [0,1] such shape functions have been programmed by the authors in their finite element system the FEEL3D system. The results have been obtained from the intrinsic element were more accurate than for local element. Thus the hexahedral element for intrinsic coordinates is more efficient than that for local coordinates.

REFERENCES

(1) R. J. Melosh, 'Basis for Derivation of Matrices for the Direct Stiffness Method', AIAA

Journal, vol. (1),1631-1637 ,1963.

(2) T. H. Pain, 'Derivation of Element Stiffness Matrices'. AIAA, Journal, vol. (2), pp. 576-

577, 1964.

(3) B. M. Irons, 'Engineering Applications of Numerical Integration in Stiffness Methods',

AIAA, Journal, vol. (4), pp. 2035-2037, 1966.

(4) J. H. Argyris, 'Continua and Discontinua', Proc. Conf. Matrix Method in Struct. Mech.

Airforce Inst. of Tech.,Wrigh Patterson, A.F. Base ,1965.

(5) I. Erqatoudis, B. M. Irons and O. C. Zienkiewicz, 'Curved isoparametric quadrilateral

elements for finite element analysis', Int. J. Solid and Struct., vol. 4, pp. 31-42,1968.

(6) A. EL-Zafrany and R. A. Cookson, 'Derivation of Lagrangian and Hermitian Shape

functions for quadrilateral elements,' Int. J. Num. Meth. Eng., vol.(23), pp. 1939-1958,1986.

(7) E. Hinton and D. R. J. Owen, 'An Introduction to Finite Element Computations',

Pineridge Press, 1981.

(8) O. C. Zienkiewicz, 'The Finite Element Method', Mc Graw-Hill book company limited,

Page 17: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

17

1977

(9) S. S. Rao, 'The Finite Element Method in Engineering', 2nd Edition Pergamon Press,

1989.

(10) A. H. Stroud and Don Secrest, 'Gaussian Quadrature Formulas', Prentice- Hall,

Englewood Cliffs, N. J. , 1966.

(11) P. A. F. Martins and M. J. M. Barata Marques, 'Model 3-A three Dimensional mesh

generator', Computers and Structures, vol. (42), No. (4), pp. 511-529, 1992.

Appendix

In this appendix a list of the FEEL3D program is presented and the mesh for the FEEL3D can be

made by using Reference [11], if the complex problems existed.

DECLARE SUB XJA() DECLARE SUB JINVERS() DECLARE SUB MATV (M!, N!, A!(), B!(), C(()! DECLARE SUB REACTION() DECLARE SUB CARTD() DECLARE SUB JACOB() DECLARE SUB INTRD() DECLARE SUB MATI (N!, A!(), ND(! DECLARE SUB DMATRIX() DECLARE SUB BMATRIX() DECLARE SUB MATM (M!, N!, L!, A!(), B!(), C(()! DECLARE SUB MATT (M!, N!, A!(), AT(()! DECLARE SUB ESMG() DECLARE SUB REDUCER() DECLARE SUB SOLVER() DECLARE SUB MATS (N!, A!(), B!(), DV!, ND(! DECLARE SUB LOCAD() DECLARE SUB DATIn() DECLARE SUB ASSEMBLY() DECLARE SUB DISPLACEMENT() DECLARE SUB STRESS() DECLARE SUB LOCACO() DECLARE SUB INTRCO()

'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 'PROGRAM FINITE ELEMENT METHOD FOR 'THREE DIMENSIONAL ELASTICITY 'PROBLEMS (FEEL3D.BAS)

'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ BY:

ASST. PROF. DR. HANI AZIZ AMEEN TECHNICAL COOLEGE – BAGHDAD – IRAQ. NOV. 2010

'========================================================================= 'MAIN PROGRAM

'========================================================================= DIM SHARED E, P, IDOF, ITY, NN, NEL, NT, NR, DETJ DIM SHARED XI, ETA, ZITA CLS INPUT "NAME OF DATA FILE"; A$ INPUT "NAME OF DISPLACEMENT FILE"; DISP$

Page 18: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

18

INPUT "NAME OF REACTION FILE"; REAC$ INPUT "NAME OF STRESS FILE"; STRS$ OPEN A$ FOR INPUT AS #1 OPEN DISP$ FOR OUTPUT AS #2 ' DISPLACEMENT OPEN REAC$ FOR OUTPUT AS #3 ' REACTION OPEN STRS$ FOR OUTPUT AS #4 ' STRESS INPUT #1, NN, NEL, IDOF NT = NN * IDOF $'DYNAMIC DIM SHARED SKE(60, 60), SKG(NT, NT), FG(NT), RG(NT), DG(NT) DIM SHARED XG(NN), YG(NN), ZG(NN) DIM SHARED ITA(NEL, 20) DIM SHARED ISW(NT), PDIS(NT( DIM SHARED XE(20), YE(20), ZE(20), DE(60) DIM SHARED DSFX(20), DSFY(20), DSFZ(20( DIM SHARED DSFXI(20), DSFETA(20), DSFZITA(20) DIM SHARED XJINV(3, 3), XJ(3, 6) DIM SHARED B(6, 60), D(6, 6), DB(6, 60), BT(60, 6), BTDB(60, 60) DIM SHARED WQ(3), XQ(3) DIM SHARED XXI(20), EETA(20), ZZITA(20) DIM SHARED S(6), EE(6), SP(6), EP(3), NC(NN), EN(NN, 6), SN(NN, 6) DATIn DIM SHARED SKR(NR, NR), FR(NR), DR(NR) ASSEMBLY REDUCER SOLVER DISPLACEMENT REACTION STRESS SCREEN 1 PRINT "FINSHED WITH HELP OF GOD" END REM $STATIC SUB ASSEMBLY ========================================================================' 'ASSEMBLY OF EQUATION FOR THE WHOLE DOMAIN

'========================================================================= FOR IE = 1 TO NEL FOR I = 1 TO 20 XE(I) = XG(ITA(IE, I)) YE(I) = YG(ITA(IE, I)) ZE(I) = ZG(ITA(IE, I)) NEXT I CALL ESMG FOR I = 1 TO 20 FOR IR = 1 TO IDOF IL = (I - 1) * IDOF + IR IG = (ITA(IE, I) - 1) * IDOF + IR FOR J = 1 TO 20 FOR S = 1 TO IDOF JL = (J - 1) * IDOF + S JG = (ITA(IE, J) - 1) * IDOF + S SKG(IG, JG) = SKG(IG, JG) + SKE(IL, JL) NEXT S, J, IR, I NEXT IE END SUB SUB BMATRIX

'========================================================================= 'B MATRIX GENERATOR SUBROUTINE

'========================================================================= CALL CARTD

Page 19: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

19

K = 0 FOR I = 1 TO 20 IB1 = (2 * I) - 1 + K IB2 = (2 * I) + K IB3 = (2 * I) + 1 + K B(1, IB1) = DSFX(I) B(1, IB2) = 0! B(1, IB3) = 0! B(2, IB1) = 0! B(2, IB2) = DSFY(I) B(2, IB3) = 0! B(3, IB1) = 0! B(3, IB2) = 0! B(3, IB3) = DSFZ(I) B(4, IB1) = DSFY(I) B(4, IB2) = DSFX(I) B(4, IB3) = 0! B(5, IB1) = 0! B(5, IB2) = DSFZ(I) B(5, IB3) = DSFY(I) B(6, IB1) = DSFZ(I) B(6, IB2) = 0! B(6, IB3) = DSFX(I) K = K + 1 NEXT I END SUB SUB CARTD

'========================================================================= 'CARTESIAN DERIVATIVES SUBROUTINE

'======================================================================== CALL JACOB FOR I = 1 TO 20 DSFX(I) = XJINV(1, 1) * DSFXI(I) + XJINV(1, 2) * DSFETA(I) + XJINV(1, 3) * DSFZITA(I) DSFY(I) = XJINV(2, 1) * DSFXI(I) + XJINV(2, 2) * DSFETA(I) + XJINV(2, 3) * DSFZITA(I) DSFZ(I) = XJINV(3, 1) * DSFXI(I) + XJINV(3, 2) * DSFETA(I) + XJINV(3, 3) * DSFZITA(I) NEXT I END SUB SUB DATIn

'-------------------------------------------------------------- 'READ MATERIAL DATA

'-------------------------------------------------------------- INPUT #1, E, P, ITY

'-------------------------------------------------------------- 'READ MESH DATA

'-------------------------------------------------------------- FOR II = 1 TO NN INPUT #1, I, XG(I), YG(I), ZG(I) NEXT II FOR II = 1 TO NEL INPUT #1, IE FOR I = 1 TO 20 INPUT #1, ITA(IE, I) NEXT I NEXT II

'---------------------------------------------------------------- 'READ BOUNDARY CONDITION DATA

'---------------------------------------------------------------- INPUT #1, NRN FOR I = 1 TO NRN INPUT #1, IG

Page 20: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

20

FOR L = 1 TO IDOF INPUT #1, ISW(IDOF * (IG - 1) + L), PDIS(IDOF * (IG - 1) + L) NEXT L NEXT I NT = NN * IDOF NR = NT FOR I = 1 TO NT IF ISW(I) <> 0 THEN NR = NR - 1 NEXT I

'-------------------------------------------------------------- 'READ LOADING DATA

'--------------------------------------------------------------- INPUT #1, NLN FOR I = 1 TO NLN INPUT #1, IG FOR IR = 1 TO IDOF INPUT #1, FG(IDOF * (IG - 1) + IR) NEXT IR NEXT I

'---------------------------------------------------------------- CLOSE #1 END SUB SUB DISPLACEMENT

'========================================================================= 'NODAL DISPLACEMENT SUBROUTINE

'========================================================================= PRINT #2, "DISPLACEMENT" IG = 0 IR = IG FOR I = 1 TO NN FOR LR = 1 TO IDOF IG = IG + 1 IF ISW(IG) = 1 THEN GOTO 10 IR = IR + 1 DG(IG) = DR(IR) GOTO 50 10 DG(IG) = PDIS(IG) 50 NEXT LR PRINT #2, I, XG(I), YG(I), ZG(I) FOR LR = 1 TO IDOF PRINT #2, DG(IDOF * (I - 1) + LR) NEXT LR NEXT I CLOSE #2 END SUB SUB DMATRIX

'======================================================================= ' D MATRIX SUBROUTINE

'======================================================================= FOR I = 1 TO 6 FOR J = 1 TO 6 D(I, J) = 0! NEXT J, I Q = (E * (1 - P)) / ((1 + P) * (1 - 2 * P)) Q1 = P / (1 – P) Q2 = (1 - 2 * P) / (2 * (1 – P)) D(1, 1) = Q D(1, 2) = Q * Q1 D(1, 3) = Q * Q1 D(2, 1) = Q * Q1

Page 21: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

21

D(2, 2) = Q D(2, 3) = Q * Q1 D(3, 1) = Q * Q1 D(3, 2) = Q * Q1 D(3, 3) = Q D(4, 4) = Q * Q2 D(5, 5) = Q * Q2 D(6, 6) = Q * Q2 END SUB SUB ESMG

'========================================================================= 'ELEMENT STIFFNESS MATRIX GENERATED

'========================================================================= NQ = 3 IF ITY = 2 THEN XQ(1) = -.774596669#: XQ(2) = 0: XQ(3) = .774596669# WQ(1) = .555555555#: WQ(2) = .888888888#: WQ(3) = .555555555# ELSE WQ(1) = .27777778#: WQ(2) = .444444: WQ(3) = .27777778# XQ(1) = .11270167#: XQ(2) = .5: XQ(3) = .88729833# END IF NTE = IDOF * 20 CALL MATI(NTE, SKE(), NTE() CALL DMATRIX FOR S = 1 TO NQ FOR IR = 1 TO NQ FOR L = 1 TO NQ WT = WQ(S) * WQ(IR) * WQ(L) XI = XQ(L) ETA = XQ(IR) ZITA = XQ(S) CALL BMATRIX DV = WT * DETJ CALL MATM(6, 6, NTE, D(), B(), DB(() CALL MATT(6, NTE, B(), BT(() CALL MATM(NTE, 6, NTE, BT(), DB(), BTDB(() CALL MATS(NTE, BTDB(), SKE(), DV, 60) NEXT L NEXT IR NEXT S END SUB SUB INTRCO

'========================================================================= 'INTRINSIC COORDINATE OF ELEMENT NODES

'========================================================================= XXI(1) = 0! XXI(2) = 0! XXI(3) = 1! XXI(4) = 1! XXI(5) = 0! XXI(6) = 0! XXI(7) = 1! XXI(8) = 1! XXI(9) = 0! XXI(10) = .5 XXI(11) = 1! XXI(12) = .5 XXI(13) = 0! XXI(14) = 0! XXI(15) = 1!

Page 22: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

22

XXI(16) = 1! XXI(17) = 0! XXI(18) = .5 XXI(19) = 1! XXI(20) = .5 EETA(1) = 0! EETA(2) = 1! EETA(3) = 1! EETA(4) = 0! EETA(5) = 0! EETA(6) = 1! EETA(7) = 1! EETA(8) = 0! EETA(9) = .5 EETA(10) = 1! EETA(11) = .5 EETA(12) = 0! EETA(13) = 0! EETA(14) = 1! EETA(15) = 1! EETA(16) = 0! EETA(17) = .5 EETA(18) = 1! EETA(19) = .5 EETA(20) = 0! ZZITA(1) = 0! ZZITA(2) = 0! ZZITA(3) = 0! ZZITA(4) = 0! ZZITA(5) = 1! ZZITA(6) = 1! ZZITA(7) = 1! ZZITA(8) = 1! ZZITA(9) = 0! ZZITA(10) = 0! ZZITA(11) = 0! ZZITA(12) = 0! ZZITA(13) = .5 ZZITA(14) = .5 ZZITA(15) = .5 ZZITA(16) = .5 ZZITA(17) = 1! ZZITA(18) = 1! ZZITA(19) = 1! ZZITA(20) = 1! END SUB SUB INTRD

'========================================================================== 'INTRINSIC DERIVATIVE SUBROUTINE

'========================================================================== DSFXI(1) = 2 * (1 - ETA) * (1 - ZITA) * (-1.5 + 2 * XI + ETA + ZITA) DSFXI(2) = 2 * ETA * (1 - ZITA) * (-.5 + 2 * XI - ETA + ZITA) DSFXI(3) = 2 * ETA * (1 - ZITA) * (-1.5 + 2 * XI + ETA – ZITA) DSFXI(4) = 2 * (1 - ETA) * (1 - ZITA) * (2 * XI - ETA - ZITA - .5) DSFXI(5) = 2 * (1 - ETA) * ZITA * (-.5 + 2 * XI + ETA – ZITA) DSFXI(6) = 2 * ETA * ZITA * (.5 + 2 * XI - ETA – ZITA) DSFXI(7) = 2 * ETA * ZITA * (2 * XI + ETA + ZITA - 2.5) DSFXI(8) = 2 * (1 - ETA) * ZITA * (2 * XI - ETA + ZITA - 1.5) DSFXI(9) = -4 * ETA * (1 - ETA) * (1 – ZITA) DSFXI(10) = 4 * ETA * (1 - ZITA) * (1 - 2 * XI) DSFXI(11) = 4 * ETA * (1 - ETA) * (1 - ZITA(

Page 23: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

23

DSFXI(12) = 4 * (1 - ETA) * (1 - ZITA) * (1 - 2 * XI) DSFXI(13) = -4 * (1 - ETA) * ZITA * (1 – ZITA) DSFXI(14) = -4 * ETA * ZITA * (1 – ZITA) DSFXI(15) = 4 * ETA * ZITA * (1 – ZITA) DSFXI(16) = 4 * (1 - ETA) * ZITA * (1 – ZITA) DSFXI(17) = -4 * ETA * (1 - ETA) * ZITA DSFXI(18) = 4 * ETA * ZITA * (1 - 2 * XI) DSFXI(19) = 4 * ETA * ZITA * (1 – ETA) DSFXI(20) = 4 * (1 - ETA) * ZITA * (1 - 2 * XI) DSFETA(1) = 2 * (1 - XI) * (1 - ZITA) * (-1.5 + XI + 2 * ETA + ZITA) DSFETA(2) = 2 * (1 - XI) * (1 - ZITA) * (-XI + 2 * ETA - ZITA - .5) DSFETA(3) = 2 * XI * (1 - ZITA) * (-1.5 + XI + 2 * ETA – ZITA) DSFETA(4) = 2 * XI * (1 - ZITA) * (-.5 - XI + 2 * ETA + ZITA) DSFETA(5) = 2 * (1 - XI) * ZITA * (-.5 + XI + 2 * ETA – ZITA) DSFETA(6) = 2 * (1 - XI) * ZITA * (-XI + 2 * ETA + ZITA - 1.5) DSFETA(7) = 2 * XI * ZITA * (XI + 2 * ETA + ZITA - 2.5) DSFETA(8) = 2 * XI * ZITA * (.5 - XI + 2 * ETA – ZITA) DSFETA(9) = 4 * (1 - XI) * (1 - ZITA) * (1 - 2 * ETA) DSFETA(10) = 4 * (1 - ZITA) * XI * (1 – XI) DSFETA(11) = 4 * XI * (1 - ZITA) * (1 - 2 * ETA) DSFETA(12) = -4 * XI * (1 - XI) * (1 – ZITA) DSFETA(13) = -4 * (1 - XI) * ZITA * (1 – ZITA) DSFETA(14) = 4 * (1 - XI) * ZITA * (1 – ZITA) DSFETA(15) = 4 * XI * ZITA * (1 – ZITA) DSFETA(16) = -4 * XI * ZITA * (1 – ZITA) DSFETA(17) = 4 * (1 - XI) * ZITA * (1 - 2 * ETA) DSFETA(18) = 4 * XI * (1 - XI) * ZITA DSFETA(19) = 4 * XI * ZITA * (1 - 2 * ETA) DSFETA(20) = -4 * XI * (1 - XI) * ZITA DSFZITA(1) = 2 * (1 - XI) * (1 - ETA) * (-1.5 + XI + ETA + 2 * ZITA) DSFZITA(2) = 2 * ETA * (1 - XI) * (-.5 + XI - ETA + 2 * ZITA) DSFZITA(3) = 2 * ETA * XI * (.5 - XI - ETA + 2 * ZITA) DSFZITA(4) = 2 * XI * (1 - ETA) * (-.5 - XI + ETA + 2 * ZITA) DSFZITA(5) = 2 * (1 - ETA) * (1 - XI) * (-.5 - XI - ETA + 2 * ZITA) DSFZITA(6) = 2 * ETA * (1 - XI) * (-1.5 - XI + ETA + 2 * ZITA) DSFZITA(7) = 2 * ETA * XI * (-2.5 + XI + ETA + 2 * ZITA) DSFZITA(8) = 2 * (1 - ETA) * XI * (-1.5 + XI - ETA + 2 * ZITA) DSFZITA(9) = -4 * (1 - ETA) * ETA * (1 – XI) DSFZITA(10) = -4 * XI * ETA * (1 – XI) DSFZITA(11) = -4 * XI * ETA * (1 – ETA) DSFZITA(12) = -4 * XI * (1 - ETA) * (1 – XI) DSFZITA(13) = 4 * (1 - ETA) * (1 - XI) * (1 - 2 * ZITA) DSFZITA(14) = 4 * ETA * (1 - XI) * (1 - 2 * ZITA) DSFZITA(15) = 4 * XI * ETA * (1 - 2 * ZITA) DSFZITA(16) = 4 * XI * (1 - ETA) * (1 - 2 * ZITA) DSFZITA(17) = 4 * (1 - ETA) * (1 - XI) * ETA DSFZITA(18) = 4 * XI * ETA * (1 – XI) DSFZITA(19) = 4 * XI * ETA * (1 – ETA) DSFZITA(20) = 4 * XI * (1 - ETA) * (1 – XI) END SUB SUB JACOB

'========================================================================= 'JACOBIAN MATRIX SUBROUTINE

'========================================================================== IF ITY = 2 THEN CALL LOCAD ELSE CALL INTRD END IF CALL JINVERS CALL XJA

Page 24: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

24

'--------------------------------------------- 'JACOBIAN DETERMINATE

'--------------------------------------------- N = 3 FOR K = 1 TO N - 1 FOR I = K + 1 TO N A = XJ(I, K) / XJ(K, K) FOR J = K TO N XJ(I, J) = XJ(I, J) - XJ(K, J) * A NEXT J NEXT I NEXT K C = 1! FOR I = 1 TO N C = C * XJ(I, I) NEXT I DETJ = ABS(C) END SUB SUB JINVERS

'------------------------------------------------- 'JACOBIAN INVERSE

'-------------------------------------------------- CALL XJA N = 3 N1 = N + 1 N2 = N * 2 FOR I = 1 TO N FOR J = N1 TO N2 XJ(I, J) = 0! IF I <> (J - N) THEN GOTO 20 XJ(I, J) = 1! 20 NEXT J NEXT I FOR K = 1 TO N A = XJ(K, K( FOR J = 1 TO N2 XJ(K, J) = XJ(K, J) / A NEXT J FOR I = 1 TO N IF I = K THEN GOTO 150 A = XJ(I, K( FOR J = 1 TO N2 XJ(I, J) = XJ(I, J) - A * XJ(K, J) NEXT J 150 NEXT I NEXT K KK = 0 FOR I = 1 TO N FOR J = N1 TO N2 KK = KK + 1 XJINV(I, KK) = XJ(I, J) NEXT J KK = 0 NEXT I END SUB SUB LOCACO

'======================================================================== 'LOCAL COORDINATE OF ELEMENT NODES

'=========================================================================

Page 25: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

25

XXI(1) = -1! XXI(2) = 1! XXI(3) = 1! XXI(4) = -1! XXI(5) = -1! XXI(6) = 1! XXI(7) = 1! XXI(8) = -1! XXI(9) = 0! XXI(10) = 1! XXI(11) = 0! XXI(12) = -1! XXI(13) = -1! XXI(14) = 1! XXI(15) = 1! XXI(16) = -1! XXI(17) = 0! XXI(18) = 1! XXI(19) = 0! XXI(20) = -1! EETA(1) = -1! EETA(2) = -1! EETA(3) = 1! EETA(4) = 1! EETA(5) = -1! EETA(6) = -1! EETA(7) = 1! EETA(8) = 1! EETA(9) = -1! EETA(10) = 0! EETA(11) = 1! EETA(12) = 0! EETA(13) = -1! EETA(14) = -1! EETA(15) = 1! EETA(16) = 1! EETA(17) = -1! EETA(18) = 0! EETA(19) = 1! EETA(20) = 0! ZZITA(1) = -1! ZZITA(2) = -1! ZZITA(3) = -1! ZZITA(4) = -1! ZZITA(5) = 1! ZZITA(6) = 1! ZZITA(7) = 1! ZZITA(8) = 1! ZZITA(9) = -1! ZZITA(10) = -1! ZZITA(11) = -1! ZZITA(12) = -1! ZZITA(13) = 0! ZZITA(14) = 0! ZZITA(15) = 0! ZZITA(16) = 0! ZZITA(17) = 1! ZZITA(18) = 1! ZZITA(19) = 1! ZZITA(20) = 1! END SUB

Page 26: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

26

SUB LOCAD '=========================================================================

'LOCAL DERIVATIVE SUBROUTINE '=========================================================================

DSFXI(1) = .125 * (1 - ETA) * (1 - ZITA) * (1 + 2 * XI + ETA + ZITA) DSFXI(2) = .125 * (1 - ETA) * (1 - ZITA) * (-1 + 2 * XI - ETA – ZITA) DSFXI(3) = .125 * (1 + ETA) * (1 - ZITA) * (-1 + 2 * XI + ETA – ZITA) DSFXI(4) = .125 * (1 + ETA) * (1 - ZITA) * (1 + 2 * XI - ETA + ZITA) DSFXI(5) = .125 * (1 - ETA) * (1 + ZITA) * (1 + 2 * XI + ETA – ZITA) DSFXI(6) = .125 * (1 - ETA) * (1 + ZITA) * (-1 + 2 * XI - ETA + ZITA) DSFXI(7) = .125 * (1 + ETA) * (1 + ZITA) * (-1 + 2 * XI + ETA + ZITA) DSFXI(8) = .125 * (1 + ETA) * (1 + ZITA) * (1 + 2 * XI - ETA – ZITA) DSFXI(9) = -.5 * XI * (1 - ETA) * (1 – ZITA) DSFXI(10) = .25 * (1 - ETA ^ 2) * (1 – ZITA) DSFXI(11) = -.5 * XI * (1 + ETA) * (1 – ZITA) DSFXI(12) = -.25 * (1 - ETA ^ 2) * (1 – ZITA) DSFXI(13) = -.25 * (1 - ETA) * (1 - ZITA ^ 2) DSFXI(14) = .25 * (1 - ETA) * (1 - ZITA ^ 2) DSFXI(15) = .25 * (1 + ETA) * (1 - ZITA ^ 2) DSFXI(16) = -.25 * (1 + ETA) * (1 - ZITA ^ 2) DSFXI(17) = -.5 * XI * (1 - ETA) * (1 + ZITA) DSFXI(18) = .25 * (1 - ETA ^ 2) * (1 + ZITA) DSFXI(19) = -.5 * XI * (1 + ETA) * (1 + ZITA) DSFXI(20) = -.25 * (1 - ETA ^ 2) * (1 + ZITA) DSFETA(1) = .125 * (1 - XI) * (1 - ZITA) * (1 + XI + 2 * ETA + ZITA) DSFETA(2) = .125 * (1 + XI) * (1 - ZITA) * (1 - XI + 2 * ETA + ZITA) DSFETA(3) = .125 * (1 + XI) * (1 - ZITA) * (-1 + XI + 2 * ETA – ZITA) DSFETA(4) = .125 * (1 - XI) * (1 - ZITA) * (-1 - XI + 2 * ETA – ZITA) DSFETA(5) = .125 * (1 - XI) * (1 + ZITA) * (1 + XI + 2 * ETA – ZITA) DSFETA(6) = .125 * (1 + XI) * (1 + ZITA) * (1 - XI + 2 * ETA – ZITA) DSFETA(7) = .125 * (1 + XI) * (1 + ZITA) * (-1 + XI + 2 * ETA + ZITA) DSFETA(8) = .125 * (1 - XI) * (1 + ZITA) * (-1 - XI + 2 * ETA + ZITA) DSFETA(9) = -.25 * (1 - XI ^ 2) * (1 – ZITA) DSFETA(10) = -.5 * ETA * (1 - ZITA) * (1 + XI) DSFETA(11) = .25 * (1 - XI ^ 2) * (1 – ZITA) DSFETA(12) = -.5 * ETA * (1 - XI) * (1 – ZITA) DSFETA(13) = -.25 * (1 - XI) * (1 - ZITA ^ 2) DSFETA(14) = -.25 * (1 + XI) * (1 - ZITA ^ 2) DSFETA(15) = .25 * (1 + XI) * (1 - ZITA ^ 2) DSFETA(16) = .25 * (1 - XI) * (1 - ZITA ^ 2) DSFETA(17) = -.25 * (1 - XI ^ 2) * (1 + ZITA) DSFETA(18) = -.5 * ETA * (1 + XI) * (1 + ZITA) DSFETA(19) = .25 * (1 - XI ^ 2) * (1 + ZITA) DSFETA(20) = -.5 * ETA * (1 - XI) * (1 + ZITA) DSFZITA(1) = .125 * (1 - XI) * (1 - ETA) * (1 + XI + ETA + 2 * ZITA) DSFZITA(2) = .125 * (1 - ETA) * (1 + XI) * (1 - XI + ETA + 2 * ZITA) DSFZITA(3) = .125 * (1 + ETA) * (1 + XI) * (1 - XI - ETA + 2 * ZITA) DSFZITA(4) = .125 * (1 + ETA) * (1 - XI) * (1 + XI - ETA + 2 * ZITA) DSFZITA(5) = .125 * (1 - ETA) * (1 - XI) * (-1 - XI - ETA + 2 * ZITA) DSFZITA(6) = .125 * (1 - ETA) * (1 + XI) * (-1 + XI - ETA + 2 * ZITA) DSFZITA(7) = .125 * (1 + ETA) * (1 + XI) * (-1 + XI + ETA + 2 * ZITA) DSFZITA(8) = .125 * (1 + ETA) * (1 - XI) * (-1 - XI + ETA + 2 * ZITA) DSFZITA(9) = -.25 * (1 - ETA) * (1 - XI ^ 2) DSFZITA(10) = -.25 * (1 - ETA ^ 2) * (1 + XI) DSFZITA(11) = -.25 * (1 + ETA) * (1 - XI ^ 2) DSFZITA(12) = -.25 * (1 - ETA ^ 2) * (1 – XI) DSFZITA(13) = -.5 * ZITA * (1 - ETA) * (1 – XI) DSFZITA(14) = -.5 * ZITA * (1 - ETA) * (1 + XI) DSFZITA(15) = -.5 * ZITA * (1 + ETA) * (1 + XI) DSFZITA(16) = -.5 * ZITA * (1 + ETA) * (1 - XI) DSFZITA(17) = .25 * (1 - ETA) * (1 - XI ^ 2) DSFZITA(18) = .25 * (1 - ETA ^ 2) * (1 + XI)

Page 27: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

27

DSFZITA(19) = .25 * (1 + ETA) * (1 - XI ^ 2) DSFZITA(20) = .25 * (1 - ETA ^ 2) * (1 – XI) END SUB SUB MATI (N, A(), ND)

'========================================================================= 'INITIAT SUBROUTINE

'======================================================================== FOR I = 1 TO N FOR J = 1 TO N A(I, J) = 0! NEXT J, I END SUB SUB MATM (M, N, L, A(), B(), C(()

'========================================================================= 'MULTIPLIER SUBROUTINE

'========================================================================= FOR I = 1 TO M FOR K = 1 TO L C(I, K) = 0 FOR J = 1 TO N C(I, K) = C(I, K) + A(I, J) * B(J, K) NEXT J, K, I END SUB SUB MATS (N, A(), B(), DV, ND)

'========================================================================= 'ADDER SUBROUTINE

'========================================================================= FOR I = 1 TO N FOR J = 1 TO N B(I, J) = B(I, J) + DV * A(I, J( NEXT J, I END SUB SUB MATT (M, N, A(), AT(()

'========================================================================= 'TRANSPOSES SUBROUTINE

'========================================================================== FOR I = 1 TO M FOR J = 1 TO N AT(J, I) = A(I, J) NEXT J, I END SUB SUB MATV (M, N, A(), B(), C(()

'========================================================================== 'MULTIPLIER MATRIX BY VECTOR SUBROUTINE

'========================================================================== FOR I = 1 TO M C(I) = 0! FOR J = 1 TO N C(I) = C(I) + A(I, J) * B(J) NEXT J, I END SUB SUB REACTION

'========================================================================= 'REACTION SUBROUTINE

'========================================================================= PRINT #3, "REACTIONS"

Page 28: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

28

IG = 0 FOR I = 1 TO NN FOR NR = 1 TO IDOF IG = IG + 1 RG(IG) = -FG(IG( FOR JG = 1 TO NT RG(IG) = RG(IG) + SKG(IG, JG) * DG(JG) NEXT JG, NR PRINT #3, I, XG(I), YG(I), ZG(I) FOR L = 1 TO IDOF PRINT #3, FG(IDOF * (I - 1) + L), RG(IDOF * (I - 1) + L) NEXT L NEXT I CLOSE #3 END SUB SUB REDUCER

'======================================================================== 'APPLICATION OF BOUNDARY CONDITION REDUCES OF EQUA.

'======================================================================== IR = 0 FOR I = 1 TO NT IF ISW(I) = 1 THEN 100 IR = IR + 1 FR(IR) = FG(I) JR = 0 FOR J = 1 TO NT IF ISW(J) = 1 THEN 110 JR = JR + 1 SKR(IR, JR) = SKG(I, J) GOTO 90 110 FR(IR) = FR(IR) - SKG(I, J) * PDIS(J) 90 NEXT J 100 NEXT I END SUB SUB SOLVER

'========================================================================= 'EQUATION SOLVER SUBROUTINE

'========================================================================= FOR K = 1 TO NR - 1 IF ABS(SKR(K, K)) = 0 THEN GOTO 1 FOR I = K + 1 TO NR Q = SKR(I, K) / SKR(K, K) FR(I) = FR(I) - Q * FR(K) FOR J = K + 1 TO NR SKR(I, J) = SKR(I, J) - Q * SKR(K, J) NEXT J, I, K FOR I = NR TO 1 STEP -1 SUM = FR(I) FOR J = I + 1 TO NR SUM = SUM - SKR(I, J) * DR(J) NEXT J DR(I) = SUM / SKR(I, I) NEXT I GOTO 60 1 PRINT "GAUSS FAILES" STOP 60 END SUB SUB STRESS

'=========================================================================

Page 29: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

29

' STRESS AND STRAIN SUBROUTINE '========================================================================= DEG = 45! /

ATN(1(! FOR I = 1 TO NN NC(I) = 0 FOR J = 1 TO 6 EN(I, J) = 0! NEXT J, I FOR IE = 1 TO NEL FOR I = 1 TO 20 IG = ITA(IE, I) XE(I) = XG(IG) YE(I) = YG(IG) ZE(I) = ZG(IG) FOR LR = 1 TO IDOF DE(IDOF * (I - 1) + LR) = DG(IDOF * (IG - 1) + LR) NEXT LR, I CALL DMATRIX IF ITY = 2 THEN CALL LOCACO ELSE CALL INTRCO END IF FOR I = 1 TO 20 IG = ITA(IE, I) NC(IG) = NC(IG) + 1 XI = XXI(I) ETA = EETA(I) ZITA = ZZITA(I) CALL BMATRIX CALL MATV(6, 20 * IDOF, B(), DE(), EE(() CALL MATV(6, 6, D(), EE(), S(() FOR J = 1 TO 6 SN(IG, J) = SN(IG, J) + S(J) EN(IG, J) = EN(IG, J) + EE(J) NEXT J, I NEXT IE PRINT #4, "STRESS HEADING" FOR I = 1 TO NN FOR J = 1 TO 6 S(J) = SN(I, J) / NC(I) SN(I, J) = S(J( NEXT J Q1 = (S(1) + S(2)) / 2 Q2 = (S(1) - S(2)) / 2 Q3 = SQR(Q2 * Q2 + S(3) ^ 2) SP(1) = Q1 + Q3 SP(2) = Q1 - Q3 SP(3) = Q3 THETA = ATN(-S(3) / Q2) * DEG PRINT #4, I, XG(I), YG(I), ZG(I), S(1), S(2), S(3), S(4), S(5), S(6), SP(1), SP(2), SP(3), THETA NEXT I PRINT #4, "STRAIN HEADING" FOR I = 1 TO NN FOR J = 1 TO 6 EE(J) = EN(I, J) / NC(I) EN(I, J) = EE(J( NEXT J Q1 = (EE(1) + EE(2)) / 2 Q2 = (EE(1) - EE(2)) / 2 Q3 = SQR(Q2 * Q2 + EE(3) ^ 2 / 4) EP(1) = Q1 + Q3

Page 30: Derivation of Lag Rang Ian Shape Functions for Hexahedral Element- Hani Aziz Ameen

30

EP(2) = Q1 - Q3 EP(3) = 2 * Q3 THETA = ATN(-EE(3) / Q2 / 2) * DEG PRINT #4, I, XG(I), YG(I), ZG(I), EE(1), EE(2), EE(3), EE(4), EE(5), EE(6), EP(1), EP(2), EP(3), THETA NEXT I CLOSE #4 END SUB SUB XJA CALL MATI(3, XJ(), 3) FOR I = 1 TO 20 XJ(1, 1) = XJ(1, 1) + XE(I) * DSFXI(I) XJ(1, 2) = XJ(1, 2) + YE(I) * DSFXI(I) XJ(1, 3) = XJ(1, 3) + ZE(I) * DSFXI(I) XJ(2, 1) = XJ(2, 1) + XE(I) * DSFETA(I) XJ(2, 2) = XJ(2, 2) + YE(I) * DSFETA(I) XJ(2, 3) = XJ(2, 3) + ZE(I) * DSFETA(I) XJ(3, 1) = XJ(3, 1) + XE(I) * DSFZITA(I) XJ(3, 2) = XJ(3, 2) + YE(I) * DSFZITA(I) XJ(3, 3) = XJ(3, 3) + ZE(I) * DSFZITA(I) NEXT I END SUB