There is one prototype of latrs
available, please see below.
latrs( const char uplo, const char normin, const MatrixA& a, VectorX& x, Scalar >, VectorCNORM& cnorm );
latrs
(short for $FRIENDLY_NAME)
provides a C++ interface to LAPACK routines SLATRS, DLATRS, CLATRS, and
ZLATRS. latrs
solves
one of the triangular systems
A * x = sb, A*T * x = sb, or A*H * x = s*b,
with scaling to prevent overflow. Here A is an upper or lower triangular matrix, A*T denotes the transpose of A, A*H denotes the conjugate transpose of A, x and b are n-element vectors, and s is a scaling factor, usually less than or equal to 1, chosen so that the components of x will be less than the overflow threshold. If the unscaled problem will not cause overflow, the Level 2 BLAS routine ZTRSV is called. If the matrix A is singular (A(j,j) = 0 for some j), then s is set to 0 and a non-trivial solution to A*x = 0 is returned.
The selection of the LAPACK routine is done during compile-time, and
is determined by the type of values contained in type MatrixA
.
The type of values is obtained through the value_type
meta-function typename value_type<MatrixA>::type
. The dispatching table below illustrates
to which specific routine the code path will be generated.
Table 1.369. Dispatching of latrs
Value type of MatrixA |
LAPACK routine |
---|---|
|
SLATRS |
|
DLATRS |
|
CLATRS |
|
ZLATRS |
Defined in header boost/numeric/bindings/lapack/auxiliary/latrs.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/auxiliary/latrs.hpp> using namespace boost::numeric::bindings; lapack::latrs( x, y, z );
this will output
[5] 0 1 2 3 4 5