GNU Octave 10.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 
Loading...
Searching...
No Matches
lo-qrupdate-proto.h
Go to the documentation of this file.
1////////////////////////////////////////////////////////////////////////
2//
3// Copyright (C) 2016-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_lo_qrupdate_proto_h)
27#define octave_lo_qrupdate_proto_h 1
28
29#include "octave-config.h"
30
31#include "f77-fcn.h"
32
33extern "C"
34{
35
36#if defined (HAVE_QRUPDATE)
37
38 // CH1DN
39
41 F77_FUNC (cch1dn, CCH1DN) (const F77_INT&, F77_CMPLX *,
42 const F77_INT&, F77_CMPLX *,
43 F77_REAL *, F77_INT&);
44
46 F77_FUNC (dch1dn, DCH1DN) (const F77_INT&, F77_DBLE *,
47 const F77_INT&, F77_DBLE *,
48 F77_DBLE *, F77_INT&);
49
51 F77_FUNC (sch1dn, SCH1DN) (const F77_INT&, F77_REAL *,
52 const F77_INT&, F77_REAL *,
53 F77_REAL *, F77_INT&);
54
56 F77_FUNC (zch1dn, ZCH1DN) (const F77_INT&, F77_DBLE_CMPLX *,
57 const F77_INT&, F77_DBLE_CMPLX *,
58 F77_DBLE *, F77_INT&);
59
60 // CH1UP
61
63 F77_FUNC (cch1up, CCH1UP) (const F77_INT&, F77_CMPLX *,
64 const F77_INT&, F77_CMPLX *, F77_REAL *);
65
67 F77_FUNC (dch1up, DCH1UP) (const F77_INT&, F77_DBLE *,
68 const F77_INT&, F77_DBLE *, F77_DBLE *);
69
71 F77_FUNC (sch1up, SCH1UP) (const F77_INT&, F77_REAL *,
72 const F77_INT&, F77_REAL *, F77_REAL *);
73
75 F77_FUNC (zch1up, ZCH1UP) (const F77_INT&, F77_DBLE_CMPLX *,
76 const F77_INT&, F77_DBLE_CMPLX *, F77_DBLE *);
77
78 // CHDEX
79
81 F77_FUNC (dchdex, DCHDEX) (const F77_INT&, F77_DBLE *,
82 const F77_INT&, const F77_INT&,
83 F77_DBLE *);
84
86 F77_FUNC (schdex, SCHDEX) (const F77_INT&, F77_REAL *,
87 const F77_INT&, const F77_INT&,
88 F77_REAL *);
89
91 F77_FUNC (cchdex, CCHDEX) (const F77_INT&, F77_CMPLX *,
92 const F77_INT&, const F77_INT&,
93 F77_REAL *);
94
96 F77_FUNC (zchdex, ZCHDEX) (const F77_INT&, F77_DBLE_CMPLX *,
97 const F77_INT&, const F77_INT&,
98 F77_DBLE *);
99
100 // CHINX
101
103 F77_FUNC (cchinx, CCHINX) (const F77_INT&, F77_CMPLX *,
104 const F77_INT&, const F77_INT&,
105 F77_CMPLX *, F77_REAL *, F77_INT&);
106
108 F77_FUNC (dchinx, DCHINX) (const F77_INT&, F77_DBLE *,
109 const F77_INT&, const F77_INT&,
110 F77_DBLE *, F77_DBLE *, F77_INT&);
111
113 F77_FUNC (schinx, SCHINX) (const F77_INT&, F77_REAL *,
114 const F77_INT&, const F77_INT&,
115 F77_REAL *, F77_REAL *, F77_INT&);
116
118 F77_FUNC (zchinx, ZCHINX) (const F77_INT&, F77_DBLE_CMPLX *,
119 const F77_INT&, const F77_INT&,
121
122 // CHSHX
123
125 F77_FUNC (cchshx, CCHSHX) (const F77_INT&, F77_CMPLX *,
126 const F77_INT&, const F77_INT&,
127 const F77_INT&, F77_CMPLX *, F77_REAL *);
128
130 F77_FUNC (dchshx, DCHSHX) (const F77_INT&, F77_DBLE *,
131 const F77_INT&, const F77_INT&,
132 const F77_INT&, F77_DBLE *);
133
135 F77_FUNC (schshx, SCHSHX) (const F77_INT&, F77_REAL *,
136 const F77_INT&, const F77_INT&,
137 const F77_INT&, F77_REAL *);
138
140 F77_FUNC (zchshx, ZCHSHX) (const F77_INT&, F77_DBLE_CMPLX *,
141 const F77_INT&, const F77_INT&,
142 const F77_INT&, F77_DBLE_CMPLX *, F77_DBLE *);
143
144 // QR1UP
145
147 F77_FUNC (cqr1up, CQR1UP) (const F77_INT&, const F77_INT&,
148 const F77_INT&, F77_CMPLX *,
149 const F77_INT&, F77_CMPLX *,
150 const F77_INT&, F77_CMPLX *,
152
154 F77_FUNC (dqr1up, DQR1UP) (const F77_INT&, const F77_INT&,
155 const F77_INT&, F77_DBLE *,
156 const F77_INT&, F77_DBLE *,
157 const F77_INT&, F77_DBLE *, F77_DBLE *, F77_DBLE *);
158
160 F77_FUNC (sqr1up, SQR1UP) (const F77_INT&, const F77_INT&,
161 const F77_INT&, F77_REAL *,
162 const F77_INT&, F77_REAL *,
163 const F77_INT&, F77_REAL *, F77_REAL *, F77_REAL *);
164
166 F77_FUNC (zqr1up, ZQR1UP) (const F77_INT&, const F77_INT&,
167 const F77_INT&, F77_DBLE_CMPLX *,
168 const F77_INT&, F77_DBLE_CMPLX *,
169 const F77_INT&, F77_DBLE_CMPLX *,
171
172 // QRDEC
173
175 F77_FUNC (cqrdec, CQRDEC) (const F77_INT&, const F77_INT&,
176 const F77_INT&, F77_CMPLX *,
177 const F77_INT&, F77_CMPLX *,
178 const F77_INT&, const F77_INT&,
179 F77_REAL *);
180
182 F77_FUNC (dqrdec, DQRDEC) (const F77_INT&, const F77_INT&,
183 const F77_INT&, F77_DBLE *,
184 const F77_INT&, F77_DBLE *,
185 const F77_INT&, const F77_INT&,
186 F77_DBLE *);
187
189 F77_FUNC (sqrdec, SQRDEC) (const F77_INT&, const F77_INT&,
190 const F77_INT&, F77_REAL *,
191 const F77_INT&, F77_REAL *,
192 const F77_INT&, const F77_INT&,
193 F77_REAL *);
194
196 F77_FUNC (zqrdec, ZQRDEC) (const F77_INT&, const F77_INT&,
197 const F77_INT&, F77_DBLE_CMPLX *,
198 const F77_INT&, F77_DBLE_CMPLX *,
199 const F77_INT&, const F77_INT&,
200 F77_DBLE *);
201
202 // QRDER
203
205 F77_FUNC (cqrder, CQRDER) (const F77_INT&, const F77_INT&,
206 F77_CMPLX *, const F77_INT&,
207 F77_CMPLX *, const F77_INT&,
208 const F77_INT&, F77_CMPLX *, F77_REAL *);
209
211 F77_FUNC (dqrder, DQRDER) (const F77_INT&, const F77_INT&,
212 F77_DBLE *, const F77_INT&,
213 F77_DBLE *, const F77_INT&,
214 const F77_INT&, F77_DBLE *);
215
217 F77_FUNC (sqrder, SQRDER) (const F77_INT&, const F77_INT&,
218 F77_REAL *, const F77_INT&,
219 F77_REAL *, const F77_INT&,
220 const F77_INT&, F77_REAL *);
221
223 F77_FUNC (zqrder, ZQRDER) (const F77_INT&, const F77_INT&,
224 F77_DBLE_CMPLX *, const F77_INT&,
225 F77_DBLE_CMPLX *, const F77_INT&,
226 const F77_INT&, F77_DBLE_CMPLX *, F77_DBLE *);
227
228 // QRINC
229
231 F77_FUNC (cqrinc, CQRINC) (const F77_INT&, const F77_INT&,
232 const F77_INT&, F77_CMPLX *,
233 const F77_INT&, F77_CMPLX *,
234 const F77_INT&, const F77_INT&,
235 const F77_CMPLX *, F77_REAL *);
236
238 F77_FUNC (dqrinc, DQRINC) (const F77_INT&, const F77_INT&,
239 const F77_INT&, F77_DBLE *,
240 const F77_INT&, F77_DBLE *,
241 const F77_INT&, const F77_INT&,
242 const F77_DBLE *, F77_DBLE *);
243
245 F77_FUNC (sqrinc, SQRINC) (const F77_INT&, const F77_INT&,
246 const F77_INT&, F77_REAL *,
247 const F77_INT&, F77_REAL *,
248 const F77_INT&, const F77_INT&,
249 const F77_REAL *, F77_REAL *);
250
252 F77_FUNC (zqrinc, ZQRINC) (const F77_INT&, const F77_INT&,
253 const F77_INT&, F77_DBLE_CMPLX *,
254 const F77_INT&, F77_DBLE_CMPLX *,
255 const F77_INT&, const F77_INT&,
256 const F77_DBLE_CMPLX *, F77_DBLE *);
257
258 // QRINR
259
261 F77_FUNC (cqrinr, CQRINR) (const F77_INT&, const F77_INT&,
262 F77_CMPLX *, const F77_INT&,
263 F77_CMPLX *, const F77_INT&,
264 const F77_INT&, const F77_CMPLX *,
265 F77_REAL *);
266
268 F77_FUNC (dqrinr, DQRINR) (const F77_INT&, const F77_INT&,
269 F77_DBLE *, const F77_INT&,
270 F77_DBLE *, const F77_INT&,
271 const F77_INT&, const F77_DBLE *,
272 F77_DBLE *);
273
275 F77_FUNC (sqrinr, SQRINR) (const F77_INT&, const F77_INT&,
276 F77_REAL *, const F77_INT&,
277 F77_REAL *, const F77_INT&,
278 const F77_INT&, const F77_REAL *,
279 F77_REAL *);
280
282 F77_FUNC (zqrinr, ZQRINR) (const F77_INT&, const F77_INT&,
283 F77_DBLE_CMPLX *, const F77_INT&,
284 F77_DBLE_CMPLX *, const F77_INT&,
285 const F77_INT&, const F77_DBLE_CMPLX *,
286 F77_DBLE *);
287
288 // QRSHC
289
291 F77_FUNC (cqrshc, CQRSHC) (const F77_INT&, const F77_INT&,
292 const F77_INT&, F77_CMPLX *,
293 const F77_INT&, F77_CMPLX *,
294 const F77_INT&, const F77_INT&,
295 const F77_INT&,
296 F77_CMPLX *, F77_REAL *);
298 F77_FUNC (dqrshc, DQRSHC) (const F77_INT&, const F77_INT&,
299 const F77_INT&, F77_DBLE *,
300 const F77_INT&, F77_DBLE *,
301 const F77_INT&, const F77_INT&,
302 const F77_INT&,
303 F77_DBLE *);
304
306 F77_FUNC (sqrshc, SQRSHC) (const F77_INT&, const F77_INT&,
307 const F77_INT&, F77_REAL *,
308 const F77_INT&, F77_REAL *,
309 const F77_INT&, const F77_INT&,
310 const F77_INT&,
311 F77_REAL *);
312
314 F77_FUNC (zqrshc, ZQRSHC) (const F77_INT&, const F77_INT&,
315 const F77_INT&, F77_DBLE_CMPLX *,
316 const F77_INT&, F77_DBLE_CMPLX *,
317 const F77_INT&, const F77_INT&,
318 const F77_INT&,
320
321#endif
322
323#if defined (HAVE_QRUPDATE_LUU)
324
325 // LU1UP
326
328 F77_FUNC (clu1up, CLU1UP) (const F77_INT&, const F77_INT&,
329 F77_CMPLX *, const F77_INT&,
330 F77_CMPLX *, const F77_INT&,
331 F77_CMPLX *, F77_CMPLX *);
332
334 F77_FUNC (dlu1up, DLU1UP) (const F77_INT&, const F77_INT&,
335 F77_DBLE *, const F77_INT&,
336 F77_DBLE *, const F77_INT&,
337 F77_DBLE *, F77_DBLE *);
338
340 F77_FUNC (slu1up, SLU1UP) (const F77_INT&, const F77_INT&,
341 F77_REAL *, const F77_INT&,
342 F77_REAL *, const F77_INT&,
343 F77_REAL *, F77_REAL *);
344
346 F77_FUNC (zlu1up, ZLU1UP) (const F77_INT&, const F77_INT&,
347 F77_DBLE_CMPLX *, const F77_INT&,
348 F77_DBLE_CMPLX *, const F77_INT&,
350
351 // LUP1UP
352
354 F77_FUNC (clup1up, CLUP1UP) (const F77_INT&, const F77_INT&,
355 F77_CMPLX *, const F77_INT&,
356 F77_CMPLX *, const F77_INT&,
357 F77_INT *, const F77_CMPLX *,
358 const F77_CMPLX *, F77_CMPLX *);
360 F77_FUNC (dlup1up, DLUP1UP) (const F77_INT&, const F77_INT&,
361 F77_DBLE *, const F77_INT&,
362 F77_DBLE *, const F77_INT&,
363 F77_INT *, const F77_DBLE *,
364 const F77_DBLE *, F77_DBLE *);
365
367 F77_FUNC (slup1up, SLUP1UP) (const F77_INT&, const F77_INT&,
368 F77_REAL *, const F77_INT&,
369 F77_REAL *, const F77_INT&,
370 F77_INT *, const F77_REAL *,
371 const F77_REAL *, F77_REAL *);
372
374 F77_FUNC (zlup1up, ZLUP1UP) (const F77_INT&, const F77_INT&,
375 F77_DBLE_CMPLX *, const F77_INT&,
376 F77_DBLE_CMPLX *, const F77_INT&,
377 F77_INT *, const F77_DBLE_CMPLX *,
378 const F77_DBLE_CMPLX *, F77_DBLE_CMPLX *);
379
380#endif
381
382}
383
384#endif
float F77_REAL
Definition f77-fcn.h:303
double F77_DBLE
Definition f77-fcn.h:302
double _Complex F77_DBLE_CMPLX
Definition f77-fcn.h:304
octave_f77_int_type F77_INT
Definition f77-fcn.h:306
float _Complex F77_CMPLX
Definition f77-fcn.h:305
F77_RET_T(F77_CONST_CHAR_ARG_DECL, F77_CONST_CHAR_ARG_DECL, F77_CONST_CHAR_ARG_DECL, const F77_INT &, const F77_INT &, const F77_INT &, F77_INT &, F77_INT &, F77_DBLE *, const F77_INT &, F77_DBLE *, const F77_INT &, F77_DBLE *, F77_DBLE *, F77_DBLE *, const F77_INT &, F77_DBLE *, const F77_INT &, F77_DBLE *, const F77_INT &, F77_DBLE *, F77_INT *, F77_INT &F77_CHAR_ARG_LEN_DECL F77_CHAR_ARG_LEN_DECL F77_CHAR_ARG_LEN_DECL)
F77_RET_T F77_FUNC(cch1dn, CCH1DN)(const F77_INT &