ʻOhana
Population structure, admixture history, and selection using learning methods.
Data Structures | Public Types | Static Public Member Functions
jade::basic_lapack< TValue > Class Template Reference

A template for a class providing access to LAPACK. More...

#include <jade.lapack.hpp>

+ Collaboration diagram for jade::basic_lapack< TValue >:

Public Types

enum  layout_type { col_major = LAPACK_COL_MAJOR, row_major = LAPACK_ROW_MAJOR }
 A type indicating whether the elements of a matrix are in row-major or column-major order. More...
 
typedef TValue value_type
 The value type. More...
 

Static Public Member Functions

static int gesv (layout_type layout, int n, int nrhs, value_type *a, int lda, int *ipiv, value_type *b, int ldb)
 Computes the solution to the system of linear equations with a square coefficient matrix A and multiple right-hand sides. More...
 
static int potrf (layout_type layout, char uplo, int n, value_type *a, int lda)
 Computes the Cholesky factorization of a symmetric (Hermitian) positive-definite matrix. More...
 
static int potri (layout_type layout, char uplo, int n, value_type *a, int lda)
 Computes the inverse of a symmetric (Hermitian) positive-definite matrix using the Cholesky factorization. More...
 

Detailed Description

template<typename TValue>
class jade::basic_lapack< TValue >

A template for a class providing access to LAPACK.

Definition at line 18 of file jade.lapack.hpp.

Member Typedef Documentation

◆ value_type

template<typename TValue >
typedef TValue jade::basic_lapack< TValue >::value_type

The value type.

Definition at line 22 of file jade.lapack.hpp.

Member Enumeration Documentation

◆ layout_type

template<typename TValue >
enum jade::basic_lapack::layout_type

A type indicating whether the elements of a matrix are in row-major or column-major order.

Enumerator
col_major 

A column-major order.

row_major 

A row-major order.

Definition at line 34 of file jade.lapack.hpp.

35  {
36  col_major = LAPACK_COL_MAJOR, ///< A column-major order.
37  row_major = LAPACK_ROW_MAJOR, ///< A row-major order.
38  };

Member Function Documentation

◆ gesv()

template<typename TValue >
static int jade::basic_lapack< TValue >::gesv ( layout_type  layout,
int  n,
int  nrhs,
value_type a,
int  lda,
int *  ipiv,
value_type b,
int  ldb 
)
static

Computes the solution to the system of linear equations with a square coefficient matrix A and multiple right-hand sides.

Matrices must be in column-major order.

Returns
Zero if successful; otherwise, non-zero.
Parameters
layoutThe matrix layout.
nThe number of equations.
nrhsThe number of right-hand sides.
aThe coefficient matrix.
ldaThe leading dimension of a.
ipivThe pivot table.
bThe right-hand sides.
ldbThe leading dimension of b.
+ Here is the caller graph for this function:

◆ potrf()

template<typename TValue >
static int jade::basic_lapack< TValue >::potrf ( layout_type  layout,
char  uplo,
int  n,
value_type a,
int  lda 
)
static

Computes the Cholesky factorization of a symmetric (Hermitian) positive-definite matrix.

Matrices must be in column-major order.

Returns
Zero if successful; otherwise, non-zero.
Parameters
layoutThe matrix layout.
uploThe upper-lower flag.
nThe order of the matrix.
aThe matrix data.
ldaThe stride of the matrix.
+ Here is the caller graph for this function:

◆ potri()

template<typename TValue >
static int jade::basic_lapack< TValue >::potri ( layout_type  layout,
char  uplo,
int  n,
value_type a,
int  lda 
)
static

Computes the inverse of a symmetric (Hermitian) positive-definite matrix using the Cholesky factorization.

Matrices must be in column-major order.

Returns
Zero if successful; otherwise, non-zero.
Parameters
layoutThe matrix layout.
uploThe upper-lower flag.
nThe order of the matrix.
aThe matrix data.
ldaThe stride of the matrix.
+ Here is the caller graph for this function:

The documentation for this class was generated from the following file:
jade::basic_lapack::col_major
@ col_major
A column-major order.
Definition: jade.lapack.hpp:36
jade::basic_lapack::row_major
@ row_major
A row-major order.
Definition: jade.lapack.hpp:37