Anasazi  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | List of all members
TSQR::TwoLevelDistTsqr< LocalOrdinal, Scalar, DistTsqrType > Class Template Reference

Interprocess part of TSQR. More...

#include <Tsqr_TwoLevelDistTsqr.hpp>

Public Member Functions

 TwoLevelDistTsqr ()
 Constructor. More...
 
 ~TwoLevelDistTsqr ()
 Destructor. More...
 
bool QR_produces_R_factor_with_nonnegative_diagonal () const
 
FactorOutput factor (MatView< LocalOrdinal, Scalar > R_mine)
 Compute QR factorization of R factors, one per MPI process. More...
 

Detailed Description

template<class LocalOrdinal, class Scalar, class DistTsqrType = DistTsqr< LocalOrdinal, Scalar >>
class TSQR::TwoLevelDistTsqr< LocalOrdinal, Scalar, DistTsqrType >

Interprocess part of TSQR.

Interprocess part of TSQR, composed of an internode part and an intranode part (but only working between MPI processes, not within a process).

Definition at line 31 of file Tsqr_TwoLevelDistTsqr.hpp.

Constructor & Destructor Documentation

template<class LocalOrdinal , class Scalar , class DistTsqrType = DistTsqr< LocalOrdinal, Scalar >>
TSQR::TwoLevelDistTsqr< LocalOrdinal, Scalar, DistTsqrType >::TwoLevelDistTsqr ( )
inline

Constructor.

Definition at line 43 of file Tsqr_TwoLevelDistTsqr.hpp.

template<class LocalOrdinal , class Scalar , class DistTsqrType = DistTsqr< LocalOrdinal, Scalar >>
TSQR::TwoLevelDistTsqr< LocalOrdinal, Scalar, DistTsqrType >::~TwoLevelDistTsqr ( )
inline

Destructor.

Definition at line 52 of file Tsqr_TwoLevelDistTsqr.hpp.

Member Function Documentation

template<class LocalOrdinal , class Scalar , class DistTsqrType = DistTsqr< LocalOrdinal, Scalar >>
bool TSQR::TwoLevelDistTsqr< LocalOrdinal, Scalar, DistTsqrType >::QR_produces_R_factor_with_nonnegative_diagonal ( ) const
inline

Whether or not all diagonal entries of the R factor computed by the QR factorization are guaranteed to be nonnegative.

Definition at line 56 of file Tsqr_TwoLevelDistTsqr.hpp.

template<class LocalOrdinal , class Scalar , class DistTsqrType = DistTsqr< LocalOrdinal, Scalar >>
FactorOutput TSQR::TwoLevelDistTsqr< LocalOrdinal, Scalar, DistTsqrType >::factor ( MatView< LocalOrdinal, Scalar >  R_mine)
inline

Compute QR factorization of R factors, one per MPI process.

Compute the QR factorization of the P*ncols by ncols matrix consisting of all P nodes' R_mine upper triangular matrices stacked on top of each other. Generally these upper triangular matrices should come from the QR factorization (perhaps computed by sequential or node-parallel TSQR) of a general matrix on each node.

Note
"ncols" below is the number of columns in the matrix to factor. Should be the same on all nodes.
Parameters
R_mine[in,out] On input, an ncols by ncols upper triangular matrix with leading dimension ncols, stored unpacked (as a general matrix). Elements below the diagonal are ignored. On output, the final R factor of the QR factorization of all nodes' different R_mine inputs. The final R factor is replicated over all nodes.

Definition at line 79 of file Tsqr_TwoLevelDistTsqr.hpp.


The documentation for this class was generated from the following file: