getfem-commits
[Top][All Lists]
Advanced

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

[Getfem-commits] r4916 - in /trunk/getfem: doc/sphinx/source/ doc/sphinx


From: Yves . Renard
Subject: [Getfem-commits] r4916 - in /trunk/getfem: doc/sphinx/source/ doc/sphinx/source/userdoc/ interface/src/ interface/tests/matlab/
Date: Fri, 27 Mar 2015 13:26:08 -0000

Author: renard
Date: Fri Mar 27 14:26:07 2015
New Revision: 4916

URL: http://svn.gna.org/viewcvs/getfem?rev=4916&view=rev
Log:
Minor fixes and documentation for Mindlin plates

Added:
    trunk/getfem/doc/sphinx/source/biblio.bib
    trunk/getfem/doc/sphinx/source/userdoc/model_Mindlin_plate.rst
Modified:
    trunk/getfem/doc/sphinx/source/biblio.rst
    trunk/getfem/doc/sphinx/source/userdoc/gasm_high.rst
    trunk/getfem/doc/sphinx/source/userdoc/model.rst
    trunk/getfem/interface/src/gf_model_set.cc
    trunk/getfem/interface/tests/matlab/demo_Mindlin_Reissner_plate.m

Added: trunk/getfem/doc/sphinx/source/biblio.bib
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/doc/sphinx/source/biblio.bib?rev=4916&view=auto
==============================================================================
--- trunk/getfem/doc/sphinx/source/biblio.bib   (added)
+++ trunk/getfem/doc/sphinx/source/biblio.bib   Fri Mar 27 14:26:07 2015
@@ -0,0 +1,11 @@
+
+
+
address@hidden,
+  author =      " K.J. Bathe, E.N. Dvorkin",
+  title =       A four-node plate bending element based on Mindlin-Reissner 
plate theory and a mixed interpolation,
+  year =        "1985",
+  journal =     "Internat. J. Numer. Methods Engrg.",
+  volume =       "21",
+  pages =       "367-383",
+}

Modified: trunk/getfem/doc/sphinx/source/biblio.rst
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/doc/sphinx/source/biblio.rst?rev=4916&r1=4915&r2=4916&view=diff
==============================================================================
--- trunk/getfem/doc/sphinx/source/biblio.rst   (original)
+++ trunk/getfem/doc/sphinx/source/biblio.rst   Fri Mar 27 14:26:07 2015
@@ -13,6 +13,13 @@
 
 .. [bank1983] R.E. Bank, A.H. Sherman, A. Weiser,
    *Refinement algorithms and data structures for regular local mesh 
refinement*, in Scientific Computing IMACS, Amsterdam, North-Holland, pp 3-17, 
(1983).
+
+.. [ba-dv1985] K.J. Bathe, E.N. Dvorkin,
+   *A four-node plate bending element based on Mindlin-Reissner plate theory 
and a mixed interpolation*, Internat. J. Numer. Methods Engrg., 21 (1985), 
367-383.
+
+.. [br-ba-fo1989] F. Brezzi, K.J. Bathe, M. Fortin,
+   *Mixed-interpolated element for Reissner-Mindlin plates*, Internat. J. 
Numer. Methods Engrg., 28 (1989), 1787-1801.
+
 
 .. [ca-re-so1994] D. Calvetti, L. Reichel and D.C. Sorensen.
    *An implicitely restarted Lanczos method for large symmetric eigenvalue 
problems*. Electronic Transaction on Numerical Analysis}. 2:1-21, (1994).
@@ -31,10 +38,16 @@
    *The Finite Element Method Displayed*, J. Wiley & Sons, New York, (1984).
 
 .. [Dh-Go-Ku2003] A. Dhooge, W. Govaerts and Y. A. Kuznetsov,
-   *MATCONT: A MATLAB Package for Numerical Bifurcation Analysis of ODEs*, ACM 
Trans. Math. Software 31 (2003), 141-164.
+   *MATCONT: A MATLAB Package for Numerical Bifurcation Analysis of ODEs*,
+   ACM Trans. Math. Software 31 (2003), 141-164.
+
+.. [Duan2014] H. Duan,
+   *A finite element method for Reissner-Mindlin plates*,
+   Math. Comp., 83:286 (2014), 701-733.
 
 .. [Fa-Pa2003] F. Facchinei and J.-S. Pang,
-   *Finite-Dimensional Variational Inequalities and Complementarity Problems, 
Vol. II*, Springer Series in Operations Research, Springer, New York, 2003.
+   *Finite-Dimensional Variational Inequalities and Complementarity Problems, 
Vol. II*,
+   Springer Series in Operations Research, Springer, New York, 2003.
 
 .. [Georg2001] K. Georg,
    *Matrix-free numerical continuation and bifurcation*, Numer. Funct. Anal. 
