00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #if !defined (octave_xpow_h)
00025 #define octave_xpow_h 1
00026
00027 #include "oct-cmplx.h"
00028
00029 class Matrix;
00030 class ComplexMatrix;
00031 class FloatMatrix;
00032 class FloatComplexMatrix;
00033 class DiagMatrix;
00034 class ComplexDiagMatrix;
00035 class FloatDiagMatrix;
00036 class FloatComplexDiagMatrix;
00037 class PermMatrix;
00038 class NDArray;
00039 class FloatNDArray;
00040 class ComplexNDArray;
00041 class FloatComplexNDArray;
00042 class octave_value;
00043 class Range;
00044
00045 extern octave_value xpow (double a, double b);
00046 extern octave_value xpow (double a, const Matrix& b);
00047 extern octave_value xpow (double a, const Complex& b);
00048 extern octave_value xpow (double a, const ComplexMatrix& b);
00049
00050 extern octave_value xpow (const Matrix& a, double b);
00051 extern octave_value xpow (const Matrix& a, const Complex& b);
00052
00053 extern octave_value xpow (const DiagMatrix& a, double b);
00054 extern octave_value xpow (const DiagMatrix& a, const Complex& b);
00055
00056 extern octave_value xpow (const PermMatrix& a, double b);
00057
00058 extern octave_value xpow (const Complex& a, double b);
00059 extern octave_value xpow (const Complex& a, const Matrix& b);
00060 extern octave_value xpow (const Complex& a, const Complex& b);
00061 extern octave_value xpow (const Complex& a, const ComplexMatrix& b);
00062
00063 extern octave_value xpow (const ComplexMatrix& a, double b);
00064 extern octave_value xpow (const ComplexMatrix& a, const Complex& b);
00065
00066 extern octave_value xpow (const ComplexDiagMatrix& a, double b);
00067 extern octave_value xpow (const ComplexDiagMatrix& a, const Complex& b);
00068
00069 extern octave_value elem_xpow (double a, const Matrix& b);
00070 extern octave_value elem_xpow (double a, const ComplexMatrix& b);
00071 extern octave_value elem_xpow (double a, const Range& r);
00072
00073 extern octave_value elem_xpow (const Matrix& a, double b);
00074 extern octave_value elem_xpow (const Matrix& a, const Matrix& b);
00075 extern octave_value elem_xpow (const Matrix& a, const Complex& b);
00076 extern octave_value elem_xpow (const Matrix& a, const ComplexMatrix& b);
00077
00078 extern octave_value elem_xpow (const Complex& a, const Matrix& b);
00079 extern octave_value elem_xpow (const Complex& a, const ComplexMatrix& b);
00080 extern octave_value elem_xpow (const Complex& a, const Range& r);
00081
00082 extern octave_value elem_xpow (const ComplexMatrix& a, double b);
00083 extern octave_value elem_xpow (const ComplexMatrix& a, const Matrix& b);
00084 extern octave_value elem_xpow (const ComplexMatrix& a, const Complex& b);
00085 extern octave_value elem_xpow (const ComplexMatrix& a, const ComplexMatrix& b);
00086
00087
00088 extern octave_value elem_xpow (double a, const NDArray& b);
00089 extern octave_value elem_xpow (double a, const ComplexNDArray& b);
00090
00091 extern octave_value elem_xpow (const NDArray& a, double b);
00092 extern octave_value elem_xpow (const NDArray& a, const NDArray& b);
00093 extern octave_value elem_xpow (const NDArray& a, const Complex& b);
00094 extern octave_value elem_xpow (const NDArray& a, const ComplexNDArray& b);
00095
00096 extern octave_value elem_xpow (const Complex& a, const NDArray& b);
00097 extern octave_value elem_xpow (const Complex& a, const ComplexNDArray& b);
00098
00099 extern octave_value elem_xpow (const ComplexNDArray& a, double b);
00100 extern octave_value elem_xpow (const ComplexNDArray& a, const NDArray& b);
00101 extern octave_value elem_xpow (const ComplexNDArray& a, const Complex& b);
00102 extern octave_value elem_xpow (const ComplexNDArray& a, const ComplexNDArray& b);
00103
00104 extern octave_value xpow (float a, float b);
00105 extern octave_value xpow (float a, const FloatMatrix& b);
00106 extern octave_value xpow (float a, const FloatComplex& b);
00107 extern octave_value xpow (float a, const FloatComplexMatrix& b);
00108
00109 extern octave_value xpow (const FloatMatrix& a, float b);
00110 extern octave_value xpow (const FloatMatrix& a, const FloatComplex& b);
00111
00112 extern octave_value xpow (const FloatDiagMatrix& a, float b);
00113 extern octave_value xpow (const FloatDiagMatrix& a, const FloatComplex& b);
00114
00115 extern octave_value xpow (const FloatComplex& a, float b);
00116 extern octave_value xpow (const FloatComplex& a, const FloatMatrix& b);
00117 extern octave_value xpow (const FloatComplex& a, const FloatComplex& b);
00118 extern octave_value xpow (const FloatComplex& a, const FloatComplexMatrix& b);
00119
00120 extern octave_value xpow (const FloatComplexMatrix& a, float b);
00121 extern octave_value xpow (const FloatComplexMatrix& a, const FloatComplex& b);
00122
00123 extern octave_value xpow (const FloatComplexDiagMatrix& a, float b);
00124 extern octave_value xpow (const FloatComplexDiagMatrix& a, const FloatComplex& b);
00125
00126 extern octave_value elem_xpow (float a, const FloatMatrix& b);
00127 extern octave_value elem_xpow (float a, const FloatComplexMatrix& b);
00128
00129 extern octave_value elem_xpow (const FloatMatrix& a, float b);
00130 extern octave_value elem_xpow (const FloatMatrix& a, const FloatMatrix& b);
00131 extern octave_value elem_xpow (const FloatMatrix& a, const FloatComplex& b);
00132 extern octave_value elem_xpow (const FloatMatrix& a, const FloatComplexMatrix& b);
00133
00134 extern octave_value elem_xpow (const FloatComplex& a, const FloatMatrix& b);
00135 extern octave_value elem_xpow (const FloatComplex& a, const FloatComplexMatrix& b);
00136
00137 extern octave_value elem_xpow (const FloatComplexMatrix& a, float b);
00138 extern octave_value elem_xpow (const FloatComplexMatrix& a, const FloatMatrix& b);
00139 extern octave_value elem_xpow (const FloatComplexMatrix& a, const FloatComplex& b);
00140 extern octave_value elem_xpow (const FloatComplexMatrix& a, const FloatComplexMatrix& b);
00141
00142
00143 extern octave_value elem_xpow (float a, const FloatNDArray& b);
00144 extern octave_value elem_xpow (float a, const FloatComplexNDArray& b);
00145
00146 extern octave_value elem_xpow (const FloatNDArray& a, float b);
00147 extern octave_value elem_xpow (const FloatNDArray& a, const FloatNDArray& b);
00148 extern octave_value elem_xpow (const FloatNDArray& a, const FloatComplex& b);
00149 extern octave_value elem_xpow (const FloatNDArray& a, const FloatComplexNDArray& b);
00150
00151 extern octave_value elem_xpow (const FloatComplex& a, const FloatNDArray& b);
00152 extern octave_value elem_xpow (const FloatComplex& a, const FloatComplexNDArray& b);
00153
00154 extern octave_value elem_xpow (const FloatComplexNDArray& a, float b);
00155 extern octave_value elem_xpow (const FloatComplexNDArray& a, const FloatNDArray& b);
00156 extern octave_value elem_xpow (const FloatComplexNDArray& a, const FloatComplex& b);
00157 extern octave_value elem_xpow (const FloatComplexNDArray& a, const FloatComplexNDArray& b);
00158
00159 #endif
00160
00161
00162
00163
00164
00165