alglib4 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +47 -0
  3. data/ext/alglib/alglib.cpp +537 -0
  4. data/ext/alglib/alglib_array_converters.cpp +86 -0
  5. data/ext/alglib/alglib_array_converters.h +15 -0
  6. data/ext/alglib/alglib_utils.cpp +10 -0
  7. data/ext/alglib/alglib_utils.h +6 -0
  8. data/ext/alglib/alglibinternal.cpp +21749 -0
  9. data/ext/alglib/alglibinternal.h +2168 -0
  10. data/ext/alglib/alglibmisc.cpp +9106 -0
  11. data/ext/alglib/alglibmisc.h +2114 -0
  12. data/ext/alglib/ap.cpp +20094 -0
  13. data/ext/alglib/ap.h +7244 -0
  14. data/ext/alglib/dataanalysis.cpp +52588 -0
  15. data/ext/alglib/dataanalysis.h +10601 -0
  16. data/ext/alglib/diffequations.cpp +1342 -0
  17. data/ext/alglib/diffequations.h +282 -0
  18. data/ext/alglib/extconf.rb +5 -0
  19. data/ext/alglib/fasttransforms.cpp +4696 -0
  20. data/ext/alglib/fasttransforms.h +1018 -0
  21. data/ext/alglib/integration.cpp +4249 -0
  22. data/ext/alglib/integration.h +869 -0
  23. data/ext/alglib/interpolation.cpp +74502 -0
  24. data/ext/alglib/interpolation.h +12264 -0
  25. data/ext/alglib/kernels_avx2.cpp +2171 -0
  26. data/ext/alglib/kernels_avx2.h +201 -0
  27. data/ext/alglib/kernels_fma.cpp +1065 -0
  28. data/ext/alglib/kernels_fma.h +137 -0
  29. data/ext/alglib/kernels_sse2.cpp +735 -0
  30. data/ext/alglib/kernels_sse2.h +100 -0
  31. data/ext/alglib/linalg.cpp +65182 -0
  32. data/ext/alglib/linalg.h +9927 -0
  33. data/ext/alglib/optimization.cpp +135331 -0
  34. data/ext/alglib/optimization.h +19235 -0
  35. data/ext/alglib/solvers.cpp +20488 -0
  36. data/ext/alglib/solvers.h +4781 -0
  37. data/ext/alglib/specialfunctions.cpp +10672 -0
  38. data/ext/alglib/specialfunctions.h +2305 -0
  39. data/ext/alglib/statistics.cpp +19791 -0
  40. data/ext/alglib/statistics.h +1359 -0
  41. data/ext/alglib/stdafx.h +2 -0
  42. data/gpl2.txt +339 -0
  43. data/gpl3.txt +674 -0
  44. data/lib/alglib/version.rb +3 -0
  45. data/lib/alglib.rb +4 -0
  46. metadata +101 -0
