NnmfPack  2.1
bdiv_mic.h
Go to the documentation of this file.
1 /***************************************************************************
2  * Copyright (C) 2014 by PIR (University of Oviedo) and *
3  * INCO2 (Polytechnic University of Valencia) groups. *
4  * nnmfpack@gmail.com *
5  * *
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; either version 2 of the License, or *
9  * (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  * You should have received a copy of the GNU General Public License *
17  * along with this program; if not, write to the *
18  * Free Software Foundation, Inc., *
19  * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
20  ***************************************************************************
21 */
32 #ifndef BDIV_MIC_H
33 #define BDIV_MIC_H
34 
35 #include <bdiv_cpu.h>
36 
37 /* wrappers */
38 int dbdiv_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const double beta, const int uType, const int nIter);
39 int sbdiv_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const float beta, const int uType, const int nIter);
40 
41 /* inner functions */
42 /* general cases */
43 int dbdivg_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const double beta, const int uType, const int nIter);
44 int sbdivg_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const float beta, const int uType, const int nIter);
45 
46 /* beta=2 */
47 int dmlsa_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const int uType, const int nIter);
48 int smlsa_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const int uType, const int nIter);
49 
50 /* beta=1 */
51 int dbdivone_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const int uType, const int nIter);
52 int sbdivone_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const int uType, const int nIter);
53 
54 #endif
int dbdivg_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const double beta, const int uType, const int nIter)
dbdivg_mic performs the NNMF using beta-divergence when beta is != 1 and !=2, using double precision ...
Definition: bdiv_mic.c:88
int sbdivone_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const int uType, const int nIter)
sbdivone_mic performs NNMF using betadivergence when beta=1 using simple precision ...
Definition: bdiv_mic.c:234
int sbdivg_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const float beta, const int uType, const int nIter)
sbdivg_mic performs NNMF using betadivergence for general case (beta <> 1 and 2) using simple precisi...
Definition: bdiv_mic.c:128
int smlsa_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const int uType, const int nIter)
smlsa_mic performs NNMF using betadivergence when beta=2 using simple precision
Definition: mlsa_mic.c:111
int dmlsa_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const int uType, const int nIter)
dmlsa_mic performs NNMF using betadivergence when beta=2 using double precision
Definition: mlsa_mic.c:72
int dbdivone_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const int uType, const int nIter)
dbdivone_mic performs NNMF using betadivergence when beta=1 using double precision ...
Definition: bdiv_mic.c:195
int dbdiv_mic(const int m, const int n, const int k, const double *A, double *W, double *H, const double beta, const int uType, const int nIter)
dbdiv_mic is a wrapper that calls the adequate function to performs NNMF using betadivergence using d...
Definition: bdiv_mic.c:274
Header file for using the betadivergence cuda functions with CPU.
int sbdiv_mic(const int m, const int n, const int k, const float *A, float *W, float *H, const float beta, const int uType, const int nIter)
Definition: bdiv_mic.c:304