GNU Octave 10.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 
Loading...
Searching...
No Matches
xpow.h
Go to the documentation of this file.
1////////////////////////////////////////////////////////////////////////
2//
3// Copyright (C) 1993-2025 The Octave Project Developers
4//
5// See the file COPYRIGHT.md in the top-level directory of this
6// distribution or <https://octave.org/copyright/>.
7//
8// This file is part of Octave.
9//
10// Octave is free software: you can redistribute it and/or modify it
11// under the terms of the GNU General Public License as published by
12// the Free Software Foundation, either version 3 of the License, or
13// (at your option) any later version.
14//
15// Octave is distributed in the hope that it will be useful, but
16// WITHOUT ANY WARRANTY; without even the implied warranty of
17// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18// GNU General Public License for more details.
19//
20// You should have received a copy of the GNU General Public License
21// along with Octave; see the file COPYING. If not, see
22// <https://www.gnu.org/licenses/>.
23//
24////////////////////////////////////////////////////////////////////////
25
26#if ! defined (octave_xpow_h)
27#define octave_xpow_h 1
28
29#include "octave-config.h"
30
31#include "oct-cmplx.h"
32
33class Matrix;
34class ComplexMatrix;
35class FloatMatrix;
37class DiagMatrix;
39class FloatDiagMatrix;
41class PermMatrix;
42class NDArray;
43class FloatNDArray;
44class ComplexNDArray;
46class octave_value;
47
49
50extern OCTINTERP_API octave_value xpow (double a, double b);
51extern OCTINTERP_API octave_value xpow (double a, const Matrix& b);
52extern OCTINTERP_API octave_value xpow (double a, const Complex& b);
53extern OCTINTERP_API octave_value xpow (double a, const ComplexMatrix& b);
54
55extern OCTINTERP_API octave_value xpow (const Matrix& a, double b);
56extern OCTINTERP_API octave_value xpow (const Matrix& a, const Complex& b);
57
58extern OCTINTERP_API octave_value xpow (const DiagMatrix& a, double b);
59extern OCTINTERP_API octave_value xpow (const DiagMatrix& a, const Complex& b);
60
61extern OCTINTERP_API octave_value xpow (const PermMatrix& a, double b);
62
63extern OCTINTERP_API octave_value xpow (const Complex& a, double b);
64extern OCTINTERP_API octave_value xpow (const Complex& a, const Matrix& b);
65extern OCTINTERP_API octave_value xpow (const Complex& a, const Complex& b);
66extern OCTINTERP_API octave_value xpow (const Complex& a,
67 const ComplexMatrix& b);
68
69extern OCTINTERP_API octave_value xpow (const ComplexMatrix& a, double b);
70extern OCTINTERP_API octave_value xpow (const ComplexMatrix& a,
71 const Complex& b);
72
73extern OCTINTERP_API octave_value xpow (const ComplexDiagMatrix& a, double b);
74extern OCTINTERP_API octave_value xpow (const ComplexDiagMatrix& a,
75 const Complex& b);
76
77extern OCTINTERP_API octave_value elem_xpow (double a, const Matrix& b);
78extern OCTINTERP_API octave_value elem_xpow (double a, const ComplexMatrix& b);
79extern OCTINTERP_API octave_value elem_xpow (double a,
80 const octave::range<double>& r);
81
82extern OCTINTERP_API octave_value elem_xpow (const Matrix& a, double b);
83extern OCTINTERP_API octave_value elem_xpow (const Matrix& a, const Matrix& b);
84extern OCTINTERP_API octave_value elem_xpow (const Matrix& a, const Complex& b);
85extern OCTINTERP_API octave_value elem_xpow (const Matrix& a,
86 const ComplexMatrix& b);
87
88extern OCTINTERP_API octave_value elem_xpow (const Complex& a, const Matrix& b);
89extern OCTINTERP_API octave_value elem_xpow (const Complex& a,
90 const ComplexMatrix& b);
91extern OCTINTERP_API octave_value elem_xpow (const Complex& a,
92 const octave::range<double>& r);
93
94extern OCTINTERP_API octave_value elem_xpow (const ComplexMatrix& a, double b);
95extern OCTINTERP_API octave_value elem_xpow (const ComplexMatrix& a,
96 const Matrix& b);
97extern OCTINTERP_API octave_value elem_xpow (const ComplexMatrix& a,
98 const Complex& b);
99extern OCTINTERP_API octave_value elem_xpow (const ComplexMatrix& a,
100 const ComplexMatrix& b);
101
102extern OCTINTERP_API octave_value elem_xpow (double a, const NDArray& b);
103extern OCTINTERP_API octave_value elem_xpow (double a, const ComplexNDArray& b);
104
105extern OCTINTERP_API octave_value elem_xpow (const NDArray& a, double b);
106extern OCTINTERP_API octave_value elem_xpow (const NDArray& a,
107 const NDArray& b);
108extern OCTINTERP_API octave_value elem_xpow (const NDArray& a,
109 const Complex& b);
110extern OCTINTERP_API octave_value elem_xpow (const NDArray& a,
111 const ComplexNDArray& b);
112
113extern OCTINTERP_API octave_value elem_xpow (const Complex& a,
114 const NDArray& b);
115extern OCTINTERP_API octave_value elem_xpow (const Complex& a,
116 const ComplexNDArray& b);
117
118extern OCTINTERP_API octave_value elem_xpow (const ComplexNDArray& a,
119 double b);
120extern OCTINTERP_API octave_value elem_xpow (const ComplexNDArray& a,
121 const NDArray& b);
122extern OCTINTERP_API octave_value elem_xpow (const ComplexNDArray& a,
123 const Complex& b);
124extern OCTINTERP_API octave_value elem_xpow (const ComplexNDArray& a,
125 const ComplexNDArray& b);
126
127extern OCTINTERP_API octave_value xpow (float a, float b);
128extern OCTINTERP_API octave_value xpow (float a, const FloatMatrix& b);
129extern OCTINTERP_API octave_value xpow (float a, const FloatComplex& b);
130extern OCTINTERP_API octave_value xpow (float a, const FloatComplexMatrix& b);
131
132extern OCTINTERP_API octave_value xpow (const FloatMatrix& a, float b);
133extern OCTINTERP_API octave_value xpow (const FloatMatrix& a,
134 const FloatComplex& b);
135
136extern OCTINTERP_API octave_value xpow (const FloatDiagMatrix& a, float b);
137extern OCTINTERP_API octave_value xpow (const FloatDiagMatrix& a,
138 const FloatComplex& b);
139
140extern OCTINTERP_API octave_value xpow (const FloatComplex& a, float b);
141extern OCTINTERP_API octave_value xpow (const FloatComplex& a,
142 const FloatMatrix& b);
143extern OCTINTERP_API octave_value xpow (const FloatComplex& a,
144 const FloatComplex& b);
145extern OCTINTERP_API octave_value xpow (const FloatComplex& a,
146 const FloatComplexMatrix& b);
147
148extern OCTINTERP_API octave_value xpow (const FloatComplexMatrix& a, float b);
149extern OCTINTERP_API octave_value xpow (const FloatComplexMatrix& a,
150 const FloatComplex& b);
151
152extern OCTINTERP_API octave_value xpow (const FloatComplexDiagMatrix& a,
153 float b);
154extern OCTINTERP_API octave_value xpow (const FloatComplexDiagMatrix& a,
155 const FloatComplex& b);
156
157extern OCTINTERP_API octave_value elem_xpow (float a, const FloatMatrix& b);
158extern OCTINTERP_API octave_value elem_xpow (float a,
159 const FloatComplexMatrix& b);
160
161extern OCTINTERP_API octave_value elem_xpow (const FloatMatrix& a, float b);
162extern OCTINTERP_API octave_value elem_xpow (const FloatMatrix& a,
163 const FloatMatrix& b);
164extern OCTINTERP_API octave_value elem_xpow (const FloatMatrix& a,
165 const FloatComplex& b);
166extern OCTINTERP_API octave_value elem_xpow (const FloatMatrix& a,
167 const FloatComplexMatrix& b);
168
169extern OCTINTERP_API octave_value elem_xpow (const FloatComplex& a,
170 const FloatMatrix& b);
171extern OCTINTERP_API octave_value elem_xpow (const FloatComplex& a,
172 const FloatComplexMatrix& b);
173
174extern OCTINTERP_API octave_value elem_xpow (const FloatComplexMatrix& a,
175 float b);
176extern OCTINTERP_API octave_value elem_xpow (const FloatComplexMatrix& a,
177 const FloatMatrix& b);
178extern OCTINTERP_API octave_value elem_xpow (const FloatComplexMatrix& a,
179 const FloatComplex& b);
180extern OCTINTERP_API octave_value elem_xpow (const FloatComplexMatrix& a,
181 const FloatComplexMatrix& b);
182
183extern OCTINTERP_API octave_value elem_xpow (float a, const FloatNDArray& b);
184extern OCTINTERP_API octave_value elem_xpow (float a,
185 const FloatComplexNDArray& b);
186
187extern OCTINTERP_API octave_value elem_xpow (const FloatNDArray& a, float b);
188extern OCTINTERP_API octave_value elem_xpow (const FloatNDArray& a,
189 const FloatNDArray& b);
190extern OCTINTERP_API octave_value elem_xpow (const FloatNDArray& a,
191 const FloatComplex& b);
192extern OCTINTERP_API octave_value elem_xpow (const FloatNDArray& a,
193 const FloatComplexNDArray& b);
194
195extern OCTINTERP_API octave_value elem_xpow (const FloatComplex& a,
196 const FloatNDArray& b);
197extern OCTINTERP_API octave_value elem_xpow (const FloatComplex& a,
198 const FloatComplexNDArray& b);
199
200extern OCTINTERP_API octave_value elem_xpow (const FloatComplexNDArray& a,
201 float b);
202extern OCTINTERP_API octave_value elem_xpow (const FloatComplexNDArray& a,
203 const FloatNDArray& b);
204extern OCTINTERP_API octave_value elem_xpow (const FloatComplexNDArray& a,
205 const FloatComplex& b);
206extern OCTINTERP_API octave_value elem_xpow (const FloatComplexNDArray& a,
207 const FloatComplexNDArray& b);
208
209OCTAVE_END_NAMESPACE(octave)
210
211#endif
OCTAVE_BEGIN_NAMESPACE(octave) static octave_value daspk_fcn
std::complex< double > Complex
Definition oct-cmplx.h:33
std::complex< float > FloatComplex
Definition oct-cmplx.h:34
octave_value elem_xpow(double a, const Matrix &b)
Definition xpow.cc:668
octave_value xpow(double a, double b)
Definition xpow.cc:107