[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Getfem-commits] r5229 - /trunk/getfem/src/getfem_models.cc
From: |
Yves . Renard |
Subject: |
[Getfem-commits] r5229 - /trunk/getfem/src/getfem_models.cc |
Date: |
Thu, 28 Jan 2016 12:06:11 -0000 |
Author: renard
Date: Thu Jan 28 13:06:10 2016
New Revision: 5229
URL: http://svn.gna.org/viewcvs/getfem?rev=5229&view=rev
Log:
fix a bug in disable of affine dependent variables
Modified:
trunk/getfem/src/getfem_models.cc
Modified: trunk/getfem/src/getfem_models.cc
URL:
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem_models.cc?rev=5229&r1=5228&r2=5229&view=diff
==============================================================================
--- trunk/getfem/src/getfem_models.cc (original)
+++ trunk/getfem/src/getfem_models.cc Thu Jan 28 13:06:10 2016
@@ -825,6 +825,9 @@
&& (name.compare(itv->second.filter_var) == 0)) {
itv->second.is_disabled = true;
}
+ if (itv->second.is_variable && itv->second.is_affine_dependent
+ && name.compare(itv->second.org_name) == 0)
+ itv->second.is_disabled = true;
}
if (!act_size_to_be_done) resize_global_system();
}
@@ -840,6 +843,9 @@
&& (name.compare(itv->second.filter_var) == 0)) {
itv->second.is_disabled = false;
}
+ if (itv->second.is_variable && itv->second.is_affine_dependent
+ && name.compare(itv->second.org_name) == 0)
+ itv->second.is_disabled = false;
}
if (!act_size_to_be_done) resize_global_system();
}
@@ -2365,19 +2371,19 @@
VAR_SET::iterator it1, it2;
if (!isg) {
it1 = variables.find(term.var1);
- GMM_ASSERT1(it1->second.is_variable, "Assembly of data not allowed");
+ GMM_ASSERT1(it1->second.is_variable, "Assembly of data not allowed");
I1 = it1->second.I;
}
if (term.is_matrix_term && !isg) {
it2 = variables.find(term.var2);
- I2 = it2->second.I;
+ I2 = it2->second.I;
if (!(it2->second.is_variable)) {
- std::string vorgname = sup_previous_and_dot_to_varname(term.var2);
+ std::string vorgname = sup_previous_and_dot_to_varname(term.var2);
VAR_SET::iterator it3 = variables.find(vorgname);
GMM_ASSERT1(it3->second.is_variable,
"Assembly of data not allowed");
I2 = it3->second.I;
- isprevious = true;
+ isprevious = true;
}
alpha *= it1->second.alpha * it2->second.alpha;
alpha1 *= it1->second.alpha;
@@ -2525,7 +2531,7 @@
if (term.is_matrix_term && (version & BUILD_MATRIX) && !isprevious
&& (isg || (!(it1->second.is_disabled)
&& !(it2->second.is_disabled)))) {
- gmm::add(gmm::scaled(brick.rmatlist[j], alpha),
+ gmm::add(gmm::scaled(brick.rmatlist[j], alpha),
gmm::sub_matrix(rTM, I1, I2));
if (term.is_symmetric && I1.first() != I2.first()) {
gmm::add(gmm::scaled(gmm::transposed(brick.rmatlist[j]), alpha),
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Getfem-commits] r5229 - /trunk/getfem/src/getfem_models.cc,
Yves . Renard <=