#include <boost/numeric/bindings/traits/type.hpp>
#include <boost/numeric/bindings/traits/traits.hpp>
#include <boost/numeric/bindings/traits/type_traits.hpp>
#include <boost/numeric/bindings/lapack/lapack.h>
#include <boost/numeric/bindings/lapack/workspace.hpp>
#include <boost/numeric/bindings/traits/detail/array.hpp>
#include <boost/numeric/bindings/traits/detail/utils.hpp>
#include <boost/static_assert.hpp>
#include <boost/type_traits.hpp>
Go to the source code of this file.
Classes | |
struct | boost::numeric::bindings::lapack::detail::Gees< N > |
Compute Schur factorization, depending on whether we have one or two workspace arrays. More... | |
struct | boost::numeric::bindings::lapack::detail::Gees< 1 > |
struct | boost::numeric::bindings::lapack::detail::Gees< 2 > |
Namespaces | |
namespace | boost |
namespace | boost::numeric |
namespace | boost::numeric::bindings |
namespace | boost::numeric::bindings::lapack |
namespace | boost::numeric::bindings::lapack::detail |
Functions | |
template<typename MatrA , typename EigVal , typename Workspace > | |
int | boost::numeric::bindings::lapack::gees (MatrA &a, EigVal &e, Workspace workspace) |
Workspace can be the following : optimal_workspace() : for optimizing use of blas 3 kernels minimal_workspace() : minimum size of workarrays, but does not allow for optimization of blas 3 kernels workspace( real_work ) for real matrices where vector_size( real_work ) >= 3*matrix_size1( a ) workspace( complex_work, real_work ) for complex matrices where vector_size( complex_work ) >= 2*matrix_size1( a ) and vector_size( real_work ) >= matrix_size1( a ). | |
template<typename MatrA , typename SchVec , typename EigVal , typename Workspace > | |
int | boost::numeric::bindings::lapack::gees (MatrA &a, EigVal &e, SchVec &vs, Workspace workspace) |
Compute Schur factorization with Schur vectors. | |
template<typename MatrA , typename SchVec , typename EigVal , typename Work , typename RWork > | |
int | boost::numeric::bindings::lapack::detail::gees (char jobvs, MatrA &a, EigVal &w, SchVec &vs, Work &work, RWork &rwork) |
Compute Schur factorization, passing two work arrays. | |
template<typename MatrA , typename SchVec , typename EigVal , typename Work > | |
int | boost::numeric::bindings::lapack::detail::gees (char jobvs, MatrA &a, EigVal &w, SchVec &vs, Work &work) |
Compute Schur factorization, passing one work array. | |
void | boost::numeric::bindings::lapack::detail::gees (char const jobvs, char const sort, logical_t *select, int const n, traits::complex_d *a, int const lda, int &sdim, traits::complex_d *w, traits::complex_d *vs, int const ldvs, traits::complex_d *work, int lwork, double *rwork, bool *bwork, int &info) |
void | boost::numeric::bindings::lapack::detail::gees (char const jobvs, char const sort, logical_t *select, int const n, traits::complex_f *a, int const lda, int &sdim, traits::complex_f *w, traits::complex_f *vs, int const ldvs, traits::complex_f *work, int lwork, float *rwork, bool *bwork, int &info) |
void | boost::numeric::bindings::lapack::detail::gees (char const jobvs, char const sort, logical_t *select, int const n, double *a, int const lda, int &sdim, traits::complex_d *w, double *vs, int const ldvs, double *work, int const lwork, bool *bwork, int &info) |
void | boost::numeric::bindings::lapack::detail::gees (char const jobvs, char const sort, logical_t *select, int const n, float *a, int const lda, int &sdim, traits::complex_f *w, float *vs, int const ldvs, float *work, int const lwork, bool *bwork, int &info) |