getfem-commits
[Top][All Lists]
Advanced

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

[Getfem-commits] r4991 - in /trunk/getfem: interface/tests/matlab/demo_e


From: Yves . Renard
Subject: [Getfem-commits] r4991 - in /trunk/getfem: interface/tests/matlab/demo_elasticity.m src/getfem_models.cc
Date: Wed, 13 May 2015 10:40:52 -0000

Author: renard
Date: Wed May 13 12:40:50 2015
New Revision: 4991

URL: http://svn.gna.org/viewcvs/getfem?rev=4991&view=rev
Log:
minor fixes

Modified:
    trunk/getfem/interface/tests/matlab/demo_elasticity.m
    trunk/getfem/src/getfem_models.cc

Modified: trunk/getfem/interface/tests/matlab/demo_elasticity.m
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/interface/tests/matlab/demo_elasticity.m?rev=4991&r1=4990&r2=4991&view=diff
==============================================================================
--- trunk/getfem/interface/tests/matlab/demo_elasticity.m       (original)
+++ trunk/getfem/interface/tests/matlab/demo_elasticity.m       Wed May 13 
12:40:50 2015
@@ -17,9 +17,9 @@
 
 clear all;
 % parameters
-option = 3;            % 1 = use Lame coefficients brick
-                       % 2 = use plane strain approximation 
-                       % 3 = use plane stress approximation 
+option = 2;            % 1 = use Lame coefficients brick
+                       % 2 = use plane strain approximation brick
+                       % 3 = use plane stress approximation brick
 d = 2;                 % dimension (cannot be changed for the moment)
 E = 1;                 % Young's modulus
 nu = 0.3;              % Poisson ratio

Modified: trunk/getfem/src/getfem_models.cc
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem_models.cc?rev=4991&r1=4990&r2=4991&view=diff
==============================================================================
--- trunk/getfem/src/getfem_models.cc   (original)
+++ trunk/getfem/src/getfem_models.cc   Wed May 13 12:40:50 2015
@@ -6246,9 +6246,11 @@
                                                   tresca);
       }
     } else {
-      std::string sigma = "("+data_lambda+")*Div_"+varname+"*Id(meshdim)+("
-        + data_mu+")*(Grad_"+varname+"+Grad_"+varname+"')";
-      std::string expr = "sqrt(3/2)*Norm(Deviator("+sigma+"))";
+      // The Lambda part is not necessary for Von Mises stress ...
+      // std::string sigma = "("+data_lambda+")*Div_"+varname+"*Id(meshdim)+("
+      //   + data_mu+")*(Grad_"+varname+"+Grad_"+varname+"')";
+      std::string sigma_d = 
"("+data_mu+")*(Grad_"+varname+"+Grad_"+varname+"')";
+      std::string expr = "sqrt(3/2)*Norm(Deviator("+sigma_d+"))";
       ga_interpolation_Lagrange_fem(md, expr, mf_vm, VM);
     }
   }
@@ -6258,12 +6260,14 @@
   (model &md, const std::string &varname, const std::string &data_E,
    const std::string &data_nu, const mesh_fem &mf_vm,
    model_real_plain_vector &VM) {
+    // The Lambda part is not necessary for Von Mises stress ...
+    // std::string lambda = 
"(("+data_E+")*("+data_nu+")/((1+("+data_nu+"))*(1-2*("
+    //  +data_nu+"))))";
     std::string mu = "(("+data_E+")/(2*(1+("+data_nu+"))))";
-    std::string lambda = 
"(("+data_E+")*("+data_nu+")/((1+("+data_nu+"))*(1-2*("
-      +data_nu+"))))";
-    std::string sigma = lambda+"*Div_"+varname+"*Id(meshdim)+"
-      + mu+"*(Grad_"+varname+"+Grad_"+varname+"')";
-    std::string expr = "sqrt(3/2)*Norm(Deviator("+sigma+"))";
+    // std::string sigma = lambda+"*Div_"+varname+"*Id(meshdim)+"
+    //  + mu+"*(Grad_"+varname+"+Grad_"+varname+"')";
+    std::string sigma_d = mu+"*(Grad_"+varname+"+Grad_"+varname+"')";
+    std::string expr = "sqrt(3/2)*Norm(Deviator("+sigma_d+"))";
     ga_interpolation_Lagrange_fem(md, expr, mf_vm, VM);
   }
 
@@ -6271,23 +6275,24 @@
   (model &md, const std::string &varname, const std::string &data_E,
    const std::string &data_nu, const mesh_fem &mf_vm,
    model_real_plain_vector &VM) {
-    const mesh_fem *mfu = md.pmesh_fem_of_variable(varname);
-    GMM_ASSERT1(mfu, "The variable should be a fem variable");
-    size_type N = mfu->linked_mesh().dim();
-
+    // The Lambda part is not necessary for Von Mises stress ...
+    // const mesh_fem *mfu = md.pmesh_fem_of_variable(varname);
+    // GMM_ASSERT1(mfu, "The variable should be a fem variable");
+    // size_type N = mfu->linked_mesh().dim();
+    // std::string lambda =  "(("+data_E+")*("+data_nu+")/((1+("+data_nu
+    //  +"))*(1-2*("+data_nu+"))))";
+    // if (N == 2)
+    //  lambda = "(("+data_E+")*("+data_nu+")/((1-sqr("+data_nu+"))))";
     std::string mu = "(("+data_E+")/(2*(1+("+data_nu+"))))";
-    std::string lambda =  "(("+data_E+")*("+data_nu+")/((1+("+data_nu
-      +"))*(1-2*("+data_nu+"))))";
-    if (N == 2)
-      lambda = "(("+data_E+")*("+data_nu+")/((1-sqr("+data_nu+"))))";
-    std::string sigma = lambda+"*Div_"+varname+"*Id(meshdim)+"
-      + mu+"*(Grad_"+varname+"+Grad_"+varname+"')";
-    std::string expr = "sqrt(3/2)*Norm(Deviator("+sigma+"))";
+    // std::string sigma = lambda+"*Div_"+varname+"*Id(meshdim)+"
+    //   + mu+"*(Grad_"+varname+"+Grad_"+varname+"')";
+    std::string sigma_d = mu+"*(Grad_"+varname+"+Grad_"+varname+"')";
+    std::string expr = "sqrt(3/2)*Norm(Deviator("+sigma_d+"))";
     ga_interpolation_Lagrange_fem(md, expr, mf_vm, VM);
   }
 
 
-  // ----------------------------------------------------------------------
+  // --------------------------------------------------------------------
   //
   // linearized incompressibility brick  (div u = 0)
   //




reply via email to

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