Author: renard
Date: Fri Nov 4 14:54:24 2016
New Revision: 5460
URL: http://svn.gna.org/viewcvs/getfem?rev=5460&view=rev
Log:
minor fixes
Modified:
trunk/getfem/interface/src/gf_model_set.cc
trunk/getfem/src/bgeot_geometric_trans.cc
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=5460&r1=5459&r2=5460&view=diff
==============================================================================
--- trunk/getfem/interface/src/gf_model_set.cc (original)
+++ trunk/getfem/interface/src/gf_model_set.cc Fri Nov 4 14:54:24 2016
@@ -3519,7 +3519,7 @@
dispname, lambda, wname);
);
- /*@SET ind = ('add Nitsche large sliding contact brick raytracing',
@bool unbiased_version @str dataname_r, @scalar release_distance, [, @str
dataname_fr[, @str dataname_alpha[, @int version]]])
+ /*@SET ind = ('add Nitsche large sliding contact brick raytracing',
@bool unbiased_version, @str dataname_r, @scalar release_distance[, @str
dataname_fr[, @str dataname_alpha[, @int version]]])
Adds a large sliding contact with friction brick to the model based on
the Nitsche's method.
This brick is able to deal with self-contact, contact between
several deformable bodies and contact with rigid obstacles.
@@ -3611,7 +3611,7 @@
dispname, sigma, wname);
);
- /*@SET ('add master slave contact boundary to unbiased Nitsche's large
sliding contact brick', @int indbrick, @tmim mim, @int region, @str dispname,
@str lambdaname[, @str wname])
+ /*@SET ('add contact boundary to unbiased Nitsche large sliding contact
brick', @int indbrick, @tmim mim, @int region, @str dispname, @str lambdaname[,
@str wname])
Adds a contact boundary to an existing unbiased Nitschelarge sliding
contact
with friction brick which is both master and slave. @*/
sub_command
@@ -3647,4 +3647,4 @@
}
else bad_cmd(init_cmd);
-}
+}
Modified: trunk/getfem/src/bgeot_geometric_trans.cc
URL:
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/bgeot_geometric_trans.cc?rev=5460&r1=5459&r2=5460&view=diff
==============================================================================
--- trunk/getfem/src/bgeot_geometric_trans.cc (original)
+++ trunk/getfem/src/bgeot_geometric_trans.cc Fri Nov 4 14:54:24 2016
@@ -52,14 +52,16 @@
// Multiply the matrix A of size MxN by B of size NxP in C of size MxP
void mat_mult(const scalar_type *A, const scalar_type *B, scalar_type *C,
size_type M, size_type N, size_type P) {
- auto itC = C; auto itB = B;
- for (size_type j = 0; j < P; ++j, itB += N)
- for (size_type i = 0; i < M; ++i, ++itC) {
- auto itA = A+i, itB1 = itB;
- *itC = (*itA) * (*itB1);
- for (size_type k = 1; k < N; ++k)
- { itA += M; ++itB1; *itC += (*itA) * (*itB1); }
- }
+ if (N != 0) {
+ auto itC = C; auto itB = B;
+ for (size_type j = 0; j < P; ++j, itB += N)
+ for (size_type i = 0; i < M; ++i, ++itC) {
+ auto itA = A+i, itB1 = itB;
+ *itC = (*itA) * (*itB1);
+ for (size_type k = 1; k < N; ++k)
+ { itA += M; ++itB1; *itC += (*itA) * (*itB1); }
+ }
+ } else std::fill(C, C+M*P, scalar_type(0));
}
// Optimized matrix mult for small matrices.
_______________________________________________
Getfem-commits mailing list
[email protected]
https://mail.gna.org/listinfo/getfem-commits