toon-members
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Toon-members] TooN helpers.h


From: Tom Drummond
Subject: [Toon-members] TooN helpers.h
Date: Wed, 22 Apr 2009 08:11:30 +0000

CVSROOT:        /cvsroot/toon
Module name:    TooN
Changes by:     Tom Drummond <twd20>    09/04/22 08:11:30

Modified files:
        .              : helpers.h 

Log message:
        added Symmetrize(Matrix<...>)

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/TooN/helpers.h?cvsroot=toon&r1=1.50&r2=1.51

Patches:
Index: helpers.h
===================================================================
RCS file: /cvsroot/toon/TooN/helpers.h,v
retrieving revision 1.50
retrieving revision 1.51
diff -u -b -r1.50 -r1.51
--- helpers.h   16 Apr 2009 17:59:09 -0000      1.50
+++ helpers.h   22 Apr 2009 08:11:30 -0000      1.51
@@ -368,5 +368,18 @@
                                return 1;
                return 0;
        }
+
+       /// Symmetrize a matrix
+       template<int Rows, int Cols, typename Precision, typename Base>
+       Symmetrize(Matrix<Rows,Cols,Precision,Base>& m){
+               SizeMismatch<Rows,Cols>::test(m.num_rows(), m.num_cols());
+               for(int r=0; r<m.num_rows()-1; r++){
+                       for(int c=r+1; c<m.num_cols(); c++){
+                               const Precision temp=(m(r,c)+m(c,r))/2;
+                               m(r,c)=temp;
+                               m(c,r)=temp;
+                       }
+               }
+       }
 }
 #endif




reply via email to

[Prev in Thread] Current Thread [Next in Thread]