Optimization 22 (2001), 303-320.
@@ -63,8 +76,11 @@
 .. [Li-Re2015hal] T. |ligursky| and Y. Renard,
    *A Method of Piecewise-Smooth Numerical Branching.* Submitted (2015). 
<`hal-01113564 <https://hal.archives-ouvertes.fr/hal-01113564>`_>
 
+.. [Mi-Zh2002] P. Ming and Z. Shi,
+   *Optimal L2 error bounds for MITC3 type element.* Numer. Math. 91 (2002), 
77-91.
+
 .. [Xfem] N. Moes, J. Dolbow and T. Belytschko,
-   *A finite element method for crack growth without remeshing*, Int. J. Num. 
Meth. Engng. 46 (1999), 131-150.
+   *A finite element method for crack growth without remeshing*, Internat. J. 
Numer. Methods Engrg., 46 (1999), 131-150.
 
 .. [nedelec1991] J.-C. Nedelec.
    *Notions sur les techniques d'elements finis*, Ellipses, SMAI, 
Mathematiques & Applications no 7, (1991).
@@ -76,7 +92,7 @@
    *Domain decomposition algorithms for the p-version finite element method 
for elliptic problems*, Luca F. Pavarino. PhD thesis, Courant Institute of 
Mathematical Sciences}. 1992.
 
 .. [remacle2002] J-F. Remacle, M. Shephard,
-   *An algorithm oriented database*,  Int. J. Num. Meth. Engng. 58 (2003), 
349-374.
+   *An algorithm oriented database*,  Internat. J. Numer. Methods Engrg., 58 
(2003), 349-374.
 
 .. [so-se-do2004] P. |solin|, K. Segeth, I. |dolezel| ,
    *Higher-Order Finite Element Methods*, Chapman and Hall/CRC, Studies in 
advanced mathematics, 2004.
@@ -93,3 +109,9 @@
 .. |ligursky| unicode:: Ligursk U+00FD
 .. |solin| unicode:: U+0160 ol U+00ED n 
    :rtrim:
+
+
+.. For recent sphinx version, see 
http://sphinxcontrib-bibtex.readthedocs.org/en/latest/usage.html
+   .. bibliography:: biblio.bib
+   :style: unsrt
+   :all:

Modified: trunk/getfem/doc/sphinx/source/userdoc/gasm_high.rst
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/doc/sphinx/source/userdoc/gasm_high.rst?rev=4916&r1=4915&r2=4916&view=diff
==============================================================================
--- trunk/getfem/doc/sphinx/source/userdoc/gasm_high.rst        (original)
+++ trunk/getfem/doc/sphinx/source/userdoc/gasm_high.rst        Fri Mar 27 
14:26:07 2015
@@ -663,6 +663,8 @@
 
 **CAUTION**: You have to think that when some variables are used in the 
transformation, the computation of the tangent system takes into account these 
dependence. However, the second derivative of a transformation with respect to 
a variable used has not been implemented. Thus, such a transformation is not 
allowed in the definition of a potential since it cannot be derived twice.
 
+.. _ud-gasm-high-elem-trans:
+
 Elementary transformations
 **************************
 

Modified: trunk/getfem/doc/sphinx/source/userdoc/model.rst
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/doc/sphinx/source/userdoc/model.rst?rev=4916&r1=4915&r2=4916&view=diff
==============================================================================
--- trunk/getfem/doc/sphinx/source/userdoc/model.rst    (original)
+++ trunk/getfem/doc/sphinx/source/userdoc/model.rst    Fri Mar 27 14:26:07 2015
@@ -53,6 +53,7 @@
    model_linear_elasticity
    model_mass
    model_bilaplacian
+   model_Mindlin_plate
    model_time_integration
    model_nonlinear_elasticity
    model_contact_friction

