GNU Octave 7.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
sparse-xdiv.h
Go to the documentation of this file.
1////////////////////////////////////////////////////////////////////////
2//
3// Copyright (C) 1998-2022 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_sparse_xdiv_h)
27#define octave_sparse_xdiv_h 1
28
29#include "octave-config.h"
30
31#include "oct-cmplx.h"
32#include "MatrixType.h"
33
34class DiagMatrix;
36class SparseMatrix;
38
39OCTAVE_NAMESPACE_BEGIN
40
41extern Matrix xdiv (const Matrix& a, const SparseMatrix& b, MatrixType& typ);
42extern ComplexMatrix xdiv (const Matrix& a, const SparseComplexMatrix& b,
43 MatrixType& typ);
44extern ComplexMatrix xdiv (const ComplexMatrix& a, const SparseMatrix& b,
45 MatrixType& typ);
46extern ComplexMatrix xdiv (const ComplexMatrix& a,
47 const SparseComplexMatrix& b, MatrixType& typ);
48
49extern SparseMatrix xdiv (const SparseMatrix& a, const SparseMatrix& b,
50 MatrixType& typ);
52 const SparseComplexMatrix& b, MatrixType& typ);
54 const SparseMatrix& b, MatrixType& typ);
56 const SparseComplexMatrix& b, MatrixType& typ);
57
58extern SparseMatrix xdiv (const SparseMatrix& a,
59 const DiagMatrix& b, MatrixType& typ);
61 const ComplexDiagMatrix& b, MatrixType& typ);
63 const DiagMatrix& b, MatrixType& typ);
65 const ComplexDiagMatrix& b, MatrixType& typ);
66
67extern Matrix elem_xdiv (double a, const SparseMatrix& b);
68extern ComplexMatrix elem_xdiv (double a, const SparseComplexMatrix& b);
69extern ComplexMatrix elem_xdiv (const Complex& a, const SparseMatrix& b);
70extern ComplexMatrix elem_xdiv (const Complex& a,
71 const SparseComplexMatrix& b);
72
73extern Matrix xleftdiv (const SparseMatrix& a, const Matrix& b,
74 MatrixType& typ);
75extern ComplexMatrix xleftdiv (const SparseMatrix& a, const ComplexMatrix& b,
76 MatrixType& typ);
77extern ComplexMatrix xleftdiv (const SparseComplexMatrix& a, const Matrix& b,
78 MatrixType& typ);
80 const ComplexMatrix& b, MatrixType& typ);
81
82extern SparseMatrix xleftdiv (const SparseMatrix& a, const SparseMatrix& b,
83 MatrixType& typ);
85 const SparseComplexMatrix& b,
86 MatrixType& typ);
88 const SparseMatrix& b, MatrixType& typ);
90 const SparseComplexMatrix& b,
91 MatrixType& typ);
92
93extern SparseMatrix xleftdiv (const DiagMatrix&, const SparseMatrix&,
94 MatrixType&);
96 const SparseMatrix&,
97 MatrixType&);
100 MatrixType&);
102 const SparseComplexMatrix&,
103 MatrixType&);
104
105OCTAVE_NAMESPACE_END
106
107#if defined (OCTAVE_PROVIDE_DEPRECATED_SYMBOLS)
108
109OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
110inline Matrix
111xdiv (const Matrix& a, const SparseMatrix& b, MatrixType& typ)
112{
113 return octave::xdiv (a, b, typ);
114}
115
116OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
117inline ComplexMatrix
118xdiv (const Matrix& a, const SparseComplexMatrix& b, MatrixType& typ)
119{
120 return octave::xdiv (a, b, typ);
121}
122
123OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
124inline ComplexMatrix
125xdiv (const ComplexMatrix& a, const SparseMatrix& b, MatrixType& typ)
126{
127 return octave::xdiv (a, b, typ);
128}
129
130OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
131inline ComplexMatrix
132xdiv (const ComplexMatrix& a, const SparseComplexMatrix& b, MatrixType& typ)
133{
134 return octave::xdiv (a, b, typ);
135}
136
137OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
138inline SparseMatrix
139xdiv (const SparseMatrix& a, const SparseMatrix& b, MatrixType& typ)
140{
141 return octave::xdiv (a, b, typ);
142}
143
144OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
146xdiv (const SparseMatrix& a, const SparseComplexMatrix& b, MatrixType& typ)
147{
148 return octave::xdiv (a, b, typ);
149}
150
151OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
153xdiv (const SparseComplexMatrix& a, const SparseMatrix& b, MatrixType& typ)
154{
155 return octave::xdiv (a, b, typ);
156}
157
158OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
161{
162 return octave::xdiv (a, b, typ);
163}
164
165OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
166inline SparseMatrix
167xdiv (const SparseMatrix& a, const DiagMatrix& b, MatrixType& typ)
168{
169 return octave::xdiv (a, b, typ);
170}
171
172OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
174xdiv (const SparseMatrix& a, const ComplexDiagMatrix& b, MatrixType& typ)
175{
176 return octave::xdiv (a, b, typ);
177}
178
179OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
181xdiv (const SparseComplexMatrix& a, const DiagMatrix& b, MatrixType& typ)
182{
183 return octave::xdiv (a, b, typ);
184}
185
186OCTAVE_DEPRECATED (7, "use 'octave::xdiv' instead")
188xdiv (const SparseComplexMatrix& a, const ComplexDiagMatrix& b, MatrixType& typ)
189{
190 return octave::xdiv (a, b, typ);
191}
192
193OCTAVE_DEPRECATED (7, "use 'octave::elem_xdiv' instead")
194inline Matrix
195x_el_div (double a, const SparseMatrix& b)
196{
197 return octave::elem_xdiv (a, b);
198}
199
200OCTAVE_DEPRECATED (7, "use 'octave::elem_xdiv' instead")
201inline ComplexMatrix
202x_el_div (double a, const SparseComplexMatrix& b)
203{
204 return octave::elem_xdiv (a, b);
205}
206
207OCTAVE_DEPRECATED (7, "use 'octave::elem_xdiv' instead")
208inline ComplexMatrix
209x_el_div (const Complex& a, const SparseMatrix& b)
210{
211 return octave::elem_xdiv (a, b);
212}
213
214OCTAVE_DEPRECATED (7, "use 'octave::elem_xdiv' instead")
215inline ComplexMatrix
216x_el_div (const Complex& a, const SparseComplexMatrix& b)
217{
218 return octave::elem_xdiv (a, b);
219}
220
221OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
222inline Matrix
223xleftdiv (const SparseMatrix& a, const Matrix& b, MatrixType& typ)
224{
225 return octave::xleftdiv (a, b, typ);
226}
227
228OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
229inline ComplexMatrix
230xleftdiv (const SparseMatrix& a, const ComplexMatrix& b, MatrixType& typ)
231{
232 return octave::xleftdiv (a, b, typ);
233}
234
235OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
236inline ComplexMatrix
237xleftdiv (const SparseComplexMatrix& a, const Matrix& b, MatrixType& typ)
238{
239 return octave::xleftdiv (a, b, typ);
240}
241
242OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
243inline ComplexMatrix
244xleftdiv (const SparseComplexMatrix& a, const ComplexMatrix& b, MatrixType& typ)
245{
246 return octave::xleftdiv (a, b, typ);
247}
248
249OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
250inline SparseMatrix
251xleftdiv (const SparseMatrix& a, const SparseMatrix& b, MatrixType& typ)
252{
253 return octave::xleftdiv (a, b, typ);
254}
255
256OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
258xleftdiv (const SparseMatrix& a, const SparseComplexMatrix& b, MatrixType& typ)
259{
260 return octave::xleftdiv (a, b, typ);
261}
262
263OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
265xleftdiv (const SparseComplexMatrix& a, const SparseMatrix& b, MatrixType& typ)
266{
267 return octave::xleftdiv (a, b, typ);
268}
269
270OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
273{
274 return octave::xleftdiv (a, b, typ);
275}
276
277OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
278inline SparseMatrix
279xleftdiv (const DiagMatrix& a, const SparseMatrix& b, MatrixType& typ)
280{
281 return octave::xleftdiv (a, b, typ);
282}
283
284OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
286xleftdiv (const ComplexDiagMatrix& a, const SparseMatrix& b, MatrixType& typ)
287{
288 return octave::xleftdiv (a, b, typ);
289}
290
291OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
293xleftdiv (const DiagMatrix& a, const SparseComplexMatrix& b, MatrixType& typ)
294{
295 return octave::xleftdiv (a, b, typ);
296}
297
298OCTAVE_DEPRECATED (7, "use 'octave::xleftdiv' instead")
301{
302 return octave::xleftdiv (a, b, typ);
303}
304
305#endif
306
307#endif
Definition: dMatrix.h:42
std::complex< double > Complex
Definition: oct-cmplx.h:33
Matrix elem_xdiv(double a, const SparseMatrix &b)
Definition: sparse-xdiv.cc:375
OCTAVE_NAMESPACE_BEGIN Matrix xdiv(const Matrix &a, const SparseMatrix &b, MatrixType &typ)
Definition: sparse-xdiv.cc:137
Matrix xleftdiv(const SparseMatrix &a, const Matrix &b, MatrixType &typ)
Definition: sparse-xdiv.cc:468