getfem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Getfem-commits] r4713 - /trunk/getfem/doc/sphinx/source/userdoc/model_n


From: logari81
Subject: [Getfem-commits] r4713 - /trunk/getfem/doc/sphinx/source/userdoc/model_nonlinear_elasticity.rst
Date: Thu, 10 Jul 2014 21:06:08 -0000

Author: logari81
Date: Thu Jul 10 23:06:08 2014
New Revision: 4713

URL: http://svn.gna.org/viewcvs/getfem?rev=4713&view=rev
Log:
minor corrections in the documentation

Modified:
    trunk/getfem/doc/sphinx/source/userdoc/model_nonlinear_elasticity.rst

Modified: trunk/getfem/doc/sphinx/source/userdoc/model_nonlinear_elasticity.rst
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/doc/sphinx/source/userdoc/model_nonlinear_elasticity.rst?rev=4713&r1=4712&r2=4713&view=diff
==============================================================================
--- trunk/getfem/doc/sphinx/source/userdoc/model_nonlinear_elasticity.rst       
(original)
+++ trunk/getfem/doc/sphinx/source/userdoc/model_nonlinear_elasticity.rst       
Thu Jul 10 23:06:08 2014
@@ -345,9 +345,9 @@
 High-level generic assembly versions
 ++++++++++++++++++++++++++++++++++++
 
-The high-level generic assembly langage give access to the potential and 
constitutive laws of the hyperelastic constitutive laws implemented in |gf|. 
This allows to directly use them into the language, for instance using a 
generic assembly brick in a model or for interpolation of certain quantities 
(the stress for instance).
-
-Here is the list of Langage nonlinear operator which could be usefull for 
nonlinear elasticity::
+The high-level generic assembly language gives access to the hyperelastic 
potential and constitutive laws implemented in |gf|. This allows to directly 
use them in the language, for instance using a generic assembly brick in a 
model or for interpolation of certain quantities (the stress for instance).
+
+Here is the list of nonlinear operators in the language which can be useful 
for nonlinear elasticity::
 
   Det(M)                                % determinant of the matrix M
   Trace(M)                              % trace of the matrix M
@@ -374,11 +374,11 @@
   Incompressible_Neo_Hookean_potential(Grad_u, [c1])
   Plane_Strain_Incompressible_Neo_Hookean_potential(Grad_u, [c1])
   Compressible_Neo_Hookean_potential(Grad_u, [c1;d1])
-  Plane_Strain_Compressible_Neo_Hookean_potential(Grad_u,  [c1;d1])
-  Compressible_Neo_Hookean_Bonet_potential(Grad_u,  [lambda;mu])
-  Plane_Strain_Compressible_Neo_Hookean_Bonet_potential(Grad_u,  [lambda;mu])
-  Compressible_Neo_Hookean_Ciarlet_potential(Grad_u,  [lambda;mu])
-  Plane_Strain_Compressible_Neo_Hookean_Ciarlet_potential(Grad_u,  [lambda;mu])
+  Plane_Strain_Compressible_Neo_Hookean_potential(Grad_u, [c1;d1])
+  Compressible_Neo_Hookean_Bonet_potential(Grad_u, [lambda;mu])
+  Plane_Strain_Compressible_Neo_Hookean_Bonet_potential(Grad_u, [lambda;mu])
+  Compressible_Neo_Hookean_Ciarlet_potential(Grad_u, [lambda;mu])
+  Plane_Strain_Compressible_Neo_Hookean_Ciarlet_potential(Grad_u, [lambda;mu])
 
 
 The second Piola-Kirchoff stress tensors::
@@ -395,32 +395,36 @@
   Plane_Strain_Compressible_Mooney_Rivlin_sigma(Grad_u, [c1;c2;d1])
   Incompressible_Neo_Hookean_sigma(Grad_u, [c1])
   Plane_Strain_Incompressible_Neo_Hookean_sigma(Grad_u, [c1])