Added: trunk/getfem/doc/sphinx/source/userdoc/model_Mindlin_plate.rst
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/doc/sphinx/source/userdoc/model_Mindlin_plate.rst?rev=4916&view=auto
==============================================================================
--- trunk/getfem/doc/sphinx/source/userdoc/model_Mindlin_plate.rst      (added)
+++ trunk/getfem/doc/sphinx/source/userdoc/model_Mindlin_plate.rst      Fri Mar 
27 14:26:07 2015
@@ -0,0 +1,115 @@
+.. $Id: model.rst 3655 2010-07-17 20:42:08Z renard $
+
+.. include:: ../replaces.txt
+
+.. highlightlang:: c++
+
+.. index:: models, model bricks
+
+.. _ud-model-mindlin-plate:
+
+Mindlin-Reissner plate model
+----------------------------
+
+This brick implements the classical Mindlin-Reissner bending model for 
isotropic plates.
+
+The Mindlin-Reissner plate model
+++++++++++++++++++++++++++++++++
+
+Let :math:`\Omega \subset \R^2` be the reference configuration of the 
mid-plane of a plate of thickness :math:`\epsilon`.
+
+The weak formulation of the Mindlin-Reissner model for isotropic material can 
be written as follows for :math:`u_3` the transverse displacement and 
:math:`\theta` the rotation of fibers normal to the mid-plane:
+
+.. math::
+
+  & \int_{\Omega} D \epsilon^3\left((1-v)\gamma(\theta):\gamma(\psi) + \nu 
\mbox{div}(\theta)\mbox{div}(\psi)\right) dx \\
+  & ~~~~~~~~~~~~~~ + \int_{\Omega}G\epsilon (\nabla u_3 - \theta)\cdot(\nabla 
v_3 - \psi)dx = \int_{\Omega} F_3v_3 + M.\psi dx,
+
+for all admissible test functions :math:`v_3 : \Omega \rightarrow \R,$ $\psi : 
\Omega \rightarrow \R^2` and where:
+
+.. math::
+  & D = \Frac{E}{12(1-\nu^2)}, ~~ G = \Frac{E\kappa}{2(1+\nu)}, \\
+  & \gamma(\theta) = (\nabla \theta + \nabla \theta^T)/2, \\
+  & F_3 = \int_{-\epsilon/2}^{\epsilon/2} f_3dx_3 + g_3^+ + g_3^-, \\
+  & M_{\alpha} = \epsilon(g^+_{\alpha} - g^-_{\alpha})/2 +  
\int_{-\epsilon/2}^{\epsilon/2} x_3 f_{\alpha}dx_3, \alpha \in \{1, 2\},
+
+:math:`f` being a volumic force applied inside the three dimensional plate, 
:math:`g^+` and :math:`g^-` a force applied on the top and bottom surface of 
the plate, :math:`E` Young's modulus, :math:`\nu` Poisson's ratio and 
:math:`\kappa` the shear correction factor (usually set to 5/6).
+
+The classical boundary conditions are the following:
+
+  - Simple support :  a dirichlet condition on :math:`u_3`.
+
+  - Clamped support : a dirichlet condition on both :math:`u_3` and 
:math:`\theta`.
+
+  - Prescribed transverse force : boundary source term on :math:`u_3`.
+
+  - Prescribed moment : boundary source term on :math:`\theta`.
+
+
+An important issue of this model is that it is subjected to the so called 
shear locking so that a direct Galerkin procedure do not give a satisfactory 
approximation. There is several ways to circumvent the shear locking problem : 
reduced integration, projection of the transverse shear term, mixed methods. 
The two first method are proposed.
+
+
+Reduced integration of the transverse shear term
+================================================
+
+This strategy consists simply to use a lower order integration method to 
numerically compute the term
+
+.. math::
+
+  \int_{\Omega}G\epsilon (\nabla u_3 - \theta)\cdot(\nabla v_3 - \psi)dx
+
+This strategy is working properly at least when both the rotation and the 
transverse displacement is approximated with Q1 quadrilateral element with a 
degree one reduced integration method (the so-called QUAD4 element).
+
+Projection of the transverse shear term
+=======================================
+
+Another strategy comes from the MITC elements (Mixed Interpolation of 
Tensorial Components) which correspond to a re-interpretation in terms of 
projection of some mixed methods. The most popular element of this type is the 
MITC4 which correspond to the quadrilateral element Q1 with a projection of the 
transverse shear term on a rotated Raviart-Thomas element of lowest degree 
(RT0) (see [ba-dv1985]_, [br-ba-fo1989]_). This means that the transverse shear 
term becomes
+
+.. math::
+
+  \int_{\Omega}G\epsilon P^h(\nabla u_3 - \theta)\cdot P^h(\nabla v_3 - \psi)dx
+
+where :math:`P^h(T)` is the elementwize :math:`L^2`-projection onto the 
rotated RT0 space.  For the moment, the only projection implemented is the 
previous described one (projection on rotated RT0 space for quadrilateral 
element). Higher degree elements and triangular elements can be found in the 
litterature (see [Mi-Zh2002]_, [br-ba-fo1989]_, [Duan2014]_) and will be under 
consideration for a future implementation. Note also that since 
:math:`P^h(\nabla u_3) = \nabla u_3`, the term reduces to
+
+.. math::
+
+  \int_{\Omega}G\epsilon (\nabla u_3 - P^h(\theta))\cdot(\nabla v_3 - 
P^h(\psi))dx
+
+The principle of the definition of an elementary projection is explained if 
the description of the high-level generica assembly language (see 
:ref:`ud-gasm-high-elem-trans`) and an example can be found in the file 
:file:`src/getfem_linearized_plate.cc`.
+
+
+
+Add a Mindlin-Reissner plate model brick to a model
++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+The following function defined in :file:`getfem/getfem_linearized_plate.h` 
allows to add a Mindlin-Reissner plate model term to a transverse displacement 
`u3` and a rotation `theta`::
+
+  size_type add_Mindlin_Reissner_plate_brick
+  (model, mim, mim_reduced, name_u3, name_theta, param_E,
+   param_nu, param_epsilon, param_kappa, variant = 2, region)
+
+where `name_u3` is name of the variable which represents the transverse 
displacmenent, `name_theta` the variable which represents the rotation, 
'param_E' the Young Modulus, `param_nu` the poisson ratio, `param_epsilon` the 
plate thickness, `param_kappa` the shear correction factor. Note that since 
this brick
+uses the high level generic assembly language, the parameter can be regular 
expression of this language.
+There are three variants.
+`variant = 0` corresponds to the an
+unreduced formulation and in that case only the integration
+method `mim` is used. Practically this variant is not usable since
+it is subject to a strong locking phenomenon.
+`variant = 1` corresponds to a reduced integration where `mim` is
+used for the rotation term and `mim_reduced` for the transverse
+shear term. `variant = 2` (default) corresponds to the projection onto
+a rotated RT0 element of the transverse shear term. For the moment, this
+is adapted to quadrilateral only (because it is not sufficient to
+remove the locking phenomenon on triangle elements). Note also that if
+you use high order elements, the projection on RT0 will reduce the order
+of the approximation.
+Returns the brick index in the model.
+
+
+
+
+
+The projection on rotated RTO element can be added to a model thanks to the 
following function::
+
+  void add_2D_rotated_RT0_projection(model, transname);
+

Modified: trunk/getfem/interface/src/gf_model_set.cc
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/interface/src/gf_model_set.cc?rev=4916&r1=4915&r2=4916&view=diff
==============================================================================
--- trunk/getfem/interface/src/gf_model_set.cc  (original)
+++ trunk/getfem/interface/src/gf_model_set.cc  Fri Mar 27 14:26:07 2015
@@ -1924,10 +1924,10 @@
        );
 
 
-    /address@hidden ind = ('add Reisner-Mindlin plate brick', @tmim mim, @tmim 
mim_reduced, @str varname_U, @str varname_theta , @str param_E, @str param_nu, 
@str param_epsilon, @str param_kappa [,@int variant [, @int region]])
+    /address@hidden ind = ('add Reisner-Mindlin plate brick', @tmim mim, @tmim 
mim_reduced, @str varname_u3, @str varname_theta , @str param_E, @str param_nu, 
@str param_epsilon, @str param_kappa [,@int variant [, @int region]])
       Add a term corresponding to the classical Reissner-Mindlin plate
-      model for which `U` is the transverse displacement,
-      `Theta` the rotation of
+      model for which `varname_u3` is the transverse displacement,
+      `varname_theta` the rotation of
       fibers normal to the midplane, 'param_E' the Young Modulus,
       `param_nu` the poisson ratio,
       `param_epsilon` the plate thickness,

Modified: trunk/getfem/interface/tests/matlab/demo_Mindlin_Reissner_plate.m
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/interface/tests/matlab/demo_Mindlin_Reissner_plate.m?rev=4916&r1=4915&r2=4916&view=diff
==============================================================================
--- trunk/getfem/interface/tests/matlab/demo_Mindlin_Reissner_plate.m   
(original)
+++ trunk/getfem/interface/tests/matlab/demo_Mindlin_Reissner_plate.m   Fri Mar 
27 14:26:07 2015
@@ -22,20 +22,20 @@
 nu       = 0.5;        % Poisson Coefficient
 epsilon  = 0.001;      % Plate thickness
 kappa     = 5/6;       % Shear correction factor
-f = -10*epsilon^3;     % Prescribed force on the top of the plate
+f = -5*epsilon^3;      % Prescribed force on the top of the plate
 
-dirichlet_version = 1; % 0 = simplification, 1 = with multipliers, 2 = 
penalization
+variant = 2;           % 0 : not reduced, 1 : with reduced integration, 2 : 
MITC reduction
 quadrangles = true;    % Locking free only on quadrangle for the moment
 K = 1;                 % Degree of the finite element method
-variant = 1;           % 0 : not reduced, 1 : with reduced integration, 2 : 
MITC reduction
 with_Mindlin_brick = true; % Uses the Reissner-Mindlin predefined brick or not
+dirichlet_version = 1; % 0 = simplification, 1 = with multipliers, 2 = 
penalization
 
 plot_mesh = false;
 draw_solution = true;
 
 % trace on;
 gf_workspace('clear all');
-NX = 20;
+NX = 80;
 if (quadrangles)
   m = gf_mesh('cartesian',[0:1/NX:1],[0:1/NX:1]);
 else




reply via email to

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