# | Line 151 | Line 151 | namespace oopse { | |
---|---|---|
151 | for (unsigned int j = 0; j < Col; j++) | |
152 | data_[j][col] = v[j]; | |
153 | } | |
154 | + | |
155 | + | /** |
156 | + | * swap two rows of this matrix |
157 | + | * @param i the first row |
158 | + | * @param j the second row |
159 | + | */ |
160 | + | void swapRow(unsigned int i, unsigned int j){ |
161 | + | assert(i < Row && j < Row); |
162 | + | |
163 | + | for (unsigned int k = 0; k < Col; k++) |
164 | + | std::swap(data_[i][k], data_[j][k]); |
165 | + | } |
166 | + | |
167 | + | /** |
168 | + | * swap two colums of this matrix |
169 | + | * @param i the first colum |
170 | + | * @param j the second colum |
171 | + | */ |
172 | + | void swapColum(unsigned int i, unsigned int j){ |
173 | + | assert(i < Col && j < Col); |
174 | + | |
175 | + | for (unsigned int k = 0; k < Row; k++) |
176 | + | std::swap(data_[k][i], data_[k][j]); |
177 | + | } |
178 | ||
179 | /** | |
180 | * Tests if this matrix is identical to matrix m | |
# | Line 455 | Line 479 | namespace oopse { | |
479 | template<typename Real, unsigned int Row, unsigned int Col> | |
480 | std::ostream &operator<< ( std::ostream& o, const RectMatrix<Real, Row, Col>& m) { | |
481 | for (unsigned int i = 0; i < Row ; i++) { | |
482 | < | o << "(" |
482 | > | o << "("; |
483 | for (unsigned int j = 0; j < Col ; j++) { | |
484 | < | o << m(i, j) << "\t" |
484 | > | o << m(i, j); |
485 | > | if (j != Col -1) |
486 | > | o << "\t"; |
487 | } | |
488 | o << ")" << std::endl; | |
489 | } |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |