1 /************************************************************************* 2 ALGLIB 3.15.0 (source code generated 2019-02-20) 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_SCODES) || !defined(AE_PARTIAL_BUILD) 33 #endif 34 #if defined(AE_COMPILE_APSERV) || !defined(AE_PARTIAL_BUILD) 35 typedef struct 36 { 37 ae_vector ba0; 38 ae_vector ia0; 39 ae_vector ia1; 40 ae_vector ia2; 41 ae_vector ia3; 42 ae_vector ra0; 43 ae_vector ra1; 44 ae_vector ra2; 45 ae_vector ra3; 46 ae_matrix rm0; 47 ae_matrix rm1; 48 } apbuffers; 49 typedef struct 50 { 51 ae_bool val; 52 } sboolean; 53 typedef struct 54 { 55 ae_vector val; 56 } sbooleanarray; 57 typedef struct 58 { 59 ae_int_t val; 60 } sinteger; 61 typedef struct 62 { 63 ae_vector val; 64 } sintegerarray; 65 typedef struct 66 { 67 double val; 68 } sreal; 69 typedef struct 70 { 71 ae_vector val; 72 } srealarray; 73 typedef struct 74 { 75 ae_complex val; 76 } scomplex; 77 typedef struct 78 { 79 ae_vector val; 80 } scomplexarray; 81 #endif 82 #if defined(AE_COMPILE_TSORT) || !defined(AE_PARTIAL_BUILD) 83 #endif 84 #if defined(AE_COMPILE_ABLASMKL) || !defined(AE_PARTIAL_BUILD) 85 #endif 86 #if defined(AE_COMPILE_ABLASF) || !defined(AE_PARTIAL_BUILD) 87 #endif 88 #if defined(AE_COMPILE_CREFLECTIONS) || !defined(AE_PARTIAL_BUILD) 89 #endif 90 #if defined(AE_COMPILE_ROTATIONS) || !defined(AE_PARTIAL_BUILD) 91 #endif 92 #if defined(AE_COMPILE_TRLINSOLVE) || !defined(AE_PARTIAL_BUILD) 93 #endif 94 #if defined(AE_COMPILE_SAFESOLVE) || !defined(AE_PARTIAL_BUILD) 95 #endif 96 #if defined(AE_COMPILE_HBLAS) || !defined(AE_PARTIAL_BUILD) 97 #endif 98 #if defined(AE_COMPILE_SBLAS) || !defined(AE_PARTIAL_BUILD) 99 #endif 100 #if defined(AE_COMPILE_BLAS) || !defined(AE_PARTIAL_BUILD) 101 #endif 102 #if defined(AE_COMPILE_LINMIN) || !defined(AE_PARTIAL_BUILD) 103 typedef struct 104 { 105 ae_bool brackt; 106 ae_bool stage1; 107 ae_int_t infoc; 108 double dg; 109 double dgm; 110 double dginit; 111 double dgtest; 112 double dgx; 113 double dgxm; 114 double dgy; 115 double dgym; 116 double finit; 117 double ftest1; 118 double fm; 119 double fx; 120 double fxm; 121 double fy; 122 double fym; 123 double stx; 124 double sty; 125 double stmin; 126 double stmax; 127 double width; 128 double width1; 129 double xtrapf; 130 } linminstate; 131 typedef struct 132 { 133 ae_bool needf; 134 ae_vector x; 135 double f; 136 ae_int_t n; 137 ae_vector xbase; 138 ae_vector s; 139 double stplen; 140 double fcur; 141 double stpmax; 142 ae_int_t fmax; 143 ae_int_t nfev; 144 ae_int_t info; 145 rcommstate rstate; 146 } armijostate; 147 #endif 148 #if defined(AE_COMPILE_XBLAS) || !defined(AE_PARTIAL_BUILD) 149 #endif 150 #if defined(AE_COMPILE_BASICSTATOPS) || !defined(AE_PARTIAL_BUILD) 151 #endif 152 #if defined(AE_COMPILE_HPCCORES) || !defined(AE_PARTIAL_BUILD) 153 typedef struct 154 { 155 ae_int_t chunksize; 156 ae_int_t ntotal; 157 ae_int_t nin; 158 ae_int_t nout; 159 ae_int_t wcount; 160 ae_vector batch4buf; 161 ae_vector hpcbuf; 162 ae_matrix xy; 163 ae_matrix xy2; 164 ae_vector xyrow; 165 ae_vector x; 166 ae_vector y; 167 ae_vector desiredy; 168 double e; 169 ae_vector g; 170 ae_vector tmp0; 171 } mlpbuffers; 172 #endif 173 #if defined(AE_COMPILE_NTHEORY) || !defined(AE_PARTIAL_BUILD) 174 #endif 175 #if defined(AE_COMPILE_FTBASE) || !defined(AE_PARTIAL_BUILD) 176 typedef struct 177 { 178 ae_matrix entries; 179 ae_vector buffer; 180 ae_vector precr; 181 ae_vector preci; 182 ae_shared_pool bluesteinpool; 183 } fasttransformplan; 184 #endif 185 #if defined(AE_COMPILE_NEARUNITYUNIT) || !defined(AE_PARTIAL_BUILD) 186 #endif 187 #if defined(AE_COMPILE_ALGLIBBASICS) || !defined(AE_PARTIAL_BUILD) 188 #endif 189 190 } 191 192 ///////////////////////////////////////////////////////////////////////// 193 // 194 // THIS SECTION CONTAINS C++ INTERFACE 195 // 196 ///////////////////////////////////////////////////////////////////////// 197 namespace alglib 198 { 199 200 201 } 202 203 ///////////////////////////////////////////////////////////////////////// 204 // 205 // THIS SECTION CONTAINS COMPUTATIONAL CORE DECLARATIONS (FUNCTIONS) 206 // 207 ///////////////////////////////////////////////////////////////////////// 208 namespace alglib_impl 209 { 210 #if defined(AE_COMPILE_SCODES) || !defined(AE_PARTIAL_BUILD) 211 ae_int_t getrdfserializationcode(ae_state *_state); 212 ae_int_t getkdtreeserializationcode(ae_state *_state); 213 ae_int_t getmlpserializationcode(ae_state *_state); 214 ae_int_t getmlpeserializationcode(ae_state *_state); 215 ae_int_t getrbfserializationcode(ae_state *_state); 216 ae_int_t getspline2dserializationcode(ae_state *_state); 217 ae_int_t getidwserializationcode(ae_state *_state); 218 ae_int_t getknnserializationcode(ae_state *_state); 219 #endif 220 #if defined(AE_COMPILE_APSERV) || !defined(AE_PARTIAL_BUILD) 221 void seterrorflagdiff(ae_bool* flag, 222 double val, 223 double refval, 224 double tol, 225 double s, 226 ae_state *_state); 227 ae_bool alwaysfalse(ae_state *_state); 228 void touchint(ae_int_t* a, ae_state *_state); 229 void touchreal(double* a, ae_state *_state); 230 double coalesce(double a, double b, ae_state *_state); 231 ae_int_t coalescei(ae_int_t a, ae_int_t b, ae_state *_state); 232 double inttoreal(ae_int_t a, ae_state *_state); 233 double logbase2(double x, ae_state *_state); 234 ae_bool approxequal(double a, double b, double tol, ae_state *_state); 235 ae_bool approxequalrel(double a, double b, double tol, ae_state *_state); 236 void taskgenint1d(double a, 237 double b, 238 ae_int_t n, 239 /* Real */ ae_vector* x, 240 /* Real */ ae_vector* y, 241 ae_state *_state); 242 void taskgenint1dequidist(double a, 243 double b, 244 ae_int_t n, 245 /* Real */ ae_vector* x, 246 /* Real */ ae_vector* y, 247 ae_state *_state); 248 void taskgenint1dcheb1(double a, 249 double b, 250 ae_int_t n, 251 /* Real */ ae_vector* x, 252 /* Real */ ae_vector* y, 253 ae_state *_state); 254 void taskgenint1dcheb2(double a, 255 double b, 256 ae_int_t n, 257 /* Real */ ae_vector* x, 258 /* Real */ ae_vector* y, 259 ae_state *_state); 260 ae_bool aredistinct(/* Real */ ae_vector* x, 261 ae_int_t n, 262 ae_state *_state); 263 ae_bool aresameboolean(ae_bool v1, ae_bool v2, ae_state *_state); 264 void bvectorsetlengthatleast(/* Boolean */ ae_vector* x, 265 ae_int_t n, 266 ae_state *_state); 267 void ivectorsetlengthatleast(/* Integer */ ae_vector* x, 268 ae_int_t n, 269 ae_state *_state); 270 void rvectorsetlengthatleast(/* Real */ ae_vector* x, 271 ae_int_t n, 272 ae_state *_state); 273 void rmatrixsetlengthatleast(/* Real */ ae_matrix* x, 274 ae_int_t m, 275 ae_int_t n, 276 ae_state *_state); 277 void bvectorgrowto(/* Boolean */ ae_vector* x, 278 ae_int_t n, 279 ae_state *_state); 280 void ivectorgrowto(/* Integer */ ae_vector* x, 281 ae_int_t n, 282 ae_state *_state); 283 void rmatrixgrowrowsto(/* Real */ ae_matrix* a, 284 ae_int_t n, 285 ae_int_t mincols, 286 ae_state *_state); 287 void rmatrixgrowcolsto(/* Real */ ae_matrix* a, 288 ae_int_t n, 289 ae_int_t minrows, 290 ae_state *_state); 291 void rvectorgrowto(/* Real */ ae_vector* x, 292 ae_int_t n, 293 ae_state *_state); 294 void ivectorresize(/* Integer */ ae_vector* x, 295 ae_int_t n, 296 ae_state *_state); 297 void rvectorresize(/* Real */ ae_vector* x, 298 ae_int_t n, 299 ae_state *_state); 300 void rmatrixresize(/* Real */ ae_matrix* x, 301 ae_int_t m, 302 ae_int_t n, 303 ae_state *_state); 304 void imatrixresize(/* Integer */ ae_matrix* x, 305 ae_int_t m, 306 ae_int_t n, 307 ae_state *_state); 308 void ivectorappend(/* Integer */ ae_vector* x, 309 ae_int_t v, 310 ae_state *_state); 311 ae_bool isfinitevector(/* Real */ ae_vector* x, 312 ae_int_t n, 313 ae_state *_state); 314 ae_bool isfinitecvector(/* Complex */ ae_vector* z, 315 ae_int_t n, 316 ae_state *_state); 317 ae_bool apservisfinitematrix(/* Real */ ae_matrix* x, 318 ae_int_t m, 319 ae_int_t n, 320 ae_state *_state); 321 ae_bool apservisfinitecmatrix(/* Complex */ ae_matrix* x, 322 ae_int_t m, 323 ae_int_t n, 324 ae_state *_state); 325 ae_bool isfinitertrmatrix(/* Real */ ae_matrix* x, 326 ae_int_t n, 327 ae_bool isupper, 328 ae_state *_state); 329 ae_bool apservisfinitectrmatrix(/* Complex */ ae_matrix* x, 330 ae_int_t n, 331 ae_bool isupper, 332 ae_state *_state); 333 ae_bool apservisfiniteornanmatrix(/* Real */ ae_matrix* x, 334 ae_int_t m, 335 ae_int_t n, 336 ae_state *_state); 337 double safepythag2(double x, double y, ae_state *_state); 338 double safepythag3(double x, double y, double z, ae_state *_state); 339 ae_int_t saferdiv(double x, double y, double* r, ae_state *_state); 340 double safeminposrv(double x, double y, double v, ae_state *_state); 341 void apperiodicmap(double* x, 342 double a, 343 double b, 344 double* k, 345 ae_state *_state); 346 double randomnormal(ae_state *_state); 347 void randomunit(ae_int_t n, /* Real */ ae_vector* x, ae_state *_state); 348 void swapi(ae_int_t* v0, ae_int_t* v1, ae_state *_state); 349 void swapr(double* v0, double* v1, ae_state *_state); 350 void swaprows(/* Real */ ae_matrix* a, 351 ae_int_t i0, 352 ae_int_t i1, 353 ae_int_t ncols, 354 ae_state *_state); 355 void swapentries(/* Real */ ae_vector* a, 356 ae_int_t i0, 357 ae_int_t i1, 358 ae_int_t entrywidth, 359 ae_state *_state); 360 void swapelements(/* Real */ ae_vector* a, 361 ae_int_t i0, 362 ae_int_t i1, 363 ae_state *_state); 364 void swapelementsi(/* Integer */ ae_vector* a, 365 ae_int_t i0, 366 ae_int_t i1, 367 ae_state *_state); 368 double maxreal3(double v0, double v1, double v2, ae_state *_state); 369 void inc(ae_int_t* v, ae_state *_state); 370 void dec(ae_int_t* v, ae_state *_state); 371 void threadunsafeinc(ae_int_t* v, ae_state *_state); 372 void countdown(ae_int_t* v, ae_state *_state); 373 double possign(double x, ae_state *_state); 374 double rmul2(double v0, double v1, ae_state *_state); 375 double rmul3(double v0, double v1, double v2, ae_state *_state); 376 ae_int_t idivup(ae_int_t a, ae_int_t b, ae_state *_state); 377 ae_int_t imin2(ae_int_t i0, ae_int_t i1, ae_state *_state); 378 ae_int_t imin3(ae_int_t i0, ae_int_t i1, ae_int_t i2, ae_state *_state); 379 ae_int_t imax2(ae_int_t i0, ae_int_t i1, ae_state *_state); 380 ae_int_t imax3(ae_int_t i0, ae_int_t i1, ae_int_t i2, ae_state *_state); 381 double rmax3(double r0, double r1, double r2, ae_state *_state); 382 double rmaxabs3(double r0, double r1, double r2, ae_state *_state); 383 double boundval(double x, double b1, double b2, ae_state *_state); 384 ae_int_t iboundval(ae_int_t x, ae_int_t b1, ae_int_t b2, ae_state *_state); 385 double rboundval(double x, double b1, double b2, ae_state *_state); 386 ae_int_t countnz1(/* Real */ ae_vector* v, 387 ae_int_t n, 388 ae_state *_state); 389 ae_int_t countnz2(/* Real */ ae_matrix* v, 390 ae_int_t m, 391 ae_int_t n, 392 ae_state *_state); 393 void alloccomplex(ae_serializer* s, ae_complex v, ae_state *_state); 394 void serializecomplex(ae_serializer* s, ae_complex v, ae_state *_state); 395 ae_complex unserializecomplex(ae_serializer* s, ae_state *_state); 396 void allocrealarray(ae_serializer* s, 397 /* Real */ ae_vector* v, 398 ae_int_t n, 399 ae_state *_state); 400 void serializerealarray(ae_serializer* s, 401 /* Real */ ae_vector* v, 402 ae_int_t n, 403 ae_state *_state); 404 void unserializerealarray(ae_serializer* s, 405 /* Real */ ae_vector* v, 406 ae_state *_state); 407 void allocintegerarray(ae_serializer* s, 408 /* Integer */ ae_vector* v, 409 ae_int_t n, 410 ae_state *_state); 411 void serializeintegerarray(ae_serializer* s, 412 /* Integer */ ae_vector* v, 413 ae_int_t n, 414 ae_state *_state); 415 void unserializeintegerarray(ae_serializer* s, 416 /* Integer */ ae_vector* v, 417 ae_state *_state); 418 void allocrealmatrix(ae_serializer* s, 419 /* Real */ ae_matrix* v, 420 ae_int_t n0, 421 ae_int_t n1, 422 ae_state *_state); 423 void serializerealmatrix(ae_serializer* s, 424 /* Real */ ae_matrix* v, 425 ae_int_t n0, 426 ae_int_t n1, 427 ae_state *_state); 428 void unserializerealmatrix(ae_serializer* s, 429 /* Real */ ae_matrix* v, 430 ae_state *_state); 431 void copybooleanarray(/* Boolean */ ae_vector* src, 432 /* Boolean */ ae_vector* dst, 433 ae_state *_state); 434 void copyintegerarray(/* Integer */ ae_vector* src, 435 /* Integer */ ae_vector* dst, 436 ae_state *_state); 437 void copyrealarray(/* Real */ ae_vector* src, 438 /* Real */ ae_vector* dst, 439 ae_state *_state); 440 void copyrealmatrix(/* Real */ ae_matrix* src, 441 /* Real */ ae_matrix* dst, 442 ae_state *_state); 443 void unsetintegerarray(/* Integer */ ae_vector* a, ae_state *_state); 444 void unsetrealarray(/* Real */ ae_vector* a, ae_state *_state); 445 void unsetrealmatrix(/* Real */ ae_matrix* a, ae_state *_state); 446 void tiledsplit(ae_int_t tasksize, 447 ae_int_t tilesize, 448 ae_int_t* task0, 449 ae_int_t* task1, 450 ae_state *_state); 451 ae_int_t recsearch(/* Integer */ ae_vector* a, 452 ae_int_t nrec, 453 ae_int_t nheader, 454 ae_int_t i0, 455 ae_int_t i1, 456 /* Integer */ ae_vector* b, 457 ae_state *_state); 458 void splitlengtheven(ae_int_t tasksize, 459 ae_int_t* task0, 460 ae_int_t* task1, 461 ae_state *_state); 462 ae_int_t chunkscount(ae_int_t tasksize, 463 ae_int_t chunksize, 464 ae_state *_state); 465 double sparselevel2density(ae_state *_state); 466 ae_int_t matrixtilesizea(ae_state *_state); 467 ae_int_t matrixtilesizeb(ae_state *_state); 468 double smpactivationlevel(ae_state *_state); 469 double spawnlevel(ae_state *_state); 470 void splitlength(ae_int_t tasksize, 471 ae_int_t chunksize, 472 ae_int_t* task0, 473 ae_int_t* task1, 474 ae_state *_state); 475 void _apbuffers_init(void* _p, ae_state *_state, ae_bool make_automatic); 476 void _apbuffers_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 477 void _apbuffers_clear(void* _p); 478 void _apbuffers_destroy(void* _p); 479 void _sboolean_init(void* _p, ae_state *_state, ae_bool make_automatic); 480 void _sboolean_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 481 void _sboolean_clear(void* _p); 482 void _sboolean_destroy(void* _p); 483 void _sbooleanarray_init(void* _p, ae_state *_state, ae_bool make_automatic); 484 void _sbooleanarray_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 485 void _sbooleanarray_clear(void* _p); 486 void _sbooleanarray_destroy(void* _p); 487 void _sinteger_init(void* _p, ae_state *_state, ae_bool make_automatic); 488 void _sinteger_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 489 void _sinteger_clear(void* _p); 490 void _sinteger_destroy(void* _p); 491 void _sintegerarray_init(void* _p, ae_state *_state, ae_bool make_automatic); 492 void _sintegerarray_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 493 void _sintegerarray_clear(void* _p); 494 void _sintegerarray_destroy(void* _p); 495 void _sreal_init(void* _p, ae_state *_state, ae_bool make_automatic); 496 void _sreal_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 497 void _sreal_clear(void* _p); 498 void _sreal_destroy(void* _p); 499 void _srealarray_init(void* _p, ae_state *_state, ae_bool make_automatic); 500 void _srealarray_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 501 void _srealarray_clear(void* _p); 502 void _srealarray_destroy(void* _p); 503 void _scomplex_init(void* _p, ae_state *_state, ae_bool make_automatic); 504 void _scomplex_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 505 void _scomplex_clear(void* _p); 506 void _scomplex_destroy(void* _p); 507 void _scomplexarray_init(void* _p, ae_state *_state, ae_bool make_automatic); 508 void _scomplexarray_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 509 void _scomplexarray_clear(void* _p); 510 void _scomplexarray_destroy(void* _p); 511 #endif 512 #if defined(AE_COMPILE_TSORT) || !defined(AE_PARTIAL_BUILD) 513 void tagsort(/* Real */ ae_vector* a, 514 ae_int_t n, 515 /* Integer */ ae_vector* p1, 516 /* Integer */ ae_vector* p2, 517 ae_state *_state); 518 void tagsortbuf(/* Real */ ae_vector* a, 519 ae_int_t n, 520 /* Integer */ ae_vector* p1, 521 /* Integer */ ae_vector* p2, 522 apbuffers* buf, 523 ae_state *_state); 524 void tagsortfasti(/* Real */ ae_vector* a, 525 /* Integer */ ae_vector* b, 526 /* Real */ ae_vector* bufa, 527 /* Integer */ ae_vector* bufb, 528 ae_int_t n, 529 ae_state *_state); 530 void tagsortfastr(/* Real */ ae_vector* a, 531 /* Real */ ae_vector* b, 532 /* Real */ ae_vector* bufa, 533 /* Real */ ae_vector* bufb, 534 ae_int_t n, 535 ae_state *_state); 536 void tagsortfast(/* Real */ ae_vector* a, 537 /* Real */ ae_vector* bufa, 538 ae_int_t n, 539 ae_state *_state); 540 void tagsortmiddleir(/* Integer */ ae_vector* a, 541 /* Real */ ae_vector* b, 542 ae_int_t offset, 543 ae_int_t n, 544 ae_state *_state); 545 void sortmiddlei(/* Integer */ ae_vector* a, 546 ae_int_t offset, 547 ae_int_t n, 548 ae_state *_state); 549 void tagheappushi(/* Real */ ae_vector* a, 550 /* Integer */ ae_vector* b, 551 ae_int_t* n, 552 double va, 553 ae_int_t vb, 554 ae_state *_state); 555 void tagheapreplacetopi(/* Real */ ae_vector* a, 556 /* Integer */ ae_vector* b, 557 ae_int_t n, 558 double va, 559 ae_int_t vb, 560 ae_state *_state); 561 void tagheappopi(/* Real */ ae_vector* a, 562 /* Integer */ ae_vector* b, 563 ae_int_t* n, 564 ae_state *_state); 565 ae_int_t lowerbound(/* Real */ ae_vector* a, 566 ae_int_t n, 567 double t, 568 ae_state *_state); 569 ae_int_t upperbound(/* Real */ ae_vector* a, 570 ae_int_t n, 571 double t, 572 ae_state *_state); 573 #endif 574 #if defined(AE_COMPILE_ABLASMKL) || !defined(AE_PARTIAL_BUILD) 575 ae_bool rmatrixgermkl(ae_int_t m, 576 ae_int_t n, 577 /* Real */ ae_matrix* a, 578 ae_int_t ia, 579 ae_int_t ja, 580 double alpha, 581 /* Real */ ae_vector* u, 582 ae_int_t iu, 583 /* Real */ ae_vector* v, 584 ae_int_t iv, 585 ae_state *_state); 586 ae_bool cmatrixrank1mkl(ae_int_t m, 587 ae_int_t n, 588 /* Complex */ ae_matrix* a, 589 ae_int_t ia, 590 ae_int_t ja, 591 /* Complex */ ae_vector* u, 592 ae_int_t iu, 593 /* Complex */ ae_vector* v, 594 ae_int_t iv, 595 ae_state *_state); 596 ae_bool rmatrixrank1mkl(ae_int_t m, 597 ae_int_t n, 598 /* Real */ ae_matrix* a, 599 ae_int_t ia, 600 ae_int_t ja, 601 /* Real */ ae_vector* u, 602 ae_int_t iu, 603 /* Real */ ae_vector* v, 604 ae_int_t iv, 605 ae_state *_state); 606 ae_bool cmatrixmvmkl(ae_int_t m, 607 ae_int_t n, 608 /* Complex */ ae_matrix* a, 609 ae_int_t ia, 610 ae_int_t ja, 611 ae_int_t opa, 612 /* Complex */ ae_vector* x, 613 ae_int_t ix, 614 /* Complex */ ae_vector* y, 615 ae_int_t iy, 616 ae_state *_state); 617 ae_bool rmatrixmvmkl(ae_int_t m, 618 ae_int_t n, 619 /* Real */ ae_matrix* a, 620 ae_int_t ia, 621 ae_int_t ja, 622 ae_int_t opa, 623 /* Real */ ae_vector* x, 624 ae_int_t ix, 625 /* Real */ ae_vector* y, 626 ae_int_t iy, 627 ae_state *_state); 628 ae_bool rmatrixgemvmkl(ae_int_t m, 629 ae_int_t n, 630 double alpha, 631 /* Real */ ae_matrix* a, 632 ae_int_t ia, 633 ae_int_t ja, 634 ae_int_t opa, 635 /* Real */ ae_vector* x, 636 ae_int_t ix, 637 double beta, 638 /* Real */ ae_vector* y, 639 ae_int_t iy, 640 ae_state *_state); 641 ae_bool rmatrixtrsvmkl(ae_int_t n, 642 /* Real */ ae_matrix* a, 643 ae_int_t ia, 644 ae_int_t ja, 645 ae_bool isupper, 646 ae_bool isunit, 647 ae_int_t optype, 648 /* Real */ ae_vector* x, 649 ae_int_t ix, 650 ae_state *_state); 651 ae_bool rmatrixsyrkmkl(ae_int_t n, 652 ae_int_t k, 653 double alpha, 654 /* Real */ ae_matrix* a, 655 ae_int_t ia, 656 ae_int_t ja, 657 ae_int_t optypea, 658 double beta, 659 /* Real */ ae_matrix* c, 660 ae_int_t ic, 661 ae_int_t jc, 662 ae_bool isupper, 663 ae_state *_state); 664 ae_bool cmatrixherkmkl(ae_int_t n, 665 ae_int_t k, 666 double alpha, 667 /* Complex */ ae_matrix* a, 668 ae_int_t ia, 669 ae_int_t ja, 670 ae_int_t optypea, 671 double beta, 672 /* Complex */ ae_matrix* c, 673 ae_int_t ic, 674 ae_int_t jc, 675 ae_bool isupper, 676 ae_state *_state); 677 ae_bool rmatrixgemmmkl(ae_int_t m, 678 ae_int_t n, 679 ae_int_t k, 680 double alpha, 681 /* Real */ ae_matrix* a, 682 ae_int_t ia, 683 ae_int_t ja, 684 ae_int_t optypea, 685 /* Real */ ae_matrix* b, 686 ae_int_t ib, 687 ae_int_t jb, 688 ae_int_t optypeb, 689 double beta, 690 /* Real */ ae_matrix* c, 691 ae_int_t ic, 692 ae_int_t jc, 693 ae_state *_state); 694 ae_bool rmatrixsymvmkl(ae_int_t n, 695 double alpha, 696 /* Real */ ae_matrix* a, 697 ae_int_t ia, 698 ae_int_t ja, 699 ae_bool isupper, 700 /* Real */ ae_vector* x, 701 ae_int_t ix, 702 double beta, 703 /* Real */ ae_vector* y, 704 ae_int_t iy, 705 ae_state *_state); 706 ae_bool cmatrixgemmmkl(ae_int_t m, 707 ae_int_t n, 708 ae_int_t k, 709 ae_complex alpha, 710 /* Complex */ ae_matrix* a, 711 ae_int_t ia, 712 ae_int_t ja, 713 ae_int_t optypea, 714 /* Complex */ ae_matrix* b, 715 ae_int_t ib, 716 ae_int_t jb, 717 ae_int_t optypeb, 718 ae_complex beta, 719 /* Complex */ ae_matrix* c, 720 ae_int_t ic, 721 ae_int_t jc, 722 ae_state *_state); 723 ae_bool cmatrixlefttrsmmkl(ae_int_t m, 724 ae_int_t n, 725 /* Complex */ ae_matrix* a, 726 ae_int_t i1, 727 ae_int_t j1, 728 ae_bool isupper, 729 ae_bool isunit, 730 ae_int_t optype, 731 /* Complex */ ae_matrix* x, 732 ae_int_t i2, 733 ae_int_t j2, 734 ae_state *_state); 735 ae_bool cmatrixrighttrsmmkl(ae_int_t m, 736 ae_int_t n, 737 /* Complex */ ae_matrix* a, 738 ae_int_t i1, 739 ae_int_t j1, 740 ae_bool isupper, 741 ae_bool isunit, 742 ae_int_t optype, 743 /* Complex */ ae_matrix* x, 744 ae_int_t i2, 745 ae_int_t j2, 746 ae_state *_state); 747 ae_bool rmatrixlefttrsmmkl(ae_int_t m, 748 ae_int_t n, 749 /* Real */ ae_matrix* a, 750 ae_int_t i1, 751 ae_int_t j1, 752 ae_bool isupper, 753 ae_bool isunit, 754 ae_int_t optype, 755 /* Real */ ae_matrix* x, 756 ae_int_t i2, 757 ae_int_t j2, 758 ae_state *_state); 759 ae_bool rmatrixrighttrsmmkl(ae_int_t m, 760 ae_int_t n, 761 /* Real */ ae_matrix* a, 762 ae_int_t i1, 763 ae_int_t j1, 764 ae_bool isupper, 765 ae_bool isunit, 766 ae_int_t optype, 767 /* Real */ ae_matrix* x, 768 ae_int_t i2, 769 ae_int_t j2, 770 ae_state *_state); 771 ae_bool spdmatrixcholeskymkl(/* Real */ ae_matrix* a, 772 ae_int_t offs, 773 ae_int_t n, 774 ae_bool isupper, 775 ae_bool* cholresult, 776 ae_state *_state); 777 ae_bool rmatrixplumkl(/* Real */ ae_matrix* a, 778 ae_int_t offs, 779 ae_int_t m, 780 ae_int_t n, 781 /* Integer */ ae_vector* pivots, 782 ae_state *_state); 783 ae_bool rmatrixbdmkl(/* Real */ ae_matrix* a, 784 ae_int_t m, 785 ae_int_t n, 786 /* Real */ ae_vector* d, 787 /* Real */ ae_vector* e, 788 /* Real */ ae_vector* tauq, 789 /* Real */ ae_vector* taup, 790 ae_state *_state); 791 ae_bool rmatrixbdmultiplybymkl(/* Real */ ae_matrix* qp, 792 ae_int_t m, 793 ae_int_t n, 794 /* Real */ ae_vector* tauq, 795 /* Real */ ae_vector* taup, 796 /* Real */ ae_matrix* z, 797 ae_int_t zrows, 798 ae_int_t zcolumns, 799 ae_bool byq, 800 ae_bool fromtheright, 801 ae_bool dotranspose, 802 ae_state *_state); 803 ae_bool rmatrixhessenbergmkl(/* Real */ ae_matrix* a, 804 ae_int_t n, 805 /* Real */ ae_vector* tau, 806 ae_state *_state); 807 ae_bool rmatrixhessenbergunpackqmkl(/* Real */ ae_matrix* a, 808 ae_int_t n, 809 /* Real */ ae_vector* tau, 810 /* Real */ ae_matrix* q, 811 ae_state *_state); 812 ae_bool smatrixtdmkl(/* Real */ ae_matrix* a, 813 ae_int_t n, 814 ae_bool isupper, 815 /* Real */ ae_vector* tau, 816 /* Real */ ae_vector* d, 817 /* Real */ ae_vector* e, 818 ae_state *_state); 819 ae_bool smatrixtdunpackqmkl(/* Real */ ae_matrix* a, 820 ae_int_t n, 821 ae_bool isupper, 822 /* Real */ ae_vector* tau, 823 /* Real */ ae_matrix* q, 824 ae_state *_state); 825 ae_bool hmatrixtdmkl(/* Complex */ ae_matrix* a, 826 ae_int_t n, 827 ae_bool isupper, 828 /* Complex */ ae_vector* tau, 829 /* Real */ ae_vector* d, 830 /* Real */ ae_vector* e, 831 ae_state *_state); 832 ae_bool hmatrixtdunpackqmkl(/* Complex */ ae_matrix* a, 833 ae_int_t n, 834 ae_bool isupper, 835 /* Complex */ ae_vector* tau, 836 /* Complex */ ae_matrix* q, 837 ae_state *_state); 838 ae_bool rmatrixbdsvdmkl(/* Real */ ae_vector* d, 839 /* Real */ ae_vector* e, 840 ae_int_t n, 841 ae_bool isupper, 842 /* Real */ ae_matrix* u, 843 ae_int_t nru, 844 /* Real */ ae_matrix* c, 845 ae_int_t ncc, 846 /* Real */ ae_matrix* vt, 847 ae_int_t ncvt, 848 ae_bool* svdresult, 849 ae_state *_state); 850 ae_bool rmatrixinternalschurdecompositionmkl(/* Real */ ae_matrix* h, 851 ae_int_t n, 852 ae_int_t tneeded, 853 ae_int_t zneeded, 854 /* Real */ ae_vector* wr, 855 /* Real */ ae_vector* wi, 856 /* Real */ ae_matrix* z, 857 ae_int_t* info, 858 ae_state *_state); 859 ae_bool rmatrixinternaltrevcmkl(/* Real */ ae_matrix* t, 860 ae_int_t n, 861 ae_int_t side, 862 ae_int_t howmny, 863 /* Real */ ae_matrix* vl, 864 /* Real */ ae_matrix* vr, 865 ae_int_t* m, 866 ae_int_t* info, 867 ae_state *_state); 868 ae_bool smatrixtdevdmkl(/* Real */ ae_vector* d, 869 /* Real */ ae_vector* e, 870 ae_int_t n, 871 ae_int_t zneeded, 872 /* Real */ ae_matrix* z, 873 ae_bool* evdresult, 874 ae_state *_state); 875 ae_bool sparsegemvcrsmkl(ae_int_t opa, 876 ae_int_t arows, 877 ae_int_t acols, 878 double alpha, 879 /* Real */ ae_vector* vals, 880 /* Integer */ ae_vector* cidx, 881 /* Integer */ ae_vector* ridx, 882 /* Real */ ae_vector* x, 883 ae_int_t ix, 884 double beta, 885 /* Real */ ae_vector* y, 886 ae_int_t iy, 887 ae_state *_state); 888 #endif 889 #if defined(AE_COMPILE_ABLASF) || !defined(AE_PARTIAL_BUILD) 890 ae_bool rmatrixgerf(ae_int_t m, 891 ae_int_t n, 892 /* Real */ ae_matrix* a, 893 ae_int_t ia, 894 ae_int_t ja, 895 double ralpha, 896 /* Real */ ae_vector* u, 897 ae_int_t iu, 898 /* Real */ ae_vector* v, 899 ae_int_t iv, 900 ae_state *_state); 901 ae_bool cmatrixrank1f(ae_int_t m, 902 ae_int_t n, 903 /* Complex */ ae_matrix* a, 904 ae_int_t ia, 905 ae_int_t ja, 906 /* Complex */ ae_vector* u, 907 ae_int_t iu, 908 /* Complex */ ae_vector* v, 909 ae_int_t iv, 910 ae_state *_state); 911 ae_bool rmatrixrank1f(ae_int_t m, 912 ae_int_t n, 913 /* Real */ ae_matrix* a, 914 ae_int_t ia, 915 ae_int_t ja, 916 /* Real */ ae_vector* u, 917 ae_int_t iu, 918 /* Real */ ae_vector* v, 919 ae_int_t iv, 920 ae_state *_state); 921 ae_bool cmatrixrighttrsmf(ae_int_t m, 922 ae_int_t n, 923 /* Complex */ ae_matrix* a, 924 ae_int_t i1, 925 ae_int_t j1, 926 ae_bool isupper, 927 ae_bool isunit, 928 ae_int_t optype, 929 /* Complex */ ae_matrix* x, 930 ae_int_t i2, 931 ae_int_t j2, 932 ae_state *_state); 933 ae_bool cmatrixlefttrsmf(ae_int_t m, 934 ae_int_t n, 935 /* Complex */ ae_matrix* a, 936 ae_int_t i1, 937 ae_int_t j1, 938 ae_bool isupper, 939 ae_bool isunit, 940 ae_int_t optype, 941 /* Complex */ ae_matrix* x, 942 ae_int_t i2, 943 ae_int_t j2, 944 ae_state *_state); 945 ae_bool rmatrixrighttrsmf(ae_int_t m, 946 ae_int_t n, 947 /* Real */ ae_matrix* a, 948 ae_int_t i1, 949 ae_int_t j1, 950 ae_bool isupper, 951 ae_bool isunit, 952 ae_int_t optype, 953 /* Real */ ae_matrix* x, 954 ae_int_t i2, 955 ae_int_t j2, 956 ae_state *_state); 957 ae_bool rmatrixlefttrsmf(ae_int_t m, 958 ae_int_t n, 959 /* Real */ ae_matrix* a, 960 ae_int_t i1, 961 ae_int_t j1, 962 ae_bool isupper, 963 ae_bool isunit, 964 ae_int_t optype, 965 /* Real */ ae_matrix* x, 966 ae_int_t i2, 967 ae_int_t j2, 968 ae_state *_state); 969 ae_bool cmatrixherkf(ae_int_t n, 970 ae_int_t k, 971 double alpha, 972 /* Complex */ ae_matrix* a, 973 ae_int_t ia, 974 ae_int_t ja, 975 ae_int_t optypea, 976 double beta, 977 /* Complex */ ae_matrix* c, 978 ae_int_t ic, 979 ae_int_t jc, 980 ae_bool isupper, 981 ae_state *_state); 982 ae_bool rmatrixsyrkf(ae_int_t n, 983 ae_int_t k, 984 double alpha, 985 /* Real */ ae_matrix* a, 986 ae_int_t ia, 987 ae_int_t ja, 988 ae_int_t optypea, 989 double beta, 990 /* Real */ ae_matrix* c, 991 ae_int_t ic, 992 ae_int_t jc, 993 ae_bool isupper, 994 ae_state *_state); 995 ae_bool rmatrixgemmf(ae_int_t m, 996 ae_int_t n, 997 ae_int_t k, 998 double alpha, 999 /* Real */ ae_matrix* a, 1000 ae_int_t ia, 1001 ae_int_t ja, 1002 ae_int_t optypea, 1003 /* Real */ ae_matrix* b, 1004 ae_int_t ib, 1005 ae_int_t jb, 1006 ae_int_t optypeb, 1007 double beta, 1008 /* Real */ ae_matrix* c, 1009 ae_int_t ic, 1010 ae_int_t jc, 1011 ae_state *_state); 1012 ae_bool cmatrixgemmf(ae_int_t m, 1013 ae_int_t n, 1014 ae_int_t k, 1015 ae_complex alpha, 1016 /* Complex */ ae_matrix* a, 1017 ae_int_t ia, 1018 ae_int_t ja, 1019 ae_int_t optypea, 1020 /* Complex */ ae_matrix* b, 1021 ae_int_t ib, 1022 ae_int_t jb, 1023 ae_int_t optypeb, 1024 ae_complex beta, 1025 /* Complex */ ae_matrix* c, 1026 ae_int_t ic, 1027 ae_int_t jc, 1028 ae_state *_state); 1029 void cmatrixgemmk(ae_int_t m, 1030 ae_int_t n, 1031 ae_int_t k, 1032 ae_complex alpha, 1033 /* Complex */ ae_matrix* a, 1034 ae_int_t ia, 1035 ae_int_t ja, 1036 ae_int_t optypea, 1037 /* Complex */ ae_matrix* b, 1038 ae_int_t ib, 1039 ae_int_t jb, 1040 ae_int_t optypeb, 1041 ae_complex beta, 1042 /* Complex */ ae_matrix* c, 1043 ae_int_t ic, 1044 ae_int_t jc, 1045 ae_state *_state); 1046 void rmatrixgemmk(ae_int_t m, 1047 ae_int_t n, 1048 ae_int_t k, 1049 double alpha, 1050 /* Real */ ae_matrix* a, 1051 ae_int_t ia, 1052 ae_int_t ja, 1053 ae_int_t optypea, 1054 /* Real */ ae_matrix* b, 1055 ae_int_t ib, 1056 ae_int_t jb, 1057 ae_int_t optypeb, 1058 double beta, 1059 /* Real */ ae_matrix* c, 1060 ae_int_t ic, 1061 ae_int_t jc, 1062 ae_state *_state); 1063 void rmatrixgemmk44v00(ae_int_t m, 1064 ae_int_t n, 1065 ae_int_t k, 1066 double alpha, 1067 /* Real */ ae_matrix* a, 1068 ae_int_t ia, 1069 ae_int_t ja, 1070 /* Real */ ae_matrix* b, 1071 ae_int_t ib, 1072 ae_int_t jb, 1073 double beta, 1074 /* Real */ ae_matrix* c, 1075 ae_int_t ic, 1076 ae_int_t jc, 1077 ae_state *_state); 1078 void rmatrixgemmk44v01(ae_int_t m, 1079 ae_int_t n, 1080 ae_int_t k, 1081 double alpha, 1082 /* Real */ ae_matrix* a, 1083 ae_int_t ia, 1084 ae_int_t ja, 1085 /* Real */ ae_matrix* b, 1086 ae_int_t ib, 1087 ae_int_t jb, 1088 double beta, 1089 /* Real */ ae_matrix* c, 1090 ae_int_t ic, 1091 ae_int_t jc, 1092 ae_state *_state); 1093 void rmatrixgemmk44v10(ae_int_t m, 1094 ae_int_t n, 1095 ae_int_t k, 1096 double alpha, 1097 /* Real */ ae_matrix* a, 1098 ae_int_t ia, 1099 ae_int_t ja, 1100 /* Real */ ae_matrix* b, 1101 ae_int_t ib, 1102 ae_int_t jb, 1103 double beta, 1104 /* Real */ ae_matrix* c, 1105 ae_int_t ic, 1106 ae_int_t jc, 1107 ae_state *_state); 1108 void rmatrixgemmk44v11(ae_int_t m, 1109 ae_int_t n, 1110 ae_int_t k, 1111 double alpha, 1112 /* Real */ ae_matrix* a, 1113 ae_int_t ia, 1114 ae_int_t ja, 1115 /* Real */ ae_matrix* b, 1116 ae_int_t ib, 1117 ae_int_t jb, 1118 double beta, 1119 /* Real */ ae_matrix* c, 1120 ae_int_t ic, 1121 ae_int_t jc, 1122 ae_state *_state); 1123 #endif 1124 #if defined(AE_COMPILE_CREFLECTIONS) || !defined(AE_PARTIAL_BUILD) 1125 void complexgeneratereflection(/* Complex */ ae_vector* x, 1126 ae_int_t n, 1127 ae_complex* tau, 1128 ae_state *_state); 1129 void complexapplyreflectionfromtheleft(/* Complex */ ae_matrix* c, 1130 ae_complex tau, 1131 /* Complex */ ae_vector* v, 1132 ae_int_t m1, 1133 ae_int_t m2, 1134 ae_int_t n1, 1135 ae_int_t n2, 1136 /* Complex */ ae_vector* work, 1137 ae_state *_state); 1138 void complexapplyreflectionfromtheright(/* Complex */ ae_matrix* c, 1139 ae_complex tau, 1140 /* Complex */ ae_vector* v, 1141 ae_int_t m1, 1142 ae_int_t m2, 1143 ae_int_t n1, 1144 ae_int_t n2, 1145 /* Complex */ ae_vector* work, 1146 ae_state *_state); 1147 #endif 1148 #if defined(AE_COMPILE_ROTATIONS) || !defined(AE_PARTIAL_BUILD) 1149 void applyrotationsfromtheleft(ae_bool isforward, 1150 ae_int_t m1, 1151 ae_int_t m2, 1152 ae_int_t n1, 1153 ae_int_t n2, 1154 /* Real */ ae_vector* c, 1155 /* Real */ ae_vector* s, 1156 /* Real */ ae_matrix* a, 1157 /* Real */ ae_vector* work, 1158 ae_state *_state); 1159 void applyrotationsfromtheright(ae_bool isforward, 1160 ae_int_t m1, 1161 ae_int_t m2, 1162 ae_int_t n1, 1163 ae_int_t n2, 1164 /* Real */ ae_vector* c, 1165 /* Real */ ae_vector* s, 1166 /* Real */ ae_matrix* a, 1167 /* Real */ ae_vector* work, 1168 ae_state *_state); 1169 void generaterotation(double f, 1170 double g, 1171 double* cs, 1172 double* sn, 1173 double* r, 1174 ae_state *_state); 1175 #endif 1176 #if defined(AE_COMPILE_TRLINSOLVE) || !defined(AE_PARTIAL_BUILD) 1177 void rmatrixtrsafesolve(/* Real */ ae_matrix* a, 1178 ae_int_t n, 1179 /* Real */ ae_vector* x, 1180 double* s, 1181 ae_bool isupper, 1182 ae_bool istrans, 1183 ae_bool isunit, 1184 ae_state *_state); 1185 void safesolvetriangular(/* Real */ ae_matrix* a, 1186 ae_int_t n, 1187 /* Real */ ae_vector* x, 1188 double* s, 1189 ae_bool isupper, 1190 ae_bool istrans, 1191 ae_bool isunit, 1192 ae_bool normin, 1193 /* Real */ ae_vector* cnorm, 1194 ae_state *_state); 1195 #endif 1196 #if defined(AE_COMPILE_SAFESOLVE) || !defined(AE_PARTIAL_BUILD) 1197 ae_bool rmatrixscaledtrsafesolve(/* Real */ ae_matrix* a, 1198 double sa, 1199 ae_int_t n, 1200 /* Real */ ae_vector* x, 1201 ae_bool isupper, 1202 ae_int_t trans, 1203 ae_bool isunit, 1204 double maxgrowth, 1205 ae_state *_state); 1206 ae_bool cmatrixscaledtrsafesolve(/* Complex */ ae_matrix* a, 1207 double sa, 1208 ae_int_t n, 1209 /* Complex */ ae_vector* x, 1210 ae_bool isupper, 1211 ae_int_t trans, 1212 ae_bool isunit, 1213 double maxgrowth, 1214 ae_state *_state); 1215 #endif 1216 #if defined(AE_COMPILE_HBLAS) || !defined(AE_PARTIAL_BUILD) 1217 void hermitianmatrixvectormultiply(/* Complex */ ae_matrix* a, 1218 ae_bool isupper, 1219 ae_int_t i1, 1220 ae_int_t i2, 1221 /* Complex */ ae_vector* x, 1222 ae_complex alpha, 1223 /* Complex */ ae_vector* y, 1224 ae_state *_state); 1225 void hermitianrank2update(/* Complex */ ae_matrix* a, 1226 ae_bool isupper, 1227 ae_int_t i1, 1228 ae_int_t i2, 1229 /* Complex */ ae_vector* x, 1230 /* Complex */ ae_vector* y, 1231 /* Complex */ ae_vector* t, 1232 ae_complex alpha, 1233 ae_state *_state); 1234 #endif 1235 #if defined(AE_COMPILE_SBLAS) || !defined(AE_PARTIAL_BUILD) 1236 void symmetricmatrixvectormultiply(/* Real */ ae_matrix* a, 1237 ae_bool isupper, 1238 ae_int_t i1, 1239 ae_int_t i2, 1240 /* Real */ ae_vector* x, 1241 double alpha, 1242 /* Real */ ae_vector* y, 1243 ae_state *_state); 1244 void symmetricrank2update(/* Real */ ae_matrix* a, 1245 ae_bool isupper, 1246 ae_int_t i1, 1247 ae_int_t i2, 1248 /* Real */ ae_vector* x, 1249 /* Real */ ae_vector* y, 1250 /* Real */ ae_vector* t, 1251 double alpha, 1252 ae_state *_state); 1253 #endif 1254 #if defined(AE_COMPILE_BLAS) || !defined(AE_PARTIAL_BUILD) 1255 double vectornorm2(/* Real */ ae_vector* x, 1256 ae_int_t i1, 1257 ae_int_t i2, 1258 ae_state *_state); 1259 ae_int_t vectoridxabsmax(/* Real */ ae_vector* x, 1260 ae_int_t i1, 1261 ae_int_t i2, 1262 ae_state *_state); 1263 ae_int_t columnidxabsmax(/* Real */ ae_matrix* x, 1264 ae_int_t i1, 1265 ae_int_t i2, 1266 ae_int_t j, 1267 ae_state *_state); 1268 ae_int_t rowidxabsmax(/* Real */ ae_matrix* x, 1269 ae_int_t j1, 1270 ae_int_t j2, 1271 ae_int_t i, 1272 ae_state *_state); 1273 double upperhessenberg1norm(/* Real */ ae_matrix* a, 1274 ae_int_t i1, 1275 ae_int_t i2, 1276 ae_int_t j1, 1277 ae_int_t j2, 1278 /* Real */ ae_vector* work, 1279 ae_state *_state); 1280 void copymatrix(/* Real */ ae_matrix* a, 1281 ae_int_t is1, 1282 ae_int_t is2, 1283 ae_int_t js1, 1284 ae_int_t js2, 1285 /* Real */ ae_matrix* b, 1286 ae_int_t id1, 1287 ae_int_t id2, 1288 ae_int_t jd1, 1289 ae_int_t jd2, 1290 ae_state *_state); 1291 void inplacetranspose(/* Real */ ae_matrix* a, 1292 ae_int_t i1, 1293 ae_int_t i2, 1294 ae_int_t j1, 1295 ae_int_t j2, 1296 /* Real */ ae_vector* work, 1297 ae_state *_state); 1298 void copyandtranspose(/* Real */ ae_matrix* a, 1299 ae_int_t is1, 1300 ae_int_t is2, 1301 ae_int_t js1, 1302 ae_int_t js2, 1303 /* Real */ ae_matrix* b, 1304 ae_int_t id1, 1305 ae_int_t id2, 1306 ae_int_t jd1, 1307 ae_int_t jd2, 1308 ae_state *_state); 1309 void matrixvectormultiply(/* Real */ ae_matrix* a, 1310 ae_int_t i1, 1311 ae_int_t i2, 1312 ae_int_t j1, 1313 ae_int_t j2, 1314 ae_bool trans, 1315 /* Real */ ae_vector* x, 1316 ae_int_t ix1, 1317 ae_int_t ix2, 1318 double alpha, 1319 /* Real */ ae_vector* y, 1320 ae_int_t iy1, 1321 ae_int_t iy2, 1322 double beta, 1323 ae_state *_state); 1324 double pythag2(double x, double y, ae_state *_state); 1325 void matrixmatrixmultiply(/* Real */ ae_matrix* a, 1326 ae_int_t ai1, 1327 ae_int_t ai2, 1328 ae_int_t aj1, 1329 ae_int_t aj2, 1330 ae_bool transa, 1331 /* Real */ ae_matrix* b, 1332 ae_int_t bi1, 1333 ae_int_t bi2, 1334 ae_int_t bj1, 1335 ae_int_t bj2, 1336 ae_bool transb, 1337 double alpha, 1338 /* Real */ ae_matrix* c, 1339 ae_int_t ci1, 1340 ae_int_t ci2, 1341 ae_int_t cj1, 1342 ae_int_t cj2, 1343 double beta, 1344 /* Real */ ae_vector* work, 1345 ae_state *_state); 1346 #endif 1347 #if defined(AE_COMPILE_LINMIN) || !defined(AE_PARTIAL_BUILD) 1348 void linminnormalized(/* Real */ ae_vector* d, 1349 double* stp, 1350 ae_int_t n, 1351 ae_state *_state); 1352 void mcsrch(ae_int_t n, 1353 /* Real */ ae_vector* x, 1354 double* f, 1355 /* Real */ ae_vector* g, 1356 /* Real */ ae_vector* s, 1357 double* stp, 1358 double stpmax, 1359 double gtol, 1360 ae_int_t* info, 1361 ae_int_t* nfev, 1362 /* Real */ ae_vector* wa, 1363 linminstate* state, 1364 ae_int_t* stage, 1365 ae_state *_state); 1366 void armijocreate(ae_int_t n, 1367 /* Real */ ae_vector* x, 1368 double f, 1369 /* Real */ ae_vector* s, 1370 double stp, 1371 double stpmax, 1372 ae_int_t fmax, 1373 armijostate* state, 1374 ae_state *_state); 1375 ae_bool armijoiteration(armijostate* state, ae_state *_state); 1376 void armijoresults(armijostate* state, 1377 ae_int_t* info, 1378 double* stp, 1379 double* f, 1380 ae_state *_state); 1381 void _linminstate_init(void* _p, ae_state *_state, ae_bool make_automatic); 1382 void _linminstate_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 1383 void _linminstate_clear(void* _p); 1384 void _linminstate_destroy(void* _p); 1385 void _armijostate_init(void* _p, ae_state *_state, ae_bool make_automatic); 1386 void _armijostate_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 1387 void _armijostate_clear(void* _p); 1388 void _armijostate_destroy(void* _p); 1389 #endif 1390 #if defined(AE_COMPILE_XBLAS) || !defined(AE_PARTIAL_BUILD) 1391 void xdot(/* Real */ ae_vector* a, 1392 /* Real */ ae_vector* b, 1393 ae_int_t n, 1394 /* Real */ ae_vector* temp, 1395 double* r, 1396 double* rerr, 1397 ae_state *_state); 1398 void xcdot(/* Complex */ ae_vector* a, 1399 /* Complex */ ae_vector* b, 1400 ae_int_t n, 1401 /* Real */ ae_vector* temp, 1402 ae_complex* r, 1403 double* rerr, 1404 ae_state *_state); 1405 #endif 1406 #if defined(AE_COMPILE_BASICSTATOPS) || !defined(AE_PARTIAL_BUILD) 1407 void rankx(/* Real */ ae_vector* x, 1408 ae_int_t n, 1409 ae_bool iscentered, 1410 apbuffers* buf, 1411 ae_state *_state); 1412 void rankxuntied(/* Real */ ae_vector* x, 1413 ae_int_t n, 1414 apbuffers* buf, 1415 ae_state *_state); 1416 #endif 1417 #if defined(AE_COMPILE_HPCCORES) || !defined(AE_PARTIAL_BUILD) 1418 void hpcpreparechunkedgradient(/* Real */ ae_vector* weights, 1419 ae_int_t wcount, 1420 ae_int_t ntotal, 1421 ae_int_t nin, 1422 ae_int_t nout, 1423 mlpbuffers* buf, 1424 ae_state *_state); 1425 void hpcfinalizechunkedgradient(mlpbuffers* buf, 1426 /* Real */ ae_vector* grad, 1427 ae_state *_state); 1428 ae_bool hpcchunkedgradient(/* Real */ ae_vector* weights, 1429 /* Integer */ ae_vector* structinfo, 1430 /* Real */ ae_vector* columnmeans, 1431 /* Real */ ae_vector* columnsigmas, 1432 /* Real */ ae_matrix* xy, 1433 ae_int_t cstart, 1434 ae_int_t csize, 1435 /* Real */ ae_vector* batch4buf, 1436 /* Real */ ae_vector* hpcbuf, 1437 double* e, 1438 ae_bool naturalerrorfunc, 1439 ae_state *_state); 1440 ae_bool hpcchunkedprocess(/* Real */ ae_vector* weights, 1441 /* Integer */ ae_vector* structinfo, 1442 /* Real */ ae_vector* columnmeans, 1443 /* Real */ ae_vector* columnsigmas, 1444 /* Real */ ae_matrix* xy, 1445 ae_int_t cstart, 1446 ae_int_t csize, 1447 /* Real */ ae_vector* batch4buf, 1448 /* Real */ ae_vector* hpcbuf, 1449 ae_state *_state); 1450 void _mlpbuffers_init(void* _p, ae_state *_state, ae_bool make_automatic); 1451 void _mlpbuffers_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 1452 void _mlpbuffers_clear(void* _p); 1453 void _mlpbuffers_destroy(void* _p); 1454 #endif 1455 #if defined(AE_COMPILE_NTHEORY) || !defined(AE_PARTIAL_BUILD) 1456 void findprimitiverootandinverse(ae_int_t n, 1457 ae_int_t* proot, 1458 ae_int_t* invproot, 1459 ae_state *_state); 1460 #endif 1461 #if defined(AE_COMPILE_FTBASE) || !defined(AE_PARTIAL_BUILD) 1462 void ftcomplexfftplan(ae_int_t n, 1463 ae_int_t k, 1464 fasttransformplan* plan, 1465 ae_state *_state); 1466 void ftapplyplan(fasttransformplan* plan, 1467 /* Real */ ae_vector* a, 1468 ae_int_t offsa, 1469 ae_int_t repcnt, 1470 ae_state *_state); 1471 void ftbasefactorize(ae_int_t n, 1472 ae_int_t tasktype, 1473 ae_int_t* n1, 1474 ae_int_t* n2, 1475 ae_state *_state); 1476 ae_bool ftbaseissmooth(ae_int_t n, ae_state *_state); 1477 ae_int_t ftbasefindsmooth(ae_int_t n, ae_state *_state); 1478 ae_int_t ftbasefindsmootheven(ae_int_t n, ae_state *_state); 1479 double ftbasegetflopestimate(ae_int_t n, ae_state *_state); 1480 void _fasttransformplan_init(void* _p, ae_state *_state, ae_bool make_automatic); 1481 void _fasttransformplan_init_copy(void* _dst, void* _src, ae_state *_state, ae_bool make_automatic); 1482 void _fasttransformplan_clear(void* _p); 1483 void _fasttransformplan_destroy(void* _p); 1484 #endif 1485 #if defined(AE_COMPILE_NEARUNITYUNIT) || !defined(AE_PARTIAL_BUILD) 1486 double nulog1p(double x, ae_state *_state); 1487 double nuexpm1(double x, ae_state *_state); 1488 double nucosm1(double x, ae_state *_state); 1489 #endif 1490 #if defined(AE_COMPILE_ALGLIBBASICS) || !defined(AE_PARTIAL_BUILD) 1491 #endif 1492 1493 } 1494 #endif 1495 1496