/usr/include/ialglib.h is in libalglib-dev 2.6.0-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 | /********************************************************************
optimized ALGLIB subroutines.
********************************************************************/
#ifndef IALGLIB_H
#define IALGLIB_H
#include "ap.h"
#define ALGLIB_INTERCEPTS_ABLAS
namespace ialglib
{
void mv_32(const double *a, const double *x, double *y, int stride, double alpha, double beta);
void mv(int m, int n, const double *a, const double *x, double *y, int stride, double alpha, double beta);
void mv_generic(int m, int n, const double *a, const double *x, double *y, int stride, double alpha, double beta);
void mv_complex(int m, int n, const double *a, const double *x, ap::complex *cy, double *dy, int stride, ap::complex alpha, ap::complex beta);
void mv_complex_generic(int m, int n, const double *a, const double *x, ap::complex *cy, double *dy, int stride, ap::complex alpha, ap::complex beta);
void vzero(int n, double *p, int stride);
void vzero_complex(int n, ap::complex *p, int stride);
void vcopy(int n, const double *a, int stridea, double *b, int strideb);
void vcopy_complex(int n, const ap::complex *a, int stridea, double *b, int strideb, char *conj);
void vcopy_complex(int n, const double *a, int stridea, double *b, int strideb, char *conj);
void mcopyblock(int m, int n, const double *a, int op, int stride, double *b);
void mcopyunblock(int m, int n, const double *a, int op, double *b, int stride);
void mcopyblock_complex(int m, int n, const ap::complex *a, int op, int stride, double *b);
void mcopyunblock_complex(int m, int n, const double *a, int op, ap::complex* b, int stride);
bool _i_rmatrixgemmf(int m,
int n,
int k,
double alpha,
const ap::real_2d_array& a,
int ia,
int ja,
int optypea,
const ap::real_2d_array& b,
int ib,
int jb,
int optypeb,
double beta,
ap::real_2d_array& c,
int ic,
int jc);
bool _i_cmatrixgemmf(int m,
int n,
int k,
ap::complex alpha,
const ap::complex_2d_array& a,
int ia,
int ja,
int optypea,
const ap::complex_2d_array& b,
int ib,
int jb,
int optypeb,
ap::complex beta,
ap::complex_2d_array& c,
int ic,
int jc);
bool _i_cmatrixrighttrsmf(int m,
int n,
const ap::complex_2d_array& a,
int i1,
int j1,
bool isupper,
bool isunit,
int optype,
ap::complex_2d_array& x,
int i2,
int j2);
bool _i_rmatrixrighttrsmf(int m,
int n,
const ap::real_2d_array& a,
int i1,
int j1,
bool isupper,
bool isunit,
int optype,
ap::real_2d_array& x,
int i2,
int j2);
bool _i_cmatrixlefttrsmf(int m,
int n,
const ap::complex_2d_array& a,
int i1,
int j1,
bool isupper,
bool isunit,
int optype,
ap::complex_2d_array& x,
int i2,
int j2);
bool _i_rmatrixlefttrsmf(int m,
int n,
const ap::real_2d_array& a,
int i1,
int j1,
bool isupper,
bool isunit,
int optype,
ap::real_2d_array& x,
int i2,
int j2);
bool _i_cmatrixsyrkf(int n,
int k,
double alpha,
const ap::complex_2d_array& a,
int ia,
int ja,
int optypea,
double beta,
ap::complex_2d_array& c,
int ic,
int jc,
bool isupper);
bool _i_rmatrixsyrkf(int n,
int k,
double alpha,
const ap::real_2d_array& a,
int ia,
int ja,
int optypea,
double beta,
ap::real_2d_array& c,
int ic,
int jc,
bool isupper);
bool _i_cmatrixrank1f(int m,
int n,
ap::complex_2d_array& a,
int ia,
int ja,
ap::complex_1d_array& u,
int uoffs,
ap::complex_1d_array& v,
int voffs);
bool _i_rmatrixrank1f(int m,
int n,
ap::real_2d_array& a,
int ia,
int ja,
ap::real_1d_array& u,
int uoffs,
ap::real_1d_array& v,
int voffs);
}
#endif
|