Table of contents

Basis functions

1D

For ξ[0,1]\xi \in \left\lbrack 0,1\right\rbrack

Linear

phi = @(xi)[1-xi, xi];
dphi = [-1, 1];

Quadratic

phi = @(xi)[2*(xi-1).*(xi-1/2), -4*xi.*(xi-1), 2*xi.*(xi-1/2)];
dphi = @(xi)[4*xi-3, 4-8*xi, 4*xi-1];

2D Triangles

For ξ,η[0,1]\xi ,\eta \in \left\lbrack 0,1\right\rbrack

Linear

phi = @(xi,eta)[1-xi-eta, xi, eta];
Bh = @(xi,eta)[-1,1,0
               -1,0,1];

Quadratic

phi = @(xi,eta)[eta.*-3.0-xi.*3.0+eta.*xi.*4.0+eta.^2.*2.0+xi.^2.*2.0+1.0,xi.*(xi.*2.0-1.0),eta.*(eta.*2.0-1.0),xi.*(eta+xi-1.0).*-4.0,eta.*xi.*4.0,eta.*(eta+xi-1.0).*-4.0];
Bh =  @(xi,eta)reshape([eta.*4.0+xi.*4.0-3.0,eta.*4.0+xi.*4.0-3.0,xi.*4.0-1.0,0.0,0.0,eta.*4.0-1.0,eta.*-4.0-xi.*8.0+4.0,xi.*-4.0,eta.*4.0,xi.*4.0,eta.*-4.0,eta.*-8.0-xi.*4.0+4.0],[2,6]);

2D Quads

Bi-linear

phi = @(xi,eta)[(eta-1.0).*(xi-1.0),-xi.*(eta-1.0),eta.*xi,-eta.*(xi-1.0)];
Bh = @(xi,eta)[eta-1, 1-eta, eta, -eta;
               xi-1,  -xi,   xi,  1-xi ];

Bi-quadratic

phi = @(xi,eta)[(eta.*-3.0+eta.^2.*2.0+1.0).*(xi.*-3.0+xi.^2.*2.0+1.0),xi.*(xi.*2.0-1.0).*(eta.*-3.0+eta.^2.*2.0+1.0),eta.*xi.*(eta.*2.0-1.0).*(xi.*2.0-1.0),eta.*(eta.*2.0-1.0).*(xi.*-3.0+xi.^2.*2.0+1.0),xi.*(xi-1.0).*(eta.*-3.0+eta.^2.*2.0+1.0).*-4.0,eta.*xi.*(xi.*2.0-1.0).*(eta-1.0).*-4.0,eta.*xi.*(eta.*2.0-1.0).*(xi-1.0).*-4.0,eta.*(eta-1.0).*(xi.*-3.0+xi.^2.*2.0+1.0).*-4.0,eta.*xi.*(eta-1.0).*(xi-1.0).*1.6e1];
Bh = @(eta,xi)reshape([(xi.*4.0-3.0).*(eta.*-3.0+eta.^2.*2.0+1.0),(eta.*4.0-3.0).*(xi.*-3.0+xi.^2.*2.0+1.0),xi.*(eta.*-3.0+eta.^2.*2.0+1.0).*2.0+(xi.*2.0-1.0).*(eta.*-3.0+eta.^2.*2.0+1.0),xi.*(eta.*4.0-3.0).*(xi.*2.0-1.0),eta.*(eta.*2.0-1.0).*(xi.*2.0-1.0)+eta.*xi.*(eta.*2.0-1.0).*2.0,xi.*(eta.*2.0-1.0).*(xi.*2.0-1.0)+eta.*xi.*(xi.*2.0-1.0).*2.0,eta.*(eta.*2.0-1.0).*(xi.*4.0-3.0),eta.*(xi.*-3.0+xi.^2.*2.0+1.0).*2.0+(eta.*2.0-1.0).*(xi.*-3.0+xi.^2.*2.0+1.0),xi.*(eta.*-3.0+eta.^2.*2.0+1.0).*-4.0-(xi-1.0).*(eta.*-3.0+eta.^2.*2.0+1.0).*4.0,xi.*(eta.*4.0-3.0).*(xi-1.0).*-4.0,eta.*xi.*(eta-1.0).*-8.0-eta.*(xi.*2.0-1.0).*(eta-1.0).*4.0,eta.*xi.*(xi.*2.0-1.0).*-4.0-xi.*(xi.*2.0-1.0).*(eta-1.0).*4.0,eta.*xi.*(eta.*2.0-1.0).*-4.0-eta.*(eta.*2.0-1.0).*(xi-1.0).*4.0,eta.*xi.*(xi-1.0).*-8.0-xi.*(eta.*2.0-1.0).*(xi-1.0).*4.0,eta.*(xi.*4.0-3.0).*(eta-1.0).*-4.0,eta.*(xi.*-3.0+xi.^2.*2.0+1.0).*-4.0-(eta-1.0).*(xi.*-3.0+xi.^2.*2.0+1.0).*4.0,eta.*xi.*(eta-1.0).*1.6e1+eta.*(eta-1.0).*(xi-1.0).*1.6e1,eta.*xi.*(xi-1.0).*1.6e1+xi.*(eta-1.0).*(xi-1.0).*1.6e1],[2,9]);