Google

Main Page   Class Hierarchy   Compound List   File List   Compound Members   Related Pages  

sc::RefSCMatrix Class Reference

The RefSCMatrix class is a smart pointer to an SCMatrix specialization. More...

#include <matrix.h>

Inheritance diagram for sc::RefSCMatrix:

Inheritance graph
[legend]
Collaboration diagram for sc::RefSCMatrix:

Collaboration graph
[legend]
List of all members.

Public Methods

 RefSCMatrix ()
 Initializes the matrix pointer to 0. More...

 RefSCMatrix (const RefSCMatrix &m)
 Make this and m refer to the same SCMatrix.

 RefSCMatrix (SCMatrix *m)
 Make this refer to m.

 ~RefSCMatrix ()
RefSCMatrix & operator= (SCMatrix *m)
 Make this refer to m.

RefSCMatrix & operator= (const RefSCMatrix &m)
 Make this and m refer to the same matrix.

 RefSCMatrix (const RefSCDimension &d1, const RefSCDimension &d2, const Ref< SCMatrixKit > &)
 Create a vector with dimension d1 by d2. More...

RefSCVector operator * (const RefSCVector &) const
 Multiply this by a vector and return a vector.

RefSCMatrix operator * (const RefSCMatrix &) const
 Multiply this by a matrix and return a matrix.

RefSCMatrix operator * (const RefSymmSCMatrix &) const
RefSCMatrix operator * (const RefDiagSCMatrix &) const
RefSCMatrix operator * (double) const
 Multiply this by a scalar and return the result.

RefSCMatrix operator+ (const RefSCMatrix &) const
 Matrix addition.

RefSCMatrix operator- (const RefSCMatrix &) const
 Matrix subtraction.

RefSCMatrix t () const
 Return the transpose of this.

RefSCMatrix i () const
 Return the inverse of this.

RefSCMatrix gi () const
 Return the generalized inverse of this.

RefSCMatrix clone () const
 These call the SCMatrix members of the same name after checking for references to 0.

RefSCMatrix copy () const
RefSCMatrix get_subblock (int br, int er, int bc, int ec)
void assign_subblock (const RefSCMatrix &, int br, int er, int bc, int ec, int source_br=0, int source_bc=0)
void accumulate_subblock (const RefSCMatrix &, int, int, int, int, int source_br=0, int source_bc=0)
RefSCVector get_row (int) const
RefSCVector get_column (int) const
void assign_row (const RefSCVector &, int) const
void assign_column (const RefSCVector &, int) const
void accumulate_row (const RefSCVector &, int) const
void accumulate_column (const RefSCVector &, int) const
void accumulate_outer_product (const RefSCVector &, const RefSCVector &) const
void accumulate_product (const RefSCMatrix &, const RefSCMatrix &) const
void assign (const RefSCMatrix &) const
void scale (double) const
void randomize () const
void assign (double) const
void assign (const double *) const
void assign (const double **) const
void convert (double *) const
void convert (double **) const
void accumulate (const RefSCMatrix &) const
void accumulate (const RefSymmSCMatrix &) const
void accumulate (const RefDiagSCMatrix &) const
void element_op (const Ref< SCElementOp > &) const
void element_op (const Ref< SCElementOp2 > &, const RefSCMatrix &) const
void element_op (const Ref< SCElementOp3 > &, const RefSCMatrix &, const RefSCMatrix &) const
int nrow () const
int ncol () const
RefSCDimension rowdim () const
RefSCDimension coldim () const
Ref< SCMatrixKitkit () const
void set_element (int, int, double) const
void accumulate_element (int, int, double) const
double get_element (int, int) const
void print (std::ostream &) const
void print (const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const
double trace () const
void save (StateOut &)
void restore (StateIn &)
void svd (const RefSCMatrix &U, const RefDiagSCMatrix &sigma, const RefSCMatrix &V)
 Compute the singular value decomposition, this = U sigma V.t(). More...

double solve_lin (const RefSCVector &v) const
 Solves this x = v. More...

double determ () const
 Returns the determinant of the referenced matrix.

SCMatrixdouble operator() (int i, int j) const
 Assign and examine matrix elements.


Detailed Description

The RefSCMatrix class is a smart pointer to an SCMatrix specialization.


Constructor & Destructor Documentation

sc::RefSCMatrix::RefSCMatrix  
 

Initializes the matrix pointer to 0.

The reference must be initialized before it is used.

sc::RefSCMatrix::RefSCMatrix const RefSCDimension   d1,
const RefSCDimension   d2,
const Ref< SCMatrixKit > &   
 

Create a vector with dimension d1 by d2.

The data values are undefined.


Member Function Documentation

double sc::RefSCMatrix::solve_lin const RefSCVector   v const
 

Solves this x = v.

Overwrites v with x.

void sc::RefSCMatrix::svd const RefSCMatrix &    U,
const RefDiagSCMatrix   sigma,
const RefSCMatrix &    V
 

Compute the singular value decomposition, this = U sigma V.t().

The dimension of sigma is the smallest dimension of this. U, V, and sigma must already have the correct dimensions and are overwritten.


The documentation for this class was generated from the following file:
Generated at Fri Jan 10 08:16:37 2003 for MPQC 2.1.3 using the documentation package Doxygen 1.2.14.