toon-members
[Top][All Lists]
Advanced

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

[Toon-members] TooN helpers.h


From: Edward Rosten
Subject: [Toon-members] TooN helpers.h
Date: Mon, 22 Jun 2009 16:16:49 +0000

CVSROOT:        /cvsroot/toon
Module name:    TooN
Changes by:     Edward Rosten <edrosten>        09/06/22 16:16:49

Modified files:
        .              : helpers.h 

Log message:
        project/unproject for matrices from  
        Christopher Mei <cmei at robots dot ox dot ac dot uk>
        
        Not yet optimized using Operator return values. Only works for static
        matrices.

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

Patches:
Index: helpers.h
===================================================================
RCS file: /cvsroot/toon/TooN/helpers.h,v
retrieving revision 1.69
retrieving revision 1.70
diff -u -b -r1.69 -r1.70
--- helpers.h   18 Jun 2009 14:48:44 -0000      1.69
+++ helpers.h   22 Jun 2009 16:16:49 -0000      1.70
@@ -141,6 +141,29 @@
                return result;
        }
 
+       /**
+         \overload
+       */
+       template<int R, int C, typename Precision, typename Base> inline 
Matrix<R-1, C, Precision> project( const Matrix<R,C, Precision, Base> & m){
+       Matrix<R-1, C, Precision> result = m.template slice<0,0,R-1,C>();
+       for( int c = 0; c < C; ++c ) {
+           result.slice(0,c,R-1,1) /= m[R-1][c];
+       }
+       return result;
+   }
+
+       /**
+         \overload
+       */
+   template<int R, int C, typename Precision, typename Base> inline 
Matrix<R+1, C, Precision> unproject( const Matrix<R, C, Precision, Base> & m){
+       Matrix<R+1, C, Precision> result;
+       result.template slice<0,0,R,C>() = m;
+          result[R] = Ones;
+       return result;
+   }
+
+
+
        /// Frobenius (root of sum of squares) norm of input matrix \e m
        ///@param m \e m
        ///@ingroup gLinAlg




reply via email to

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