diff --git a/cwVectOps.h b/cwVectOps.h index 8aae087..2f87704 100644 --- a/cwVectOps.h +++ b/cwVectOps.h @@ -72,7 +72,7 @@ namespace cw template< typename T > void zero( T* v, unsigned n ) - { fill(v,n,0); } + { fill(v,n,(T)0); } template< typename T > void ones( T* v, unsigned n ) @@ -379,6 +379,17 @@ namespace cw return beg + (incr*i); } + + template< typename T > + T* urand( T* y, unsigned yN, const T& min_val, const T& max_val ) + { + unsigned i = 0; + for(; i T sum( const T* v, unsigned n ) { @@ -419,6 +430,16 @@ namespace cw return sum; } + template< typename T0 > + T0 sum_sq( const T0* v, unsigned n ) + { + T0 sum = 0; + for(unsigned i=0; i