[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Getfem-commits] r4672 - in /trunk/getfem: doc/sphinx/source/userdoc/mod
From: |
Yves . Renard |
Subject: |
[Getfem-commits] r4672 - in /trunk/getfem: doc/sphinx/source/userdoc/model_generic_assembly.rst src/getfem_models.cc |
Date: |
Mon, 02 Jun 2014 09:14:54 -0000 |
Author: renard
Date: Mon Jun 2 11:14:53 2014
New Revision: 4672
URL: http://svn.gna.org/viewcvs/getfem?rev=4672&view=rev
Log:
a bug fix on linear generic assembly brick
Modified:
trunk/getfem/doc/sphinx/source/userdoc/model_generic_assembly.rst
trunk/getfem/src/getfem_models.cc
Modified: trunk/getfem/doc/sphinx/source/userdoc/model_generic_assembly.rst
URL:
http://svn.gna.org/viewcvs/getfem/trunk/getfem/doc/sphinx/source/userdoc/model_generic_assembly.rst?rev=4672&r1=4671&r2=4672&view=diff
==============================================================================
--- trunk/getfem/doc/sphinx/source/userdoc/model_generic_assembly.rst
(original)
+++ trunk/getfem/doc/sphinx/source/userdoc/model_generic_assembly.rst Mon Jun
2 11:14:53 2014
@@ -41,7 +41,7 @@
where ``F`` is a pre-defined constant of the model representing the right hand
side. Of course, doing so, Newton's algorithms will be called. So, the more
appropriate manner is to use the linear bricks as follows::
getfem::add_linear_generic_assembly_brick(md, mim, "Grad_u.Grad_Test_u", -1,
true, true);
- getfem::add_dource_term_generic_assembly_brick(md, mim, "F*Test_u");
+ getfem::add_source_term_generic_assembly_brick(md, mim, "F*Test_u");
Modified: trunk/getfem/src/getfem_models.cc
URL:
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem_models.cc?rev=4672&r1=4671&r2=4672&view=diff
==============================================================================
--- trunk/getfem/src/getfem_models.cc (original)
+++ trunk/getfem/src/getfem_models.cc Mon Jun 2 11:14:53 2014
@@ -1549,11 +1549,11 @@
from_variables(V);
gmm::mult_add(brick.rmatlist[j],
gmm::scaled(V, -coeff0), rrhs);
- }
- gmm::mult_add(brick.rmatlist[j],
- gmm::scaled(variables[term.var2].real_value[0],
- -coeff0),
- gmm::sub_vector(rrhs, I1));
+ } else
+ gmm::mult_add(brick.rmatlist[j],
+ gmm::scaled(variables[term.var2].real_value[0],
+ -coeff0),
+ gmm::sub_vector(rrhs, I1));
}
if (term.is_symmetric && I1.first() != I2.first()) {
if (brick.pdispatch) {
@@ -1620,8 +1620,6 @@
workspace.add_expression(it->expr, it->mim, mpi_reg[pms]);
}
- // cout << "act. assembly" << endl;
-
if (version & BUILD_RHS) {
if (is_complex()) {
GMM_ASSERT1(false, "to be done");
@@ -1641,7 +1639,6 @@
workspace.assembly(2);
}
}
- // cout << "act. assembly done" << endl;
}
// Post simplification for dof constraints
@@ -2038,9 +2035,10 @@
"mesh_im");
bool recompute_matrix = !((version & model::BUILD_ON_DATA_CHANGE) != 0);
- for (size_type i = 0; i < dl.size(); ++i)
+ for (size_type i = 0; i < dl.size(); ++i) {
recompute_matrix = recompute_matrix ||
md.is_var_newer_than_brick(dl[i], ib);
+ }
if (recompute_matrix) {
ga_workspace workspace(md);
@@ -2098,7 +2096,7 @@
ga_workspace workspace(md);
size_type order = workspace.add_expression(expr, mim, region);
model::varnamelist vl, dl;
- workspace.used_variables(vl, dl, order);
+ workspace.used_variables(vl, dl, 2);
if (order == 0) { is_coercive = is_sym = true; }
pbrick pbr = new gen_linear_assembly_brick(expr, is_sym, is_coercive,
(order == 0), brickname);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Getfem-commits] r4672 - in /trunk/getfem: doc/sphinx/source/userdoc/model_generic_assembly.rst src/getfem_models.cc,
Yves . Renard <=