Chapter 7

 

Introduction to Finite Element Analysis in Solid Mechanics

 

 

 

7.2 A simple Finite Element program

 

The goal of this section is to provide some insight into the theory and algorithms that are coded in a finite element program.  Here, we will implement only the simplest possible finite element code: specifically, we will develop a finite element method to solve a 2D (plane stress or plane strain) static boundary value problem in linear elasticity, as shown in the picture. 

 

We assume that we are given:

1.      The shape of the solid in its unloaded condition R MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8YjY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8ku c9pgc9q8qqaq=dir=f0=yqaiVgFr0xfr=xfr=xb9adbaqaaeGaciGa biaabeqaaiqabaWaaaGcbaGaamOuaaaa@31B4@

2.      Boundary conditions, specifying displacements u * (x) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8XjY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8ku c9pgc9q8qqaq=dir=f0=yqaiVgFr0xfr=xfr=xb9adbaqaaeGaciGa biaabeqaaiqabaWaaaGcbaGaaCyDamaaCaaaleqabaGaaiOkaaaaki aacIcacaWH4bGaaiykaaaa@350A@  on a portion 1 R MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8XjY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8ku c9pgc9q8qqaq=dir=f0=yqaiVgFr0xfr=xfr=xb9adbaqaaeGaciGa biaabeqaaiqabaWaaaGcbaGaeyOaIy7aaSbaaSqaaiaaigdaaeqaaO GaamOuaaaa@33FB@  or tractions on a portion 2 R MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8XjY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8ku c9pgc9q8qqaq=dir=f0=yqaiVgFr0xfr=xfr=xb9adbaqaaeGaciGa biaabeqaaiqabaWaaaGcbaGaeyOaIy7aaSbaaSqaaiaaikdaaeqaaO GaamOuaaaa@33FC@  of the boundary of R

To simplify the problem, we will make the following assumptions

 The solid is an isotropic, linear elastic solid with Young’s modulus E and Poisson’s ratio ν MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiabe27aUbaa@3230@ ;

 Plane strain or plane stress deformation;

 The solid is at constant temperature (no thermal strains);

 We will neglect body forces.

 

We then wish to find a displacement field u i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadwhadaWgaaWcbaGaamyAaaqabaaaaa@328B@  satisfying the usual field equations and boundary conditions (see Sect 5.1.1).  The procedure is based on the principle of minimum potential energy discussed in Section 5.7.  There are four steps:

  1. A finite element mesh is constructed to interpolate the displacement field
  2. The strain energy in each element is calculated in terms of the displacements of each node;
  3. The potential energy of tractions acting on the solid’s boundary is added
  4. The displacement field is calculated by minimizing the potential energy.

 

These steps are discussed in more detail in the sections below.

 

 

 

7.2.1 The finite element mesh and element connectivity

 

For simplicity, we will assume that the elements are 3 noded triangles, as shown in the picture.  The nodes are numbered 1,2,3…N, while the elements are numbered 1,2…L.  Element numbers are shown in parentheses.

 

The position of the ath node is specified by its coordinates x i (a) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadIhadaqhaaWcbaGaamyAaaqaaiaacI cacaWGHbGaaiykaaaaaaa@34CF@

 

The element connectivity specifies the node numbers attached to each element.  For example, in the picture the connectivity for element 1 is (10,9,2); for element 2 it is (10,2,1), etc.

 

 

 

7.2.2 The global displacement vector

 

We will approximate the displacement field by interpolating between values at the nodes, as follows.  Let u i (a) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadwhadaqhaaWcbaGaamyAaaqaaiaacI cacaWGHbGaaiykaaaaaaa@34CB@  denote the unknown displacement vector at nodes a=1,2,....N MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadggacqGH9aqpcaaIXaGaaiilaiaaik dacaGGSaGaaiOlaiaac6cacaGGUaGaaiOlaiaad6eaaaa@38C5@ .  In a finite element code, the displacements for a plane stress or plane strain problem are normally stored as a column vector like the one shown below:

u _ = [ u 1 (1) u 2 (1) u 1 (2) u 2 (2) u 1 (3) u 2 (3) ] T MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaamaaabaGaamyDaaaacqGH9aqpdaWada qaauaabeqabGaaaaaabaGaamyDamaaDaaaleaacaaIXaaabaGaaiik aiaaigdacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIYaaabaGaai ikaiaaigdacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIXaaabaGa aiikaiaaikdacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIYaaaba GaaiikaiaaikdacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIXaaa baGaaiikaiaaiodacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIYa aabaGaaiikaiaaiodacaGGPaaaaaGcbaGaeSOjGSeabaaaaaGaay5w aiaaw2faamaaCaaaleqabaGaamivaaaaaaa@4EB3@

 

The unknown displacement components will be determined by minimizing the potential energy of the solid.

 

 

 

7.2.3 Element interpolation functions

 

To calculate the potential energy, we need to be able to compute the displacements within each element.  This is done by interpolation.  Consider a triangular element, with nodes a, b, c at its corners. Let x i (a) , x i (b) , x i (c) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadIhadaqhaaWcbaGaamyAaaqaaiaacI cacaWGHbGaaiykaaaakiaacYcacaaMc8UaaGPaVlaaykW7caWG4bWa a0baaSqaaiaadMgaaeaacaGGOaGaamOyaiaacMcaaaGccaGGSaGaaG PaVlaaykW7caaMc8UaamiEamaaDaaaleaacaWGPbaabaGaaiikaiaa dogacaGGPaaaaaaa@4835@  denote the coordinates of the corners.  Define the element interpolation functions (also known as shape functions) as follows

