/*============================================================================= File: matrix.cpp Purpose: Revision: $Id: matrix_point.cpp,v 1.2 2002/05/13 21:07:45 philosophil Exp $ Created by: Philippe Lavoie (3 Oct, 1996) Modified by: Copyright notice: Copyright (C) 1996-1998 Philippe Lavoie This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. =============================================================================*/ #include "matrix.cpp" namespace PLib { double Matrix::norm(void) { int i,j ; double sumX, sumY, sumZ, maxsum; int init=0 ; Point3Df *ptr ; ptr = m-1 ; maxsum = -1 ; // shuts up the warning messages for(i=0;i(sumX+sumY+sumZ)) ? maxsum : (sumX+sumY+sumZ); else{ maxsum = (sumX+sumY+sumZ) ; init = 1; } ++ptr ; } return sqrt(maxsum); } double Matrix::norm(void) { int i,j ; double sumX, sumY, sumZ, maxsum; int init=0 ; Point3Dd *ptr ; ptr = m-1 ; maxsum = -1 ; // shuts up the warning messages for(i=0;i(sumX+sumY+sumZ)) ? maxsum : (sumX+sumY+sumZ); else{ maxsum = (sumX+sumY+sumZ) ; init = 1; } ++ptr ; } return sqrt(maxsum); } double Matrix::norm(void) { int i,j ; double sumX, sumY, sumZ, maxsum; int init=0 ; Point2Df *ptr ; ptr = m-1 ; maxsum = -1 ; // shuts up the warning messages for(i=0;i(sumX+sumY+sumZ)) ? maxsum : (sumX+sumY+sumZ); else{ maxsum = (sumX+sumY+sumZ) ; init = 1; } ++ptr ; } return sqrt(maxsum); } double Matrix::norm(void) { int i,j ; double sumX, sumY, sumZ, maxsum; int init=0 ; Point2Dd *ptr ; ptr = m-1 ; maxsum = -1 ; // shuts up the warning messages for(i=0;i(sumX+sumY+sumZ)) ? maxsum : (sumX+sumY+sumZ); else{ maxsum = (sumX+sumY+sumZ) ; init = 1; } ++ptr ; } return sqrt(maxsum); } #ifdef NO_IMPLICIT_TEMPLATES // Point3D instantiation template class Matrix ; template Matrix operator+(const Matrix&,const Matrix&); template Matrix operator-(const Matrix&,const Matrix&); template Matrix operator*(const Matrix&,const Matrix&); template Matrix operator*(const double,const Matrix&); template int operator==(const Matrix&,const Matrix&); // template int operator!=(const Matrix&,const Matrix&); template Matrix comm(const Matrix&,const Matrix&); template class Matrix ; template Matrix operator+(const Matrix&,const Matrix&); template Matrix operator-(const Matrix&,const Matrix&); template Matrix operator*(const Matrix&,const Matrix&); template Matrix operator*(const double,const Matrix&); template int operator==(const Matrix&,const Matrix&); //template int operator!=(const Matrix&,const Matrix&); template Matrix comm(const Matrix&,const Matrix&); // Point2D instantiation template class Matrix ; template Matrix operator+(const Matrix&,const Matrix&); template Matrix operator-(const Matrix&,const Matrix&); template Matrix operator*(const Matrix&,const Matrix&); template Matrix operator*(const double,const Matrix&); template int operator==(const Matrix&,const Matrix&); //template int operator!=(const Matrix&,const Matrix&); template Matrix comm(const Matrix&,const Matrix&); template class Matrix ; template Matrix operator+(const Matrix&,const Matrix&); template Matrix operator-(const Matrix&,const Matrix&); template Matrix operator*(const Matrix&,const Matrix&); template Matrix operator*(const double,const Matrix&); template int operator==(const Matrix&,const Matrix&); //template int operator!=(const Matrix&,const Matrix&); template Matrix comm(const Matrix&,const Matrix&); #endif }