diff src/xpow.h @ 7789:82be108cc558

First attempt at single precision tyeps * * * corrections to qrupdate single precision routines * * * prefer demotion to single over promotion to double * * * Add single precision support to log2 function * * * Trivial PROJECT file update * * * Cache optimized hermitian/transpose methods * * * Add tests for tranpose/hermitian and ChangeLog entry for new transpose code
author David Bateman <dbateman@free.fr>
date Sun, 27 Apr 2008 22:34:17 +0200
parents a1dbe9d80eee
children 9b20a4847056
line wrap: on
line diff
--- a/src/xpow.h	Wed May 14 18:09:56 2008 +0200
+++ b/src/xpow.h	Sun Apr 27 22:34:17 2008 +0200
@@ -28,6 +28,8 @@
 
 class Matrix;
 class ComplexMatrix;
+class FloatMatrix;
+class FloatComplexMatrix;
 class octave_value;
 
 extern octave_value xpow (double a, double b);
@@ -79,6 +81,55 @@
 extern octave_value elem_xpow (const ComplexNDArray& a, const Complex& b);
 extern octave_value elem_xpow (const ComplexNDArray& a, const ComplexNDArray& b);
 
+extern octave_value xpow (float a, float b);
+extern octave_value xpow (float a, const FloatMatrix& b);
+extern octave_value xpow (float a, const FloatComplex& b);
+extern octave_value xpow (float a, const FloatComplexMatrix& b);
+
+extern octave_value xpow (const FloatMatrix& a, float b);
+extern octave_value xpow (const FloatMatrix& a, const FloatComplex& b);
+
+extern octave_value xpow (const FloatComplex& a, float b);
+extern octave_value xpow (const FloatComplex& a, const FloatMatrix& b);
+extern octave_value xpow (const FloatComplex& a, const FloatComplex& b);
+extern octave_value xpow (const FloatComplex& a, const FloatComplexMatrix& b);
+
+extern octave_value xpow (const FloatComplexMatrix& a, float b);
+extern octave_value xpow (const FloatComplexMatrix& a, const FloatComplex& b);
+
+extern octave_value elem_xpow (float a, const FloatMatrix& b);
+extern octave_value elem_xpow (float a, const FloatComplexMatrix& b);
+
+extern octave_value elem_xpow (const FloatMatrix& a, float b);
+extern octave_value elem_xpow (const FloatMatrix& a, const FloatMatrix& b);
+extern octave_value elem_xpow (const FloatMatrix& a, const FloatComplex& b);
+extern octave_value elem_xpow (const FloatMatrix& a, const FloatComplexMatrix& b);
+
+extern octave_value elem_xpow (const FloatComplex& a, const FloatMatrix& b);
+extern octave_value elem_xpow (const FloatComplex& a, const FloatComplexMatrix& b);
+
+extern octave_value elem_xpow (const FloatComplexMatrix& a, float b);
+extern octave_value elem_xpow (const FloatComplexMatrix& a, const FloatMatrix& b);
+extern octave_value elem_xpow (const FloatComplexMatrix& a, const FloatComplex& b);
+extern octave_value elem_xpow (const FloatComplexMatrix& a, const FloatComplexMatrix& b);
+
+
+extern octave_value elem_xpow (float a, const FloatNDArray& b);
+extern octave_value elem_xpow (float a, const FloatComplexNDArray& b);
+
+extern octave_value elem_xpow (const FloatNDArray& a, float b);
+extern octave_value elem_xpow (const FloatNDArray& a, const FloatNDArray& b);
+extern octave_value elem_xpow (const FloatNDArray& a, const FloatComplex& b);
+extern octave_value elem_xpow (const FloatNDArray& a, const FloatComplexNDArray& b);
+
+extern octave_value elem_xpow (const FloatComplex& a, const FloatNDArray& b);
+extern octave_value elem_xpow (const FloatComplex& a, const FloatComplexNDArray& b);
+
+extern octave_value elem_xpow (const FloatComplexNDArray& a, float b);
+extern octave_value elem_xpow (const FloatComplexNDArray& a, const FloatNDArray& b);
+extern octave_value elem_xpow (const FloatComplexNDArray& a, const FloatComplex& b);
+extern octave_value elem_xpow (const FloatComplexNDArray& a, const FloatComplexNDArray& b);
+
 #endif
 
 /*