MatrixNN.h

00001 /****************************************************************************
00002  * Copyright 2005 Evan Drumwright
00003  * This library is distributed under the terms of the GNU General Public 
00004  * License (found in COPYING).
00005  ****************************************************************************/
00006 
00007 #ifndef _MATRIXNN_H
00008 #define _MATRIXNN_H
00009 
00010 #include <Physsim/VectorN.h>
00011 #include <Physsim/MatrixN.h>
00012 
00013 namespace Physsim {
00014                                 
00016 class MatrixNN : public MatrixN
00017 {
00018         public:
00019                 MatrixNN();
00020                 MatrixNN(unsigned dim);
00021                 MatrixNN(const MatrixN& source);
00022                 MatrixNN(const MatrixNN& source);
00023                 MatrixNN(unsigned int dim, const boost::shared_array<Real>  array);
00024                 void invert();
00025                 bool is_symmetric(Real tolerance) const;
00026                 static MatrixNN invert(const MatrixNN& m);
00027                 static MatrixNN zero(unsigned dim);
00028                 static MatrixNN identity(unsigned dim);
00029                 void set_identity();
00030                 virtual void operator=(const MatrixN& source) { assert(source.rows() == source.columns()); MatrixN::operator=(source); }
00031                 virtual void operator=(const MatrixNN& source) { MatrixN::operator=(source); }
00032 };
00033 }
00034 
00035 #endif
00036 

Generated on Wed Oct 24 14:54:21 2007 for Physsim by  doxygen 1.5.1