PrevUpHomeNext
latrd
Prototype

There is one prototype of latrd available, please see below.

latrd( const int_t nb, MatrixA& a, VectorE& e,
        VectorTAU& tau, MatrixW& w );

Description

latrd (short for $FRIENDLY_NAME) provides a C++ interface to LAPACK routines SLATRD, DLATRD, CLATRD, and ZLATRD. latrd reduces NB rows and columns of a complex Hermitian matrix A to Hermitian tridiagonal form by a unitary similarity transformation Q' * A * Q, and returns the matrices V and W which are needed to apply the transformation to the unreduced part of A.

If UPLO = 'U', latrd reduces the last NB rows and columns of a matrix, of which the upper triangle is supplied; if UPLO = 'L', latrd reduces the first NB rows and columns of a matrix, of which the lower triangle is supplied.

This is an auxiliary routine called by ZHETRD.

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.368. Dispatching of latrd

Value type of MatrixA

LAPACK routine

float

SLATRD

double

DLATRD

complex<float>

CLATRD

complex<double>

ZLATRD


Definition

Defined in header boost/numeric/bindings/lapack/auxiliary/latrd.hpp.

Parameters or Requirements on Types

Parameters

MatrixA

The definition of term 1

MatrixB

The definition of term 2

MatrixC

The definition of term 3.

Definitions may contain paragraphs.

Complexity
Example

#include <boost/numeric/bindings/lapack/auxiliary/latrd.hpp>
using namespace boost::numeric::bindings;

lapack::latrd( x, y, z );

this will output

[5] 0 1 2 3 4 5

Notes
See Also

PrevUpHomeNext