81 inline void geqrf(
const int & m,
const int & n,
double da[],
const int & lda,
double dtau[],
double dwork[],
const int& ldwork,
int& info)
83 dgeqrf_(m,n,da,lda,dtau,dwork,ldwork,info);
85 inline void geqrf(
const int & m,
const int & n,
float da[],
const int & lda,
float dtau[],
float dwork[],
const int& ldwork,
int& info)
87 sgeqrf_(m,n,da,lda,dtau,dwork,ldwork,info);
89 inline void getrs(
const char& transa,
const int& n,
const int& nrhs,
const double da[],
const int& lda,
int ipivot[],
double db[],
const int& ldb,
int& info)
91 dgetrs_(transa,n,nrhs,da,lda,ipivot,db,ldb,info);
93 inline void getrs(
const char& transa,
const int& n,
const int& nrhs,
const float da[],
const int& lda,
int ipivot[],
float db[],
const int& ldb,
int& info)
95 sgetrs_(transa,n,nrhs,da,lda,ipivot,db,ldb,info);
97 inline void getrf(
const int& m,
const int& n,
double da[],
const int& lda,
int ipivot[],
int& info)
99 dgetrf_(m,n,da,lda,ipivot,info);
101 inline void getrf(
const int& m,
const int& n,
float da[],
const int& lda,
int ipivot[],
int& info)
103 sgetrf_(m,n,da,lda,ipivot,info);
109 typedef boost::numeric::ublas::vector<int>
pivot_t;
123 int geqrf (matrix_t& a, vector_t& tau)
125 int _m = int(a.size1());
126 int _n = int(a.size2());
127 int _lda = int(a.size1());
131 if (
int(tau.size()) < (_n<_m ? _n : _m) )
135 vector_t dwork(ldwork);
136 rawLAPACK::geqrf (_m, _n, a.data().begin(), _lda, tau.data().begin(), dwork.data().begin(), ldwork, _info);
151 int getrf (matrix_t& a, pivot_t& ipivot)
153 matrix_t::value_type* _a = a.data().begin();
154 int _m = int(a.size1());
155 int _n = int(a.size2());
176 int getrs (
char transa, matrix_t& a,
177 pivot_t& ipivot, matrix_t& b)
179 matrix_t::value_type* _a = a.data().begin();
180 int a_n = int(a.size1());
182 int p_n = int(ipivot.size());
184 matrix_t::value_type* _b = b.data().begin();
185 int b_n = int(b.size1());
187 int _nrhs = int(b.size2());
FMVec< detail::BaseDenseVector > DenseVec
Definition: uBLASmatrix.hpp:333
void sgetrs_(const char &transa, const int &n, const int &nrhs, const float da[], const int &lda, int ipivot[], float db[], const int &ldb, int &info)
void getrf(const int &m, const int &n, double da[], const int &lda, int ipivot[], int &info)
Definition: uLAPACK.hpp:97
void sgeqrf_(const int &m, const int &n, float da[], const int &lda, float dtau[], float dwork[], const int &ldwork, int &info)
boost::numeric::ublas::vector< int > pivot_t
Definition: uLAPACK.hpp:109
void getrs(const char &transa, const int &n, const int &nrhs, const double da[], const int &lda, int ipivot[], double db[], const int &ldb, int &info)
Definition: uLAPACK.hpp:89
FMMatrix< detail::BaseDenseColMatrix > DenseColMatrix
Definition: uBLASmatrix.hpp:336
Bayesian_filter_matrix::DenseColMatrix matrix_t
Definition: uLAPACK.hpp:111
Bayesian_filter_matrix::DenseVec vector_t
Definition: uLAPACK.hpp:110
Definition: matSup.cpp:33
void dgetrf_(const int &m, const int &n, double da[], const int &lda, int ipivot[], int &info)
void geqrf(const int &m, const int &n, double da[], const int &lda, double dtau[], double dwork[], const int &ldwork, int &info)
Definition: uLAPACK.hpp:81
void dgeqrf_(const int &m, const int &n, double da[], const int &lda, double dtau[], double dwork[], const int &ldwork, int &info)
void sgetrf_(const int &m, const int &n, float da[], const int &lda, int ipivot[], int &info)
void dgetrs_(const char &transa, const int &n, const int &nrhs, const double da[], const int &lda, int ipivot[], double db[], const int &ldb, int &info)