[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Getfem-commits] r4828 - in /trunk/getfem/interface: src/gf_mesh_im.cc t
From: |
Yves . Renard |
Subject: |
[Getfem-commits] r4828 - in /trunk/getfem/interface: src/gf_mesh_im.cc tests/matlab/demo_plasticity.m |
Date: |
Tue, 09 Dec 2014 16:03:28 -0000 |
Author: renard
Date: Tue Dec 9 17:03:28 2014
New Revision: 4828
URL: http://svn.gna.org/viewcvs/getfem?rev=4828&view=rev
Log:
minor modifications
Modified:
trunk/getfem/interface/src/gf_mesh_im.cc
trunk/getfem/interface/tests/matlab/demo_plasticity.m
Modified: trunk/getfem/interface/src/gf_mesh_im.cc
URL:
http://svn.gna.org/viewcvs/getfem/trunk/getfem/interface/src/gf_mesh_im.cc?rev=4828&r1=4827&r2=4828&view=diff
==============================================================================
--- trunk/getfem/interface/src/gf_mesh_im.cc (original)
+++ trunk/getfem/interface/src/gf_mesh_im.cc Tue Dec 9 17:03:28 2014
@@ -154,6 +154,7 @@
The first levelset is always referred to with "a", the second
with "b", and so on.
+
for intance INSIDE(a*b*c)
CAUTION: this integration method will be defined only on the element
Modified: trunk/getfem/interface/tests/matlab/demo_plasticity.m
URL:
http://svn.gna.org/viewcvs/getfem/trunk/getfem/interface/tests/matlab/demo_plasticity.m?rev=4828&r1=4827&r2=4828&view=diff
==============================================================================
--- trunk/getfem/interface/tests/matlab/demo_plasticity.m (original)
+++ trunk/getfem/interface/tests/matlab/demo_plasticity.m Tue Dec 9
17:03:28 2014
@@ -43,7 +43,7 @@
% alpha is parameter of the generalized integration algorithms.
% The choice alpha = 1/2 yields the mid point method and alpha = 1 leads to
% backward Euler integration
-alpha = 1/2;
+alpha = 1.0;
@@ -156,7 +156,7 @@
%expr_sigma = strcat('(', B_inv, '*(Von_Mises_projection((-(H)*', Enp1,
')+(', ApH, '*(',Enp1,'-',En,')) + (', B, '*sigma), von_mises_threshold) + H*',
Enp1, '))');
%expression de sigma for generalized alpha algorithms
- expr_sigma = strcat('(', B_inv,
'*(Von_Mises_projection((',B,'*(1-alpha)*sigma)+(-(H)*(((1-alpha)*',En,')+(alpha*',
Enp1, ')))+(alpha*', ApH, '*(',Enp1,'-',En,')) + (alpha*', ...
+ expr_sigma = strcat('(', B_inv,
'*(Von_Mises_projection((',B,'*((1-alpha)*sigma))+(-(H)*(((1-alpha)*',En,')+(alpha*',
Enp1, ')))+(alpha*', ApH, '*(',Enp1,'-',En,')) + (alpha*', ...
B, '*sigma), von_mises_threshold) + (H)*(((1-alpha)*',En,')+(alpha*',
Enp1, '))))');
gf_model_set(md, 'add nonlinear generic assembly brick', mim,
strcat(expr_sigma, ':Grad_Test_u'));
@@ -199,12 +199,9 @@
% the Von Mises or Tresca stress
if (with_hardening)
sigma_0 = gf_model_get(md, 'variable', 'sigma');
- sigma = (gf_model_get(md, 'interpolation', expr_sigma, mim_data) -
(1-alpha)*sigma_0)/alpha;
-
- % sigma = gf_model_get(md, 'interpolation', expr_sigma, mim_data);
-
- gf_model_set(md, 'variable', 'sigma', sigma);
- gf_model_set(md, 'variable', 'Previous_u', U);
+ sigma = gf_model_get(md, 'interpolation', expr_sigma, mim_data);
+ U_0 = gf_model_get(md, 'variable', 'Previous_u');
+ U_nalpha = alpha*U + (1-alpha)*U_0;
M = gf_asm('mass matrix', mim, mf_vm);
L = gf_asm('generic', mim, 1, 'sqrt(3/2)*Norm(Deviator(sigma))*Test_vm',
-1, 'sigma', 0, mim_data, sigma, 'vm', 1, mf_vm, zeros(gf_mesh_fem_get(mf_vm,
'nbdof'),1));
@@ -216,13 +213,19 @@
L = gf_asm('generic', mim, 1, sprintf('Norm(%s)*Test_vm', Ep), -1,
'sigma', 0, mim_data, sigma, 'u', 0, mf_u, U, 'vm', 1, mf_vm,
zeros(gf_mesh_fem_get(mf_vm, 'nbdof'),1), 'mu', 0, mf_data, mu, 'lambda', 0,
mf_data, lambda);
plast = (M \ L)';
+ gf_model_set(md, 'variable', 'u', U_nalpha);
Epsilon_u = gf_model_get(md, 'interpolation', '((Grad_u+Grad_u'')/2)',
mim_data);
+ gf_model_set(md, 'variable', 'u', U);
ind_gauss_pt = 22500;
if (size(sigma, 2) <= N*(ind_gauss_pt + 1))
ind_gauss_pt = floor(3*size(sigma, 2) / (4*N*N));
end
sigma_fig(1,step)=sigma(N*N*ind_gauss_pt + 1);
Epsilon_u_fig(1,step)=Epsilon_u(N*N*ind_gauss_pt + 1);
+
+ sigma = (sigma - (1-alpha)*sigma_0)/alpha;
+ gf_model_set(md, 'variable', 'sigma', sigma);
+ gf_model_set(md, 'variable', 'Previous_u', U);
else
get(md, 'elastoplasticity next iter', mim, 'u', 'VM', 'lambda', 'mu',
'von_mises_threshold', 'sigma');
plast = get(md, 'compute plastic part', mim, mf_vm, 'u', 'VM', 'lambda',
'mu', 'von_mises_threshold', 'sigma');
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Getfem-commits] r4828 - in /trunk/getfem/interface: src/gf_mesh_im.cc tests/matlab/demo_plasticity.m,
Yves . Renard <=