Welcome to the Bug Tracking System for the DUNE project.
Due to increasing spam attacks, we had to disable the feature of anonymous bug reports. You will have to register before you are able to report a new bug.
In case you experience any problems, let us know at http://www.dune-project.org/mailinglists.html .
Due to increasing spam attacks, we had to disable the feature of anonymous bug reports. You will have to register before you are able to report a new bug.
In case you experience any problems, let us know at http://www.dune-project.org/mailinglists.html .
FS#745 - Specialization of FieldMatrix for n=m=1 has wrong method parameter types for mult methods.
Attached to Project:
Dune
Opened by Robert Klöfkorn (robertk) - Friday, 26 February 2010, 11:48 GMT+2
Last edited by Christian Engwer (christi) - Tuesday, 23 March 2010, 15:27 GMT+2
Opened by Robert Klöfkorn (robertk) - Friday, 26 February 2010, 11:48 GMT+2
Last edited by Christian Engwer (christi) - Tuesday, 23 March 2010, 15:27 GMT+2
|
DetailsExample: The normal FieldMatrix class has a mult method with the following parameters:
//! y = A x template<class X, class Y> void mv (const X& x, Y& y) const; In the specialization of this class for n=m=1 this method reads: void mv (const FieldVector<K,1>& x, FieldVector<K,1>& y) const; thus being completly wrong when types different to FieldVector are used in an generic code. These method in FieldMatrix<K,1,1> should have the same template parameter as the normal FieldMatrix class. |
This task blocks these from closing
Closed by Christian Engwer (christi)
Tuesday, 23 March 2010, 15:27 GMT+2
Reason for closing: Fixed
Additional comments about closing: and merged
Tuesday, 23 March 2010, 15:27 GMT+2
Reason for closing: Fixed
Additional comments about closing: and merged
why the hack should this compile with X or Y being double vectors:
//! y = A x
template<class X, class Y>
void mv (const X& x, Y& y) const
{
y.p = a[0] * x.p;
}
You should be more careful when doing changes in the core of DUNE. Just copying the template arguments could have been done by anybody.