alglib4 0.0.0

Sign up to get free protection for your applications and to get access to all the features.
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
+