STK++ 0.9.13
STK_blas_util.h
Go to the documentation of this file.
1/*--------------------------------------------------------------------*/
2/* Copyright (C) 2004-2023 Serge Iovleff, Université Lille 1, Inria
3
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU Lesser General Public License as
6 published by the Free Software Foundation; either version 2 of the
7 License, or (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU Lesser General Public License for more details.
13
14 You should have received a copy of the GNU Lesser General Public
15 License along with this program; if not, write to the
16 Free Software Foundation, Inc.,
17 59 Temple Place,
18 Suite 330,
19 Boston, MA 02111-1307
20 USA
21
22 Contact : S..._Dot_I..._At_stkpp_Dot_org (see copyright for ...)
23*/
24
25/* Project: stkpp::Algebra
26 * created on: Feb 17, 2023
27 * Author: iovleff, S..._Dot_I..._At_stkpp_Dot_org (see copyright for ...)
28 **/
29
37#ifndef STK_BLAS_UTIL_H_
38#define STK_BLAS_UTIL_H_
39
40
41namespace STK
42{
43namespace blas
44{
148inline void dgemm( int m, int n, int nrhs
149 , Real * a, int lda
150 , Real * b, int ldb
151 , Real * s
152 , Real *rcond, int *rank
153 , Real *work, int lWork, int* iwork)
154{
155 int info = 1;
156#ifdef STKUSEBLAS
157#ifdef STKREALAREFLOAT
158 sgemm_( &m, &n, &nrhs, a, &lda, b, &ldb, s, rcond, rank, work, &lWork, iwork, &info);
159#else
160 dgemm_( &m, &n, &nrhs
161 , a, &lda
162 , b, &ldb
163 , s
164 , rcond, rank
165 , work, &lWork, iwork, &info);
166#endif
167#endif
168 return info;
169}
170
175void dgesv_(int * n, int * nrhs, double * A, int * lda,
176 int * ipiv, double * B, int * ldb, int * info);
177} // namespace blas
178} // namespace SK
179
180#endif /* STK_BLAS_UTIL_H_ */
The MultidimRegression class allows to regress a multidimensional output variable among a multivariat...
void dgesv_(int *n, int *nrhs, double *A, int *lda, int *ipiv, double *B, int *ldb, int *info)
wrapper of the BLAS gesv routine:
void dgemm(int m, int n, int nrhs, Real *a, int lda, Real *b, int ldb, Real *s, Real *rcond, int *rank, Real *work, int lWork, int *iwork)
wrapper of the BLAS gemm routine: performs one of the matrix-matrix operations
double Real
STK fundamental type of Real values.
The namespace STK is the main domain space of the Statistical ToolKit project.