Estimation DLL, matrix library: fixed bug in mat::negate(),;mat::add(), mat::sub()

time-shift
Sébastien Villemot 2010-02-18 10:42:01 +01:00
parent b762f010cd
commit 30ee44f8b4
1 changed files with 9 additions and 9 deletions

View File

@ -293,10 +293,10 @@ namespace mat
assert(m1.getRows() == m2.getRows() && m1.getCols() == m2.getCols()); assert(m1.getRows() == m2.getRows() && m1.getCols() == m2.getCols());
double *p1 = m1.getData(); double *p1 = m1.getData();
const double *p2 = m2.getData(); const double *p2 = m2.getData();
while (p1 < m1.getData() + m1.getRows() * m1.getLd()) while (p1 < m1.getData() + m1.getCols() * m1.getLd())
{ {
double *pp1, *pp2; double *pp1 = p1, *pp2 = p2;
while (pp1 < p1 + m1.getCols()) while (pp1 < p1 + m1.getRows())
*pp1++ += *pp2++; *pp1++ += *pp2++;
p1 += m1.getLd(); p1 += m1.getLd();
@ -312,10 +312,10 @@ namespace mat
assert(m1.getRows() == m2.getRows() && m1.getCols() == m2.getCols()); assert(m1.getRows() == m2.getRows() && m1.getCols() == m2.getCols());
double *p1 = m1.getData(); double *p1 = m1.getData();
const double *p2 = m2.getData(); const double *p2 = m2.getData();
while (p1 < m1.getData() + m1.getRows() * m1.getLd()) while (p1 < m1.getData() + m1.getCols() * m1.getLd())
{ {
double *pp1, *pp2; double *pp1 = p1, *pp2 = p2;
while (pp1 < p1 + m1.getCols()) while (pp1 < p1 + m1.getRows())
*pp1++ -= *pp2++; *pp1++ -= *pp2++;
p1 += m1.getLd(); p1 += m1.getLd();
@ -329,10 +329,10 @@ namespace mat
negate(Mat m) negate(Mat m)
{ {
double *p = m.getData(); double *p = m.getData();
while (p < m.getData() + m.getRows() * m.getLd()) while (p < m.getData() + m.getCols() * m.getLd())
{ {
double *pp; double *pp = p;
while (pp < p + m.getCols()) while (pp < p + m.getRows())
{ {
*pp = -*pp; *pp = -*pp;
pp++; pp++;