OptFEM2DP1 Toolbox  V1.2
Matlab/Octave Optimized P1-Lagrange Finite Element Method in 2D
valid/validStiffElas2DP1.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  validStiffElas2DP1 (Num)
 Validation function for the Assembly of the Stiffness Elasticity Matrix for $P_1$-Lagrange finite elements.
function  validStiffElas2DP1>checkTest1 (Test)
function  validStiffElas2DP1>checkTest2 (Test)
function  validStiffElas2DP1>checkTest3 (h, error)

Detailed Description

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

Definition in file validStiffElas2DP1.m.


Function Documentation

function validStiffElas2DP1>checkTest1 (   Test)

Definition at line 190 of file validStiffElas2DP1.m.

function validStiffElas2DP1>checkTest2 (   Test)

Definition at line 205 of file validStiffElas2DP1.m.

function validStiffElas2DP1>checkTest3 (   h,
  error 
)

Definition at line 228 of file validStiffElas2DP1.m.

function validStiffElas2DP1 (   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 StiffElasAssembling2DP1{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:
StiffElasAssembling2DP1base, StiffElasAssembling2DP1OptV0, StiffElasAssembling2DP1OptV1, StiffElasAssembling2DP1OptV2, SquareMesh
Author:
François Cuvelier
Date:
2012-11-26
Copyright
See License issues

Definition at line 17 of file validStiffElas2DP1.m.

 All Files Functions