@@ -0,0 +1,2168 @@
1
+ /*************************************************************************
2
+ ALGLIB 4.04.0 (source code generated 2024-12-21)
3
+ Copyright (c) Sergey Bochkanov (ALGLIB project).
4
+
5
+ >>> SOURCE LICENSE >>>
6
+ This program is free software; you can redistribute it and/or modify
7
+ it under the terms of the GNU General Public License as published by
8
+ the Free Software Foundation (www.fsf.org); either version 2 of the
9
+ License, or (at your option) any later version.
10
+
11
+ This program is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU General Public License for more details.
15
+
16
+ A copy of the GNU General Public License is available at
17
+ http://www.fsf.org/licensing/licenses
18
+ >>> END OF LICENSE >>>
19
+ *************************************************************************/
20
+ #ifndef _alglibinternal_pkg_h
21
+ #define _alglibinternal_pkg_h
22
+ #include "ap.h"
23
+
24
+
25
+ /////////////////////////////////////////////////////////////////////////
26
+ //
27
+ // THIS SECTION CONTAINS COMPUTATIONAL CORE DECLARATIONS (DATATYPES)
28
+ //
29
+ /////////////////////////////////////////////////////////////////////////
30
+ namespace alglib_impl
31
+ {
32
+ #if defined(AE_COMPILE_APSERV) || !defined(AE_PARTIAL_BUILD)
33
+ typedef struct
34
+ {
35
+ ae_vector ba0;
36
+ ae_vector ia0;
37
+ ae_vector ia1;
38
+ ae_vector ia2;
39
+ ae_vector ia3;
40
+ ae_vector ra0;
41
+ ae_vector ra1;
42
+ ae_vector ra2;
43
+ ae_vector ra3;
44
+ ae_matrix rm0;
45
+ ae_matrix rm1;
46
+ } apbuffers;
47
+ typedef struct
48
+ {
49
+ ae_bool val;
50
+ } sboolean;
51
+ typedef struct
52
+ {
53
+ ae_vector val;
54
+ } sbooleanarray;
55
+ typedef struct
56
+ {
57
+ ae_int_t val;
58
+ } sinteger;
59
+ typedef struct
60
+ {
61
+ ae_vector val;
62
+ } sintegerarray;
63
+ typedef struct
64
+ {
65
+ double val;
66
+ } sreal;
67
+ typedef struct
68
+ {
69
+ ae_vector val;
70
+ } srealarray;
71
+ typedef struct
72
+ {
73
+ ae_complex val;
74
+ } scomplex;
75
+ typedef struct
76
+ {
77
+ ae_vector val;
78
+ } scomplexarray;
79
+ typedef struct
80
+ {
81
+ double rsum;
82
+ double rcnt;
83
+ double prior;
84
+ } savgcounter;
85
+ typedef struct
86
+ {
87
+ ae_int_t cnt;
88
+ ae_vector elems;
89
+ double prior;
90
+ } squantilecounter;
91
+ typedef struct
92
+ {
93
+ ae_int_t ttotal;
94
+ ae_int_t tcurrent;
95
+ ae_bool isrunning;
96
+ } stimer;
97
+ #endif
98
+ #if defined(AE_COMPILE_ABLASF) || !defined(AE_PARTIAL_BUILD)
99
+ #endif
100
+ #if defined(AE_COMPILE_HBLAS) || !defined(AE_PARTIAL_BUILD)
101
+ #endif
102
+ #if defined(AE_COMPILE_CREFLECTIONS) || !defined(AE_PARTIAL_BUILD)
103
+ #endif
104
+ #if defined(AE_COMPILE_SBLAS) || !defined(AE_PARTIAL_BUILD)
105
+ #endif
106
+ #if defined(AE_COMPILE_ABLASMKL) || !defined(AE_PARTIAL_BUILD)
107
+ #endif
108
+ #if defined(AE_COMPILE_SCODES) || !defined(AE_PARTIAL_BUILD)
109
+ #endif
110
+ #if defined(AE_COMPILE_TSORT) || !defined(AE_PARTIAL_BUILD)
111
+ #endif
112
+ #if defined(AE_COMPILE_BLAS) || !defined(AE_PARTIAL_BUILD)
113
+ #endif
114
+ #if defined(AE_COMPILE_ROTATIONS) || !defined(AE_PARTIAL_BUILD)
115
+ #endif
116
+ #if defined(AE_COMPILE_BASICSTATOPS) || !defined(AE_PARTIAL_BUILD)
117
+ #endif
118
+ #if defined(AE_COMPILE_APSTRUCT) || !defined(AE_PARTIAL_BUILD)
119
+ typedef struct
120
+ {
121
+ ae_int_t n;
122
+ ae_int_t nstored;
123
+ ae_vector items;
124
+ ae_vector locationof;
125
+ ae_int_t iteridx;
126
+ } niset;
127
+ typedef struct
128
+ {
129
+ ae_int_t storagemode;
130
+ ae_int_t k;
131
+ ae_int_t n;
132
+ ae_vector flagarray;
133
+ ae_vector vbegin;
134
+ ae_vector vallocated;
135
+ ae_vector vcnt;
136
+ ae_vector data;
137
+ ae_int_t dataused;
138
+ ae_int_t iterrow;
139
+ ae_int_t iteridx;
140
+ } kniset;
141
+ #endif
142
+ #if defined(AE_COMPILE_TRLINSOLVE) || !defined(AE_PARTIAL_BUILD)
143
+ #endif
144
+ #if defined(AE_COMPILE_SAFESOLVE) || !defined(AE_PARTIAL_BUILD)
145
+ #endif
146
+ #if defined(AE_COMPILE_XBLAS) || !defined(AE_PARTIAL_BUILD)
147
+ #endif
148
+ #if defined(AE_COMPILE_LINMIN) || !defined(AE_PARTIAL_BUILD)
149
+ typedef struct
150
+ {
151
+ ae_bool brackt;
152
+ ae_bool stage1;
153
+ ae_int_t infoc;
154
+ double dg;
155
+ double dgm;
156
+ double dginit;
157
+ double dgtest;
158
+ double dgx;
159
+ double dgxm;
160
+ double dgy;
161
+ double dgym;
162
+ double finit;
163
+ double ftest1;
164
+ double fm;
165
+ double fx;
166
+ double fxm;
167
+ double fy;
168
+ double fym;
169
+ double stx;
170
+ double sty;
171
+ double stmin;
172
+ double stmax;
173
+ double width;
174
+ double width1;
175
+ double xtrapf;
176
+ } linminstate;
177
+ typedef struct
178
+ {
179
+ ae_bool needf;
180
+ ae_vector x;
181
+ double f;
182
+ ae_int_t n;
183
+ ae_vector xbase;
184
+ ae_vector s;
185
+ double stplen;
186
+ double fcur;
187
+ double stpmax;
188
+ ae_int_t fmax;
189
+ ae_int_t nfev;
190
+ ae_int_t info;
191
+ rcommstate rstate;
192
+ } armijostate;
193
+ #endif
194
+ #if defined(AE_COMPILE_NEARUNITYUNIT) || !defined(AE_PARTIAL_BUILD)
195
+ #endif
196
+ #if defined(AE_COMPILE_NTHEORY) || !defined(AE_PARTIAL_BUILD)
197
+ #endif
198
+ #if defined(AE_COMPILE_FTBASE) || !defined(AE_PARTIAL_BUILD)
199
+ typedef struct
200
+ {
201
+ ae_matrix entries;
202
+ ae_vector buffer;
203
+ ae_vector precr;
204
+ ae_vector preci;
205
+ ae_shared_pool bluesteinpool;
206
+ } fasttransformplan;
207
+ #endif
208
+ #if defined(AE_COMPILE_HPCCORES) || !defined(AE_PARTIAL_BUILD)
209
+ typedef struct
210
+ {
211
+ ae_int_t chunksize;
212
+ ae_int_t ntotal;
213
+ ae_int_t nin;
214
+ ae_int_t nout;
215
+ ae_int_t wcount;
216
+ ae_vector batch4buf;
217
+ ae_vector hpcbuf;
218
+ ae_matrix xy;
219
+ ae_matrix xy2;
220
+ ae_vector xyrow;
221
+ ae_vector x;
222
+ ae_vector y;
223
+ ae_vector desiredy;
224
+ double e;
225
+ ae_vector g;
226
+ ae_vector tmp0;
227
+ } mlpbuffers;
228
+ #endif
229
+ #if defined(AE_COMPILE_ALGLIBBASICS) || !defined(AE_PARTIAL_BUILD)
230
+ #endif
231
+
232
+ }
233
+
234
+ /////////////////////////////////////////////////////////////////////////
235
+ //
236
+ // THIS SECTION CONTAINS C++ INTERFACE
237
+ //
238
+ /////////////////////////////////////////////////////////////////////////
239
+ namespace alglib
240
+ {
241
+
242
+
243
+ }
244
+
245
+ /////////////////////////////////////////////////////////////////////////
246
+ //
247
+ // THIS SECTION CONTAINS COMPUTATIONAL CORE DECLARATIONS (FUNCTIONS)
248
+ //
249
+ /////////////////////////////////////////////////////////////////////////
250
+ namespace alglib_impl
251
+ {
252
+ #if defined(AE_COMPILE_APSERV) || !defined(AE_PARTIAL_BUILD)
253
+ void seterrorflagdiff(ae_bool* flag,
254
+ double val,
255
+ double refval,
256
+ double tol,
257
+ double s,
258
+ ae_state *_state);
259
+ ae_bool alwaysfalse(ae_state *_state);
260
+ void touchboolean(ae_bool* a, ae_state *_state);
261
+ void touchint(ae_int_t* a, ae_state *_state);
262
+ void touchreal(double* a, ae_state *_state);
263
+ double coalesce(double a, double b, ae_state *_state);
264
+ ae_int_t coalescei(ae_int_t a, ae_int_t b, ae_state *_state);
265
+ double inttoreal(ae_int_t a, ae_state *_state);
266
+ double logbase2(double x, ae_state *_state);
267
+ ae_bool approxequal(double a, double b, double tol, ae_state *_state);
268
+ ae_bool approxequalrel(double a, double b, double tol, ae_state *_state);
269
+ void taskgenint1d(double a,
270
+ double b,
271
+ ae_int_t n,
272
+ /* Real */ ae_vector* x,
273
+ /* Real */ ae_vector* y,
274
+ ae_state *_state);
275
+ void taskgenint1dequidist(double a,
276
+ double b,
277
+ ae_int_t n,
278
+ /* Real */ ae_vector* x,
279
+ /* Real */ ae_vector* y,
280
+ ae_state *_state);
281
+ void taskgenint1dcheb1(double a,
282
+ double b,
283
+ ae_int_t n,
284
+ /* Real */ ae_vector* x,
285
+ /* Real */ ae_vector* y,
286
+ ae_state *_state);
287
+ void taskgenint1dcheb2(double a,
288
+ double b,
289
+ ae_int_t n,
290
+ /* Real */ ae_vector* x,
291
+ /* Real */ ae_vector* y,
292
+ ae_state *_state);
293
+ ae_bool aredistinct(/* Real */ const ae_vector* x,
294
+ ae_int_t n,
295
+ ae_state *_state);
296
+ ae_bool aresameboolean(ae_bool v1, ae_bool v2, ae_state *_state);
297
+ void setlengthzero(/* Real */ ae_vector* x,
298
+ ae_int_t n,
299
+ ae_state *_state);
300
+ void bvectorsetlengthatleast(/* Boolean */ ae_vector* x,
301
+ ae_int_t n,
302
+ ae_state *_state);
303
+ void ivectorsetlengthatleast(/* Integer */ ae_vector* x,
304
+ ae_int_t n,
305
+ ae_state *_state);
306
+ void rvectorsetlengthatleast(/* Real */ ae_vector* x,
307
+ ae_int_t n,
308
+ ae_state *_state);
309
+ void rmatrixsetlengthatleast(/* Real */ ae_matrix* x,
310
+ ae_int_t m,
311
+ ae_int_t n,
312
+ ae_state *_state);
313
+ void bmatrixsetlengthatleast(/* Boolean */ ae_matrix* x,
314
+ ae_int_t m,
315
+ ae_int_t n,
316
+ ae_state *_state);
317
+ void bvectorgrowto(/* Boolean */ ae_vector* x,
318
+ ae_int_t n,
319
+ ae_state *_state);
320
+ void ivectorgrowto(/* Integer */ ae_vector* x,
321
+ ae_int_t n,
322
+ ae_state *_state);
323
+ void rmatrixgrowrowsto(/* Real */ ae_matrix* a,
324
+ ae_int_t n,
325
+ ae_int_t mincols,
326
+ ae_state *_state);
327
+ void rmatrixgrowcolsto(/* Real */ ae_matrix* a,
328
+ ae_int_t n,
329
+ ae_int_t minrows,
330
+ ae_state *_state);
331
+ void rvectorgrowto(/* Real */ ae_vector* x,
332
+ ae_int_t n,
333
+ ae_state *_state);
334
+ void ivectorresize(/* Integer */ ae_vector* x,
335
+ ae_int_t n,
336
+ ae_state *_state);
337
+ void rvectorresize(/* Real */ ae_vector* x,
338
+ ae_int_t n,
339
+ ae_state *_state);
340
+ void rmatrixresize(/* Real */ ae_matrix* x,
341
+ ae_int_t m,
342
+ ae_int_t n,
343
+ ae_state *_state);
344
+ void imatrixresize(/* Integer */ ae_matrix* x,
345
+ ae_int_t m,
346
+ ae_int_t n,
347
+ ae_state *_state);
348
+ void ivectorappend(/* Integer */ ae_vector* x,
349
+ ae_int_t v,
350
+ ae_state *_state);
351
+ ae_bool isfiniteornanvector(/* Real */ const ae_vector* x,
352
+ ae_int_t n,
353
+ ae_state *_state);
354
+ ae_bool isfinitecvector(/* Complex */ const ae_vector* z,
355
+ ae_int_t n,
356
+ ae_state *_state);
357
+ ae_bool apservisfinitematrix(/* Real */ const ae_matrix* x,
358
+ ae_int_t m,
359
+ ae_int_t n,
360
+ ae_state *_state);
361
+ ae_bool apservisfinitecmatrix(/* Complex */ const ae_matrix* x,
362
+ ae_int_t m,
363
+ ae_int_t n,
364
+ ae_state *_state);
365
+ ae_bool isfinitecmatrix(/* Complex */ const ae_matrix* x,
366
+ ae_int_t m,
367
+ ae_int_t n,
368
+ ae_state *_state);
369
+ ae_bool isfinitertrmatrix(/* Real */ const ae_matrix* x,
370
+ ae_int_t n,
371
+ ae_bool isupper,
372
+ ae_state *_state);
373
+ ae_bool apservisfinitectrmatrix(/* Complex */ const ae_matrix* x,
374
+ ae_int_t n,
375
+ ae_bool isupper,
376
+ ae_state *_state);
377
+ ae_bool isfinitectrmatrix(/* Complex */ const ae_matrix* x,
378
+ ae_int_t n,
379
+ ae_bool isupper,
380
+ ae_state *_state);
381
+ ae_bool apservisfiniteornanmatrix(/* Real */ const ae_matrix* x,
382
+ ae_int_t m,
383
+ ae_int_t n,
384
+ ae_state *_state);
385
+ double safepythag2(double x, double y, ae_state *_state);
386
+ double safepythag3(double x, double y, double z, ae_state *_state);
387
+ ae_int_t saferdiv(double x, double y, double* r, ae_state *_state);
388
+ double safeminposrv(double x, double y, double v, ae_state *_state);
389
+ void apperiodicmap(double* x,
390
+ double a,
391
+ double b,
392
+ double* k,
393
+ ae_state *_state);
394
+ double randomnormal(ae_state *_state);
395
+ void randomunit(ae_int_t n, /* Real */ ae_vector* x, ae_state *_state);
396
+ void swapi(ae_int_t* v0, ae_int_t* v1, ae_state *_state);
397
+ void swapr(double* v0, double* v1, ae_state *_state);
398
+ void swaprows(/* Real */ ae_matrix* a,
399
+ ae_int_t i0,
400
+ ae_int_t i1,
401
+ ae_int_t ncols,
402
+ ae_state *_state);
403
+ void swapcols(/* Real */ ae_matrix* a,
404
+ ae_int_t j0,
405
+ ae_int_t j1,
406
+ ae_int_t nrows,
407
+ ae_state *_state);
408
+ void swapentries(/* Real */ ae_vector* a,
409
+ ae_int_t i0,
410
+ ae_int_t i1,
411
+ ae_int_t entrywidth,
412
+ ae_state *_state);
413
+ void swapentriesb(/* Boolean */ ae_vector* a,
414
+ ae_int_t i0,
415
+ ae_int_t i1,
416
+ ae_int_t entrywidth,
417
+ ae_state *_state);
418
+ void swapelements(/* Real */ ae_vector* a,
419
+ ae_int_t i0,
420
+ ae_int_t i1,
421
+ ae_state *_state);
422
+ void swapelementsi(/* Integer */ ae_vector* a,
423
+ ae_int_t i0,
424
+ ae_int_t i1,
425
+ ae_state *_state);
426
+ double maxreal3(double v0, double v1, double v2, ae_state *_state);
427
+ void inc(ae_int_t* v, ae_state *_state);
428
+ void dec(ae_int_t* v, ae_state *_state);
429
+ void threadunsafeinc(ae_int_t* v, ae_state *_state);
430
+ void threadunsafeincby(ae_int_t* v, ae_int_t k, ae_state *_state);
431
+ void threadunsafeset(ae_int_t* v, ae_int_t x, ae_state *_state);
432
+ ae_int_t threadunsafeget(ae_int_t* v, ae_state *_state);
433
+ void rthreadunsafeincby(double* v, double x, ae_state *_state);
434
+ void rthreadunsafeset(double* v, double x, ae_state *_state);
435
+ double rthreadunsafeget(double* v, ae_state *_state);
436
+ ae_int_t weakatomicfetchadd(ae_int_t* v, ae_int_t n, ae_state *_state);
437
+ void weakatomicacquirelock(ae_int_t* v,
438
+ ae_int_t expected,
439
+ ae_int_t newval,
440
+ ae_state *_state);
441
+ void weakatomicacquirelockv(/* Integer */ ae_vector* v,
442
+ ae_int_t idx,
443
+ ae_int_t expected,
444
+ ae_int_t newval,
445
+ ae_state *_state);
446
+ void weakatomicwaitforv(/* Integer */ ae_vector* v,
447
+ ae_int_t idx,
448
+ ae_int_t expected,
449
+ ae_int_t waitfor,
450
+ ae_state *_state);
451
+ void countdown(ae_int_t* v, ae_state *_state);
452
+ double possign(double x, ae_state *_state);
453
+ ae_int_t ipossign(double x, ae_state *_state);
454
+ double rmul2(double v0, double v1, ae_state *_state);
455
+ double rmul3(double v0, double v1, double v2, ae_state *_state);
456
+ double rmul4(double v0, double v1, double v2, double v3, ae_state *_state);
457
+ ae_int_t idivup(ae_int_t a, ae_int_t b, ae_state *_state);
458
+ ae_int_t imin2(ae_int_t i0, ae_int_t i1, ae_state *_state);
459
+ ae_int_t imin3(ae_int_t i0, ae_int_t i1, ae_int_t i2, ae_state *_state);
460
+ ae_int_t imin4(ae_int_t i0,
461
+ ae_int_t i1,
462
+ ae_int_t i2,
463
+ ae_int_t i3,
464
+ ae_state *_state);
465
+ ae_int_t imax2(ae_int_t i0, ae_int_t i1, ae_state *_state);
466
+ ae_int_t imax3(ae_int_t i0, ae_int_t i1, ae_int_t i2, ae_state *_state);
467
+ ae_int_t imax4(ae_int_t i0,
468
+ ae_int_t i1,
469
+ ae_int_t i2,
470
+ ae_int_t i3,
471
+ ae_state *_state);
472
+ double rmax3(double r0, double r1, double r2, ae_state *_state);
473
+ double rmaxabs2(double r0, double r1, ae_state *_state);
474
+ double rmaxabs3(double r0, double r1, double r2, ae_state *_state);
475
+ double boundval(double x, double b1, double b2, ae_state *_state);
476
+ ae_int_t iboundval(ae_int_t x, ae_int_t b1, ae_int_t b2, ae_state *_state);
477
+ double rboundval(double x, double b1, double b2, ae_state *_state);
478
+ ae_bool bcase2(ae_bool cond, ae_bool v0, ae_bool v1, ae_state *_state);
479
+ ae_int_t icase2(ae_bool cond, ae_int_t v0, ae_int_t v1, ae_state *_state);
480
+ double rcase2(ae_bool cond, double v0, double v1, ae_state *_state);
481
+ ae_int_t countnz1(/* Real */ const ae_vector* v,
482
+ ae_int_t n,
483
+ ae_state *_state);
484
+ ae_int_t countnz2(/* Real */ const ae_matrix* v,
485
+ ae_int_t m,
486
+ ae_int_t n,
487
+ ae_state *_state);
488
+ void alloccomplex(ae_serializer* s, ae_complex v, ae_state *_state);
489
+ void serializecomplex(ae_serializer* s, ae_complex v, ae_state *_state);
490
+ ae_complex unserializecomplex(ae_serializer* s, ae_state *_state);
491
+ void allocrealarray(ae_serializer* s,
492
+ /* Real */ const ae_vector* v,
493
+ ae_int_t n,
494
+ ae_state *_state);
495
+ void allocbooleanarray(ae_serializer* s,
496
+ /* Boolean */ const ae_vector* v,
497
+ ae_int_t n,
498
+ ae_state *_state);
499
+ void serializerealarray(ae_serializer* s,
500
+ /* Real */ const ae_vector* v,
501
+ ae_int_t n,
502
+ ae_state *_state);
503
+ void serializebooleanarray(ae_serializer* s,
504
+ /* Boolean */ const ae_vector* v,
505
+ ae_int_t n,
506
+ ae_state *_state);
507
+ void unserializerealarray(ae_serializer* s,
508
+ /* Real */ ae_vector* v,
509
+ ae_state *_state);
510
+ void unserializebooleanarray(ae_serializer* s,
511
+ /* Boolean */ ae_vector* v,
512
+ ae_state *_state);
513
+ void allocintegerarray(ae_serializer* s,
514
+ /* Integer */ const ae_vector* v,
515
+ ae_int_t n,
516
+ ae_state *_state);
517
+ void serializeintegerarray(ae_serializer* s,
518
+ /* Integer */ const ae_vector* v,
519
+ ae_int_t n,
520
+ ae_state *_state);
521
+ void unserializeintegerarray(ae_serializer* s,
522
+ /* Integer */ ae_vector* v,
523
+ ae_state *_state);
524
+ void allocrealmatrix(ae_serializer* s,
525
+ /* Real */ const ae_matrix* v,
526
+ ae_int_t n0,
527
+ ae_int_t n1,
528
+ ae_state *_state);
529
+ void serializerealmatrix(ae_serializer* s,
530
+ /* Real */ const ae_matrix* v,
531
+ ae_int_t n0,
532
+ ae_int_t n1,
533
+ ae_state *_state);
534
+ void unserializerealmatrix(ae_serializer* s,
535
+ /* Real */ ae_matrix* v,
536
+ ae_state *_state);
537
+ void copybooleanarray(/* Boolean */ const ae_vector* src,
538
+ /* Boolean */ ae_vector* dst,
539
+ ae_state *_state);
540
+ void copyintegerarray(/* Integer */ const ae_vector* src,
541
+ /* Integer */ ae_vector* dst,
542
+ ae_state *_state);
543
+ void copyrealarray(/* Real */ const ae_vector* src,
544
+ /* Real */ ae_vector* dst,
545
+ ae_state *_state);
546
+ void copyrealmatrix(/* Real */ const ae_matrix* src,
547
+ /* Real */ ae_matrix* dst,
548
+ ae_state *_state);
549
+ void unsetintegerarray(/* Integer */ ae_vector* a, ae_state *_state);
550
+ void unsetrealarray(/* Real */ ae_vector* a, ae_state *_state);
551
+ void unsetrealmatrix(/* Real */ ae_matrix* a, ae_state *_state);
552
+ void tiledsplit(ae_int_t tasksize,
553
+ ae_int_t tilesize,
554
+ ae_int_t* task0,
555
+ ae_int_t* task1,
556
+ ae_state *_state);
557
+ ae_int_t ibinarysearchlft(/* Integer */ const ae_vector* a,
558
+ ae_int_t i0,
559
+ ae_int_t i1,
560
+ ae_int_t v,
561
+ ae_state *_state);
562
+ ae_int_t ibinarysearchexisting(/* Integer */ const ae_vector* a,
563
+ ae_int_t i0,
564
+ ae_int_t i1,
565
+ ae_int_t v,
566
+ ae_state *_state);
567
+ ae_bool ilinearsearchispresent(/* Integer */ const ae_vector* a,
568
+ ae_int_t i0,
569
+ ae_int_t i1,
570
+ ae_int_t v,
571
+ ae_state *_state);
572
+ ae_bool ibinarysearchispresent(/* Integer */ const ae_vector* a,
573
+ ae_int_t i0,
574
+ ae_int_t i1,
575
+ ae_int_t v,
576
+ ae_state *_state);
577
+ ae_int_t recsearch(/* Integer */ const ae_vector* a,
578
+ ae_int_t nrec,
579
+ ae_int_t nheader,
580
+ ae_int_t i0,
581
+ ae_int_t i1,
582
+ /* Integer */ const ae_vector* b,
583
+ ae_state *_state);
584
+ void splitlengtheven(ae_int_t tasksize,
585
+ ae_int_t* task0,
586
+ ae_int_t* task1,
587
+ ae_state *_state);
588
+ ae_int_t chunkscount(ae_int_t tasksize,
589
+ ae_int_t chunksize,
590
+ ae_state *_state);
591
+ double sparselevel2density(ae_state *_state);
592
+ ae_int_t matrixtilesizea(ae_state *_state);
593
+ ae_int_t matrixtilesizeb(ae_state *_state);
594
+ double smpactivationlevel(ae_state *_state);
595
+ double spawnlevel(ae_state *_state);
596
+ void splitlength(ae_int_t tasksize,
597
+ ae_int_t chunksize,
598
+ ae_int_t* task0,
599
+ ae_int_t* task1,
600
+ ae_state *_state);
601
+ void tracevectorautoprec(/* Real */ const ae_vector* a,
602
+ ae_int_t i0,
603
+ ae_int_t i1,
604
+ ae_state *_state);
605
+ void tracerowautoprec(/* Real */ const ae_matrix* a,
606
+ ae_int_t i,
607
+ ae_int_t j0,
608
+ ae_int_t j1,
609
+ ae_state *_state);
610
+ void tracevectorunscaledunshiftedautoprec(/* Real */ const ae_vector* x,
611
+ ae_int_t n,
612
+ /* Real */ const ae_vector* scl,
613
+ ae_bool applyscl,
614
+ /* Real */ const ae_vector* sft,
615
+ ae_bool applysft,
616
+ ae_state *_state);
617
+ void tracerownrm1autoprec(/* Real */ const ae_matrix* a,
618
+ ae_int_t i0,
619
+ ae_int_t i1,
620
+ ae_int_t j0,
621
+ ae_int_t j1,
622
+ ae_state *_state);
623
+ void tracevectore3(/* Real */ const ae_vector* a,
624
+ ae_int_t i0,
625
+ ae_int_t i1,
626
+ ae_state *_state);
627
+ void tracevectore6(/* Real */ const ae_vector* a,
628
+ ae_int_t i0,
629
+ ae_int_t i1,
630
+ ae_state *_state);
631
+ void tracevectore615(/* Real */ const ae_vector* a,
632
+ ae_int_t i0,
633
+ ae_int_t i1,
634
+ ae_bool usee15,
635
+ ae_state *_state);
636
+ void tracerownrm1e6(/* Real */ const ae_matrix* a,
637
+ ae_int_t i0,
638
+ ae_int_t i1,
639
+ ae_int_t j0,
640
+ ae_int_t j1,
641
+ ae_state *_state);
642
+ void tracespaces(ae_int_t cnt, ae_state *_state);
643
+ void traceangles(ae_int_t cnt, ae_state *_state);
644
+ double minspeedup(ae_state *_state);
645
+ #ifdef ALGLIB_NO_FAST_KERNELS
646
+ ae_int_t maxconcurrency(ae_state *_state);
647
+ #endif
648
+ void savgcounterinit(savgcounter* c, double priorvalue, ae_state *_state);
649
+ void savgcounterenqueue(savgcounter* c, double v, ae_state *_state);
650
+ double savgcounterget(const savgcounter* c, ae_state *_state);
651
+ void squantilecounterinit(squantilecounter* c,
652
+ double priorvalue,
653
+ ae_state *_state);
654
+ void squantilecounterenqueue(squantilecounter* c,
655
+ double v,
656
+ ae_state *_state);
657
+ double squantilecounterget(squantilecounter* c,
658
+ double q,
659
+ ae_state *_state);
660
+ void stimerinit(stimer* t, ae_state *_state);
661
+ void stimerstart(stimer* t, ae_state *_state);
662
+ void stimerstop(stimer* t, ae_state *_state);
663
+ void stimerstartcond(stimer* t, ae_bool cond, ae_state *_state);
664
+ void stimerstopcond(stimer* t, ae_bool cond, ae_state *_state);
665
+ double stimergetms(stimer* t, ae_state *_state);
666
+ double stimergetmsrunning(stimer* t, ae_state *_state);
667
+ void _apbuffers_init(void* _p, ae_state *_state, ae_bool make_automatic);
668
+ void _apbuffers_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
669
+ void _apbuffers_clear(void* _p);
670
+ void _apbuffers_destroy(void* _p);
671
+ void _sboolean_init(void* _p, ae_state *_state, ae_bool make_automatic);
672
+ void _sboolean_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
673
+ void _sboolean_clear(void* _p);
674
+ void _sboolean_destroy(void* _p);
675
+ void _sbooleanarray_init(void* _p, ae_state *_state, ae_bool make_automatic);
676
+ void _sbooleanarray_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
677
+ void _sbooleanarray_clear(void* _p);
678
+ void _sbooleanarray_destroy(void* _p);
679
+ void _sinteger_init(void* _p, ae_state *_state, ae_bool make_automatic);
680
+ void _sinteger_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
681
+ void _sinteger_clear(void* _p);
682
+ void _sinteger_destroy(void* _p);
683
+ void _sintegerarray_init(void* _p, ae_state *_state, ae_bool make_automatic);
684
+ void _sintegerarray_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
685
+ void _sintegerarray_clear(void* _p);
686
+ void _sintegerarray_destroy(void* _p);
687
+ void _sreal_init(void* _p, ae_state *_state, ae_bool make_automatic);
688
+ void _sreal_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
689
+ void _sreal_clear(void* _p);
690
+ void _sreal_destroy(void* _p);
691
+ void _srealarray_init(void* _p, ae_state *_state, ae_bool make_automatic);
692
+ void _srealarray_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
693
+ void _srealarray_clear(void* _p);
694
+ void _srealarray_destroy(void* _p);
695
+ void _scomplex_init(void* _p, ae_state *_state, ae_bool make_automatic);
696
+ void _scomplex_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
697
+ void _scomplex_clear(void* _p);
698
+ void _scomplex_destroy(void* _p);
699
+ void _scomplexarray_init(void* _p, ae_state *_state, ae_bool make_automatic);
700
+ void _scomplexarray_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
701
+ void _scomplexarray_clear(void* _p);
702
+ void _scomplexarray_destroy(void* _p);
703
+ void _savgcounter_init(void* _p, ae_state *_state, ae_bool make_automatic);
704
+ void _savgcounter_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
705
+ void _savgcounter_clear(void* _p);
706
+ void _savgcounter_destroy(void* _p);
707
+ void _squantilecounter_init(void* _p, ae_state *_state, ae_bool make_automatic);
708
+ void _squantilecounter_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
709
+ void _squantilecounter_clear(void* _p);
710
+ void _squantilecounter_destroy(void* _p);
711
+ void _stimer_init(void* _p, ae_state *_state, ae_bool make_automatic);
712
+ void _stimer_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
713
+ void _stimer_clear(void* _p);
714
+ void _stimer_destroy(void* _p);
715
+ #endif
716
+ #if defined(AE_COMPILE_ABLASF) || !defined(AE_PARTIAL_BUILD)
717
+ #ifdef ALGLIB_NO_FAST_KERNELS
718
+ double rdotv(ae_int_t n,
719
+ /* Real */ const ae_vector* x,
720
+ /* Real */ const ae_vector* y,
721
+ ae_state *_state);
722
+ #endif
723
+ #ifdef ALGLIB_NO_FAST_KERNELS
724
+ double rdotvr(ae_int_t n,
725
+ /* Real */ const ae_vector* x,
726
+ /* Real */ const ae_matrix* a,
727
+ ae_int_t i,
728
+ ae_state *_state);
729
+ #endif
730
+ #ifdef ALGLIB_NO_FAST_KERNELS
731
+ double rdotrr(ae_int_t n,
732
+ /* Real */ const ae_matrix* a,
733
+ ae_int_t ia,
734
+ /* Real */ const ae_matrix* b,
735
+ ae_int_t ib,
736
+ ae_state *_state);
737
+ #endif
738
+ #ifdef ALGLIB_NO_FAST_KERNELS
739
+ double rdotv2(ae_int_t n,
740
+ /* Real */ const ae_vector* x,
741
+ ae_state *_state);
742
+ #endif
743
+ #ifdef ALGLIB_NO_FAST_KERNELS
744
+ void raddv(ae_int_t n,
745
+ double alpha,
746
+ /* Real */ const ae_vector* y,
747
+ /* Real */ ae_vector* x,
748
+ ae_state *_state);
749
+ #endif
750
+ #ifdef ALGLIB_NO_FAST_KERNELS
751
+ void rmuladdv(ae_int_t n,
752
+ /* Real */ const ae_vector* y,
753
+ /* Real */ const ae_vector* z,
754
+ /* Real */ ae_vector* x,
755
+ ae_state *_state);
756
+ #endif
757
+ #ifdef ALGLIB_NO_FAST_KERNELS
758
+ void rnegmuladdv(ae_int_t n,
759
+ /* Real */ const ae_vector* y,
760
+ /* Real */ const ae_vector* z,
761
+ /* Real */ ae_vector* x,
762
+ ae_state *_state);
763
+ #endif
764
+ #ifdef ALGLIB_NO_FAST_KERNELS
765
+ void rcopymuladdv(ae_int_t n,
766
+ /* Real */ const ae_vector* y,
767
+ /* Real */ const ae_vector* z,
768
+ /* Real */ const ae_vector* x,
769
+ /* Real */ ae_vector* r,
770
+ ae_state *_state);
771
+ #endif
772
+ #ifdef ALGLIB_NO_FAST_KERNELS
773
+ void rcopynegmuladdv(ae_int_t n,
774
+ /* Real */ const ae_vector* y,
775
+ /* Real */ const ae_vector* z,
776
+ /* Real */ const ae_vector* x,
777
+ /* Real */ ae_vector* r,
778
+ ae_state *_state);
779
+ #endif
780
+ #ifdef ALGLIB_NO_FAST_KERNELS
781
+ void raddvx(ae_int_t n,
782
+ double alpha,
783
+ /* Real */ const ae_vector* y,
784
+ ae_int_t offsy,
785
+ /* Real */ ae_vector* x,
786
+ ae_int_t offsx,
787
+ ae_state *_state);
788
+ #endif
789
+ void raddvc(ae_int_t n,
790
+ double alpha,
791
+ /* Real */ const ae_vector* y,
792
+ /* Real */ ae_matrix* x,
793
+ ae_int_t colidx,
794
+ ae_state *_state);
795
+ #ifdef ALGLIB_NO_FAST_KERNELS
796
+ void raddvr(ae_int_t n,
797
+ double alpha,
798
+ /* Real */ const ae_vector* y,
799
+ /* Real */ ae_matrix* x,
800
+ ae_int_t rowidx,
801
+ ae_state *_state);
802
+ #endif
803
+ #ifdef ALGLIB_NO_FAST_KERNELS
804
+ void rmergemulv(ae_int_t n,
805
+ /* Real */ const ae_vector* y,
806
+ /* Real */ ae_vector* x,
807
+ ae_state *_state);
808
+ #endif
809
+ #ifdef ALGLIB_NO_FAST_KERNELS
810
+ void rmergemulvr(ae_int_t n,
811
+ /* Real */ const ae_vector* y,
812
+ /* Real */ ae_matrix* x,
813
+ ae_int_t rowidx,
814
+ ae_state *_state);
815
+ #endif
816
+ #ifdef ALGLIB_NO_FAST_KERNELS
817
+ void rmergemulrv(ae_int_t n,
818
+ /* Real */ const ae_matrix* y,
819
+ ae_int_t rowidx,
820
+ /* Real */ ae_vector* x,
821
+ ae_state *_state);
822
+ #endif
823
+ #ifdef ALGLIB_NO_FAST_KERNELS
824
+ void rmergedivv(ae_int_t n,
825
+ /* Real */ const ae_vector* y,
826
+ /* Real */ ae_vector* x,
827
+ ae_state *_state);
828
+ #endif
829
+ #ifdef ALGLIB_NO_FAST_KERNELS
830
+ void rmergedivvr(ae_int_t n,
831
+ /* Real */ const ae_vector* y,
832
+ /* Real */ ae_matrix* x,
833
+ ae_int_t rowidx,
834
+ ae_state *_state);
835
+ #endif
836
+ #ifdef ALGLIB_NO_FAST_KERNELS
837
+ void rmergedivrv(ae_int_t n,
838
+ /* Real */ const ae_matrix* y,
839
+ ae_int_t rowidx,
840
+ /* Real */ ae_vector* x,
841
+ ae_state *_state);
842
+ #endif
843
+ #ifdef ALGLIB_NO_FAST_KERNELS
844
+ void rmergemaxv(ae_int_t n,
845
+ /* Real */ const ae_vector* y,
846
+ /* Real */ ae_vector* x,
847
+ ae_state *_state);
848
+ #endif
849
+ #ifdef ALGLIB_NO_FAST_KERNELS
850
+ void rmergemaxvr(ae_int_t n,
851
+ /* Real */ const ae_vector* y,
852
+ /* Real */ ae_matrix* x,
853
+ ae_int_t rowidx,
854
+ ae_state *_state);
855
+ #endif
856
+ #ifdef ALGLIB_NO_FAST_KERNELS
857
+ void rmergemaxrv(ae_int_t n,
858
+ /* Real */ const ae_matrix* x,
859
+ ae_int_t rowidx,
860
+ /* Real */ ae_vector* y,
861
+ ae_state *_state);
862
+ #endif
863
+ #ifdef ALGLIB_NO_FAST_KERNELS
864
+ void rmergeminv(ae_int_t n,
865
+ /* Real */ const ae_vector* y,
866
+ /* Real */ ae_vector* x,
867
+ ae_state *_state);
868
+ #endif
869
+ #ifdef ALGLIB_NO_FAST_KERNELS
870
+ void rmergeminvr(ae_int_t n,
871
+ /* Real */ const ae_vector* y,
872
+ /* Real */ ae_matrix* x,
873
+ ae_int_t rowidx,
874
+ ae_state *_state);
875
+ #endif
876
+ #ifdef ALGLIB_NO_FAST_KERNELS
877
+ void rmergeminrv(ae_int_t n,
878
+ /* Real */ const ae_matrix* x,
879
+ ae_int_t rowidx,
880
+ /* Real */ ae_vector* y,
881
+ ae_state *_state);
882
+ #endif
883
+ #ifdef ALGLIB_NO_FAST_KERNELS
884
+ void raddrv(ae_int_t n,
885
+ double alpha,
886
+ /* Real */ const ae_matrix* y,
887
+ ae_int_t ridx,
888
+ /* Real */ ae_vector* x,
889
+ ae_state *_state);
890
+ #endif
891
+ #ifdef ALGLIB_NO_FAST_KERNELS
892
+ void raddrr(ae_int_t n,
893
+ double alpha,
894
+ /* Real */ const ae_matrix* y,
895
+ ae_int_t ridxsrc,
896
+ /* Real */ ae_matrix* x,
897
+ ae_int_t ridxdst,
898
+ ae_state *_state);
899
+ #endif
900
+ #ifdef ALGLIB_NO_FAST_KERNELS
901
+ void rmulv(ae_int_t n,
902
+ double v,
903
+ /* Real */ ae_vector* x,
904
+ ae_state *_state);
905
+ #endif
906
+ #ifdef ALGLIB_NO_FAST_KERNELS
907
+ void rmulr(ae_int_t n,
908
+ double v,
909
+ /* Real */ ae_matrix* x,
910
+ ae_int_t rowidx,
911
+ ae_state *_state);
912
+ #endif
913
+ #ifdef ALGLIB_NO_FAST_KERNELS
914
+ void rsqrtv(ae_int_t n, /* Real */ ae_vector* x, ae_state *_state);
915
+ #endif
916
+ #ifdef ALGLIB_NO_FAST_KERNELS
917
+ void rsqrtr(ae_int_t n,
918
+ /* Real */ ae_matrix* x,
919
+ ae_int_t rowidx,
920
+ ae_state *_state);
921
+ #endif
922
+ #ifdef ALGLIB_NO_FAST_KERNELS
923
+ void rmulvx(ae_int_t n,
924
+ double v,
925
+ /* Real */ ae_vector* x,
926
+ ae_int_t offsx,
927
+ ae_state *_state);
928
+ #endif
929
+ #ifdef ALGLIB_NO_FAST_KERNELS
930
+ double rmaxv(ae_int_t n,
931
+ /* Real */ const ae_vector* x,
932
+ ae_state *_state);
933
+ #endif
934
+ #ifdef ALGLIB_NO_FAST_KERNELS
935
+ double rmaxabsv(ae_int_t n,
936
+ /* Real */ const ae_vector* x,
937
+ ae_state *_state);
938
+ #endif
939
+ #ifdef ALGLIB_NO_FAST_KERNELS
940
+ double rmaxr(ae_int_t n,
941
+ /* Real */ const ae_matrix* x,
942
+ ae_int_t rowidx,
943
+ ae_state *_state);
944
+ #endif
945
+ #ifdef ALGLIB_NO_FAST_KERNELS
946
+ double rmaxabsr(ae_int_t n,
947
+ /* Real */ const ae_matrix* x,
948
+ ae_int_t rowidx,
949
+ ae_state *_state);
950
+ #endif
951
+ #ifdef ALGLIB_NO_FAST_KERNELS
952
+ void rsetvx(ae_int_t n,
953
+ double v,
954
+ /* Real */ ae_vector* x,
955
+ ae_int_t offsx,
956
+ ae_state *_state);
957
+ #endif
958
+ #ifdef ALGLIB_NO_FAST_KERNELS
959
+ void bsetv(ae_int_t n,
960
+ ae_bool v,
961
+ /* Boolean */ ae_vector* x,
962
+ ae_state *_state);
963
+ #endif
964
+ void csetv(ae_int_t n,
965
+ ae_complex v,
966
+ /* Complex */ ae_vector* x,
967
+ ae_state *_state);
968
+ void isetm(ae_int_t m,
969
+ ae_int_t n,
970
+ ae_int_t v,
971
+ /* Integer */ ae_matrix* a,
972
+ ae_state *_state);
973
+ #ifdef ALGLIB_NO_FAST_KERNELS
974
+ void rsetm(ae_int_t m,
975
+ ae_int_t n,
976
+ double v,
977
+ /* Real */ ae_matrix* a,
978
+ ae_state *_state);
979
+ #endif
980
+ void isetallocm(ae_int_t m,
981
+ ae_int_t n,
982
+ ae_int_t v,
983
+ /* Integer */ ae_matrix* a,
984
+ ae_state *_state);
985
+ void rsetallocm(ae_int_t m,
986
+ ae_int_t n,
987
+ double v,
988
+ /* Real */ ae_matrix* a,
989
+ ae_state *_state);
990
+ void callocv(ae_int_t n, /* Complex */ ae_vector* x, ae_state *_state);
991
+ void ballocv(ae_int_t n, /* Boolean */ ae_vector* x, ae_state *_state);
992
+ void rallocm(ae_int_t m,
993
+ ae_int_t n,
994
+ /* Real */ ae_matrix* a,
995
+ ae_state *_state);
996
+ void bsetallocv(ae_int_t n,
997
+ ae_bool v,
998
+ /* Boolean */ ae_vector* x,
999
+ ae_state *_state);
1000
+ void csetallocv(ae_int_t n,
1001
+ ae_complex v,
1002
+ /* Complex */ ae_vector* x,
1003
+ ae_state *_state);
1004
+ #ifdef ALGLIB_NO_FAST_KERNELS
1005
+ void rsetr(ae_int_t n,
1006
+ double v,
1007
+ /* Real */ ae_matrix* a,
1008
+ ae_int_t i,
1009
+ ae_state *_state);
1010
+ #endif
1011
+ void rsetc(ae_int_t n,
1012
+ double v,
1013
+ /* Real */ ae_matrix* a,
1014
+ ae_int_t j,
1015
+ ae_state *_state);
1016
+ void rcopym(ae_int_t m,
1017
+ ae_int_t n,
1018
+ /* Real */ const ae_matrix* x,
1019
+ /* Real */ ae_matrix* y,
1020
+ ae_state *_state);
1021
+ void rcopyallocm(ae_int_t m,
1022
+ ae_int_t n,
1023
+ /* Real */ const ae_matrix* x,
1024
+ /* Real */ ae_matrix* y,
1025
+ ae_state *_state);
1026
+ void bcopyallocv(ae_int_t n,
1027
+ /* Boolean */ const ae_vector* x,
1028
+ /* Boolean */ ae_vector* y,
1029
+ ae_state *_state);
1030
+ void rgrowrowsfixedcolsm(ae_int_t m,
1031
+ ae_int_t colscnt,
1032
+ /* Real */ ae_matrix* a,
1033
+ ae_state *_state);
1034
+ void rappendrowfixedcolsm(ae_int_t n,
1035
+ ae_int_t colscnt,
1036
+ /* Real */ ae_matrix* a,
1037
+ ae_state *_state);
1038
+ #ifdef ALGLIB_NO_FAST_KERNELS
1039
+ void rcopymulv(ae_int_t n,
1040
+ double v,
1041
+ /* Real */ const ae_vector* x,
1042
+ /* Real */ ae_vector* y,
1043
+ ae_state *_state);
1044
+ #endif
1045
+ #ifdef ALGLIB_NO_FAST_KERNELS
1046
+ void rcopymulvr(ae_int_t n,
1047
+ double v,
1048
+ /* Real */ const ae_vector* x,
1049
+ /* Real */ ae_matrix* y,
1050
+ ae_int_t ridx,
1051
+ ae_state *_state);
1052
+ #endif
1053
+ void rcopymulvc(ae_int_t n,
1054
+ double v,
1055
+ /* Real */ const ae_vector* x,
1056
+ /* Real */ ae_matrix* y,
1057
+ ae_int_t cidx,
1058
+ ae_state *_state);
1059
+ #ifdef ALGLIB_NO_FAST_KERNELS
1060
+ void rcopyvr(ae_int_t n,
1061
+ /* Real */ const ae_vector* x,
1062
+ /* Real */ ae_matrix* a,
1063
+ ae_int_t i,
1064
+ ae_state *_state);
1065
+ #endif
1066
+ #ifdef ALGLIB_NO_FAST_KERNELS
1067
+ void rcopyrv(ae_int_t n,
1068
+ /* Real */ const ae_matrix* a,
1069
+ ae_int_t i,
1070
+ /* Real */ ae_vector* x,
1071
+ ae_state *_state);
1072
+ #endif
1073
+ #ifdef ALGLIB_NO_FAST_KERNELS
1074
+ void rcopyrr(ae_int_t n,
1075
+ /* Real */ const ae_matrix* a,
1076
+ ae_int_t i,
1077
+ /* Real */ ae_matrix* b,
1078
+ ae_int_t k,
1079
+ ae_state *_state);
1080
+ #endif
1081
+ void rcopyvc(ae_int_t n,
1082
+ /* Real */ const ae_vector* x,
1083
+ /* Real */ ae_matrix* a,
1084
+ ae_int_t j,
1085
+ ae_state *_state);
1086
+ void rcopycv(ae_int_t n,
1087
+ /* Real */ const ae_matrix* a,
1088
+ ae_int_t j,
1089
+ /* Real */ ae_vector* x,
1090
+ ae_state *_state);
1091
+ #ifdef ALGLIB_NO_FAST_KERNELS
1092
+ void rgemv(ae_int_t m,
1093
+ ae_int_t n,
1094
+ double alpha,
1095
+ /* Real */ const ae_matrix* a,
1096
+ ae_int_t opa,
1097
+ /* Real */ const ae_vector* x,
1098
+ double beta,
1099
+ /* Real */ ae_vector* y,
1100
+ ae_state *_state);
1101
+ #endif
1102
+ #ifdef ALGLIB_NO_FAST_KERNELS
1103
+ void rgemvx(ae_int_t m,
1104
+ ae_int_t n,
1105
+ double alpha,
1106
+ /* Real */ const ae_matrix* a,
1107
+ ae_int_t ia,
1108
+ ae_int_t ja,
1109
+ ae_int_t opa,
1110
+ /* Real */ const ae_vector* x,
1111
+ ae_int_t ix,
1112
+ double beta,
1113
+ /* Real */ ae_vector* y,
1114
+ ae_int_t iy,
1115
+ ae_state *_state);
1116
+ #endif
1117
+ #ifdef ALGLIB_NO_FAST_KERNELS
1118
+ void rger(ae_int_t m,
1119
+ ae_int_t n,
1120
+ double alpha,
1121
+ /* Real */ const ae_vector* u,
1122
+ /* Real */ const ae_vector* v,
1123
+ /* Real */ ae_matrix* a,
1124
+ ae_state *_state);
1125
+ #endif
1126
+ #ifdef ALGLIB_NO_FAST_KERNELS
1127
+ void rtrsvx(ae_int_t n,
1128
+ /* Real */ const ae_matrix* a,
1129
+ ae_int_t ia,
1130
+ ae_int_t ja,
1131
+ ae_bool isupper,
1132
+ ae_bool isunit,
1133
+ ae_int_t optype,
1134
+ /* Real */ ae_vector* x,
1135
+ ae_int_t ix,
1136
+ ae_state *_state);
1137
+ #endif
1138
+ ae_bool rmatrixgerf(ae_int_t m,
1139
+ ae_int_t n,
1140
+ /* Real */ ae_matrix* a,
1141
+ ae_int_t ia,
1142
+ ae_int_t ja,
1143
+ double ralpha,
1144
+ /* Real */ const ae_vector* u,
1145
+ ae_int_t iu,
1146
+ /* Real */ const ae_vector* v,
1147
+ ae_int_t iv,
1148
+ ae_state *_state);
1149
+ ae_bool cmatrixrank1f(ae_int_t m,
1150
+ ae_int_t n,
1151
+ /* Complex */ ae_matrix* a,
1152
+ ae_int_t ia,
1153
+ ae_int_t ja,
1154
+ /* Complex */ const ae_vector* u,
1155
+ ae_int_t iu,
1156
+ /* Complex */ const ae_vector* v,
1157
+ ae_int_t iv,
1158
+ ae_state *_state);
1159
+ ae_bool rmatrixrank1f(ae_int_t m,
1160
+ ae_int_t n,
1161
+ /* Real */ ae_matrix* a,
1162
+ ae_int_t ia,
1163
+ ae_int_t ja,
1164
+ /* Real */ const ae_vector* u,
1165
+ ae_int_t iu,
1166
+ /* Real */ const ae_vector* v,
1167
+ ae_int_t iv,
1168
+ ae_state *_state);
1169
+ ae_bool cmatrixrighttrsmf(ae_int_t m,
1170
+ ae_int_t n,
1171
+ /* Complex */ const ae_matrix* a,
1172
+ ae_int_t i1,
1173
+ ae_int_t j1,
1174
+ ae_bool isupper,
1175
+ ae_bool isunit,
1176
+ ae_int_t optype,
1177
+ /* Complex */ ae_matrix* x,
1178
+ ae_int_t i2,
1179
+ ae_int_t j2,
1180
+ ae_state *_state);
1181
+ ae_bool cmatrixlefttrsmf(ae_int_t m,
1182
+ ae_int_t n,
1183
+ /* Complex */ const ae_matrix* a,
1184
+ ae_int_t i1,
1185
+ ae_int_t j1,
1186
+ ae_bool isupper,
1187
+ ae_bool isunit,
1188
+ ae_int_t optype,
1189
+ /* Complex */ ae_matrix* x,
1190
+ ae_int_t i2,
1191
+ ae_int_t j2,
1192
+ ae_state *_state);
1193
+ ae_bool rmatrixrighttrsmf(ae_int_t m,
1194
+ ae_int_t n,
1195
+ /* Real */ const ae_matrix* a,
1196
+ ae_int_t i1,
1197
+ ae_int_t j1,
1198
+ ae_bool isupper,
1199
+ ae_bool isunit,
1200
+ ae_int_t optype,
1201
+ /* Real */ ae_matrix* x,
1202
+ ae_int_t i2,
1203
+ ae_int_t j2,
1204
+ ae_state *_state);
1205
+ ae_bool rmatrixlefttrsmf(ae_int_t m,
1206
+ ae_int_t n,
1207
+ /* Real */ const ae_matrix* a,
1208
+ ae_int_t i1,
1209
+ ae_int_t j1,
1210
+ ae_bool isupper,
1211
+ ae_bool isunit,
1212
+ ae_int_t optype,
1213
+ /* Real */ ae_matrix* x,
1214
+ ae_int_t i2,
1215
+ ae_int_t j2,
1216
+ ae_state *_state);
1217
+ ae_bool cmatrixherkf(ae_int_t n,
1218
+ ae_int_t k,
1219
+ double alpha,
1220
+ /* Complex */ const ae_matrix* a,
1221
+ ae_int_t ia,
1222
+ ae_int_t ja,
1223
+ ae_int_t optypea,
1224
+ double beta,
1225
+ /* Complex */ ae_matrix* c,
1226
+ ae_int_t ic,
1227
+ ae_int_t jc,
1228
+ ae_bool isupper,
1229
+ ae_state *_state);
1230
+ ae_bool rmatrixsyrkf(ae_int_t n,
1231
+ ae_int_t k,
1232
+ double alpha,
1233
+ /* Real */ const ae_matrix* a,
1234
+ ae_int_t ia,
1235
+ ae_int_t ja,
1236
+ ae_int_t optypea,
1237
+ double beta,
1238
+ /* Real */ ae_matrix* c,
1239
+ ae_int_t ic,
1240
+ ae_int_t jc,
1241
+ ae_bool isupper,
1242
+ ae_state *_state);
1243
+ ae_bool cmatrixgemmf(ae_int_t m,
1244
+ ae_int_t n,
1245
+ ae_int_t k,
1246
+ ae_complex alpha,
1247
+ /* Complex */ const ae_matrix* a,
1248
+ ae_int_t ia,
1249
+ ae_int_t ja,
1250
+ ae_int_t optypea,
1251
+ /* Complex */ const ae_matrix* b,
1252
+ ae_int_t ib,
1253
+ ae_int_t jb,
1254
+ ae_int_t optypeb,
1255
+ ae_complex beta,
1256
+ /* Complex */ ae_matrix* c,
1257
+ ae_int_t ic,
1258
+ ae_int_t jc,
1259
+ ae_state *_state);
1260
+ void cmatrixgemmk(ae_int_t m,
1261
+ ae_int_t n,
1262
+ ae_int_t k,
1263
+ ae_complex alpha,
1264
+ /* Complex */ const ae_matrix* a,
1265
+ ae_int_t ia,
1266
+ ae_int_t ja,
1267
+ ae_int_t optypea,
1268
+ /* Complex */ const ae_matrix* b,
1269
+ ae_int_t ib,
1270
+ ae_int_t jb,
1271
+ ae_int_t optypeb,
1272
+ ae_complex beta,
1273
+ /* Complex */ ae_matrix* c,
1274
+ ae_int_t ic,
1275
+ ae_int_t jc,
1276
+ ae_state *_state);
1277
+ void rmatrixgemmk(ae_int_t m,
1278
+ ae_int_t n,
1279
+ ae_int_t k,
1280
+ double alpha,
1281
+ /* Real */ const ae_matrix* a,
1282
+ ae_int_t ia,
1283
+ ae_int_t ja,
1284
+ ae_int_t optypea,
1285
+ /* Real */ const ae_matrix* b,
1286
+ ae_int_t ib,
1287
+ ae_int_t jb,
1288
+ ae_int_t optypeb,
1289
+ double beta,
1290
+ /* Real */ ae_matrix* c,
1291
+ ae_int_t ic,
1292
+ ae_int_t jc,
1293
+ ae_state *_state);
1294
+ void rmatrixgemmk44v00(ae_int_t m,
1295
+ ae_int_t n,
1296
+ ae_int_t k,
1297
+ double alpha,
1298
+ /* Real */ const ae_matrix* a,
1299
+ ae_int_t ia,
1300
+ ae_int_t ja,
1301
+ /* Real */ const ae_matrix* b,
1302
+ ae_int_t ib,
1303
+ ae_int_t jb,
1304
+ double beta,
1305
+ /* Real */ ae_matrix* c,
1306
+ ae_int_t ic,
1307
+ ae_int_t jc,
1308
+ ae_state *_state);
1309
+ void rmatrixgemmk44v01(ae_int_t m,
1310
+ ae_int_t n,
1311
+ ae_int_t k,
1312
+ double alpha,
1313
+ /* Real */ const ae_matrix* a,
1314
+ ae_int_t ia,
1315
+ ae_int_t ja,
1316
+ /* Real */ const ae_matrix* b,
1317
+ ae_int_t ib,
1318
+ ae_int_t jb,
1319
+ double beta,
1320
+ /* Real */ ae_matrix* c,
1321
+ ae_int_t ic,
1322
+ ae_int_t jc,
1323
+ ae_state *_state);
1324
+ void rmatrixgemmk44v10(ae_int_t m,
1325
+ ae_int_t n,
1326
+ ae_int_t k,
1327
+ double alpha,
1328
+ /* Real */ const ae_matrix* a,
1329
+ ae_int_t ia,
1330
+ ae_int_t ja,
1331
+ /* Real */ const ae_matrix* b,
1332
+ ae_int_t ib,
1333
+ ae_int_t jb,
1334
+ double beta,
1335
+ /* Real */ ae_matrix* c,
1336
+ ae_int_t ic,
1337
+ ae_int_t jc,
1338
+ ae_state *_state);
1339
+ void rmatrixgemmk44v11(ae_int_t m,
1340
+ ae_int_t n,
1341
+ ae_int_t k,
1342
+ double alpha,
1343
+ /* Real */ const ae_matrix* a,
1344
+ ae_int_t ia,
1345
+ ae_int_t ja,
1346
+ /* Real */ const ae_matrix* b,
1347
+ ae_int_t ib,
1348
+ ae_int_t jb,
1349
+ double beta,
1350
+ /* Real */ ae_matrix* c,
1351
+ ae_int_t ic,
1352
+ ae_int_t jc,
1353
+ ae_state *_state);
1354
+ #endif
1355
+ #if defined(AE_COMPILE_HBLAS) || !defined(AE_PARTIAL_BUILD)
1356
+ void hermitianmatrixvectormultiply(/* Complex */ const ae_matrix* a,
1357
+ ae_bool isupper,
1358
+ ae_int_t i1,
1359
+ ae_int_t i2,
1360
+ /* Complex */ const ae_vector* x,
1361
+ ae_complex alpha,
1362
+ /* Complex */ ae_vector* y,
1363
+ ae_state *_state);
1364
+ void hermitianrank2update(/* Complex */ ae_matrix* a,
1365
+ ae_bool isupper,
1366
+ ae_int_t i1,
1367
+ ae_int_t i2,
1368
+ /* Complex */ const ae_vector* x,
1369
+ /* Complex */ const ae_vector* y,
1370
+ /* Complex */ ae_vector* t,
1371
+ ae_complex alpha,
1372
+ ae_state *_state);
1373
+ #endif
1374
+ #if defined(AE_COMPILE_CREFLECTIONS) || !defined(AE_PARTIAL_BUILD)
1375
+ void complexgeneratereflection(/* Complex */ ae_vector* x,
1376
+ ae_int_t n,
1377
+ ae_complex* tau,
1378
+ ae_state *_state);
1379
+ void complexapplyreflectionfromtheleft(/* Complex */ ae_matrix* c,
1380
+ ae_complex tau,
1381
+ /* Complex */ const ae_vector* v,
1382
+ ae_int_t m1,
1383
+ ae_int_t m2,
1384
+ ae_int_t n1,
1385
+ ae_int_t n2,
1386
+ /* Complex */ ae_vector* work,
1387
+ ae_state *_state);
1388
+ void complexapplyreflectionfromtheright(/* Complex */ ae_matrix* c,
1389
+ ae_complex tau,
1390
+ /* Complex */ ae_vector* v,
1391
+ ae_int_t m1,
1392
+ ae_int_t m2,
1393
+ ae_int_t n1,
1394
+ ae_int_t n2,
1395
+ /* Complex */ ae_vector* work,
1396
+ ae_state *_state);
1397
+ #endif
1398
+ #if defined(AE_COMPILE_SBLAS) || !defined(AE_PARTIAL_BUILD)
1399
+ void symmetricmatrixvectormultiply(/* Real */ const ae_matrix* a,
1400
+ ae_bool isupper,
1401
+ ae_int_t i1,
1402
+ ae_int_t i2,
1403
+ /* Real */ const ae_vector* x,
1404
+ double alpha,
1405
+ /* Real */ ae_vector* y,
1406
+ ae_state *_state);
1407
+ void symmetricrank2update(/* Real */ ae_matrix* a,
1408
+ ae_bool isupper,
1409
+ ae_int_t i1,
1410
+ ae_int_t i2,
1411
+ /* Real */ const ae_vector* x,
1412
+ /* Real */ const ae_vector* y,
1413
+ /* Real */ ae_vector* t,
1414
+ double alpha,
1415
+ ae_state *_state);
1416
+ #endif
1417
+ #if defined(AE_COMPILE_ABLASMKL) || !defined(AE_PARTIAL_BUILD)
1418
+ ae_bool rmatrixgermkl(ae_int_t m,
1419
+ ae_int_t n,
1420
+ /* Real */ ae_matrix* a,
1421
+ ae_int_t ia,
1422
+ ae_int_t ja,
1423
+ double alpha,
1424
+ /* Real */ const ae_vector* u,
1425
+ ae_int_t iu,
1426
+ /* Real */ const ae_vector* v,
1427
+ ae_int_t iv,
1428
+ ae_state *_state);
1429
+ ae_bool cmatrixrank1mkl(ae_int_t m,
1430
+ ae_int_t n,
1431
+ /* Complex */ ae_matrix* a,
1432
+ ae_int_t ia,
1433
+ ae_int_t ja,
1434
+ /* Complex */ const ae_vector* u,
1435
+ ae_int_t iu,
1436
+ /* Complex */ const ae_vector* v,
1437
+ ae_int_t iv,
1438
+ ae_state *_state);
1439
+ ae_bool rmatrixrank1mkl(ae_int_t m,
1440
+ ae_int_t n,
1441
+ /* Real */ ae_matrix* a,
1442
+ ae_int_t ia,
1443
+ ae_int_t ja,
1444
+ /* Real */ const ae_vector* u,
1445
+ ae_int_t iu,
1446
+ /* Real */ const ae_vector* v,
1447
+ ae_int_t iv,
1448
+ ae_state *_state);
1449
+ ae_bool cmatrixmvmkl(ae_int_t m,
1450
+ ae_int_t n,
1451
+ /* Complex */ const ae_matrix* a,
1452
+ ae_int_t ia,
1453
+ ae_int_t ja,
1454
+ ae_int_t opa,
1455
+ /* Complex */ const ae_vector* x,
1456
+ ae_int_t ix,
1457
+ /* Complex */ ae_vector* y,
1458
+ ae_int_t iy,
1459
+ ae_state *_state);
1460
+ ae_bool rmatrixmvmkl(ae_int_t m,
1461
+ ae_int_t n,
1462
+ /* Real */ const ae_matrix* a,
1463
+ ae_int_t ia,
1464
+ ae_int_t ja,
1465
+ ae_int_t opa,
1466
+ /* Real */ const ae_vector* x,
1467
+ ae_int_t ix,
1468
+ /* Real */ ae_vector* y,
1469
+ ae_int_t iy,
1470
+ ae_state *_state);
1471
+ ae_bool rmatrixgemvmkl(ae_int_t m,
1472
+ ae_int_t n,
1473
+ double alpha,
1474
+ /* Real */ const ae_matrix* a,
1475
+ ae_int_t ia,
1476
+ ae_int_t ja,
1477
+ ae_int_t opa,
1478
+ /* Real */ const ae_vector* x,
1479
+ ae_int_t ix,
1480
+ double beta,
1481
+ /* Real */ ae_vector* y,
1482
+ ae_int_t iy,
1483
+ ae_state *_state);
1484
+ ae_bool rmatrixtrsvmkl(ae_int_t n,
1485
+ /* Real */ const ae_matrix* a,
1486
+ ae_int_t ia,
1487
+ ae_int_t ja,
1488
+ ae_bool isupper,
1489
+ ae_bool isunit,
1490
+ ae_int_t optype,
1491
+ /* Real */ ae_vector* x,
1492
+ ae_int_t ix,
1493
+ ae_state *_state);
1494
+ ae_bool rmatrixsyrkmkl(ae_int_t n,
1495
+ ae_int_t k,
1496
+ double alpha,
1497
+ /* Real */ const ae_matrix* a,
1498
+ ae_int_t ia,
1499
+ ae_int_t ja,
1500
+ ae_int_t optypea,
1501
+ double beta,
1502
+ /* Real */ ae_matrix* c,
1503
+ ae_int_t ic,
1504
+ ae_int_t jc,
1505
+ ae_bool isupper,
1506
+ ae_state *_state);
1507
+ ae_bool cmatrixherkmkl(ae_int_t n,
1508
+ ae_int_t k,
1509
+ double alpha,
1510
+ /* Complex */ const ae_matrix* a,
1511
+ ae_int_t ia,
1512
+ ae_int_t ja,
1513
+ ae_int_t optypea,
1514
+ double beta,
1515
+ /* Complex */ ae_matrix* c,
1516
+ ae_int_t ic,
1517
+ ae_int_t jc,
1518
+ ae_bool isupper,
1519
+ ae_state *_state);
1520
+ ae_bool rmatrixgemmmkl(ae_int_t m,
1521
+ ae_int_t n,
1522
+ ae_int_t k,
1523
+ double alpha,
1524
+ /* Real */ const ae_matrix* a,
1525
+ ae_int_t ia,
1526
+ ae_int_t ja,
1527
+ ae_int_t optypea,
1528
+ /* Real */ const ae_matrix* b,
1529
+ ae_int_t ib,
1530
+ ae_int_t jb,
1531
+ ae_int_t optypeb,
1532
+ double beta,
1533
+ /* Real */ ae_matrix* c,
1534
+ ae_int_t ic,
1535
+ ae_int_t jc,
1536
+ ae_state *_state);
1537
+ ae_bool rmatrixsymvmkl(ae_int_t n,
1538
+ double alpha,
1539
+ /* Real */ const ae_matrix* a,
1540
+ ae_int_t ia,
1541
+ ae_int_t ja,
1542
+ ae_bool isupper,
1543
+ /* Real */ const ae_vector* x,
1544
+ ae_int_t ix,
1545
+ double beta,
1546
+ /* Real */ ae_vector* y,
1547
+ ae_int_t iy,
1548
+ ae_state *_state);
1549
+ ae_bool cmatrixgemmmkl(ae_int_t m,
1550
+ ae_int_t n,
1551
+ ae_int_t k,
1552
+ ae_complex alpha,
1553
+ /* Complex */ const ae_matrix* a,
1554
+ ae_int_t ia,
1555
+ ae_int_t ja,
1556
+ ae_int_t optypea,
1557
+ /* Complex */ const ae_matrix* b,
1558
+ ae_int_t ib,
1559
+ ae_int_t jb,
1560
+ ae_int_t optypeb,
1561
+ ae_complex beta,
1562
+ /* Complex */ ae_matrix* c,
1563
+ ae_int_t ic,
1564
+ ae_int_t jc,
1565
+ ae_state *_state);
1566
+ ae_bool cmatrixlefttrsmmkl(ae_int_t m,
1567
+ ae_int_t n,
1568
+ /* Complex */ const ae_matrix* a,
1569
+ ae_int_t i1,
1570
+ ae_int_t j1,
1571
+ ae_bool isupper,
1572
+ ae_bool isunit,
1573
+ ae_int_t optype,
1574
+ /* Complex */ ae_matrix* x,
1575
+ ae_int_t i2,
1576
+ ae_int_t j2,
1577
+ ae_state *_state);
1578
+ ae_bool cmatrixrighttrsmmkl(ae_int_t m,
1579
+ ae_int_t n,
1580
+ /* Complex */ const ae_matrix* a,
1581
+ ae_int_t i1,
1582
+ ae_int_t j1,
1583
+ ae_bool isupper,
1584
+ ae_bool isunit,
1585
+ ae_int_t optype,
1586
+ /* Complex */ ae_matrix* x,
1587
+ ae_int_t i2,
1588
+ ae_int_t j2,
1589
+ ae_state *_state);
1590
+ ae_bool rmatrixlefttrsmmkl(ae_int_t m,
1591
+ ae_int_t n,
1592
+ /* Real */ const ae_matrix* a,
1593
+ ae_int_t i1,
1594
+ ae_int_t j1,
1595
+ ae_bool isupper,
1596
+ ae_bool isunit,
1597
+ ae_int_t optype,
1598
+ /* Real */ ae_matrix* x,
1599
+ ae_int_t i2,
1600
+ ae_int_t j2,
1601
+ ae_state *_state);
1602
+ ae_bool rmatrixrighttrsmmkl(ae_int_t m,
1603
+ ae_int_t n,
1604
+ /* Real */ const ae_matrix* a,
1605
+ ae_int_t i1,
1606
+ ae_int_t j1,
1607
+ ae_bool isupper,
1608
+ ae_bool isunit,
1609
+ ae_int_t optype,
1610
+ /* Real */ ae_matrix* x,
1611
+ ae_int_t i2,
1612
+ ae_int_t j2,
1613
+ ae_state *_state);
1614
+ ae_bool spdmatrixcholeskymkl(/* Real */ ae_matrix* a,
1615
+ ae_int_t offs,
1616
+ ae_int_t n,
1617
+ ae_bool isupper,
1618
+ ae_bool* cholresult,
1619
+ ae_state *_state);
1620
+ ae_bool rmatrixplumkl(/* Real */ ae_matrix* a,
1621
+ ae_int_t offs,
1622
+ ae_int_t m,
1623
+ ae_int_t n,
1624
+ /* Integer */ ae_vector* pivots,
1625
+ ae_state *_state);
1626
+ ae_bool rmatrixbdmkl(/* Real */ ae_matrix* a,
1627
+ ae_int_t m,
1628
+ ae_int_t n,
1629
+ /* Real */ ae_vector* d,
1630
+ /* Real */ ae_vector* e,
1631
+ /* Real */ ae_vector* tauq,
1632
+ /* Real */ ae_vector* taup,
1633
+ ae_state *_state);
1634
+ ae_bool rmatrixbdmultiplybymkl(/* Real */ const ae_matrix* qp,
1635
+ ae_int_t m,
1636
+ ae_int_t n,
1637
+ /* Real */ const ae_vector* tauq,
1638
+ /* Real */ const ae_vector* taup,
1639
+ /* Real */ ae_matrix* z,
1640
+ ae_int_t zrows,
1641
+ ae_int_t zcolumns,
1642
+ ae_bool byq,
1643
+ ae_bool fromtheright,
1644
+ ae_bool dotranspose,
1645
+ ae_state *_state);
1646
+ ae_bool rmatrixhessenbergmkl(/* Real */ ae_matrix* a,
1647
+ ae_int_t n,
1648
+ /* Real */ ae_vector* tau,
1649
+ ae_state *_state);
1650
+ ae_bool rmatrixhessenbergunpackqmkl(/* Real */ const ae_matrix* a,
1651
+ ae_int_t n,
1652
+ /* Real */ const ae_vector* tau,
1653
+ /* Real */ ae_matrix* q,
1654
+ ae_state *_state);
1655
+ ae_bool smatrixtdmkl(/* Real */ ae_matrix* a,
1656
+ ae_int_t n,
1657
+ ae_bool isupper,
1658
+ /* Real */ ae_vector* tau,
1659
+ /* Real */ ae_vector* d,
1660
+ /* Real */ ae_vector* e,
1661
+ ae_state *_state);
1662
+ ae_bool smatrixtdunpackqmkl(/* Real */ const ae_matrix* a,
1663
+ ae_int_t n,
1664
+ ae_bool isupper,
1665
+ /* Real */ const ae_vector* tau,
1666
+ /* Real */ ae_matrix* q,
1667
+ ae_state *_state);
1668
+ ae_bool hmatrixtdmkl(/* Complex */ ae_matrix* a,
1669
+ ae_int_t n,
1670
+ ae_bool isupper,
1671
+ /* Complex */ ae_vector* tau,
1672
+ /* Real */ ae_vector* d,
1673
+ /* Real */ ae_vector* e,
1674
+ ae_state *_state);
1675
+ ae_bool hmatrixtdunpackqmkl(/* Complex */ const ae_matrix* a,
1676
+ ae_int_t n,
1677
+ ae_bool isupper,
1678
+ /* Complex */ const ae_vector* tau,
1679
+ /* Complex */ ae_matrix* q,
1680
+ ae_state *_state);
1681
+ ae_bool rmatrixbdsvdmkl(/* Real */ ae_vector* d,
1682
+ /* Real */ ae_vector* e,
1683
+ ae_int_t n,
1684
+ ae_bool isupper,
1685
+ /* Real */ ae_matrix* u,
1686
+ ae_int_t nru,
1687
+ /* Real */ ae_matrix* c,
1688
+ ae_int_t ncc,
1689
+ /* Real */ ae_matrix* vt,
1690
+ ae_int_t ncvt,
1691
+ ae_bool* svdresult,
1692
+ ae_state *_state);
1693
+ ae_bool rmatrixinternalschurdecompositionmkl(/* Real */ ae_matrix* h,
1694
+ ae_int_t n,
1695
+ ae_int_t tneeded,
1696
+ ae_int_t zneeded,
1697
+ /* Real */ ae_vector* wr,
1698
+ /* Real */ ae_vector* wi,
1699
+ /* Real */ ae_matrix* z,
1700
+ ae_int_t* info,
1701
+ ae_state *_state);
1702
+ ae_bool rmatrixinternaltrevcmkl(/* Real */ const ae_matrix* t,
1703
+ ae_int_t n,
1704
+ ae_int_t side,
1705
+ ae_int_t howmny,
1706
+ /* Real */ ae_matrix* vl,
1707
+ /* Real */ ae_matrix* vr,
1708
+ ae_int_t* m,
1709
+ ae_int_t* info,
1710
+ ae_state *_state);
1711
+ ae_bool smatrixtdevdmkl(/* Real */ ae_vector* d,
1712
+ /* Real */ ae_vector* e,
1713
+ ae_int_t n,
1714
+ ae_int_t zneeded,
1715
+ /* Real */ ae_matrix* z,
1716
+ ae_bool* evdresult,
1717
+ ae_state *_state);
1718
+ ae_bool sparsegemvcrsmkl(ae_int_t opa,
1719
+ ae_int_t arows,
1720
+ ae_int_t acols,
1721
+ double alpha,
1722
+ /* Real */ const ae_vector* vals,
1723
+ /* Integer */ const ae_vector* cidx,
1724
+ /* Integer */ const ae_vector* ridx,
1725
+ /* Real */ const ae_vector* x,
1726
+ ae_int_t ix,
1727
+ double beta,
1728
+ /* Real */ ae_vector* y,
1729
+ ae_int_t iy,
1730
+ ae_state *_state);
1731
+ #endif
1732
+ #if defined(AE_COMPILE_SCODES) || !defined(AE_PARTIAL_BUILD)
1733
+ ae_int_t getrdfserializationcode(ae_state *_state);
1734
+ ae_int_t getkdtreeserializationcode(ae_state *_state);
1735
+ ae_int_t getmlpserializationcode(ae_state *_state);
1736
+ ae_int_t getmlpeserializationcode(ae_state *_state);
1737
+ ae_int_t getrbfserializationcode(ae_state *_state);
1738
+ ae_int_t getspline2dserializationcode(ae_state *_state);
1739
+ ae_int_t getidwserializationcode(ae_state *_state);
1740
+ ae_int_t getsparsematrixserializationcode(ae_state *_state);
1741
+ ae_int_t getspline2dwithmissingnodesserializationcode(ae_state *_state);
1742
+ ae_int_t getspline1dserializationcode(ae_state *_state);
1743
+ ae_int_t getknnserializationcode(ae_state *_state);
1744
+ ae_int_t getlptestserializationcode(ae_state *_state);
1745
+ #endif
1746
+ #if defined(AE_COMPILE_TSORT) || !defined(AE_PARTIAL_BUILD)
1747
+ void tagsort(/* Real */ ae_vector* a,
1748
+ ae_int_t n,
1749
+ /* Integer */ ae_vector* p1,
1750
+ /* Integer */ ae_vector* p2,
1751
+ ae_state *_state);
1752
+ void tagsortbuf(/* Real */ ae_vector* a,
1753
+ ae_int_t n,
1754
+ /* Integer */ ae_vector* p1,
1755
+ /* Integer */ ae_vector* p2,
1756
+ apbuffers* buf,
1757
+ ae_state *_state);
1758
+ void tagsortfasti(/* Real */ ae_vector* a,
1759
+ /* Integer */ ae_vector* b,
1760
+ /* Real */ ae_vector* bufa,
1761
+ /* Integer */ ae_vector* bufb,
1762
+ ae_int_t n,
1763
+ ae_state *_state);
1764
+ void tagsortfastr(/* Real */ ae_vector* a,
1765
+ /* Real */ ae_vector* b,
1766
+ /* Real */ ae_vector* bufa,
1767
+ /* Real */ ae_vector* bufb,
1768
+ ae_int_t n,
1769
+ ae_state *_state);
1770
+ void tagsortfast(/* Real */ ae_vector* a,
1771
+ /* Real */ ae_vector* bufa,
1772
+ ae_int_t n,
1773
+ ae_state *_state);
1774
+ void tagsortmiddleri(/* Real */ ae_vector* a,
1775
+ /* Integer */ ae_vector* b,
1776
+ ae_int_t offset,
1777
+ ae_int_t n,
1778
+ ae_state *_state);
1779
+ void tagsortmiddleii(/* Integer */ ae_vector* a,
1780
+ /* Integer */ ae_vector* b,
1781
+ ae_int_t offset,
1782
+ ae_int_t n,
1783
+ ae_state *_state);
1784
+ void tagsortmiddlei(/* Integer */ ae_vector* a,
1785
+ ae_int_t offset,
1786
+ ae_int_t n,
1787
+ ae_state *_state);
1788
+ void sortmiddlei(/* Integer */ ae_vector* a,
1789
+ ae_int_t offset,
1790
+ ae_int_t n,
1791
+ ae_state *_state);
1792
+ void tagheappushi(/* Real */ ae_vector* a,
1793
+ /* Integer */ ae_vector* b,
1794
+ ae_int_t* n,
1795
+ double va,
1796
+ ae_int_t vb,
1797
+ ae_state *_state);
1798
+ void tagheapreplacetopi(/* Real */ ae_vector* a,
1799
+ /* Integer */ ae_vector* b,
1800
+ ae_int_t n,
1801
+ double va,
1802
+ ae_int_t vb,
1803
+ ae_state *_state);
1804
+ void tagheappopi(/* Real */ ae_vector* a,
1805
+ /* Integer */ ae_vector* b,
1806
+ ae_int_t* n,
1807
+ ae_state *_state);
1808
+ ae_int_t lowerbound(/* Real */ const ae_vector* a,
1809
+ ae_int_t n,
1810
+ double t,
1811
+ ae_state *_state);
1812
+ ae_int_t upperbound(/* Real */ const ae_vector* a,
1813
+ ae_int_t n,
1814
+ double t,
1815
+ ae_state *_state);
1816
+ #endif
1817
+ #if defined(AE_COMPILE_BLAS) || !defined(AE_PARTIAL_BUILD)
1818
+ double vectornorm2(/* Real */ const ae_vector* x,
1819
+ ae_int_t i1,
1820
+ ae_int_t i2,
1821
+ ae_state *_state);
1822
+ ae_int_t vectoridxabsmax(/* Real */ const ae_vector* x,
1823
+ ae_int_t i1,
1824
+ ae_int_t i2,
1825
+ ae_state *_state);
1826
+ ae_int_t columnidxabsmax(/* Real */ const ae_matrix* x,
1827
+ ae_int_t i1,
1828
+ ae_int_t i2,
1829
+ ae_int_t j,
1830
+ ae_state *_state);
1831
+ ae_int_t rowidxabsmax(/* Real */ const ae_matrix* x,
1832
+ ae_int_t j1,
1833
+ ae_int_t j2,
1834
+ ae_int_t i,
1835
+ ae_state *_state);
1836
+ double upperhessenberg1norm(/* Real */ const ae_matrix* a,
1837
+ ae_int_t i1,
1838
+ ae_int_t i2,
1839
+ ae_int_t j1,
1840
+ ae_int_t j2,
1841
+ /* Real */ ae_vector* work,
1842
+ ae_state *_state);
1843
+ void copymatrix(/* Real */ const ae_matrix* a,
1844
+ ae_int_t is1,
1845
+ ae_int_t is2,
1846
+ ae_int_t js1,
1847
+ ae_int_t js2,
1848
+ /* Real */ ae_matrix* b,
1849
+ ae_int_t id1,
1850
+ ae_int_t id2,
1851
+ ae_int_t jd1,
1852
+ ae_int_t jd2,
1853
+ ae_state *_state);
1854
+ void inplacetranspose(/* Real */ ae_matrix* a,
1855
+ ae_int_t i1,
1856
+ ae_int_t i2,
1857
+ ae_int_t j1,
1858
+ ae_int_t j2,
1859
+ /* Real */ ae_vector* work,
1860
+ ae_state *_state);
1861
+ void copyandtranspose(/* Real */ const ae_matrix* a,
1862
+ ae_int_t is1,
1863
+ ae_int_t is2,
1864
+ ae_int_t js1,
1865
+ ae_int_t js2,
1866
+ /* Real */ ae_matrix* b,
1867
+ ae_int_t id1,
1868
+ ae_int_t id2,
1869
+ ae_int_t jd1,
1870
+ ae_int_t jd2,
1871
+ ae_state *_state);
1872
+ void matrixvectormultiply(/* Real */ const ae_matrix* a,
1873
+ ae_int_t i1,
1874
+ ae_int_t i2,
1875
+ ae_int_t j1,
1876
+ ae_int_t j2,
1877
+ ae_bool trans,
1878
+ /* Real */ const ae_vector* x,
1879
+ ae_int_t ix1,
1880
+ ae_int_t ix2,
1881
+ double alpha,
1882
+ /* Real */ ae_vector* y,
1883
+ ae_int_t iy1,
1884
+ ae_int_t iy2,
1885
+ double beta,
1886
+ ae_state *_state);
1887
+ double pythag2(double x, double y, ae_state *_state);
1888
+ void matrixmatrixmultiply(/* Real */ const ae_matrix* a,
1889
+ ae_int_t ai1,
1890
+ ae_int_t ai2,
1891
+ ae_int_t aj1,
1892
+ ae_int_t aj2,
1893
+ ae_bool transa,
1894
+ /* Real */ const ae_matrix* b,
1895
+ ae_int_t bi1,
1896
+ ae_int_t bi2,
1897
+ ae_int_t bj1,
1898
+ ae_int_t bj2,
1899
+ ae_bool transb,
1900
+ double alpha,
1901
+ /* Real */ ae_matrix* c,
1902
+ ae_int_t ci1,
1903
+ ae_int_t ci2,
1904
+ ae_int_t cj1,
1905
+ ae_int_t cj2,
1906
+ double beta,
1907
+ /* Real */ ae_vector* work,
1908
+ ae_state *_state);
1909
+ #endif
1910
+ #if defined(AE_COMPILE_ROTATIONS) || !defined(AE_PARTIAL_BUILD)
1911
+ void applyrotationsfromtheleft(ae_bool isforward,
1912
+ ae_int_t m1,
1913
+ ae_int_t m2,
1914
+ ae_int_t n1,
1915
+ ae_int_t n2,
1916
+ /* Real */ const ae_vector* c,
1917
+ /* Real */ const ae_vector* s,
1918
+ /* Real */ ae_matrix* a,
1919
+ /* Real */ ae_vector* work,
1920
+ ae_state *_state);
1921
+ void applyrotationsfromtheright(ae_bool isforward,
1922
+ ae_int_t m1,
1923
+ ae_int_t m2,
1924
+ ae_int_t n1,
1925
+ ae_int_t n2,
1926
+ /* Real */ const ae_vector* c,
1927
+ /* Real */ const ae_vector* s,
1928
+ /* Real */ ae_matrix* a,
1929
+ /* Real */ ae_vector* work,
1930
+ ae_state *_state);
1931
+ void generaterotation(double f,
1932
+ double g,
1933
+ double* cs,
1934
+ double* sn,
1935
+ double* r,
1936
+ ae_state *_state);
1937
+ #endif
1938
+ #if defined(AE_COMPILE_BASICSTATOPS) || !defined(AE_PARTIAL_BUILD)
1939
+ void rankx(/* Real */ ae_vector* x,
1940
+ ae_int_t n,
1941
+ ae_bool iscentered,
1942
+ apbuffers* buf,
1943
+ ae_state *_state);
1944
+ void rankxuntied(/* Real */ ae_vector* x,
1945
+ ae_int_t n,
1946
+ apbuffers* buf,
1947
+ ae_state *_state);
1948
+ #endif
1949
+ #if defined(AE_COMPILE_APSTRUCT) || !defined(AE_PARTIAL_BUILD)
1950
+ void nisinitemptyslow(ae_int_t n, niset* sa, ae_state *_state);
1951
+ void niscopy(const niset* ssrc, niset* sdst, ae_state *_state);
1952
+ void nisaddelement(niset* sa, ae_int_t k, ae_state *_state);
1953
+ void nissubtract1(niset* sa, const niset* src, ae_state *_state);
1954
+ void nisclear(niset* sa, ae_state *_state);
1955
+ ae_int_t niscount(const niset* sa, ae_state *_state);
1956
+ ae_bool nisequal(const niset* s0, const niset* s1, ae_state *_state);
1957
+ void nisstartenumeration(niset* sa, ae_state *_state);
1958
+ ae_bool nisenumerate(niset* sa, ae_int_t* i, ae_state *_state);
1959
+ void kniscompressstorage(kniset* sa, ae_state *_state);
1960
+ void knisreallocate(kniset* sa,
1961
+ ae_int_t setidx,
1962
+ ae_int_t newallocated,
1963
+ ae_state *_state);
1964
+ void knisinitunsorted(ae_int_t k,
1965
+ ae_int_t n,
1966
+ ae_int_t kprealloc,
1967
+ kniset* sa,
1968
+ ae_state *_state);
1969
+ void knisdirectaccess(const kniset* sa,
1970
+ ae_int_t k,
1971
+ ae_int_t* idxbegin,
1972
+ ae_int_t* idxend,
1973
+ ae_state *_state);
1974
+ ae_int_t knispoplast(kniset* sa, ae_int_t k, ae_state *_state);
1975
+ void knisaddnewelement(kniset* sa,
1976
+ ae_int_t i,
1977
+ ae_int_t k,
1978
+ ae_state *_state);
1979
+ void knisclearkthnoreclaim(kniset* sa, ae_int_t k, ae_state *_state);
1980
+ void knisclearkthreclaim(kniset* sa, ae_int_t k, ae_state *_state);
1981
+ ae_int_t kniscountkth(const kniset* s0, ae_int_t k, ae_state *_state);
1982
+ void _niset_init(void* _p, ae_state *_state, ae_bool make_automatic);
1983
+ void _niset_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
1984
+ void _niset_clear(void* _p);
1985
+ void _niset_destroy(void* _p);
1986
+ void _kniset_init(void* _p, ae_state *_state, ae_bool make_automatic);
1987
+ void _kniset_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
1988
+ void _kniset_clear(void* _p);
1989
+ void _kniset_destroy(void* _p);
1990
+ #endif
1991
+ #if defined(AE_COMPILE_TRLINSOLVE) || !defined(AE_PARTIAL_BUILD)
1992
+ void rmatrixtrsafesolve(/* Real */ const ae_matrix* a,
1993
+ ae_int_t n,
1994
+ /* Real */ ae_vector* x,
1995
+ double* s,
1996
+ ae_bool isupper,
1997
+ ae_bool istrans,
1998
+ ae_bool isunit,
1999
+ ae_state *_state);
2000
+ void safesolvetriangular(/* Real */ const ae_matrix* a,
2001
+ ae_int_t n,
2002
+ /* Real */ ae_vector* x,
2003
+ double* s,
2004
+ ae_bool isupper,
2005
+ ae_bool istrans,
2006
+ ae_bool isunit,
2007
+ ae_bool normin,
2008
+ /* Real */ ae_vector* cnorm,
2009
+ ae_state *_state);
2010
+ #endif
2011
+ #if defined(AE_COMPILE_SAFESOLVE) || !defined(AE_PARTIAL_BUILD)
2012
+ ae_bool rmatrixscaledtrsafesolve(/* Real */ const ae_matrix* a,
2013
+ double sa,
2014
+ ae_int_t n,
2015
+ /* Real */ ae_vector* x,
2016
+ ae_bool isupper,
2017
+ ae_int_t trans,
2018
+ ae_bool isunit,
2019
+ double maxgrowth,
2020
+ ae_state *_state);
2021
+ ae_bool cmatrixscaledtrsafesolve(/* Complex */ const ae_matrix* a,
2022
+ double sa,
2023
+ ae_int_t n,
2024
+ /* Complex */ ae_vector* x,
2025
+ ae_bool isupper,
2026
+ ae_int_t trans,
2027
+ ae_bool isunit,
2028
+ double maxgrowth,
2029
+ ae_state *_state);
2030
+ #endif
2031
+ #if defined(AE_COMPILE_XBLAS) || !defined(AE_PARTIAL_BUILD)
2032
+ void xdot(/* Real */ const ae_vector* a,
2033
+ /* Real */ const ae_vector* b,
2034
+ ae_int_t n,
2035
+ /* Real */ ae_vector* temp,
2036
+ double* r,
2037
+ double* rerr,
2038
+ ae_state *_state);
2039
+ void xcdot(/* Complex */ const ae_vector* a,
2040
+ /* Complex */ const ae_vector* b,
2041
+ ae_int_t n,
2042
+ /* Real */ ae_vector* temp,
2043
+ ae_complex* r,
2044
+ double* rerr,
2045
+ ae_state *_state);
2046
+ #endif
2047
+ #if defined(AE_COMPILE_LINMIN) || !defined(AE_PARTIAL_BUILD)
2048
+ void linminnormalized(/* Real */ ae_vector* d,
2049
+ double* stp,
2050
+ ae_int_t n,
2051
+ ae_state *_state);
2052
+ void mcsrch(ae_int_t n,
2053
+ /* Real */ ae_vector* x,
2054
+ double* f,
2055
+ /* Real */ ae_vector* g,
2056
+ /* Real */ const ae_vector* s,
2057
+ double* stp,
2058
+ double stpmax,
2059
+ double gtol,
2060
+ ae_int_t* info,
2061
+ ae_int_t* nfev,
2062
+ /* Real */ ae_vector* wa,
2063
+ linminstate* state,
2064
+ ae_int_t* stage,
2065
+ ae_state *_state);
2066
+ void armijocreate(ae_int_t n,
2067
+ /* Real */ const ae_vector* x,
2068
+ double f,
2069
+ /* Real */ const ae_vector* s,
2070
+ double stp,
2071
+ double stpmax,
2072
+ ae_int_t fmax,
2073
+ armijostate* state,
2074
+ ae_state *_state);
2075
+ ae_bool armijoiteration(armijostate* state, ae_state *_state);
2076
+ void armijoresults(armijostate* state,
2077
+ ae_int_t* info,
2078
+ double* stp,
2079
+ double* f,
2080
+ ae_state *_state);
2081
+ void _linminstate_init(void* _p, ae_state *_state, ae_bool make_automatic);
2082
+ void _linminstate_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
2083
+ void _linminstate_clear(void* _p);
2084
+ void _linminstate_destroy(void* _p);
2085
+ void _armijostate_init(void* _p, ae_state *_state, ae_bool make_automatic);
2086
+ void _armijostate_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
2087
+ void _armijostate_clear(void* _p);
2088
+ void _armijostate_destroy(void* _p);
2089
+ #endif
2090
+ #if defined(AE_COMPILE_NEARUNITYUNIT) || !defined(AE_PARTIAL_BUILD)
2091
+ double nulog1p(double x, ae_state *_state);
2092
+ double nuexpm1(double x, ae_state *_state);
2093
+ double nucosm1(double x, ae_state *_state);
2094
+ #endif
2095
+ #if defined(AE_COMPILE_NTHEORY) || !defined(AE_PARTIAL_BUILD)
2096
+ void findprimitiverootandinverse(ae_int_t n,
2097
+ ae_int_t* proot,
2098
+ ae_int_t* invproot,
2099
+ ae_state *_state);
2100
+ #endif
2101
+ #if defined(AE_COMPILE_FTBASE) || !defined(AE_PARTIAL_BUILD)
2102
+ void ftcomplexfftplan(ae_int_t n,
2103
+ ae_int_t k,
2104
+ fasttransformplan* plan,
2105
+ ae_state *_state);
2106
+ void ftapplyplan(fasttransformplan* plan,
2107
+ /* Real */ ae_vector* a,
2108
+ ae_int_t offsa,
2109
+ ae_int_t repcnt,
2110
+ ae_state *_state);
2111
+ void ftbasefactorize(ae_int_t n,
2112
+ ae_int_t tasktype,
2113
+ ae_int_t* n1,
2114
+ ae_int_t* n2,
2115
+ ae_state *_state);
2116
+ ae_bool ftbaseissmooth(ae_int_t n, ae_state *_state);
2117
+ ae_int_t ftbasefindsmooth(ae_int_t n, ae_state *_state);
2118
+ ae_int_t ftbasefindsmootheven(ae_int_t n, ae_state *_state);
2119
+ double ftbasegetflopestimate(ae_int_t n, ae_state *_state);
2120
+ void _fasttransformplan_init(void* _p, ae_state *_state, ae_bool make_automatic);
2121
+ void _fasttransformplan_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
2122
+ void _fasttransformplan_clear(void* _p);
2123
+ void _fasttransformplan_destroy(void* _p);
2124
+ #endif
2125
+ #if defined(AE_COMPILE_HPCCORES) || !defined(AE_PARTIAL_BUILD)
2126
+ void hpcpreparechunkedgradient(/* Real */ const ae_vector* weights,
2127
+ ae_int_t wcount,
2128
+ ae_int_t ntotal,
2129
+ ae_int_t nin,
2130
+ ae_int_t nout,
2131
+ mlpbuffers* buf,
2132
+ ae_state *_state);
2133
+ void hpcfinalizechunkedgradient(const mlpbuffers* buf,
2134
+ /* Real */ ae_vector* grad,
2135
+ ae_state *_state);
2136
+ ae_bool hpcchunkedgradient(/* Real */ const ae_vector* weights,
2137
+ /* Integer */ const ae_vector* structinfo,
2138
+ /* Real */ const ae_vector* columnmeans,
2139
+ /* Real */ const ae_vector* columnsigmas,
2140
+ /* Real */ const ae_matrix* xy,
2141
+ ae_int_t cstart,
2142
+ ae_int_t csize,
2143
+ /* Real */ ae_vector* batch4buf,
2144
+ /* Real */ ae_vector* hpcbuf,
2145
+ double* e,
2146
+ ae_bool naturalerrorfunc,
2147
+ ae_state *_state);
2148
+ ae_bool hpcchunkedprocess(/* Real */ const ae_vector* weights,
2149
+ /* Integer */ const ae_vector* structinfo,
2150
+ /* Real */ const ae_vector* columnmeans,
2151
+ /* Real */ const ae_vector* columnsigmas,
2152
+ /* Real */ const ae_matrix* xy,
2153
+ ae_int_t cstart,
2154
+ ae_int_t csize,
2155
+ /* Real */ ae_vector* batch4buf,
2156
+ /* Real */ ae_vector* hpcbuf,
2157
+ ae_state *_state);
2158
+ void _mlpbuffers_init(void* _p, ae_state *_state, ae_bool make_automatic);
2159
+ void _mlpbuffers_init_copy(void* _dst, const void* _src, ae_state *_state, ae_bool make_automatic);
2160
+ void _mlpbuffers_clear(void* _p);
2161
+ void _mlpbuffers_destroy(void* _p);
2162
+ #endif
2163
+ #if defined(AE_COMPILE_ALGLIBBASICS) || !defined(AE_PARTIAL_BUILD)
2164
+ #endif
2165
+
2166
+ }
2167
+ #endif
2168
+