-  Compressible_Neo_Hookean_sigma(Grad_u,  [lambda;mu])
-  Plane_Strain_Compressible_Neo_Hookean_sigma(Grad_u,  [lambda;mu])
-
-
-Note that for the derivative with respect to the parameters has not been 
implemented apart for the Saint Venant Kirchhoff hyperelastic law. So that it 
is not possible to make the parameter depend on other variables of a model 
(derivatives are not necessary complicated to implement but for the moment, 
only a wrapper with old implementations has been written).
-
-Note that the coupling of models it to be done at the weak formulation level. 
In a general way, it is recommended not to use the potential to define a 
problem. Two reasons are first that the second order derivative of the 
potential  (necessary to obtain the tangent system) can be very complicated and 
non-optimized and main couplings cannot be obtained at the potential level. 
Thus the use of potential should be restricted to the actual computation of the 
potential.
-
-An example of use to add a  Saint Venant-Kirchhoff hyperelastic term to a 
variable ``u`` in a model or a ga_workspace is given by the addition of the 
following assembly string::
+  Compressible_Neo_Hookean_sigma(Grad_u, [c1;d1])
+  Plane_Strain_Compressible_Neo_Hookean_sigma(Grad_u, [c1;d1])
+  Compressible_Neo_Hookean_Bonet_sigma(Grad_u, [lambda;mu])
+  Plane_Strain_Compressible_Neo_Hookean_Bonet_sigma(Grad_u, [lambda;mu])
+  Compressible_Neo_Hookean_Ciarlet_sigma(Grad_u, [lambda;mu])
+  Plane_Strain_Compressible_Neo_Hookean_Ciarlet_sigma(Grad_u, [lambda;mu])
+
+
+Note that the derivatives with respect to the material parameters have not 
been implemented apart for the Saint Venant Kirchhoff hyperelastic law. 
Therefore, it is not possible to make the parameter depend on other variables 
of a model (derivatives are not necessary complicated to implement but for the 
moment, only a wrapper with old implementations has been written).
+
+Note that the coupling of models is to be done at the weak formulation level. 
In a general way, it is recommended not to use the potential to define a 
problem. Two reasons are first that the second order derivative of the 
potential (necessary to obtain the tangent system) can be very complicated and 
non-optimized and main couplings cannot be obtained at the potential level. 
Thus the use of potential should be restricted to the actual computation of the 
potential.
+
+An example of use to add a Saint Venant-Kirchhoff hyperelastic term to a 
variable ``u`` in a model or a ga_workspace is given by the addition of the 
following assembly string::
 
   
"((Id(meshdim)+Grad_u)*(Saint_Venant_Kirchhoff_sigma(Grad_u,[lambda;mu]))):Grad_Test_u"
 
 Note that in that case, ``lambda`` and ``mu`` have to be declared data of the 
model/ga_workspace. It is of course possible to replace them by explicit 
constants or expressions depending on several data.
 
-Concerning the incompressible Mooney-Rivlin law, it has to be completed by a 
incompressibility term. For instance by adding the following incompressibility 
brick::
+Concerning the incompressible Mooney-Rivlin law, it has to be completed by an 
incompressibility term. For instance by adding the following incompressibility 
brick::
 
  ind = add_finite_strain_incompressibility_brick(md, mim, varname, multname, 
region = -1);
 
-This brick just add the term ``p*(1-Det(Id(meshdim)+Grad_u))`` if ``p`` is the 
multiplier and ``u`` the variable which represent the displacement.
-
-The addition to an hyperelastic term to a model can also be done thanks to the 
following function::
+This brick just adds the term ``p*(1-Det(Id(meshdim)+Grad_u))`` if ``p`` is 
the multiplier and ``u`` the variable which represents the displacement.
+
+The addition of an hyperelastic term to a model can also be done thanks to the 
following function::
 
   ind = add_finite_strain_elasticity_brick(md, mim, varname, lawname, params,
                                            region = size_type(-1));
 
-where ``md`` is the model, ``mim`` the integration method, ``varname`` the 
variable of the model representing the large strain displacement, ``lawname`` 
is the constitutive law name which could be ``Saint_Venant_Kirchhoff``, 
``Generalized_Blatz_Ko``, ``Ciarlet_Geymonat``, 
``Incompressible_Mooney_Rivlin``, ``Compressible_Mooney_Rivlin``, 
``Incompressible_Neo_Hookean`` or ``Compressible_Neo_Hookean``, ``params`` is a 
string representing the parameters of the law. It should represent a small 
vector or vetor field.
+where ``md`` is the model, ``mim`` the integration method, ``varname`` the 
variable of the model representing the large strain displacement, ``lawname`` 
is the constitutive law name which could be ``Saint_Venant_Kirchhoff``, 
``Generalized_Blatz_Ko``, ``Ciarlet_Geymonat``, 
``Incompressible_Mooney_Rivlin``, ``Compressible_Mooney_Rivlin``, 
``Incompressible_Neo_Hookean``, ``Compressible_Neo_Hookean``, 
``Compressible_Neo_Hookean_Bonet`` or ``Compressible_Neo_Hookean_Ciarlet``. 
``params`` is a string representing the parameters of the law defined as a 
small vector or a vector field.
 
 The Von Mises stress can be interpolated with the following function::
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]