N a ( x 1 , x 2 )= ( x 2 x 2 (b) )( x 1 (c) x 1 (b) )( x 1 x 1 (b) )( x 2 (c) x 2 (b) ) ( x 2 (a) x 2 (b) )( x 1 (c) x 1 (b) )( x 1 (a) x 1 (b) )( x 2 (c) x 2 (b) ) N b ( x 1 , x 2 )= ( x 2 x 2 (c) )( x 1 (a) x 1 (c) )( x 1 x 1 (c) )( x 2 (a) x 2 (c) ) ( x 2 (b) x 2 (c) )( x 1 (a) x 1 (c) )( x 1 (b) x 1 (c) )( x 2 (a) x 2 (c) ) N c ( x 1 , x 2 )= ( x 2 x 2 (a) )( x 1 (b) x 1 (a) )( x 1 x 1 (a) )( x 2 (b) x 2 (a) ) ( x 2 (c) x 2 (a) )( x 1 (b) x 1 (a) )( x 1 (c) x 1 (a) )( x 2 (b) x 2 (a) ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOabaeqabaGaamOtamaaBaaaleaacaWGHbaabe aakiaacIcacaWG4bWaaSbaaSqaaiaaigdaaeqaaOGaaiilaiaadIha daWgaaWcbaGaaGOmaaqabaGccaGGPaGaeyypa0ZaaSaaaeaadaqada qaaiaadIhadaWgaaWcbaGaaGOmaaqabaGccqGHsislcaWG4bWaa0ba aSqaaiaaikdaaeaacaGGOaGaamOyaiaacMcaaaaakiaawIcacaGLPa aadaqadaqaaiaadIhadaqhaaWcbaGaaGymaaqaaiaacIcacaWGJbGa aiykaaaakiabgkHiTiaadIhadaqhaaWcbaGaaGymaaqaaiaacIcaca WGIbGaaiykaaaaaOGaayjkaiaawMcaaiabgkHiTmaabmaabaGaamiE amaaBaaaleaacaaIXaaabeaakiabgkHiTiaadIhadaqhaaWcbaGaaG ymaaqaaiaacIcacaWGIbGaaiykaaaaaOGaayjkaiaawMcaamaabmaa baGaamiEamaaDaaaleaacaaIYaaabaGaaiikaiaadogacaGGPaaaaO GaeyOeI0IaamiEamaaDaaaleaacaaIYaaabaGaaiikaiaadkgacaGG PaaaaaGccaGLOaGaayzkaaaabaWaaeWaaeaacaWG4bWaa0baaSqaai aaikdaaeaacaGGOaGaamyyaiaacMcaaaGccqGHsislcaWG4bWaa0ba aSqaaiaaikdaaeaacaGGOaGaamOyaiaacMcaaaaakiaawIcacaGLPa aadaqadaqaaiaadIhadaqhaaWcbaGaaGymaaqaaiaacIcacaWGJbGa aiykaaaakiabgkHiTiaadIhadaqhaaWcbaGaaGymaaqaaiaacIcaca WGIbGaaiykaaaaaOGaayjkaiaawMcaaiabgkHiTmaabmaabaGaamiE amaaDaaaleaacaaIXaaabaGaaiikaiaadggacaGGPaaaaOGaeyOeI0 IaamiEamaaDaaaleaacaaIXaaabaGaaiikaiaadkgacaGGPaaaaaGc caGLOaGaayzkaaWaaeWaaeaacaWG4bWaa0baaSqaaiaaikdaaeaaca GGOaGaam4yaiaacMcaaaGccqGHsislcaWG4bWaa0baaSqaaiaaikda aeaacaGGOaGaamOyaiaacMcaaaaakiaawIcacaGLPaaaaaaabaGaam OtamaaBaaaleaacaWGIbaabeaakiaacIcacaWG4bWaaSbaaSqaaiaa igdaaeqaaOGaaiilaiaadIhadaWgaaWcbaGaaGOmaaqabaGccaGGPa Gaeyypa0ZaaSaaaeaadaqadaqaaiaadIhadaWgaaWcbaGaaGOmaaqa baGccqGHsislcaWG4bWaa0baaSqaaiaaikdaaeaacaGGOaGaam4yai aacMcaaaaakiaawIcacaGLPaaadaqadaqaaiaadIhadaqhaaWcbaGa aGymaaqaaiaacIcacaWGHbGaaiykaaaakiabgkHiTiaadIhadaqhaa WcbaGaaGymaaqaaiaacIcacaWGJbGaaiykaaaaaOGaayjkaiaawMca aiabgkHiTmaabmaabaGaamiEamaaBaaaleaacaaIXaaabeaakiabgk HiTiaadIhadaqhaaWcbaGaaGymaaqaaiaacIcacaWGJbGaaiykaaaa aOGaayjkaiaawMcaamaabmaabaGaamiEamaaDaaaleaacaaIYaaaba GaaiikaiaadggacaGGPaaaaOGaeyOeI0IaamiEamaaDaaaleaacaaI YaaabaGaaiikaiaadogacaGGPaaaaaGccaGLOaGaayzkaaaabaWaae WaaeaacaWG4bWaa0baaSqaaiaaikdaaeaacaGGOaGaamOyaiaacMca aaGccqGHsislcaWG4bWaa0baaSqaaiaaikdaaeaacaGGOaGaam4yai aacMcaaaaakiaawIcacaGLPaaadaqadaqaaiaadIhadaqhaaWcbaGa aGymaaqaaiaacIcacaWGHbGaaiykaaaakiabgkHiTiaadIhadaqhaa WcbaGaaGymaaqaaiaacIcacaWGJbGaaiykaaaaaOGaayjkaiaawMca aiabgkHiTmaabmaabaGaamiEamaaDaaaleaacaaIXaaabaGaaiikai aadkgacaGGPaaaaOGaeyOeI0IaamiEamaaDaaaleaacaaIXaaabaGa aiikaiaadogacaGGPaaaaaGccaGLOaGaayzkaaWaaeWaaeaacaWG4b Waa0baaSqaaiaaikdaaeaacaGGOaGaamyyaiaacMcaaaGccqGHsisl caWG4bWaa0baaSqaaiaaikdaaeaacaGGOaGaam4yaiaacMcaaaaaki aawIcacaGLPaaaaaaabaGaamOtamaaBaaaleaacaWGJbaabeaakiaa cIcacaWG4bWaaSbaaSqaaiaaigdaaeqaaOGaaiilaiaadIhadaWgaa WcbaGaaGOmaaqabaGccaGGPaGaeyypa0ZaaSaaaeaadaqadaqaaiaa dIhadaWgaaWcbaGaaGOmaaqabaGccqGHsislcaWG4bWaa0baaSqaai aaikdaaeaacaGGOaGaamyyaiaacMcaaaaakiaawIcacaGLPaaadaqa daqaaiaadIhadaqhaaWcbaGaaGymaaqaaiaacIcacaWGIbGaaiykaa aakiabgkHiTiaadIhadaqhaaWcbaGaaGymaaqaaiaacIcacaWGHbGa aiykaaaaaOGaayjkaiaawMcaaiabgkHiTmaabmaabaGaamiEamaaBa aaleaacaaIXaaabeaakiabgkHiTiaadIhadaqhaaWcbaGaaGymaaqa aiaacIcacaWGHbGaaiykaaaaaOGaayjkaiaawMcaamaabmaabaGaam iEamaaDaaaleaacaaIYaaabaGaaiikaiaadkgacaGGPaaaaOGaeyOe I0IaamiEamaaDaaaleaacaaIYaaabaGaaiikaiaadggacaGGPaaaaa GccaGLOaGaayzkaaaabaWaaeWaaeaacaWG4bWaa0baaSqaaiaaikda aeaacaGGOaGaam4yaiaacMcaaaGccqGHsislcaWG4bWaa0baaSqaai aaikdaaeaacaGGOaGaamyyaiaacMcaaaaakiaawIcacaGLPaaadaqa daqaaiaadIhadaqhaaWcbaGaaGymaaqaaiaacIcacaWGIbGaaiykaa aakiabgkHiTiaadIhadaqhaaWcbaGaaGymaaqaaiaacIcacaWGHbGa aiykaaaaaOGaayjkaiaawMcaaiabgkHiTmaabmaabaGaamiEamaaDa aaleaacaaIXaaabaGaaiikaiaadogacaGGPaaaaOGaeyOeI0IaamiE amaaDaaaleaacaaIXaaabaGaaiikaiaadggacaGGPaaaaaGccaGLOa GaayzkaaWaaeWaaeaacaWG4bWaa0baaSqaaiaaikdaaeaacaGGOaGa amOyaiaacMcaaaGccqGHsislcaWG4bWaa0baaSqaaiaaikdaaeaaca GGOaGaamyyaiaacMcaaaaakiaawIcacaGLPaaaaaaaaaa@4733@

These shape functions are constructed so that

 They vary linearly with position within the element

 Each shape function has a value of one at one of the nodes, and is zero at the other two.

We then write

u i ( x 1 , x 2 )= u i (a) N a ( x 1 , x 2 )+ u i (b) N b ( x 1 , x 2 )+ u i (c) N c ( x 1 , x 2 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadwhadaWgaaWcbaGaamyAaaqabaGcca GGOaGaamiEamaaBaaaleaacaaIXaaabeaakiaacYcacaWG4bWaaSba aSqaaiaaikdaaeqaaOGaaiykaiabg2da9iaadwhadaqhaaWcbaGaam yAaaqaaiaacIcacaWGHbGaaiykaaaakiaad6eadaWgaaWcbaGaamyy aaqabaGccaGGOaGaamiEamaaBaaaleaacaaIXaaabeaakiaacYcaca WG4bWaaSbaaSqaaiaaikdaaeqaaOGaaiykaiabgUcaRiaadwhadaqh aaWcbaGaamyAaaqaaiaacIcacaWGIbGaaiykaaaakiaad6eadaWgaa WcbaGaamOyaaqabaGccaGGOaGaamiEamaaBaaaleaacaaIXaaabeaa kiaacYcacaWG4bWaaSbaaSqaaiaaikdaaeqaaOGaaiykaiabgUcaRi aadwhadaqhaaWcbaGaamyAaaqaaiaacIcacaWGJbGaaiykaaaakiaa d6eadaWgaaWcbaGaam4yaaqabaGccaGGOaGaamiEamaaBaaaleaaca aIXaaabeaakiaacYcacaWG4bWaaSbaaSqaaiaaikdaaeqaaOGaaiyk aaaa@5FD4@

One can readily verify that this expression gives the correct values for u i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadwhadaWgaaWcbaGaamyAaaqabaaaaa@328B@  at each corner of the triangle.

 

Of course, the shape functions given are valid only for 3 noded triangular elements MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiFKI8=feu0dXdh9vqqj=hEeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaGqaaKqzGfaeaa aaaaaaa8qacaWFtacaaa@37E6@  other elements have more complicated interpolation functions.

 

 

7.2.4 Element strains, stresses and strain energy density

 

We can now compute the strain distribution within the element and hence determine the strain energy density. Since we are solving a plane strain problem, the only nonzero strains are ε 11 , ε 22 , ε 12 MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiabew7aLnaaBaaaleaacaaIXaGaaGymaa qabaGccaGGSaGaeqyTdu2aaSbaaSqaaiaaikdacaaIYaaabeaakiaa cYcacqaH1oqzdaWgaaWcbaGaaGymaiaaikdaaeqaaaaa@3BBA@ .  It is convenient to express the results in matrix form, as follows

ε _ =[ B ] u _ element [ ε 11 ε 22 2 ε 12 ]=[ N a x 1 0 N b x 1 0 N c x 1 0 0 N a x 2 0 N b x 2 0 N c x 2 N a x 2 N a x 1 N b x 2 N b x 1 N c x 2 N c x 1 ][ u 1 (a) u 2 (a) u 1 (b) u 2 (b) u 1 (c) u 2 (c) ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaamaaabaGaeqyTdugaaiabg2da9maadm aabaGaamOqaaGaay5waiaaw2faamaamaaabaGaamyDaaaadaahaaWc beqaaiaabwgacaqGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaa GccaaMc8UaaGPaVlaaykW7caaMc8UaeyyyIORaaGPaVlaaykW7caaM c8UaaGPaVpaadmaabaqbaeqabmqaaaqaaiabew7aLnaaBaaaleaaca aIXaGaaGymaaqabaaakeaacqaH1oqzdaWgaaWcbaGaaGOmaiaaikda aeqaaaGcbaGaaGOmaiabew7aLnaaBaaaleaacaaIXaGaaGOmaaqaba aaaaGccaGLBbGaayzxaaGaeyypa0ZaamWaaeaafaqabeWagaaaaeaa daWcaaqaaiabgkGi2kaad6eadaWgaaWcbaGaamyyaaqabaaakeaacq GHciITcaWG4bWaaSbaaSqaaiaaigdaaeqaaaaaaOqaaiaaicdaaeaa daWcaaqaaiabgkGi2kaad6eadaWgaaWcbaGaamOyaaqabaaakeaacq GHciITcaWG4bWaaSbaaSqaaiaaigdaaeqaaaaaaOqaaiaaicdaaeaa daWcaaqaaiabgkGi2kaad6eadaWgaaWcbaGaam4yaaqabaaakeaacq GHciITcaWG4bWaaSbaaSqaaiaaigdaaeqaaaaaaOqaaiaaicdaaeaa caaIWaaabaWaaSaaaeaacqGHciITcaWGobWaaSbaaSqaaiaadggaae qaaaGcbaGaeyOaIyRaamiEamaaBaaaleaacaaIYaaabeaaaaaakeaa caaIWaaabaWaaSaaaeaacqGHciITcaWGobWaaSbaaSqaaiaadkgaae qaaaGcbaGaeyOaIyRaamiEamaaBaaaleaacaaIYaaabeaaaaaakeaa caaIWaaabaWaaSaaaeaacqGHciITcaWGobWaaSbaaSqaaiaadogaae qaaaGcbaGaeyOaIyRaamiEamaaBaaaleaacaaIYaaabeaaaaaakeaa daWcaaqaaiabgkGi2kaad6eadaWgaaWcbaGaamyyaaqabaaakeaacq GHciITcaWG4bWaaSbaaSqaaiaaikdaaeqaaaaaaOqaamaalaaabaGa eyOaIyRaamOtamaaBaaaleaacaWGHbaabeaaaOqaaiabgkGi2kaadI hadaWgaaWcbaGaaGymaaqabaaaaaGcbaWaaSaaaeaacqGHciITcaWG obWaaSbaaSqaaiaadkgaaeqaaaGcbaGaeyOaIyRaamiEamaaBaaale aacaaIYaaabeaaaaaakeaadaWcaaqaaiabgkGi2kaad6eadaWgaaWc baGaamOyaaqabaaakeaacqGHciITcaWG4bWaaSbaaSqaaiaaigdaae qaaaaaaOqaamaalaaabaGaeyOaIyRaamOtamaaBaaaleaacaWGJbaa beaaaOqaaiabgkGi2kaadIhadaWgaaWcbaGaaGOmaaqabaaaaaGcba WaaSaaaeaacqGHciITcaWGobWaaSbaaSqaaiaadogaaeqaaaGcbaGa eyOaIyRaamiEamaaBaaaleaacaaIXaaabeaaaaaaaaGccaGLBbGaay zxaaWaamWaaeaafaqabeGbbaaaaeaacaWG1bWaa0baaSqaaiaaigda aeaacaGGOaGaamyyaiaacMcaaaaakeaacaWG1bWaa0baaSqaaiaaik daaeaacaGGOaGaamyyaiaacMcaaaaakeaacaWG1bWaa0baaSqaaiaa igdaaeaacaGGOaGaamOyaiaacMcaaaaakeaacaWG1bWaa0baaSqaai aaikdaaeaacaGGOaGaamOyaiaacMcaaaaakeaacaWG1bWaa0baaSqa aiaaigdaaeaacaGGOaGaam4yaiaacMcaaaaakeaacaWG1bWaa0baaS qaaiaaikdaaeaacaGGOaGaam4yaiaacMcaaaaaaaGccaGLBbGaayzx aaaaaa@CBBE@

The factor of 2 multiplying the shear strains in the strain vector has been introduced for convenience.  Note that, for linear triangular elements, the matrix of shape function derivatives [ B ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaGaamOqaaGaay5waiaaw2faaa aa@3320@  is constant.  It depends only on the coordinates of the corners of the element, and does not vary with position within the element.  This is not the case for most elements.

 

Now, we can compute the strain energy density within the element.  Begin by computing the stresses within the element.  For plane strain deformation, have that

[ σ 11 σ 22 σ 12 ]= E (1+ν)(12ν) [ 1ν ν 0 ν 1ν 0 0 0 12ν 2 ][ ε 11 ε 22 2 ε 12 ] MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaqbaeqabmqaaaqaaiabeo8aZn aaBaaaleaacaaIXaGaaGymaaqabaaakeaacqaHdpWCdaWgaaWcbaGa aGOmaiaaikdaaeqaaaGcbaGaeq4Wdm3aaSbaaSqaaiaaigdacaaIYa aabeaaaaaakiaawUfacaGLDbaacqGH9aqpdaWcaaqaaiaadweaaeaa caGGOaGaaGymaiabgUcaRiabe27aUjaacMcacaGGOaGaaGymaiabgk HiTiaaikdacqaH9oGBcaGGPaaaamaadmaabaqbaeqabmWaaaqaaiaa igdacqGHsislcqaH9oGBaeaacqaH9oGBaeaacaaIWaaabaGaeqyVd4 gabaGaaGymaiabgkHiTiabe27aUbqaaiaaicdaaeaacaaIWaaabaGa aGimaaqaamaalaaabaGaaGymaiabgkHiTiaaikdacqaH9oGBaeaaca aIYaaaaaaaaiaawUfacaGLDbaadaWadaqaauaabeqadeaaaeaacqaH 1oqzdaWgaaWcbaGaaGymaiaaigdaaeqaaaGcbaGaeqyTdu2aaSbaaS qaaiaaikdacaaIYaaabeaaaOqaaiaaikdacqaH1oqzdaWgaaWcbaGa aGymaiaaikdaaeqaaaaaaOGaay5waiaaw2faaaaa@697E@

For plane stress, the result is

[ σ 11 σ 22 σ 12 ]= E (1 ν 2 ) [ 1 ν 0 ν 1 0 0 0 (1ν)/2 ][ ε 11 ε 22 2 ε 12 ] MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaqbaeqabmqaaaqaaiabeo8aZn aaBaaaleaacaaIXaGaaGymaaqabaaakeaacqaHdpWCdaWgaaWcbaGa aGOmaiaaikdaaeqaaaGcbaGaeq4Wdm3aaSbaaSqaaiaaigdacaaIYa aabeaaaaaakiaawUfacaGLDbaacqGH9aqpdaWcaaqaaiaadweaaeaa caGGOaGaaGymaiabgkHiTiabe27aUnaaCaaaleqabaGaaGOmaaaaki aacMcaaaWaamWaaeaafaqabeWadaaabaGaaGymaaqaaiabe27aUbqa aiaaicdaaeaacqaH9oGBaeaacaaIXaaabaGaaGimaaqaaiaaicdaae aacaaIWaaabaGaaiikaiaaigdacqGHsislcqaH9oGBcaGGPaGaai4l aiaaikdaaaaacaGLBbGaayzxaaWaamWaaeaafaqabeWabaaabaGaeq yTdu2aaSbaaSqaaiaaigdacaaIXaaabeaaaOqaaiabew7aLnaaBaaa leaacaaIYaGaaGOmaaqabaaakeaacaaIYaGaeqyTdu2aaSbaaSqaai aaigdacaaIYaaabeaaaaaakiaawUfacaGLDbaaaaa@60FD@

Recall (see Sect 3.1.7) that the strain energy density is related to the stresses and strains by U= σ ij ε ij /2 MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadwfacqGH9aqpcqaHdpWCdaWgaaWcba GaamyAaiaadQgaaeqaaOGaeqyTdu2aaSbaaSqaaiaadMgacaWGQbaa beaakiaac+cacaaIYaaaaa@3B47@ .   This can be written in matrix form as

U= 1 2 ε _ T σ _ = 1 2 ε _ T [ D ] ε _ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadwfacqGH9aqpdaWcaaqaaiaaigdaae aacaaIYaaaamaamaaabaGaeqyTdugaamaaCaaaleqabaGaamivaaaa kmaamaaabaGaeq4Wdmhaaiabg2da9maalaaabaGaaGymaaqaaiaaik daaaWaaWaaaeaacqaH1oqzaaWaaWbaaSqabeaacaWGubaaaOWaamWa aeaacaWGebaacaGLBbGaayzxaaWaaWaaaeaacqaH1oqzaaGaaGPaVl aaykW7aaa@4544@

where

σ _ =[ σ 11 σ 22 σ 12 ] ε _ =[ ε 11 ε 22 2 ε 12 ][ D ]={ E (1+ν)(12ν) [ 1ν ν 0 ν 1ν 0 0 0 (12ν)/2 ]Plane strain E (1 ν 2 ) [ 1 ν 0 ν 1 0 0 0 (1ν)/2 ]Plane stress MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaamaaabaGaeq4Wdmhaaiabg2da9maadm aabaqbaeqabmqaaaqaaiabeo8aZnaaBaaaleaacaaIXaGaaGymaaqa baaakeaacqaHdpWCdaWgaaWcbaGaaGOmaiaaikdaaeqaaaGcbaGaeq 4Wdm3aaSbaaSqaaiaaigdacaaIYaaabeaaaaaakiaawUfacaGLDbaa caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVl aaykW7caaMc8UaaGPaVlaaykW7daadaaqaaiabew7aLbaacqGH9aqp caaMc8+aamWaaeaafaqabeWabaaabaGaeqyTdu2aaSbaaSqaaiaaig dacaaIXaaabeaaaOqaaiabew7aLnaaBaaaleaacaaIYaGaaGOmaaqa baaakeaacaaIYaGaeqyTdu2aaSbaaSqaaiaaigdacaaIYaaabeaaaa aakiaawUfacaGLDbaacaaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaa ykW7caaMc8UaaGPaVlaaykW7caaMc8+aamWaaeaacaWGebaacaGLBb GaayzxaaGaeyypa0ZaaiqaaeaafaqabeGabaaabaWaaSaaaeaacaWG fbaabaGaaiikaiaaigdacqGHRaWkcqaH9oGBcaGGPaGaaiikaiaaig dacqGHsislcaaIYaGaeqyVd4MaaiykaaaadaWadaqaauaabeqadmaa aeaacaaIXaGaeyOeI0IaeqyVd4gabaGaeqyVd4gabaGaaGimaaqaai abe27aUbqaaiaaigdacqGHsislcqaH9oGBaeaacaaIWaaabaGaaGim aaqaaiaaicdaaeaacaGGOaGaaGymaiabgkHiTiaaikdacqaH9oGBca GGPaGaai4laiaaikdaaaaacaGLBbGaayzxaaGaaGPaVlaaykW7caaM c8UaaGPaVlaaykW7caaMc8UaaeiuaiaabYgacaqGHbGaaeOBaiaabw gacaqGGaGaae4CaiaabshacaqGYbGaaeyyaiaabMgacaqGUbaabaWa aSaaaeaacaWGfbaabaGaaiikaiaaigdacqGHsislcqaH9oGBdaahaa WcbeqaaiaaikdaaaGccaGGPaaaamaadmaabaqbaeqabmWaaaqaaiaa igdaaeaacqaH9oGBaeaacaaIWaaabaGaeqyVd4gabaGaaGymaaqaai aaicdaaeaacaaIWaaabaGaaGimaaqaaiaacIcacaaIXaGaeyOeI0Ia eqyVd4Maaiykaiaac+cacaaIYaaaaaGaay5waiaaw2faaiaaykW7ca aMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8Uaaeiuaiaa bYgacaqGHbGaaeOBaiaabwgacaqGGaGaae4CaiaabshacaqGYbGaae yzaiaabohacaqGZbaaaaGaay5Eaaaaaa@DA2B@

Now, express these results in terms of the nodal displacements for the element

U element = 1 2 u _ element T ( [ B ] T [ D ][ B ] ) u _ element MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadwfadaahaaWcbeqaaiaabwgacaqGSb Gaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGccqGH9aqpdaWcaaqa aiaaigdaaeaacaaIYaaaamaamaaabaGaamyDaaaadaahaaWcbeqaai aabwgacaqGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGcdaah aaWcbeqaaiaadsfaaaGcdaqadaqaamaadmaabaGaamOqaaGaay5wai aaw2faamaaCaaaleqabaGaamivaaaakmaadmaabaGaamiraaGaay5w aiaaw2faamaadmaabaGaamOqaaGaay5waiaaw2faaaGaayjkaiaawM caamaamaaabaGaamyDaaaadaahaaWcbeqaaiaabwgacaqGSbGaaeyz aiaab2gacaqGLbGaaeOBaiaabshaaaaaaa@55D0@

We can now compute the total strain energy stored within the element.  Because [ B ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaGaamOqaaGaay5waiaaw2faaa aa@3320@  is constant, we merely need to multiply the strain energy density by the area of the element, which can be computed from the coordinates of its corners as follows

A= 1 2 | ( x 1 b x 1 a )( x 2 c x 2 a )( x 1 c x 1 a )( x 2 b x 2 a ) | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadgeacqGH9aqpdaWcaaqaaiaaigdaae aacaaIYaaaamaaemaabaWaaeWaaeaacaWG4bWaa0baaSqaaiaaigda aeaacaWGIbaaaOGaeyOeI0IaamiEamaaDaaaleaacaaIXaaabaGaam yyaaaaaOGaayjkaiaawMcaamaabmaabaGaamiEamaaDaaaleaacaaI YaaabaGaam4yaaaakiabgkHiTiaadIhadaqhaaWcbaGaaGOmaaqaai aadggaaaaakiaawIcacaGLPaaacqGHsisldaqadaqaaiaadIhadaqh aaWcbaGaaGymaaqaaiaadogaaaGccqGHsislcaWG4bWaa0baaSqaai aaigdaaeaacaWGHbaaaaGccaGLOaGaayzkaaWaaeWaaeaacaWG4bWa a0baaSqaaiaaikdaaeaacaWGIbaaaOGaeyOeI0IaamiEamaaDaaale aacaaIYaaabaGaamyyaaaaaOGaayjkaiaawMcaaaGaay5bSlaawIa7 aaaa@5853@

Hence, the total strain energy of the element is

W element = 1 2 u _ element T ( A element [ B ] T [ D ][ B ] ) u _ element MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadEfadaahaaWcbeqaaiaabwgacaqGSb Gaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGccqGH9aqpdaWcaaqa aiaaigdaaeaacaaIYaaaamaamaaabaGaamyDaaaadaahaaWcbeqaai aabwgacaqGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGcdaah aaWcbeqaaiaadsfaaaGcdaqadaqaaiaadgeadaWgaaWcbaGaaeyzai aabYgacaqGLbGaaeyBaiaabwgacaqGUbGaaeiDaaqabaGcdaWadaqa aiaadkeaaiaawUfacaGLDbaadaahaaWcbeqaaiaadsfaaaGcdaWada qaaiaadseaaiaawUfacaGLDbaadaWadaqaaiaadkeaaiaawUfacaGL DbaaaiaawIcacaGLPaaadaadaaqaaiaadwhaaaWaaWbaaSqabeaaca qGLbGaaeiBaiaabwgacaqGTbGaaeyzaiaab6gacaqG0baaaaaa@5D4D@

 

 

 

7.2.5 The element stiffness matrix

 

The strain energy can be simplified by defining the element stiffness matrix

K element = A element [ B ] T [ D ][ B ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadUeadaahaaWcbeqaaiaabwgacaqGSb Gaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGccqGH9aqpcaWGbbWa aSbaaSqaaiaabwgacaqGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaabs haaeqaaOWaamWaaeaacaWGcbaacaGLBbGaayzxaaWaaWbaaSqabeaa caWGubaaaOWaamWaaeaacaWGebaacaGLBbGaayzxaaWaamWaaeaaca WGcbaacaGLBbGaayzxaaaaaa@49AB@

so that

W element = 1 2 u _ element T K element u _ element MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadEfadaahaaWcbeqaaiaabwgacaqGSb Gaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGccqGH9aqpdaWcaaqa aiaaigdaaeaacaaIYaaaamaamaaabaGaamyDaaaadaahaaWcbeqaai aabwgacaqGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGcdaah aaWcbeqaaiaadsfaaaGccaWGlbWaaWbaaSqabeaacaqGLbGaaeiBai aabwgacaqGTbGaaeyzaiaab6gacaqG0baaaOWaaWaaaeaacaWG1baa amaaCaaaleqabaGaaeyzaiaabYgacaqGLbGaaeyBaiaabwgacaqGUb GaaeiDaaaaaaa@5292@

Observe that, because the material property matrix [ D ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaGaamiraaGaay5waiaaw2faaa aa@3322@  is symmetric, the element stiffness matrix is also symmetric.  To see this, note that

K element T = A element ( [ B ] T [ D ][ B ] ) T = A element [ B ] T [ D ] T [ B ]= A element [ B ] T [ D ][ B ]= K element MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadUeadaahaaWcbeqaaiaabwgacaqGSb Gaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGcdaahaaWcbeqaaiaa dsfaaaGccqGH9aqpcaWGbbWaaSbaaSqaaiaabwgacaqGSbGaaeyzai aab2gacaqGLbGaaeOBaiaabshaaeqaaOWaaeWaaeaadaWadaqaaiaa dkeaaiaawUfacaGLDbaadaahaaWcbeqaaiaadsfaaaGcdaWadaqaai aadseaaiaawUfacaGLDbaadaWadaqaaiaadkeaaiaawUfacaGLDbaa aiaawIcacaGLPaaadaahaaWcbeqaaiaadsfaaaGccaaMc8UaaGPaVl aaykW7caaMc8Uaeyypa0JaamyqamaaBaaaleaacaqGLbGaaeiBaiaa bwgacaqGTbGaaeyzaiaab6gacaqG0baabeaakmaadmaabaGaamOqaa Gaay5waiaaw2faamaaCaaaleqabaGaamivaaaakmaadmaabaGaamir aaGaay5waiaaw2faamaaCaaaleqabaGaamivaaaakmaadmaabaGaam OqaaGaay5waiaaw2faaiaaykW7caaMc8Uaeyypa0JaamyqamaaBaaa leaacaqGLbGaaeiBaiaabwgacaqGTbGaaeyzaiaab6gacaqG0baabe aakmaadmaabaGaamOqaaGaay5waiaaw2faamaaCaaaleqabaGaamiv aaaakmaadmaabaGaamiraaGaay5waiaaw2faamaadmaabaGaamOqaa Gaay5waiaaw2faaiaaykW7caaMc8Uaeyypa0Jaam4samaaCaaaleqa baGaaeyzaiaabYgacaqGLbGaaeyBaiaabwgacaqGUbGaaeiDaaaaaa a@86BA@

 

 

7.2.6 The Global stiffness matrix

 

The total strain energy of the solid may be computed by adding together the strain energy of each element:

W= elements W element = 1 2 elements u _ element T K element u _ element MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadEfacqGH9aqpdaaeqbqaaiaadEfada ahaaWcbeqaaiaabwgacaqGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaa bshaaaaabaGaaeyzaiaabYgacaqGLbGaaeyBaiaabwgacaqGUbGaae iDaiaabohaaeqaniabggHiLdGccqGH9aqpdaWcaaqaaiaaigdaaeaa caaIYaaaamaaqafabaWaaWaaaeaacaWG1baaamaaCaaaleqabaGaae yzaiaabYgacaqGLbGaaeyBaiaabwgacaqGUbGaaeiDaaaakmaaCaaa leqabaGaamivaaaakiaadUeadaahaaWcbeqaaiaabwgacaqGSbGaae yzaiaab2gacaqGLbGaaeOBaiaabshaaaGcdaadaaqaaiaadwhaaaWa aWbaaSqabeaacaqGLbGaaeiBaiaabwgacaqGTbGaaeyzaiaab6gaca qG0baaaaqaaiaabwgacaqGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaa bshacaqGZbaabeqdcqGHris5aaaa@678E@

It is more convenient to express W in terms of the vector u _ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiFKI8=feu0dXdh9vqqj=hEeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaamaamaaabaGaam yDaaaaaaa@3743@  which contains all the nodal displacements, rather than using u _ element MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaamaaabaGaamyDaaaadaahaaWcbeqaai aabwgacaqGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaaaaa@382D@  for each element to describe the displacements.  For example, the strain energy for the simple 2 element mesh shown is

W= 1 2 [ u 1 (1) u 2 (1) u 1 (2) u 2 (2) u 1 (3) u 2 (3) ][ k 11 (1) k 12 (1) k 16 (1) k 21 (1) k 22 (1) k 61 (1) k 66 (1) ][ u 1 (1) u 2 (1) u 1 (2) u 2 (2) u 1 (3) u 2 (3) ] + 1 2 [ u 1 (2) u 2 (2) u 1 (3) u 2 (3) u 1 (4) u 2 (4) ][ k 11 (2) k 12 (2) k 16 (2) k 21 (2) k 22 (2) k 61 (2) k 66 (2) ][ u 1 (2) u 2 (2) u 1 (3) u 2 (3) u 1 (4) u 2 (4) ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOabaeqabaGaam4vaiabg2da9maalaaabaGaaG ymaaqaaiaaikdaaaWaamWaaeaafaqabeqagaaaaeaacaWG1bWaa0ba aSqaaiaaigdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWG1bWaa0 baaSqaaiaaikdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWG1bWa a0baaSqaaiaaigdaaeaacaGGOaGaaGOmaiaacMcaaaaakeaacaWG1b Waa0baaSqaaiaaikdaaeaacaGGOaGaaGOmaiaacMcaaaaakeaacaWG 1bWaa0baaSqaaiaaigdaaeaacaGGOaGaaG4maiaacMcaaaaakeaaca WG1bWaa0baaSqaaiaaikdaaeaacaGGOaGaaG4maiaacMcaaaaaaaGc caGLBbGaayzxaaWaamWaaeaafaqabeabeaaaaaqaaiaadUgadaqhaa WcbaGaaGymaiaaigdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWG RbWaa0baaSqaaiaaigdacaaIYaaabaGaaiikaiaaigdacaGGPaaaaa GcbaGaeS47IWeabaGaam4AamaaDaaaleaacaaIXaGaaGOnaaqaaiaa cIcacaaIXaGaaiykaaaaaOqaaiaadUgadaqhaaWcbaGaaGOmaiaaig daaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWGRbWaa0baaSqaaiaa ikdacaaIYaaabaGaaiikaiaaigdacaGGPaaaaaGcbaaabaaabaGaeS O7I0eabaaabaGaeSy8I8eabaaabaGaam4AamaaDaaaleaacaaI2aGa aGymaaqaaiaacIcacaaIXaGaaiykaaaaaOqaaaqaaaqaaiaadUgada qhaaWcbaGaaGOnaiaaiAdaaeaacaGGOaGaaGymaiaacMcaaaaaaaGc caGLBbGaayzxaaWaamWaaeaafaqabeGbbaaaaeaacaWG1bWaa0baaS qaaiaaigdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWG1bWaa0ba aSqaaiaaikdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWG1bWaa0 baaSqaaiaaigdaaeaacaGGOaGaaGOmaiaacMcaaaaakeaacaWG1bWa a0baaSqaaiaaikdaaeaacaGGOaGaaGOmaiaacMcaaaaakeaacaWG1b Waa0baaSqaaiaaigdaaeaacaGGOaGaaG4maiaacMcaaaaakeaacaWG 1bWaa0baaSqaaiaaikdaaeaacaGGOaGaaG4maiaacMcaaaaaaaGcca GLBbGaayzxaaaabaGaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaM c8UaaGPaVlaaykW7cqGHRaWkdaWcaaqaaiaaigdaaeaacaaIYaaaam aadmaabaqbaeqabeGbaaaabaGaamyDamaaDaaaleaacaaIXaaabaGa aiikaiaaikdacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIYaaaba GaaiikaiaaikdacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIXaaa baGaaiikaiaaiodacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIYa aabaGaaiikaiaaiodacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaI XaaabaGaaiikaiaaisdacaGGPaaaaaGcbaGaamyDamaaDaaaleaaca aIYaaabaGaaiikaiaaisdacaGGPaaaaaaaaOGaay5waiaaw2faamaa dmaabaqbaeqabqabaaaaaeaacaWGRbWaa0baaSqaaiaaigdacaaIXa aabaGaaiikaiaaikdacaGGPaaaaaGcbaGaam4AamaaDaaaleaacaaI XaGaaGOmaaqaaiaacIcacaaIYaGaaiykaaaaaOqaaiabl+Uimbqaai aadUgadaqhaaWcbaGaaGymaiaaiAdaaeaacaGGOaGaaGOmaiaacMca aaaakeaacaWGRbWaa0baaSqaaiaaikdacaaIXaaabaGaaiikaiaaik dacaGGPaaaaaGcbaGaam4AamaaDaaaleaacaaIYaGaaGOmaaqaaiaa cIcacaaIYaGaaiykaaaaaOqaaaqaaaqaaiabl6Uinbqaaaqaaiablg VipbqaaaqaaiaadUgadaqhaaWcbaGaaGOnaiaaigdaaeaacaGGOaGa aGOmaiaacMcaaaaakeaaaeaaaeaacaWGRbWaa0baaSqaaiaaiAdaca aI2aaabaGaaiikaiaaikdacaGGPaaaaaaaaOGaay5waiaaw2faamaa dmaabaqbaeqabyqaaaaabaGaamyDamaaDaaaleaacaaIXaaabaGaai ikaiaaikdacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIYaaabaGa aiikaiaaikdacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIXaaaba GaaiikaiaaiodacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIYaaa baGaaiikaiaaiodacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIXa aabaGaaiikaiaaisdacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaI YaaabaGaaiikaiaaisdacaGGPaaaaaaaaOGaay5waiaaw2faaaaaaa@FC8B@

If we wanted to, we could add the missing terms to each element displacement vector:

W= 1 2 [ u 1 (1) u 2 (1) u 1 (2) u 2 (2) u 1 (3) u 2 (3) u 1 (4) u 2 (4) ] [ k 11 (1) k 12 (1) k 13 (1) k 14 (1) 0 0 k 21 (1) k 22 (1) k 32 (1) 0 0 k 33 (1) k 34 (1) 0 0 k 43 (1) k 44 (1) 0 0 k 53 (1) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ][ u 1 (1) u 2 (1) u 1 (2) u 2 (2) u 1 (3) u 2 (3) u 1 (4) u 2 (4) ] +[ u 1 (1) u 2 (1) u 1 (2) u 2 (2) u 1 (3) u 2 (3) u 1 (4) u 2 (4) ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 k 11 (2) k 12 (2) 0 0 k 21 (2) k 22 (2) 0 0 k 31 (2) 0 0 0 0 k 56 (2) 0 0 k 65 (2) k 66 (2) ][ u 1 (1) u 2 (1) u 1 (2) u 2 (2) u 1 (3) u 2 (3) u 1 (4) u 2 (4) ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOabaeqabaGaam4vaiabg2da9maalaaabaGaaG ymaaqaaiaaikdaaaaabaWaamWaaeaafaqabeqagaaaaeaacaWG1bWa a0baaSqaaiaaigdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWG1b Waa0baaSqaaiaaikdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWG 1bWaa0baaSqaaiaaigdaaeaacaGGOaGaaGOmaiaacMcaaaaakeaaca WG1bWaa0baaSqaaiaaikdaaeaacaGGOaGaaGOmaiaacMcaaaaakeaa caWG1bWaa0baaSqaaiaaigdaaeaacaGGOaGaaG4maiaacMcaaaaake aacaWG1bWaa0baaSqaaiaaikdaaeaacaGGOaGaaG4maiaacMcaaaaa aOGaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7faqabeqacaaabaGaam yDamaaDaaaleaacaaIXaaabaGaaiikaiaaisdacaGGPaaaaaGcbaGa amyDamaaDaaaleaacaaIYaaabaGaaiikaiaaisdacaGGPaaaaaaaaO Gaay5waiaaw2faaiaaykW7aeaacaaMc8UaaGPaVlaaykW7caaMc8Ua aGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7ca aMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaa ykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7daWadaqaau aabeqaiGaaaaaaaaqaaiaadUgadaqhaaWcbaGaaGymaiaaigdaaeaa caGGOaGaaGymaiaacMcaaaaakeaacaWGRbWaa0baaSqaaiaaigdaca aIYaaabaGaaiikaiaaigdacaGGPaaaaaGcbaGaam4AamaaDaaaleaa caaIXaGaaG4maaqaaiaacIcacaaIXaGaaiykaaaaaOqaaiaadUgada qhaaWcbaGaaGymaiaaisdaaeaacaGGOaGaaGymaiaacMcaaaaakeaa aeaacqWIVlctaeaacaaIWaaabaGaaGimaaqaaiaadUgadaqhaaWcba GaaGOmaiaaigdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWGRbWa a0baaSqaaiaaikdacaaIYaaabaGaaiikaiaaigdacaGGPaaaaaGcba Gaam4AamaaDaaaleaacaaIZaGaaGOmaaqaaiaacIcacaaIXaGaaiyk aaaaaOqaaaqaaaqaaaqaaiaaicdaaeaacaaIWaaabaaabaaabaGaam 4AamaaDaaaleaacaaIZaGaaG4maaqaaiaacIcacaaIXaGaaiykaaaa aOqaaiaadUgadaqhaaWcbaGaaG4maiaaisdaaeaacaGGOaGaaGymai aacMcaaaaakeaaaeaaaeaacaaIWaaabaGaaGimaaqaaaqaaaqaaiaa dUgadaqhaaWcbaGaaGinaiaaiodaaeaacaGGOaGaaGymaiaacMcaaa aakeaacaWGRbWaa0baaSqaaiaaisdacaaI0aaabaGaaiikaiaaigda caGGPaaaaaGcbaaabaaabaGaaGimaaqaaiaaicdaaeaaaeaaaeaaca WGRbWaa0baaSqaaiaaiwdacaaIZaaabaGaaiikaiaaigdacaGGPaaa aaGcbaaabaaabaaabaGaaGimaaqaaiaaicdaaeaaaeaaaeaacqWIUl staeaaaeaaaeaacqWIXlYtaeaacaaIWaaabaGaaGimaaqaaiaaicda aeaacaaIWaaabaGaaGimaaqaaiaaicdaaeaacaaIWaaabaGaaGimaa qaaiaaicdaaeaacaaIWaaabaGaaGimaaqaaiaaicdaaeaacaaIWaaa baGaaGimaaqaaiaaicdaaeaacaaIWaaabaGaaGimaaqaaiaaicdaaa aacaGLBbGaayzxaaWaamWaaeaafaqabeGbbaaaaqaabeqaaiaadwha daqhaaWcbaGaaGymaaqaaiaacIcacaaIXaGaaiykaaaaaOqaaiaadw hadaqhaaWcbaGaaGOmaaqaaiaacIcacaaIXaGaaiykaaaaaOqaaiaa dwhadaqhaaWcbaGaaGymaaqaaiaacIcacaaIYaGaaiykaaaaaaGcba GaamyDamaaDaaaleaacaaIYaaabaGaaiikaiaaikdacaGGPaaaaaGc baGaamyDamaaDaaaleaacaaIXaaabaGaaiikaiaaiodacaGGPaaaaa GcbaGaamyDamaaDaaaleaacaaIYaaabaGaaiikaiaaiodacaGGPaaa aaGcbaGaamyDamaaDaaaleaacaaIXaaabaGaaiikaiaaisdacaGGPa aaaaGcbaGaamyDamaaDaaaleaacaaIYaaabaGaaiikaiaaisdacaGG PaaaaaaaaOGaay5waiaaw2faaaqaaiabgUcaRiaaykW7caaMc8UaaG PaVlaaykW7daWadaqaauaabeqabyaaaaqaaiaadwhadaqhaaWcbaGa aGymaaqaaiaacIcacaaIXaGaaiykaaaaaOqaaiaadwhadaqhaaWcba GaaGOmaaqaaiaacIcacaaIXaGaaiykaaaaaOqaaiaadwhadaqhaaWc baGaaGymaaqaaiaacIcacaaIYaGaaiykaaaaaOqaaiaadwhadaqhaa WcbaGaaGOmaaqaaiaacIcacaaIYaGaaiykaaaaaOqaaiaadwhadaqh aaWcbaGaaGymaaqaaiaacIcacaaIZaGaaiykaaaaaOqaaiaadwhada qhaaWcbaGaaGOmaaqaaiaacIcacaaIZaGaaiykaaaaaaGccaaMc8Ua aGPaVlaaykW7caaMc8UaaGPaVxaabeqabiaaaeaacaWG1bWaa0baaS qaaiaaigdaaeaacaGGOaGaaGinaiaacMcaaaaakeaacaWG1bWaa0ba aSqaaiaaikdaaeaacaGGOaGaaGinaiaacMcaaaaaaaGccaGLBbGaay zxaaaabaGaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPa VlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8 UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7 caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVpaadmaabaqbaeqabGacaa aaaaaabaGaaGimaaqaaiaaicdaaeaacaaIWaaabaGaaGimaaqaaiaa icdaaeaacqWIVlctaeaacaaIWaaabaGaaGimaaqaaiaaicdaaeaaca aIWaaabaGaaGimaaqaaiaaicdaaeaacaaIWaaabaaabaGaaGimaaqa aiaaicdaaeaacaaIWaaabaGaaGimaaqaaiaadUgadaqhaaWcbaGaaG ymaiaaigdaaeaacaGGOaGaaGOmaiaacMcaaaaakeaacaWGRbWaa0ba aSqaaiaaigdacaaIYaaabaGaaiikaiaaikdacaGGPaaaaaGcbaaaba aabaaabaaabaGaaGimaaqaaiaaicdaaeaacaWGRbWaa0baaSqaaiaa ikdacaaIXaaabaGaaiikaiaaikdacaGGPaaaaaGcbaGaam4AamaaDa aaleaacaaIYaGaaGOmaaqaaiaacIcacaaIYaGaaiykaaaaaOqaaaqa aaqaaaqaaaqaaiaaicdaaeaacaaIWaaabaGaam4AamaaDaaaleaaca aIZaGaaGymaaqaaiaacIcacaaIYaGaaiykaaaaaOqaaaqaaaqaaaqa aaqaaaqaaiaaicdaaeaacaaIWaaabaaabaaabaaabaGaeSy8I8eaba aabaaabaGaaGimaaqaaiaaicdaaeaacqWIUlstaeaaaeaaaeaaaeaa aeaacaWGRbWaa0baaSqaaiaaiwdacaaI2aaabaGaaiikaiaaikdaca GGPaaaaaGcbaGaaGimaaqaaiaaicdaaeaaaeaaaeaaaeaaaeaacaWG RbWaa0baaSqaaiaaiAdacaaI1aaabaGaaiikaiaaikdacaGGPaaaaa GcbaGaam4AamaaDaaaleaacaaI2aGaaGOnaaqaaiaacIcacaaIYaGa aiykaaaaaaaakiaawUfacaGLDbaadaWadaqaauaabeqageaaaaabae qabaGaamyDamaaDaaaleaacaaIXaaabaGaaiikaiaaigdacaGGPaaa aaGcbaGaamyDamaaDaaaleaacaaIYaaabaGaaiikaiaaigdacaGGPa aaaaGcbaGaamyDamaaDaaaleaacaaIXaaabaGaaiikaiaaikdacaGG PaaaaaaakeaacaWG1bWaa0baaSqaaiaaikdaaeaacaGGOaGaaGOmai aacMcaaaaakeaacaWG1bWaa0baaSqaaiaaigdaaeaacaGGOaGaaG4m aiaacMcaaaaakeaacaWG1bWaa0baaSqaaiaaikdaaeaacaGGOaGaaG 4maiaacMcaaaaakeaacaWG1bWaa0baaSqaaiaaigdaaeaacaGGOaGa aGinaiaacMcaaaaakeaacaWG1bWaa0baaSqaaiaaikdaaeaacaGGOa GaaGinaiaacMcaaaaaaaGccaGLBbGaayzxaaaaaaa@BED6@

We can now collect together corresponding terms in the two element stiffness matrices to express this as

W= 1 2 [ u 1 (1) u 2 (1) u 1 (2) u 2 (2) u 1 (3) u 2 (3) u 1 (4) u 2 (4) ] [ k 11 (1) k 12 (1) k 13 (1) k 14 (1) k 21 (1) k 22 (1) k 32 (1) k 33 (1) + k 11 (2) k 34 (1) + k 12 (2) k 43 (1) + k 21 (2) k 44 (1) + k 22 (2) k 53 (1) + k 31 (2) k 56 (2) k 65 (2) k 66 (2) ][ u 1 (1) u 2 (1) u 1 (2) u 2 (2) u 1 (3) u 2 (3) u 1 (4) u 2 (4) ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOabaeqabaGaam4vaiabg2da9maalaaabaGaaG ymaaqaaiaaikdaaaWaamWaaeaafaqabeqagaaaaeaacaWG1bWaa0ba aSqaaiaaigdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWG1bWaa0 baaSqaaiaaikdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWG1bWa a0baaSqaaiaaigdaaeaacaGGOaGaaGOmaiaacMcaaaaakeaacaWG1b Waa0baaSqaaiaaikdaaeaacaGGOaGaaGOmaiaacMcaaaaakeaacaWG 1bWaa0baaSqaaiaaigdaaeaacaGGOaGaaG4maiaacMcaaaaakeaaca WG1bWaa0baaSqaaiaaikdaaeaacaGGOaGaaG4maiaacMcaaaaaaOGa aGPaVlaaykW7caaMc8UaaGPaVlaaykW7faqabeqacaaabaGaamyDam aaDaaaleaacaaIXaaabaGaaiikaiaaisdacaGGPaaaaaGcbaGaamyD amaaDaaaleaacaaIYaaabaGaaiikaiaaisdacaGGPaaaaaaaaOGaay 5waiaaw2faaaqaaiaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPa VlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8 UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7 caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7daWadaqaauaabe qaiGaaaaaaaaqaaiaadUgadaqhaaWcbaGaaGymaiaaigdaaeaacaGG OaGaaGymaiaacMcaaaaakeaacaWGRbWaa0baaSqaaiaaigdacaaIYa aabaGaaiikaiaaigdacaGGPaaaaaGcbaGaam4AamaaDaaaleaacaaI XaGaaG4maaqaaiaacIcacaaIXaGaaiykaaaaaOqaaiaadUgadaqhaa WcbaGaaGymaiaaisdaaeaacaGGOaGaaGymaiaacMcaaaaakeaaaeaa cqWIVlctaeaaaeaaaeaacaWGRbWaa0baaSqaaiaaikdacaaIXaaaba GaaiikaiaaigdacaGGPaaaaaGcbaGaam4AamaaDaaaleaacaaIYaGa aGOmaaqaaiaacIcacaaIXaGaaiykaaaaaOqaaiaadUgadaqhaaWcba GaaG4maiaaikdaaeaacaGGOaGaaGymaiaacMcaaaaakeaaaeaaaeaa aeaaaeaaaeaaaeaaaeaacaWGRbWaa0baaSqaaiaaiodacaaIZaaaba GaaiikaiaaigdacaGGPaaaaOGaey4kaSIaam4AamaaDaaaleaacaaI XaGaaGymaaqaaiaacIcacaaIYaGaaiykaaaaaOqaaiaadUgadaqhaa WcbaGaaG4maiaaisdaaeaacaGGOaGaaGymaiaacMcaaaGccqGHRaWk caWGRbWaa0baaSqaaiaaigdacaaIYaaabaGaaiikaiaaikdacaGGPa aaaaGcbaaabaaabaaabaaabaaabaaabaGaam4AamaaDaaaleaacaaI 0aGaaG4maaqaaiaacIcacaaIXaGaaiykaaaakiabgUcaRiaadUgada qhaaWcbaGaaGOmaiaaigdaaeaacaGGOaGaaGOmaiaacMcaaaaakeaa caWGRbWaa0baaSqaaiaaisdacaaI0aaabaGaaiikaiaaigdacaGGPa aaaOGaey4kaSIaam4AamaaDaaaleaacaaIYaGaaGOmaaqaaiaacIca caaIYaGaaiykaaaaaOqaaaqaaaqaaaqaaaqaaaqaaaqaaiaadUgada qhaaWcbaGaaGynaiaaiodaaeaacaGGOaGaaGymaiaacMcaaaGccqGH RaWkcaWGRbWaa0baaSqaaiaaiodacaaIXaaabaGaaiikaiaaikdaca GGPaaaaaGcbaaabaaabaaabaaabaaabaaabaaabaaabaaabaaabaGa eSy8I8eabaaabaaabaaabaaabaGaeSO7I0eabaaabaaabaaabaaaba Gaam4AamaaDaaaleaacaaI1aGaaGOnaaqaaiaacIcacaaIYaGaaiyk aaaaaOqaaaqaaaqaaaqaaaqaaaqaaaqaaiaadUgadaqhaaWcbaGaaG OnaiaaiwdaaeaacaGGOaGaaGOmaiaacMcaaaaakeaacaWGRbWaa0ba aSqaaiaaiAdacaaI2aaabaGaaiikaiaaikdacaGGPaaaaaaaaOGaay 5waiaaw2faamaadmaabaqbaeqabyqaaaaaeaqabeaacaWG1bWaa0ba aSqaaiaaigdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWG1bWaa0 baaSqaaiaaikdaaeaacaGGOaGaaGymaiaacMcaaaaakeaacaWG1bWa a0baaSqaaiaaigdaaeaacaGGOaGaaGOmaiaacMcaaaaaaOqaaiaadw hadaqhaaWcbaGaaGOmaaqaaiaacIcacaaIYaGaaiykaaaaaOqaaiaa dwhadaqhaaWcbaGaaGymaaqaaiaacIcacaaIZaGaaiykaaaaaOqaai aadwhadaqhaaWcbaGaaGOmaaqaaiaacIcacaaIZaGaaiykaaaaaOqa aiaadwhadaqhaaWcbaGaaGymaaqaaiaacIcacaaI0aGaaiykaaaaaO qaaiaadwhadaqhaaWcbaGaaGOmaaqaaiaacIcacaaI0aGaaiykaaaa aaaakiaawUfacaGLDbaaaaaa@15AC@

 We can therefore write

W= 1 2 u _ T [ K ] u _ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadEfacqGH9aqpdaWcaaqaaiaaigdaae aacaaIYaaaamaamaaabaGaamyDaaaadaahaaWcbeqaaiaadsfaaaGc daWadaqaaiaadUeaaiaawUfacaGLDbaadaadaaqaaiaadwhaaaaaaa@39B6@

where [ K ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaGaam4saaGaay5waiaaw2faaa aa@3339@  is known as the Global stiffness matrix.  It is the sum of all the element stiffness matrices.

 

Because the element stiffness matrix is symmetric, the global stiffness matrix must also be symmetric.

 

To assemble the global stiffness matrix for a plane strain or plane stress mesh with N nodes, we use the following procedure.

 

1.      Note that for N MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaad6eaaaa@313A@  nodes, there will be 2N MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaaikdacaWGobaaaa@31F6@  unknown displacement components (2 at each node).  Therefore, we start by setting up storage for a ( 2N×2N ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaabmaabaGaaGOmaiaad6eacqGHxdaTca aIYaGaamOtaaGaayjkaiaawMcaaaaa@3725@  global stiffness matrix, and set each term in the matrix to zero.

2.      Next, begin a loop over the elements.

3.      For the current element, assemble the element stiffness matrix

K element = A element [ B ] T [ D ][ B ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadUeadaahaaWcbeqaaiaabwgacaqGSb Gaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGccqGH9aqpcaWGbbWa aSbaaSqaaiaabwgacaqGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaabs haaeqaaOWaamWaaeaacaWGcbaacaGLBbGaayzxaaWaaWbaaSqabeaa caWGubaaaOWaamWaaeaacaWGebaacaGLBbGaayzxaaWaamWaaeaaca WGcbaacaGLBbGaayzxaaaaaa@49AB@

4.      Add the element stiffness matrix to the global stiffness matrix, using the following procedure.  Let a, b, c denote the numbers of the nodes on the 3 corners of the element.  Let k ij element MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadUgadaqhaaWcbaGaamyAaiaadQgaae aacaqGLbGaaeiBaiaabwgacaqGTbGaaeyzaiaab6gacaqG0baaaaaa @39F0@  for i=1…6, j=1…6  denote the terms in the the element stiffness matrix.  Let K nm MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadUeadaWgaaWcbaGaamOBaiaad2gaae qaaaaa@3358@  for n=1…2N, m=1…2N denote the terms in the global stiffness matrix.  Then,

K 2a1,2a1 += k 11 element , K 2a1,2a += k 12 element K 2a1,2b1 += k 13 element K 2a1,2b += k 14 element K 2a1,2c1 += k 15 element K 2a1,2c += k 16 element K 2a,2a1 += k 21 element , K 2a,2a += k 22 element K 2a,2b1 += k 23 element K 2a,2b += k 24 element K 2a,2c1 += k 25 element K 2a,2c += k 26 element K 2b1,2a1 += k 31 element , K 2b1,2a += k 32 element K 2b1,2b1 += k 33 element K 2b1,2b += k 34 element K 2b1,2c1 += k 35 element K 2b1,2c += k 36 element K 2c,2a1 += k 61 element , K 2c,2a += k 62 element K 2c,2b1 += k 63 element K 2c,2b += k 64 element K 2c,2c1 += k 65 element K 2c,2c += k 66 element MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOabaeqabaGaam4samaaBaaaleaacaaIYaGaam yyaiabgkHiTiaaigdacaGGSaGaaGOmaiaadggacqGHsislcaaIXaaa beaakiaaykW7caaMc8UaaGPaVlabgUcaRiabg2da9iaaykW7caaMc8 UaaGPaVlaadUgadaqhaaWcbaGaaGymaiaaigdaaeaacaqGLbGaaeiB aiaabwgacaqGTbGaaeyzaiaab6gacaqG0baaaOGaaiilaiaaykW7ca aMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaa ykW7caWGlbWaaSbaaSqaaiaaikdacaWGHbGaeyOeI0IaaGymaiaacY cacaaIYaGaamyyaaqabaGccaaMc8UaaGPaVlaaykW7cqGHRaWkcqGH 9aqpcaaMc8UaaGPaVlaaykW7caWGRbWaa0baaSqaaiaaigdacaaIYa aabaGaaeyzaiaabYgacaqGLbGaaeyBaiaabwgacaqGUbGaaeiDaaaa aOqaaiaadUeadaWgaaWcbaGaaGOmaiaadggacqGHsislcaaIXaGaai ilaiaaikdacaWGIbGaeyOeI0IaaGymaaqabaGccaaMc8UaaGPaVlaa ykW7cqGHRaWkcqGH9aqpcaaMc8UaaGPaVlaaykW7caWGRbWaa0baaS qaaiaaigdacaaIZaaabaGaaeyzaiaabYgacaqGLbGaaeyBaiaabwga caqGUbGaaeiDaaaakiaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaG PaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaadUeadaWg aaWcbaGaaGOmaiaadggacqGHsislcaaIXaGaaiilaiaaikdacaWGIb aabeaakiaaykW7caaMc8UaaGPaVlabgUcaRiabg2da9iaaykW7caaM c8UaaGPaVlaadUgadaqhaaWcbaGaaGymaiaaisdaaeaacaqGLbGaae iBaiaabwgacaqGTbGaaeyzaiaab6gacaqG0baaaaGcbaGaam4samaa BaaaleaacaaIYaGaamyyaiabgkHiTiaaigdacaGGSaGaaGOmaiaado gacqGHsislcaaIXaaabeaakiaaykW7caaMc8UaaGPaVlabgUcaRiab g2da9iaaykW7caaMc8UaaGPaVlaadUgadaqhaaWcbaGaaGymaiaaiw daaeaacaqGLbGaaeiBaiaabwgacaqGTbGaaeyzaiaab6gacaqG0baa aOGaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaayk W7caaMc8UaaGPaVlaaykW7caaMc8Uaam4samaaBaaaleaacaaIYaGa amyyaiabgkHiTiaaigdacaGGSaGaaGOmaiaadogaaeqaaOGaaGPaVl aaykW7caaMc8Uaey4kaSIaeyypa0JaaGPaVlaaykW7caaMc8Uaam4A amaaDaaaleaacaaIXaGaaGOnaaqaaiaabwgacaqGSbGaaeyzaiaab2 gacaqGLbGaaeOBaiaabshaaaaakeaaaeaacaWGlbWaaSbaaSqaaiaa ikdacaWGHbGaaiilaiaaikdacaWGHbGaeyOeI0IaaGymaaqabaGcca aMc8UaaGPaVlaaykW7cqGHRaWkcqGH9aqpcaaMc8UaaGPaVlaaykW7 caWGRbWaa0baaSqaaiaaikdacaaIXaaabaGaaeyzaiaabYgacaqGLb GaaeyBaiaabwgacaqGUbGaaeiDaaaakiaacYcacaaMc8UaaGPaVlaa ykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8Uaam 4samaaBaaaleaacaaIYaGaamyyaiaacYcacaaIYaGaamyyaaqabaGc caaMc8UaaGPaVlaaykW7cqGHRaWkcqGH9aqpcaaMc8UaaGPaVlaayk W7caWGRbWaa0baaSqaaiaaikdacaaIYaaabaGaaeyzaiaabYgacaqG LbGaaeyBaiaabwgacaqGUbGaaeiDaaaaaOqaaiaadUeadaWgaaWcba GaaGOmaiaadggacaGGSaGaaGOmaiaadkgacqGHsislcaaIXaaabeaa kiaaykW7caaMc8UaaGPaVlabgUcaRiabg2da9iaaykW7caaMc8UaaG PaVlaadUgadaqhaaWcbaGaaGOmaiaaiodaaeaacaqGLbGaaeiBaiaa bwgacaqGTbGaaeyzaiaab6gacaqG0baaaOGaaGPaVlaaykW7caaMc8 UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7 caaMc8Uaam4samaaBaaaleaacaaIYaGaamyyaiaacYcacaaIYaGaam OyaaqabaGccaaMc8UaaGPaVlaaykW7cqGHRaWkcqGH9aqpcaaMc8Ua aGPaVlaaykW7caWGRbWaa0baaSqaaiaaikdacaaI0aaabaGaaeyzai aabYgacaqGLbGaaeyBaiaabwgacaqGUbGaaeiDaaaaaOqaaiaadUea daWgaaWcbaGaaGOmaiaadggacaGGSaGaaGOmaiaadogacqGHsislca aIXaaabeaakiaaykW7caaMc8UaaGPaVlabgUcaRiabg2da9iaaykW7 caaMc8UaaGPaVlaadUgadaqhaaWcbaGaaGOmaiaaiwdaaeaacaqGLb GaaeiBaiaabwgacaqGTbGaaeyzaiaab6gacaqG0baaaOGaaGPaVlaa ykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaG PaVlaaykW7caaMc8Uaam4samaaBaaaleaacaaIYaGaamyyaiaacYca caaIYaGaam4yaaqabaGccaaMc8UaaGPaVlaaykW7cqGHRaWkcqGH9a qpcaaMc8UaaGPaVlaaykW7caWGRbWaa0baaSqaaiaaikdacaaI2aaa baGaaeyzaiaabYgacaqGLbGaaeyBaiaabwgacaqGUbGaaeiDaaaaaO qaaaqaaiaadUeadaWgaaWcbaGaaGOmaiaadkgacqGHsislcaaIXaGa aiilaiaaikdacaWGHbGaeyOeI0IaaGymaaqabaGccaaMc8UaaGPaVl aaykW7cqGHRaWkcqGH9aqpcaaMc8UaaGPaVlaaykW7caWGRbWaa0ba aSqaaiaaiodacaaIXaaabaGaaeyzaiaabYgacaqGLbGaaeyBaiaabw gacaqGUbGaaeiDaaaakiaacYcacaaMc8UaaGPaVlaaykW7caaMc8Ua aGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8Uaam4samaaBaaale aacaaIYaGaamOyaiabgkHiTiaaigdacaGGSaGaaGOmaiaadggaaeqa aOGaaGPaVlaaykW7caaMc8Uaey4kaSIaeyypa0JaaGPaVlaaykW7ca WGRbWaa0baaSqaaiaaiodacaaIYaaabaGaaeyzaiaabYgacaqGLbGa aeyBaiaabwgacaqGUbGaaeiDaaaakiaaykW7aeaacaWGlbWaaSbaaS qaaiaaikdacaWGIbGaeyOeI0IaaGymaiaacYcacaaIYaGaamOyaiab gkHiTiaaigdaaeqaaOGaaGPaVlaaykW7caaMc8Uaey4kaSIaeyypa0 JaaGPaVlaaykW7caaMc8Uaam4AamaaDaaaleaacaaIZaGaaG4maaqa aiaabwgacaqGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGcca aMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaa ykW7caaMc8UaaGPaVlaaykW7caWGlbWaaSbaaSqaaiaaikdacaWGIb GaeyOeI0IaaGymaiaacYcacaaIYaGaamOyaaqabaGccaaMc8UaaGPa VlaaykW7cqGHRaWkcqGH9aqpcaaMc8UaaGPaVlaaykW7caWGRbWaa0 baaSqaaiaaiodacaaI0aaabaGaaeyzaiaabYgacaqGLbGaaeyBaiaa bwgacaqGUbGaaeiDaaaaaOqaaiaadUeadaWgaaWcbaGaaGOmaiaadk gacqGHsislcaaIXaGaaiilaiaaikdacaWGJbGaeyOeI0IaaGymaaqa baGccaaMc8UaaGPaVlaaykW7cqGHRaWkcqGH9aqpcaaMc8UaaGPaVl aaykW7caWGRbWaa0baaSqaaiaaiodacaaI1aaabaGaaeyzaiaabYga caqGLbGaaeyBaiaabwgacaqGUbGaaeiDaaaakiaaykW7caaMc8UaaG PaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaM c8UaaGPaVlaadUeadaWgaaWcbaGaaGOmaiaadkgacqGHsislcaaIXa GaaiilaiaaikdacaWGJbaabeaakiaaykW7caaMc8UaaGPaVlabgUca Riabg2da9iaaykW7caaMc8UaaGPaVlaadUgadaqhaaWcbaGaaG4mai aaiAdaaeaacaqGLbGaaeiBaiaabwgacaqGTbGaaeyzaiaab6gacaqG 0baaaaGcbaGaaGzbVlabl6UinbqaaiaadUeadaWgaaWcbaGaaGOmai aadogacaGGSaGaaGOmaiaadggacqGHsislcaaIXaaabeaakiaaykW7 caaMc8UaaGPaVlabgUcaRiabg2da9iaaykW7caaMc8UaaGPaVlaadU gadaqhaaWcbaGaaGOnaiaaigdaaeaacaqGLbGaaeiBaiaabwgacaqG TbGaaeyzaiaab6gacaqG0baaaOGaaiilaiaaykW7caaMc8UaaGPaVl aaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caWGlbWa aSbaaSqaaiaaikdacaWGJbGaaiilaiaaikdacaWGHbaabeaakiaayk W7caaMc8UaaGPaVlabgUcaRiabg2da9iaaykW7caaMc8UaaGPaVlaa dUgadaqhaaWcbaGaaGOnaiaaikdaaeaacaqGLbGaaeiBaiaabwgaca qGTbGaaeyzaiaab6gacaqG0baaaaGcbaGaam4samaaBaaaleaacaaI YaGaam4yaiaacYcacaaIYaGaamOyaiabgkHiTiaaigdaaeqaaOGaaG PaVlaaykW7caaMc8Uaey4kaSIaeyypa0JaaGPaVlaaykW7caaMc8Ua am4AamaaDaaaleaacaaI2aGaaG4maaqaaiaabwgacaqGSbGaaeyzai aab2gacaqGLbGaaeOBaiaabshaaaGccaaMc8UaaGPaVlaaykW7caaM c8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaayk W7caWGlbWaaSbaaSqaaiaaikdacaWGJbGaaiilaiaaikdacaWGIbaa beaakiaaykW7caaMc8UaaGPaVlabgUcaRiabg2da9iaaykW7caaMc8 UaaGPaVlaadUgadaqhaaWcbaGaaGOnaiaaisdaaeaacaqGLbGaaeiB aiaabwgacaqGTbGaaeyzaiaab6gacaqG0baaaaGcbaGaam4samaaBa aaleaacaaIYaGaam4yaiaacYcacaaIYaGaam4yaiabgkHiTiaaigda aeqaaOGaaGPaVlaaykW7caaMc8Uaey4kaSIaeyypa0JaaGPaVlaayk W7caaMc8Uaam4AamaaDaaaleaacaaI2aGaaGynaaqaaiaabwgacaqG SbGaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGccaaMc8UaaGPaVl aaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8Ua aGPaVlaadUeadaWgaaWcbaGaaGOmaiaadogacaGGSaGaaGOmaiaado gaaeqaaOGaaGPaVlaaykW7caaMc8Uaey4kaSIaeyypa0JaaGPaVlaa ykW7caaMc8Uaam4AamaaDaaaleaacaaI2aGaaGOnaaqaaiaabwgaca qGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaaaaaa@8D50@

Here, the symbol += means that the term on the left is incremented by the term on the right, following standard C syntax.

 

5. Proceed to the next element.

 

 

 

7.2.7 Boundary loading

 

We have now found a way to compute the strain energy for a finite element mesh.  Next, we need to compute the boundary term in the potential energy.

 

Boundary loading will be specified as follows:

1. The element on which the loading acts

2. The face of the element which is loaded

3. The traction vector t (force per unit area) that acts on the face of the element.  The traction is assumed to be constant on the face of any one element.

 

Now, we compute the contribution to the potential energy due to the traction acting on the face of one element.

 

For the element shown, the contribution to the potential energy would be

P= 0 L t i u i ds MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadcfacqGH9aqpcqGHsisldaWdXbqaai aadshadaWgaaWcbaGaamyAaaqabaGccaWG1bWaaSbaaSqaaiaadMga aeqaaOGaamizaiaadohaaSqaaiaaicdaaeaacaWGmbaaniabgUIiYd aaaa@3D3F@

Recall that the displacements vary linearly within a 3 noded triangle.  Therefore, we can write

u i = u i (a) s L + u i (c) ( 1 s L ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadwhadaWgaaWcbaGaamyAaaqabaGccq GH9aqpcaWG1bWaa0baaSqaaiaadMgaaeaacaGGOaGaamyyaiaacMca aaGcdaWcaaqaaiaadohaaeaacaWGmbaaaiabgUcaRiaadwhadaqhaa WcbaGaamyAaaqaaiaacIcacaWGJbGaaiykaaaakmaabmaabaGaaGym aiabgkHiTmaalaaabaGaam4CaaqaaiaadYeaaaaacaGLOaGaayzkaa aaaa@440E@

So, since the tractions are uniform

P element = t i u i (a) 0 L s L ds t i u i (c) 0 L ( 1 s L )ds = t i u i (a) L 2 t i u i (c) L 2 =[ t 1 L 2 t 2 L 2 t 1 L 2 t 2 L 2 ][ u 1 (a) u 2 (a) u 1 (c) u 2 (c) ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOabaeqabaGaamiuamaaCaaaleqabaGaaeyzai aabYgacaqGLbGaaeyBaiaabwgacaqGUbGaaeiDaaaakiabg2da9iab gkHiTiaadshadaWgaaWcbaGaamyAaaqabaGccaWG1bWaa0baaSqaai aadMgaaeaacaGGOaGaamyyaiaacMcaaaGcdaWdXbqaamaalaaabaGa am4CaaqaaiaadYeaaaGaamizaiaadohaaSqaaiaaicdaaeaacaWGmb aaniabgUIiYdGccqGHsislcaWG0bWaaSbaaSqaaiaadMgaaeqaaOGa amyDamaaDaaaleaacaWGPbaabaGaaiikaiaadogacaGGPaaaaOWaa8 qCaeaadaqadaqaaiaaigdacqGHsisldaWcaaqaaiaadohaaeaacaWG mbaaaaGaayjkaiaawMcaaiaadsgacaWGZbaaleaacaaIWaaabaGaam itaaqdcqGHRiI8aaGcbaGaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7 caaMc8Uaeyypa0JaaGPaVlaaykW7cqGHsislcaWG0bWaaSbaaSqaai aadMgaaeqaaOGaamyDamaaDaaaleaacaWGPbaabaGaaiikaiaadgga caGGPaaaaOWaaSaaaeaacaWGmbaabaGaaGOmaaaacqGHsislcaWG0b WaaSbaaSqaaiaadMgaaeqaaOGaamyDamaaDaaaleaacaWGPbaabaGa aiikaiaadogacaGGPaaaaOWaaSaaaeaacaWGmbaabaGaaGOmaaaaae aacaaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8Uaeyyp a0JaeyOeI0YaamWaaeaafaqabeqaeaaaaeaacaWG0bWaaSbaaSqaai aaigdaaeqaaOWaaSaaaeaacaWGmbaabaGaaGOmaaaaaeaacaWG0bWa aSbaaSqaaiaaikdaaeqaaOWaaSaaaeaacaWGmbaabaGaaGOmaaaaae aacaWG0bWaaSbaaSqaaiaaigdaaeqaaOWaaSaaaeaacaWGmbaabaGa aGOmaaaaaeaacaWG0bWaaSbaaSqaaiaaikdaaeqaaOWaaSaaaeaaca WGmbaabaGaaGOmaaaaaaaacaGLBbGaayzxaaGaeyyXIC9aamWaaeaa faqabeqaeaaaaeaacaWG1bWaa0baaSqaaiaaigdaaeaacaGGOaGaam yyaiaacMcaaaaakeaacaWG1bWaa0baaSqaaiaaikdaaeaacaGGOaGa amyyaiaacMcaaaaakeaacaWG1bWaa0baaSqaaiaaigdaaeaacaGGOa Gaam4yaiaacMcaaaaakeaacaWG1bWaa0baaSqaaiaaikdaaeaacaGG OaGaam4yaiaacMcaaaaaaaGccaGLBbGaayzxaaaaaaa@ABBD@

Abbreviate this as

P element = r _ face u _ face MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadcfadaahaaWcbeqaaiaabwgacaqGSb Gaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaaGccqGH9aqpcqGHsisl daadaaqaaiaadkhaaaWaaWbaaSqabeaacaqGMbGaaeyyaiaabogaca qGLbaaaOGaeyyXIC9aaWaaaeaacaWG1baaamaaCaaaleqabaGaaeOz aiaabggacaqGJbGaaeyzaaaaaaa@45DA@

 

 

7.2.8 Global residual force vector

 

The total contribution to the potential energy due to boundary loading on all element faces is

P= faces r _ faces u _ faces MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadcfacqGH9aqpcqGHsisldaaeqbqaam aamaaabaGaamOCaaaadaahaaWcbeqaaiaabAgacaqGHbGaae4yaiaa bwgacaqGZbaaaOGaeyyXIC9aaWaaaeaacaWG1baaamaaCaaaleqaba GaaeOzaiaabggacaqGJbGaaeyzaiaabohaaaaabaGaaeOzaiaabgga caqGJbGaaeyzaiaabohaaeqaniabggHiLdaaaa@47B9@

It is more convenient to express this in terms of the global displacement vector u _ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaamaaabaGaamyDaaaaaaa@3181@

P= r _ u _ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadcfacqGH9aqpcqGHsisldaadaaqaai aadkhaaaGaeyyXIC9aaWaaaeaacaWG1baaaaaa@379A@

where r _ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiFKI8=feu0dXdh9vqqj=hEeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaamaamaaabaGaam OCaaaaaaa@3740@  is the global residual force vector.

 

The global residual force vector for a mesh with N nodes is assembled as follows.

1.      The residual force vector has length 2N (2 entries per node).  Reserve storage for a vector of length 2N and initialize to zero

2.      Loop over elements

3.      Determine which face of the element is loaded.  Let a, b denote the node numbers attached to this face.  Determine the residual force vector for the element face.  Let r i face MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadkhadaWgaaWcbaGaamyAaaqabaGcda ahaaWcbeqaaiaabAgacaqGHbGaae4yaiaabwgaaaaaaa@365A@ , i=1…4 denote the terms in the element face residual vector.  Let r n MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadkhadaWgaaWcbaGaamOBaaqabaaaaa@328D@ , n=1…2N denote the terms in the global residual force vector.  Then

r 2a1 += r 1 face r 2a += r 2 face r 2b1 += r 3 face r 2b += r 4 face MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOabaeqabaGaamOCamaaBaaaleaacaaIYaGaam yyaiabgkHiTiaaigdaaeqaaOGaaGPaVlaaykW7cqGHRaWkcqGH9aqp caaMc8UaaGPaVlaaykW7caWGYbWaa0baaSqaaiaaigdaaeaacaqGMb GaaeyyaiaabogacaqGLbaaaOGaaGPaVlaaykW7caaMc8UaaGPaVlaa ykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaG PaVlaaykW7caWGYbWaaSbaaSqaaiaaikdacaWGHbaabeaakiaaykW7 caaMc8Uaey4kaSIaeyypa0JaaGPaVlaaykW7caaMc8UaamOCamaaDa aaleaacaaIYaaabaGaaeOzaiaabggacaqGJbGaaeyzaaaaaOqaaiaa dkhadaWgaaWcbaGaaGOmaiaadkgacqGHsislcaaIXaaabeaakiaayk W7caaMc8Uaey4kaSIaeyypa0JaaGPaVlaaykW7caaMc8UaamOCamaa DaaaleaacaaIZaaabaGaaeOzaiaabggacaqGJbGaaeyzaaaakiaayk W7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPa VlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaamOCamaaBaaaleaaca aIYaGaamOyaaqabaGccaaMc8UaaGPaVlabgUcaRiabg2da9iaaykW7 caaMc8UaaGPaVlaadkhadaqhaaWcbaGaaGinaaqaaiaabAgacaqGHb Gaae4yaiaabwgaaaaaaaa@A6B8@

 

 

 

7.2.9 Minimizing the Potential Energy

 

We have set up the following expression for the potential energy of a finite element mesh

V= 1 2 u _ T [ K ] u _ r _ u _ 1 2 j=1 2N u j i=1 2N K ji u i j=1 2N r j u j MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOabaeqabaGaamOvaiabg2da9maalaaabaGaaG ymaaqaaiaaikdaaaWaaWaaaeaacaWG1baaamaaCaaaleqabaGaamiv aaaakmaadmaabaGaam4saaGaay5waiaaw2faamaamaaabaGaamyDaa aacqGHsisldaadaaqaaiaadkhaaaGaeyyXIC9aaWaaaeaacaWG1baa aaqaaiaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlabggMi6o aalaaabaGaaGymaaqaaiaaikdaaaWaaabCaeaacaWG1bWaaSbaaSqa aiaadQgaaeqaaOWaaabCaeaacaWGlbWaaSbaaSqaaiaadQgacaWGPb aabeaakiaadwhadaWgaaWcbaGaamyAaaqabaaabaGaamyAaiabg2da 9iaaigdaaeaacaaIYaGaamOtaaqdcqGHris5aaWcbaGaamOAaiabg2 da9iaaigdaaeaacaaIYaGaamOtaaqdcqGHris5aOGaeyOeI0YaaabC aeaacaWGYbWaaSbaaSqaaiaadQgaaeqaaOGaamyDamaaBaaaleaaca WGQbaabeaaaeaacaWGQbGaeyypa0JaaGymaaqaaiaaikdacaWGobaa niabggHiLdaaaaa@6B40@

Now, minimize V

V u k = 1 2 i=1 2N K ki u i + 1 2 j=1 2N u j K jk r k =0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaalaaabaGaeyOaIyRaamOvaaqaaiabgk Gi2kaadwhadaWgaaWcbaGaam4AaaqabaaaaOGaeyypa0ZaaSaaaeaa caaIXaaabaGaaGOmaaaadaaeWbqaaiaadUeadaWgaaWcbaGaam4Aai aadMgaaeqaaOGaamyDamaaBaaaleaacaWGPbaabeaaaeaacaWGPbGa eyypa0JaaGymaaqaaiaaikdacaWGobaaniabggHiLdGccqGHRaWkda WcaaqaaiaaigdaaeaacaaIYaaaamaaqahabaGaamyDamaaBaaaleaa caWGQbaabeaakiaadUeadaWgaaWcbaGaamOAaiaadUgaaeqaaaqaai aadQgacqGH9aqpcaaIXaaabaGaaGOmaiaad6eaa0GaeyyeIuoakiab gkHiTiaadkhadaWgaaWcbaGaam4AaaqabaGccqGH9aqpcaaIWaaaaa@56EF@

where we have noted that

u j u k ={ 1,j=k 0,jk MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaalaaabaGaeyOaIyRaamyDamaaBaaale aacaWGQbaabeaaaOqaaiabgkGi2kaadwhadaWgaaWcbaGaam4Aaaqa baaaaOGaeyypa0ZaaiqaaqaabeqaaiaaigdacaGGSaGaaGPaVlaayk W7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPa VlaaykW7caWGQbGaeyypa0Jaam4AaaqaaiaaicdacaGGSaGaaGPaVl aaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8Ua aGPaVlaadQgacqGHGjsUcaWGRbaaaiaawUhaaaaa@6370@

Simplify this by noting that [ K ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaGaam4saaGaay5waiaaw2faaa aa@3339@  is symmetric

V u k = 1 2 i=1 2N K ki u i + 1 2 j=1 2N u j K kj r k = i=1 2N K ki u i r k =0 [ K ] u _ = r _ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOabaeqabaWaaSaaaeaacqGHciITcaWGwbaaba GaeyOaIyRaamyDamaaBaaaleaacaWGRbaabeaaaaGccqGH9aqpdaWc aaqaaiaaigdaaeaacaaIYaaaamaaqahabaGaam4samaaBaaaleaaca WGRbGaamyAaaqabaGccaWG1bWaaSbaaSqaaiaadMgaaeqaaaqaaiaa dMgacqGH9aqpcaaIXaaabaGaaGOmaiaad6eaa0GaeyyeIuoakiabgU caRmaalaaabaGaaGymaaqaaiaaikdaaaWaaabCaeaacaWG1bWaaSba aSqaaiaadQgaaeqaaOGaam4samaaBaaaleaacaWGRbGaamOAaaqaba aabaGaamOAaiabg2da9iaaigdaaeaacaaIYaGaamOtaaqdcqGHris5 aOGaeyOeI0IaamOCamaaBaaaleaacaWGRbaabeaaaOqaaiaaykW7ca aMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaa ykW7caaMc8Uaeyypa0ZaaabCaeaacaWGlbWaaSbaaSqaaiaadUgaca WGPbaabeaakiaadwhadaWgaaWcbaGaamyAaaqabaaabaGaamyAaiab g2da9iaaigdaaeaacaaIYaGaamOtaaqdcqGHris5aOGaeyOeI0Iaam OCamaaBaaaleaacaWGRbaabeaakiabg2da9iaaicdaaeaacqGHshI3 caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVlaaykW7caaMc8UaaGPaVl aaykW7daWadaqaaiaadUeaaiaawUfacaGLDbaadaadaaqaaiaadwha aaGaeyypa0ZaaWaaaeaacaWGYbaaaaaaaa@8D90@

This is a system of 2N simultaneous linear equations for the 2N unknown nodal displacements.  Standard computational techniques such as Gaussian elimination, Cholesky factorization or conjugate gradient methods may be used to solve the system of equations.

 

 

 

7.2.10 Eliminating prescribed displacements

 

So far, we have seen how to calculate displacements in a finite element mesh which is subjected to prescribed loading.  What if displacements are prescribed instead?

 

If this is the case, the stiffness matrix and residual are first assembled exactly as described in the preceding section.  They are then modified to enforce the constraint.  The procedure is best illustrated using an example. Suppose that the finite element equations after assembly have the form

[ k 11 k 12 k 12N k 21 k 22 k 22N k 2N1 k 2N2 k 2N2N ][ u 1 (1) u 2 (1) u 2 (N) ]=[ r 1 r 2 r 4 ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaqbaeqabqabaaaaaeaacaWGRb WaaSbaaSqaaiaaigdacaaIXaaabeaaaOqaaiaadUgadaWgaaWcbaGa aGymaiaaikdaaeqaaaGcbaGaeS47IWeabaGaam4AamaaBaaaleaaca aIXaGaaGOmaiaad6eaaeqaaaGcbaGaam4AamaaBaaaleaacaaIYaGa aGymaaqabaaakeaacaWGRbWaaSbaaSqaaiaaikdacaaIYaaabeaaaO qaaaqaaiaadUgadaWgaaWcbaGaaGOmaiaaikdacaWGobaabeaaaOqa aiabl6UinbqaaaqaaiablgVipbqaaaqaaiaadUgadaWgaaWcbaGaaG Omaiaad6eacaaIXaaabeaaaOqaaiaadUgadaWgaaWcbaGaaGOmaiaa d6eacaaIYaaabeaaaOqaaaqaaiaadUgadaWgaaWcbaGaaGOmaiaad6 eacaaIYaGaamOtaaqabaaaaaGccaGLBbGaayzxaaWaamWaaeaafaqa beabbaaaaeaacaWG1bWaa0baaSqaaiaaigdaaeaacaGGOaGaaGymai aacMcaaaaakeaacaWG1bWaa0baaSqaaiaaikdaaeaacaGGOaGaaGym aiaacMcaaaaakeaacqWIUlstaeaacaWG1bWaa0baaSqaaiaaikdaae aacaGGOaGaamOtaiaacMcaaaaaaaGccaGLBbGaayzxaaGaeyypa0Za amWaaeaafaqabeabbaaaaeaacaWGYbWaaSbaaSqaaiaaigdaaeqaaa GcbaGaamOCamaaBaaaleaacaaIYaaabeaaaOqaaiabl6Uinbqaaiaa dkhadaWgaaWcbaGaaGinaaqabaaaaaGccaGLBbGaayzxaaaaaa@6F80@

To prescribe displacements for any node, we simply replace the equation for the appropriate degrees of freedom with the constraint.  For example, to force u 2 (1) =Δ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadwhadaqhaaWcbaGaaGOmaaqaaiaacI cacaaIXaGaaiykaaaakiabg2da9iabfs5aebaa@36D4@ , we could modify the finite element equations to

[ k 11 k 12 k 12N 0 1 0 k 2N1 k 2N2 k 2N2N ][ u 1 (1) u 2 (1) u 2 (N) ]=[ r 1 Δ r 4 ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaqbaeqabqabaaaaaeaacaWGRb WaaSbaaSqaaiaaigdacaaIXaaabeaaaOqaaiaadUgadaWgaaWcbaGa aGymaiaaikdaaeqaaaGcbaGaeS47IWeabaGaam4AamaaBaaaleaaca aIXaGaaGPaVlaaykW7caaIYaGaamOtaaqabaaakeaacaaIWaaabaGa aGymaaqaaaqaaiaaicdaaeaacqWIUlstaeaaaeaacqWIXlYtaeaaae aacaWGRbWaaSbaaSqaaiaaikdacaWGobGaaGPaVlaaykW7caaIXaaa beaaaOqaaiaadUgadaWgaaWcbaGaaGOmaiaad6eacaaMc8UaaGPaVl aaikdaaeqaaaGcbaaabaGaam4AamaaBaaaleaacaaIYaGaamOtaiaa ykW7caaMc8UaaGOmaiaad6eaaeqaaaaaaOGaay5waiaaw2faamaadm aabaqbaeqabqqaaaaabaGaamyDamaaDaaaleaacaaIXaaabaGaaiik aiaaigdacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIYaaabaGaai ikaiaaigdacaGGPaaaaaGcbaGaeSO7I0eabaGaamyDamaaDaaaleaa caaIYaaabaGaaiikaiaad6eacaGGPaaaaaaaaOGaay5waiaaw2faai abg2da9maadmaabaqbaeqabqqaaaaabaGaamOCamaaBaaaleaacaaI XaaabeaaaOqaaiabfs5aebqaaiabl6UinbqaaiaadkhadaWgaaWcba GaaGinaaqabaaaaaGccaGLBbGaayzxaaaaaa@74D8@

Thus, the equation for u 2 (1) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadwhadaqhaaWcbaGaaGOmaaqaaiaacI cacaaIXaGaaiykaaaaaaa@345E@  has been replaced with the constraint u 2 (1) =Δ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaadwhadaqhaaWcbaGaaGOmaaqaaiaacI cacaaIXaGaaiykaaaakiabg2da9iabfs5aebaa@36D4@ .

 

This procedure works, but has the disadvantage that the modified stiffness matrix is no longer symmetric.  It is preferable to modify the stiffness and residual further, to retain symmetry.  To do so, we eliminate the constrained degrees of freedom from all rows of the stiffness matrix. This is best illustrated by example.  Suppose our modified stiffness matrix has the form

[ k 11 k 12 k 12N 0 1 0 k 2N1 k 2N2 k 2N2N ][ u 1 (1) u 2 (1) u 2 (N) ]=[ r 1 Δ r 4 ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaqbaeqabqabaaaaaeaacaWGRb WaaSbaaSqaaiaaigdacaaIXaaabeaaaOqaaiaadUgadaWgaaWcbaGa aGymaiaaikdaaeqaaaGcbaGaeS47IWeabaGaam4AamaaBaaaleaaca aIXaGaaGPaVlaaykW7caaIYaGaamOtaaqabaaakeaacaaIWaaabaGa aGymaaqaaaqaaiaaicdaaeaacqWIUlstaeaaaeaacqWIXlYtaeaaae aacaWGRbWaaSbaaSqaaiaaikdacaWGobGaaGPaVlaaykW7caaIXaaa beaaaOqaaiaadUgadaWgaaWcbaGaaGOmaiaad6eacaaMc8UaaGPaVl aaikdaaeqaaaGcbaaabaGaam4AamaaBaaaleaacaaIYaGaamOtaiaa ykW7caaMc8UaaGOmaiaad6eaaeqaaaaaaOGaay5waiaaw2faamaadm aabaqbaeqabqqaaaaabaGaamyDamaaDaaaleaacaaIXaaabaGaaiik aiaaigdacaGGPaaaaaGcbaGaamyDamaaDaaaleaacaaIYaaabaGaai ikaiaaigdacaGGPaaaaaGcbaGaeSO7I0eabaGaamyDamaaDaaaleaa caaIYaaabaGaaiikaiaad6eacaGGPaaaaaaaaOGaay5waiaaw2faai abg2da9maadmaabaqbaeqabqqaaaaabaGaamOCamaaBaaaleaacaaI XaaabeaaaOqaaiabfs5aebqaaiabl6UinbqaaiaadkhadaWgaaWcba GaaGinaaqabaaaaaGccaGLBbGaayzxaaaaaa@74D8@

Now, we wish to set each entry in the second column (apart from the diagonal) to zero, so that the stiffness is symmetric.  Recall that we can add and subtract equations in the system from one another without affecting the solution.  Therefore, to symmetrize the stiffness matrix in our example, we can subtract appropriate multiples of the second row so as to set each entry in the second column to zero.

[ k 11 0 k 12N 0 1 0 k 2N1 0 k 2N2N ][ u 1 (1) u 2 (1) u 2 (N) ]=[ r 1 k 12 Δ Δ r 4 k 2N2 Δ ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaqbaeqabqabaaaaaeaacaWGRb WaaSbaaSqaaiaaigdacaaIXaaabeaaaOqaaiaaicdaaeaacqWIVlct aeaacaWGRbWaaSbaaSqaaiaaigdacaaMc8UaaGPaVlaaykW7caaIYa GaamOtaaqabaaakeaacaaIWaaabaGaaGymaaqaaaqaaiaaicdaaeaa cqWIUlstaeaaaeaacqWIXlYtaeaaaeaacaWGRbWaaSbaaSqaaiaaik dacaWGobGaaGPaVlaaykW7caaMc8UaaGymaaqabaaakeaacaaIWaaa baaabaGaam4AamaaBaaaleaacaaIYaGaamOtaiaaykW7caaMc8UaaG PaVlaaikdacaWGobaabeaaaaaakiaawUfacaGLDbaadaWadaqaauaa beqaeeaaaaqaaiaadwhadaqhaaWcbaGaaGymaaqaaiaacIcacaaIXa GaaiykaaaaaOqaaiaadwhadaqhaaWcbaGaaGOmaaqaaiaacIcacaaI XaGaaiykaaaaaOqaaiabl6UinbqaaiaadwhadaqhaaWcbaGaaGOmaa qaaiaacIcacaWGobGaaiykaaaaaaaakiaawUfacaGLDbaacqGH9aqp daWadaqaauaabeqaeeaaaaqaaiaadkhadaWgaaWcbaGaaGymaaqaba GccqGHsislcaWGRbWaaSbaaSqaaiaaigdacaaIYaaabeaakiabfs5a ebqaaiabfs5aebqaaiabl6UinbqaaiaadkhadaWgaaWcbaGaaGinaa qabaGccqGHsislcaWGRbWaaSbaaSqaaiaaikdacaWGobGaaGPaVlaa ykW7caaMc8UaaGOmaaqabaGccqqHuoaraaaacaGLBbGaayzxaaaaaa@811E@

 

 

7.2.11 Solution

 

The result of Sections 7.2.1-7.2.10 is a set of simultaneous linear equations of the form

[ K mod ] u _ = r _ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaadmaabaGaam4samaaCaaaleqabaGaci yBaiaac+gacaGGKbaaaaGccaGLBbGaayzxaaWaaWaaaeaacaWG1baa aiabg2da9maamaaabaGaamOCaaaaaaa@3945@

These can be solved for the unknown displacements u _ MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8skY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaamaaabaGaamyDaaaaaaa@3182@  using standard techniques (e.g. Gaussian elimination or iterative techniques).  An important feature of the FEM equations is that the stiffness matrix is sparse MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiFKI8=feu0dXdh9vqqj=hEeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaGqaaKqzGfaeaa aaaaaaa8qacaWFtacaaa@37E6@  that is to say, only a small number of entries in the matrix are non-zero.  Consequently, special schemes are used to store and factor the equations, which avoid having to store large numbers of zeros. 

 

 

7.2.12 Post-processing

 

Once the displacements have been computed, the strain in each element can be computed, and so the stress distribution can be deduced.  The procedure is as follows

1.      For the element of interest, extract the displacement of each node from the global displacement vector

2.      Calculate the strains using the procedure in 7.2.4

ε _ =[ B ] u _ element [ ε 11 ε 22 2 ε 12 ]=[ N a x 1 0 N b x 1 0 N c x 1 0 0 N a x 2 0 N b x 2 0 N c x 2 N a x 2 N a x 1 N b x 2 N b x 1 N c x 2 N c x 1 ][ u 1 (a) u 2 (a) u 1 (b) u 2 (b) u 1 (c) u 2 (c) ] MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaamaaabaGaeqyTdugaaiabg2da9maadm aabaGaamOqaaGaay5waiaaw2faamaamaaabaGaamyDaaaadaahaaWc beqaaiaabwgacaqGSbGaaeyzaiaab2gacaqGLbGaaeOBaiaabshaaa GccaaMc8UaaGPaVlaaykW7caaMc8UaeyyyIORaaGPaVlaaykW7caaM c8UaaGPaVpaadmaabaqbaeqabmqaaaqaaiabew7aLnaaBaaaleaaca aIXaGaaGymaaqabaaakeaacqaH1oqzdaWgaaWcbaGaaGOmaiaaikda aeqaaaGcbaGaaGOmaiabew7aLnaaBaaaleaacaaIXaGaaGOmaaqaba aaaaGccaGLBbGaayzxaaGaeyypa0ZaamWaaeaafaqabeWagaaaaeaa daWcaaqaaiabgkGi2kaad6eadaWgaaWcbaGaamyyaaqabaaakeaacq GHciITcaWG4bWaaSbaaSqaaiaaigdaaeqaaaaaaOqaaiaaicdaaeaa daWcaaqaaiabgkGi2kaad6eadaWgaaWcbaGaamOyaaqabaaakeaacq GHciITcaWG4bWaaSbaaSqaaiaaigdaaeqaaaaaaOqaaiaaicdaaeaa daWcaaqaaiabgkGi2kaad6eadaWgaaWcbaGaam4yaaqabaaakeaacq GHciITcaWG4bWaaSbaaSqaaiaaigdaaeqaaaaaaOqaaiaaicdaaeaa caaIWaaabaWaaSaaaeaacqGHciITcaWGobWaaSbaaSqaaiaadggaae qaaaGcbaGaeyOaIyRaamiEamaaBaaaleaacaaIYaaabeaaaaaakeaa caaIWaaabaWaaSaaaeaacqGHciITcaWGobWaaSbaaSqaaiaadkgaae qaaaGcbaGaeyOaIyRaamiEamaaBaaaleaacaaIYaaabeaaaaaakeaa caaIWaaabaWaaSaaaeaacqGHciITcaWGobWaaSbaaSqaaiaadogaae qaaaGcbaGaeyOaIyRaamiEamaaBaaaleaacaaIYaaabeaaaaaakeaa daWcaaqaaiabgkGi2kaad6eadaWgaaWcbaGaamyyaaqabaaakeaacq GHciITcaWG4bWaaSbaaSqaaiaaikdaaeqaaaaaaOqaamaalaaabaGa eyOaIyRaamOtamaaBaaaleaacaWGHbaabeaaaOqaaiabgkGi2kaadI hadaWgaaWcbaGaaGymaaqabaaaaaGcbaWaaSaaaeaacqGHciITcaWG obWaaSbaaSqaaiaadkgaaeqaaaGcbaGaeyOaIyRaamiEamaaBaaale aacaaIYaaabeaaaaaakeaadaWcaaqaaiabgkGi2kaad6eadaWgaaWc baGaamOyaaqabaaakeaacqGHciITcaWG4bWaaSbaaSqaaiaaigdaae qaaaaaaOqaamaalaaabaGaeyOaIyRaamOtamaaBaaaleaacaWGJbaa beaaaOqaaiabgkGi2kaadIhadaWgaaWcbaGaaGOmaaqabaaaaaGcba WaaSaaaeaacqGHciITcaWGobWaaSbaaSqaaiaadogaaeqaaaGcbaGa eyOaIyRaamiEamaaBaaaleaacaaIXaaabeaaaaaaaaGccaGLBbGaay zxaaWaamWaaeaafaqabeGbbaaaaeaacaWG1bWaa0baaSqaaiaaigda aeaacaGGOaGaamyyaiaacMcaaaaakeaacaWG1bWaa0baaSqaaiaaik daaeaacaGGOaGaamyyaiaacMcaaaaakeaacaWG1bWaa0baaSqaaiaa igdaaeaacaGGOaGaamOyaiaacMcaaaaakeaacaWG1bWaa0baaSqaai aaikdaaeaacaGGOaGaamOyaiaacMcaaaaakeaacaWG1bWaa0baaSqa aiaaigdaaeaacaGGOaGaam4yaiaacMcaaaaakeaacaWG1bWaa0baaS qaaiaaikdaaeaacaGGOaGaam4yaiaacMcaaaaaaaGccaGLBbGaayzx aaaaaa@CBBE@

3.      The stresses can then be determined from the stress-strain equations

σ _ =[ D ] ε _ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaamaamaaabaGaeq4Wdmhaaiabg2da9maadm aabaGaamiraaGaay5waiaaw2faamaamaaabaGaeqyTdugaaiaaykW7 caaMc8oaaa@3AC8@

where [D] MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8rkY=vi pgYlH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFH e9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr0=vqpWqaaeaabiGaciaa caqabeaacmqaamaaaOqaaiaacUfacaWGebGaaiyxaaaa@32F1@  is defined in 7.2.4.

 

 

 

7.2.13 Example FEA code

 

A simple implementation of the procedure is provided in the file FEM_conststrain_mws.

 

The code reads an input file.  A very simple input file (with just two elements) can be found in FEM_conststrain_input.txt.

 

The data file solves the problem illustrated in the picture.  A rectangular block with Young’s modulus 100 and Poisson’s ratio 0.3 is meshed with two elements.  Node 1 is pinned; node 4 is constrained against horizontal motion, and the right hand face of element 2 is subjected to a constant horizontal traction with magnitude 10. 


The input file is shown below MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiFKI8=feu0dXdh9vqqj=hEeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaGqaaKqzGfaeaa aaaaaaa8qacaWFtacaaa@37E6@  it should be mostly self-explanatory. 

 

Note that

 

Material_Props:

    Young's_modulus:   100.

    Poissons_ratio:  0.3

No._nodes:             4

Nodal_coords:

    0.0   0.0

    1.0   0.0

    1.0   1.0

    0.0   1.0

No._elements:                    2

Element_connectivity:

    1 2 4

    2 3 4

No._nodes_with_prescribed_DOFs:  3

Node_#, DOF#, Value:

   1 1 0.0

   1 2 0.0

   4 1 0.0

No._elements_with_prescribed_loads: 1

Element_#, Face_#, Traction_components

  2 1 10.0 0.0

 

1.      Nodes are numbered sequentially MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiFKI8=feu0dXdh9vqqj=hEeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaciaacaqabeaadaqaaqaaaOqaaGqaaKqzGfaeaa aaaaaaa8qacaWFtacaaa@37E6@  thus node (1) has coordinates (0,0); node (2) has coordinates (1,0), etc.

 

2.      The element connectivity specifies the node numbers attached to each element, using a counterclockwise numbering convention.  It doesn’t matter which node you use for the first one, as long as all the others are ordered in a counterclockwise sense around the element. For example, you could use (2,4,1) instead of (1,2,4) for the connectivity of the first element.

 

3.      To fix motion of a node, you need to enter the node number, the degree of freedom that is being constrained,  (1 for horizontal, 2 for vertical), and a value for the prescribed displacement.

 

4.      To specify tractions acting on an element face, you need to enter (a) the element number; (b) the face number of the element, and (c,d) the horizontal and vertical components of traction acting on the face.  The face numbering scheme is determined by the element connectivity, as follows.  Face (1) has the first and second nodes as end points; face (2) has the second and third nodes; and face (3) has the third and first nodes as end points.  Since connectivity for element (2) was entered as (2,3,4), face 1 of this element has nodes numbered 2 and 3; face 2 connects nodes numbered 3 and 4, while face 3 connects nodes numbered 4 and 1.

 

To run the code, you need to open the .mws file with Maple, then follow these steps:

1.      Edit the code to insert the full path for the input file in the line near the top of the code that reads

> # Change the name of the file below to point to your input file

> infile :=fopen(`insert full path of input file `,READ):

 

2.      Scroll down near the bottom to the line that reads

> # Print nodal displacements, element strains and stresses to a file

>    outfile := fopen(`insert full path of output file``,WRITE):

and enter a name for the output file.

 

3.      Return to the top of the file, and press <enter> to execute each MAPLE block. If all goes well, you should see that, after reading the input data, MAPLE plots the mesh (just as a check). 

 

4.      If you continue to the end, you should see a plot of the displaced mesh (red) superimposed on the original mesh (green), as shown below.

 

5.      Finally, open the output file.  It should contain the results shown below

 

Nodal Displacements:

Node    u1       u2

1   0.0000   0.0000

2    .0910    .0000

3    .0910   -.0390

4   0.0000   -.0390

 

Strains and Stresses

Element   e_11      e_22     e_12      s_11       s_22      s_12

1     .0910    -.0390     .0000   10.0000    -.0000     .0000

2     .0910    -.0390     .0000   10.0000     .0000     .0000