OptFEM2DP1 Toolbox  V1.2b3
Matlab/Octave Optimized P1-Lagrange Finite Element Method in 2D
 All Files Functions Pages
validStiffElasP1.m File Reference

Validation function for the Assembly of the Stiffness Elasticity Matrix for $P_1$-Lagrange finite elements. More...

Go to the source code of this file.

Functions

function  validStiffElasP1 (Num)
 Validation function for the Assembly of the Stiffness Elasticity Matrix for $P_1$-Lagrange finite elements.
 
function  validStiffElasP1>checkTest1 (Test)
 
function  validStiffElasP1>checkTest2 (Test)
 
function  validStiffElasP1>checkTest3 (h, error)
 

Detailed Description

Validation function for the Assembly of the Stiffness Elasticity Matrix for $P_1$-Lagrange finite elements.

Definition in file validStiffElasP1.m.

Function Documentation

function validStiffElasP1>checkTest1 (   Test)

Definition at line 190 of file validStiffElasP1.m.

function validStiffElasP1>checkTest2 (   Test)

Definition at line 205 of file validStiffElasP1.m.

function validStiffElasP1>checkTest3 (   h,
  error 
)

Definition at line 228 of file validStiffElasP1.m.

function validStiffElasP1 (   Num)

Validation function for the Assembly of the Stiffness Elasticity Matrix for $P_1$-Lagrange finite elements.

The Stiffness Elasticity Matrix is given by

\[\StiffElas_{m,l}=\int_{\DOMH} \Odv^t(\BasisFuncTwoD_m) \Ocv(\BasisFuncTwoD_l)dT, \ \forall (m,l)\in\ENS{1}{2\,\nq}^2,\]

where $\BasisFuncTwoD_m$ are $P_1$-Lagrange vector basis functions. Here $\Ocv=(\Occ_{xx},\Occ_{yy},\Occ_{xy})^t$ and $\Odv=(\Odc_{xx},\Odc_{yy},2\Odc_{xy})^t$ are the elastic stress and strain tensors respectively.

This Matrix is computed by functions StiffElasAssemblingP1{Version} where {Version} is one of base, OptV0, OptV1 and OptV2.

  • Test 1: computation of the Elastic Stiffness Matrix using previous functions giving errors and computation times
  • Test 2: compute

    \[\int_\DOM \Odv^t(\vecb{u}) \Ocv(\vecb{v})d\q \approx \DOT{\StiffElas \vecb{U}}{\vecb{V}}\]

    with $\foncdefsmall{\vecb{u}=(u_1,u_2)}{\DOM}{\R^2}$ and $\foncdefsmall{\vecb{v}=(v_1,v_2)}{\DOM}{\R^2}$. We have $\vecb{U}_{2i-1}=u_1(\q^i),$ $\vecb{U}_{2i}=u_2(\q^i),$ $\vecb{V}_{2i-1}=v_1(\q^i),$ $\vecb{V}_{2i}=v_2(\q^i)$ if Num in {0,2} and $\vecb{U}_{i}=u_1(\q^i),$ $\vecb{U}_{i+\nq}=u_2(\q^i),$ $\vecb{V}_{i}=v_1(\q^i),$ $\vecb{V}_{i+\nq}=v_2(\q^i)$ if Num in {1,3}. Use functions $\vecb{u}$ and $\vecb{u}$ defined in valid_StiffElas.
  • Test 3: retrieve order 2 of $P_1$-Lagrange integration

    \[|\int_\DOM \Odv^t(\vecb{u}) \Ocv(\vecb{v})d\q - \DOT{\StiffElas \vecb{U}}{\vecb{V}}| \leq C h^2\]

Num
  • 0 global alternate numbering with local alternate numbering (classical method),
  • 1 global block numbering with local alternate numbering,
  • 2 global alternate numbering with local block numbering,
  • 3 global block numbering with local block numbering.
See Also
StiffElasAssemblingP1base, StiffElasAssemblingP1OptV0, StiffElasAssemblingP1OptV1, StiffElasAssemblingP1OptV2, SquareMesh
Author
François Cuvelier
Date
2012-11-26
Copyright
See License issues

Definition at line 17 of file validStiffElasP1.m.