Mercurial > hg > octave-nkf
annotate src/xdiv.h @ 10825:cace99cb01ab
rewrite logm (M. Caliari, R.T. Guy)
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Wed, 28 Jul 2010 09:22:41 +0200 |
parents | f3b65e1ae355 |
children | fd0a3ac60b0e |
rev | line source |
---|---|
1 | 1 /* |
2 | |
8920 | 3 Copyright (C) 2008 Jaroslav Hajek |
7017 | 4 Copyright (C) 1993, 1994, 1995, 1996, 1997, 2003, 2005, 2006, 2007 |
5 John W. Eaton | |
1 | 6 |
7 This file is part of Octave. | |
8 | |
9 Octave is free software; you can redistribute it and/or modify it | |
10 under the terms of the GNU General Public License as published by the | |
7016 | 11 Free Software Foundation; either version 3 of the License, or (at your |
12 option) any later version. | |
1 | 13 |
14 Octave is distributed in the hope that it will be useful, but WITHOUT | |
15 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
16 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
17 for more details. | |
18 | |
19 You should have received a copy of the GNU General Public License | |
7016 | 20 along with Octave; see the file COPYING. If not, see |
21 <http://www.gnu.org/licenses/>. | |
1 | 22 |
23 */ | |
24 | |
383 | 25 #if !defined (octave_xdiv_h) |
26 #define octave_xdiv_h 1 | |
1 | 27 |
9661
afcf852256d2
optimize / and '\ for triangular matrices
Jaroslav Hajek <highegg@gmail.com>
parents:
8920
diff
changeset
|
28 #include "mx-defs.h" |
5785 | 29 #include "MatrixType.h" |
1651 | 30 |
5785 | 31 extern Matrix xdiv (const Matrix& a, const Matrix& b, MatrixType &typ); |
32 extern ComplexMatrix xdiv (const Matrix& a, const ComplexMatrix& b, | |
10313 | 33 MatrixType &typ); |
5785 | 34 extern ComplexMatrix xdiv (const ComplexMatrix& a, const Matrix& b, |
10313 | 35 MatrixType &typ); |
5785 | 36 extern ComplexMatrix xdiv (const ComplexMatrix& a, const ComplexMatrix& b, |
10313 | 37 MatrixType &typ); |
1 | 38 |
1800 | 39 extern Matrix x_el_div (double a, const Matrix& b); |
40 extern ComplexMatrix x_el_div (double a, const ComplexMatrix& b); | |
41 extern ComplexMatrix x_el_div (const Complex a, const Matrix& b); | |
42 extern ComplexMatrix x_el_div (const Complex a, const ComplexMatrix& b); | |
1 | 43 |
4543 | 44 extern NDArray x_el_div (double a, const NDArray& b); |
45 extern ComplexNDArray x_el_div (double a, const ComplexNDArray& b); | |
46 extern ComplexNDArray x_el_div (const Complex a, const NDArray& b); | |
47 extern ComplexNDArray x_el_div (const Complex a, const ComplexNDArray& b); | |
48 | |
9661
afcf852256d2
optimize / and '\ for triangular matrices
Jaroslav Hajek <highegg@gmail.com>
parents:
8920
diff
changeset
|
49 extern Matrix xleftdiv (const Matrix& a, const Matrix& b, MatrixType &typ, |
afcf852256d2
optimize / and '\ for triangular matrices
Jaroslav Hajek <highegg@gmail.com>
parents:
8920
diff
changeset
|
50 blas_trans_type transt = blas_no_trans); |
5785 | 51 extern ComplexMatrix xleftdiv (const Matrix& a, const ComplexMatrix& b, |
10313 | 52 MatrixType &typ, blas_trans_type transt = blas_no_trans); |
5785 | 53 extern ComplexMatrix xleftdiv (const ComplexMatrix& a, const Matrix& b, |
10313 | 54 MatrixType &typ, blas_trans_type transt = blas_no_trans); |
5785 | 55 extern ComplexMatrix xleftdiv (const ComplexMatrix& a, const ComplexMatrix& b, |
10313 | 56 MatrixType &typ, blas_trans_type transt = blas_no_trans); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
57 |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
58 extern FloatMatrix xdiv (const FloatMatrix& a, const FloatMatrix& b, MatrixType &typ); |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
59 extern FloatComplexMatrix xdiv (const FloatMatrix& a, const FloatComplexMatrix& b, |
10313 | 60 MatrixType &typ); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
61 extern FloatComplexMatrix xdiv (const FloatComplexMatrix& a, const FloatMatrix& b, |
10313 | 62 MatrixType &typ); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
63 extern FloatComplexMatrix xdiv (const FloatComplexMatrix& a, const FloatComplexMatrix& b, |
10313 | 64 MatrixType &typ); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
65 |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
66 extern FloatMatrix x_el_div (float a, const FloatMatrix& b); |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
67 extern FloatComplexMatrix x_el_div (float a, const FloatComplexMatrix& b); |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
68 extern FloatComplexMatrix x_el_div (const FloatComplex a, const FloatMatrix& b); |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
69 extern FloatComplexMatrix x_el_div (const FloatComplex a, const FloatComplexMatrix& b); |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
70 |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
71 extern FloatNDArray x_el_div (float a, const FloatNDArray& b); |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
72 extern FloatComplexNDArray x_el_div (float a, const FloatComplexNDArray& b); |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
73 extern FloatComplexNDArray x_el_div (const FloatComplex a, const FloatNDArray& b); |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
74 extern FloatComplexNDArray x_el_div (const FloatComplex a, const FloatComplexNDArray& b); |
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
75 |
9661
afcf852256d2
optimize / and '\ for triangular matrices
Jaroslav Hajek <highegg@gmail.com>
parents:
8920
diff
changeset
|
76 extern FloatMatrix xleftdiv (const FloatMatrix& a, const FloatMatrix& b, MatrixType &typ, |
afcf852256d2
optimize / and '\ for triangular matrices
Jaroslav Hajek <highegg@gmail.com>
parents:
8920
diff
changeset
|
77 blas_trans_type transt = blas_no_trans); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
78 extern FloatComplexMatrix xleftdiv (const FloatMatrix& a, const FloatComplexMatrix& b, |
10313 | 79 MatrixType &typ, blas_trans_type transt = blas_no_trans); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
80 extern FloatComplexMatrix xleftdiv (const FloatComplexMatrix& a, const FloatMatrix& b, |
10313 | 81 MatrixType &typ, blas_trans_type transt = blas_no_trans); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
82 extern FloatComplexMatrix xleftdiv (const FloatComplexMatrix& a, const FloatComplexMatrix& b, |
10313 | 83 MatrixType &typ, blas_trans_type transt = blas_no_trans); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7017
diff
changeset
|
84 |
8366
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
85 |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
86 extern Matrix xdiv (const Matrix& a, const DiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
87 extern ComplexMatrix xdiv (const ComplexMatrix& a, const DiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
88 extern ComplexMatrix xdiv (const ComplexMatrix& a, const ComplexDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
89 |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
90 extern DiagMatrix xdiv (const DiagMatrix& a, const DiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
91 extern ComplexDiagMatrix xdiv (const ComplexDiagMatrix& a, const DiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
92 extern ComplexDiagMatrix xdiv (const ComplexDiagMatrix& a, const ComplexDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
93 |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
94 extern FloatMatrix xdiv (const FloatMatrix& a, const FloatDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
95 extern FloatComplexMatrix xdiv (const FloatComplexMatrix& a, |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
96 const FloatDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
97 extern FloatComplexMatrix xdiv (const FloatMatrix& a, |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
98 const FloatComplexDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
99 extern FloatComplexMatrix xdiv (const FloatComplexMatrix& a, |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
100 const FloatComplexDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
101 |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
102 extern FloatDiagMatrix xdiv (const FloatDiagMatrix& a, const FloatDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
103 extern FloatComplexDiagMatrix xdiv (const FloatComplexDiagMatrix& a, |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
104 const FloatDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
105 extern FloatComplexDiagMatrix xdiv (const FloatComplexDiagMatrix& a, |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
106 const FloatComplexDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
107 |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
108 extern Matrix xleftdiv (const DiagMatrix& a, const Matrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
109 extern ComplexMatrix xleftdiv (const DiagMatrix& a, const ComplexMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
110 extern ComplexMatrix xleftdiv (const ComplexDiagMatrix& a, const ComplexMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
111 |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
112 extern DiagMatrix xleftdiv (const DiagMatrix& a, const DiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
113 extern ComplexDiagMatrix xleftdiv (const DiagMatrix& a, const ComplexDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
114 extern ComplexDiagMatrix xleftdiv (const ComplexDiagMatrix& a, const ComplexDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
115 |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
116 extern FloatMatrix xleftdiv (const FloatDiagMatrix& a, |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
117 const FloatMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
118 extern FloatComplexMatrix xleftdiv (const FloatDiagMatrix& a, |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
119 const FloatComplexMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
120 extern FloatComplexMatrix xleftdiv (const FloatComplexDiagMatrix& a, |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
121 const FloatComplexMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
122 |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
123 extern FloatDiagMatrix xleftdiv (const FloatDiagMatrix& a, |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
124 const FloatDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
125 extern FloatComplexDiagMatrix xleftdiv (const FloatDiagMatrix& a, |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
126 const FloatComplexDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
127 extern FloatComplexDiagMatrix xleftdiv (const FloatComplexDiagMatrix& a, |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
128 const FloatComplexDiagMatrix& b); |
8b1a2555c4e2
implement diagonal matrix objects
Jaroslav Hajek <highegg@gmail.com>
parents:
7789
diff
changeset
|
129 |
1 | 130 #endif |