m_hyper
Purpose
Material function for hyperelastic solids.
Syntax
mat= m_hyper('default')
mat= m_hyper('database name')
pl = m_hyper('dbval MatId name');
pl = m_hyper('dbval -unit TM MatId name');
Description
Function based on m_elastic function adapted for hyperelastic material. Only subtype 1 is currently used:
1 : Nominal hyperelastic material
Nominal hyperelastic materials are described by a row of the form
[MatID typ rho Wtype C_1 C_2 K]
with typ an identifier generated with the fe_mat('m_hyper','SI',1) command, rho (density), Wtype (value for Energy choice), C1, C2, K (energy coefficients).
Possible values for Wtype are:
| 0: |
W = C1(J1-3) + C2(J2-3) + K(J3-1)2 |
| 1: |
W = C1(J1-3) + C2(J2-3) + K(J3-1) - (C1 + 2C2 + K)ln(J3) |
Other energy functions can be added by editing the hyper.c Enpassiv function.
In RivlinCube test, m_hyper is called in this form:
model.pl=m_hyper('dbval 100 Ref'); % this is where the material is defined
the hyperelastic material called ``Ref'' is described in the database of m_hyper.m file:
out.pl=[MatId fe_mat('type','m_hyper','SI',1) 1e-06 0 .3 .2 .3];
out.name='Ref';
out.type='m_hyper';
out.unit='SI';
Here is an example to set your material property for a given structure model:
model.pl = [MatID fe_mat('m_hyper','SI',1) typ rho Wtype C_1 C_2 K];
model.Elt(2:end,length(feval(ElemF,'node')+1)) = MatID;
©1991-2007 by SDTools