Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #include "lib/config.h"
00015
00016 #ifdef HAVE_LAPACK
00017 #include "lib/lapack.h"
00018 #include "lib/common.h"
00019 #include "lib/io.h"
00020
00021 using namespace shogun;
00022
00023 #if defined(HAVE_MKL) || defined(HAVE_ACML)
00024 #define DSYEV dsyev
00025 #define DGESVD dgesvd
00026 #define DPOSV dposv
00027 #define DPOTRF dpotrf
00028 #else
00029 #define DSYEV dsyev_
00030 #define DGESVD dgesvd_
00031 #define DPOSV dposv_
00032 #define DPOTRF dpotrf_
00033 #endif
00034
00035 #ifndef HAVE_ATLAS
00036 int clapack_dpotrf(const CBLAS_ORDER Order, const CBLAS_UPLO Uplo,
00037 const int N, double *A, const int LDA)
00038 {
00039 char uplo = 'U';
00040 int info = 0;
00041 if (Order==CblasRowMajor)
00042 {
00043 if (Uplo==CblasUpper)
00044 uplo='L';
00045 }
00046 else
00047 if (Uplo==CblasLower)
00048 uplo='L';
00049 #ifdef HAVE_ACML
00050 DPOTRF(uplo, N, A, LDA, &info);
00051 #else
00052 int n=N;
00053 int lda=LDA;
00054 DPOTRF(&uplo, &n, A, &lda, &info);
00055 #endif
00056 return info;
00057 }
00058 #undef DPOTRF
00059
00060
00061
00062
00063
00064
00065 int clapack_dposv(const CBLAS_ORDER Order, const CBLAS_UPLO Uplo,
00066 const int N, const int NRHS, double *A, const int lda,
00067 double *B, const int ldb)
00068 {
00069 char uplo = 'U';
00070 int info=0;
00071 if (Order==CblasRowMajor)
00072 {
00073 if (Uplo==CblasUpper)
00074 uplo='L';
00075 }
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else
00077}
00076 else