There is one prototype of spsv
available, please see below.
spsv( MatrixAP& ap, VectorIPIV& ipiv, MatrixB& b );
spsv
(short for $FRIENDLY_NAME)
provides a C++ interface to LAPACK routines SSPSV, DSPSV, CSPSV, and
ZSPSV. spsv
computes
the solution to a complex system of linear equations A * X = B, where
A is an N-by-N symmetric matrix stored in packed format and X and B are
N-by-NRHS matrices.
The diagonal pivoting method is used to factor A as A = U * D * U*T, if UPLO = 'U', or A = L * D * L*T, if UPLO = 'L', where U (or L) is a product of permutation and unit upper (lower) triangular matrices, D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B.
The selection of the LAPACK routine is done during compile-time, and
is determined by the type of values contained in type MatrixAP
.
The type of values is obtained through the value_type
meta-function typename value_type<MatrixAP>::type
. The dispatching table below illustrates
to which specific routine the code path will be generated.
Table 1.147. Dispatching of spsv
Value type of MatrixAP |
LAPACK routine |
---|---|
|
SSPSV |
|
DSPSV |
|
CSPSV |
|
ZSPSV |
Defined in header boost/numeric/bindings/lapack/driver/spsv.hpp
.
Parameters
The definition of term 1
The definition of term 2
The definition of term 3.
Definitions may contain paragraphs.
#include <boost/numeric/bindings/lapack/driver/spsv.hpp> using namespace boost::numeric::bindings; lapack::spsv( x, y, z );
this will output
[5] 0 1 2 3 4 5