PyTrilinos::Epetra::SerialSymDenseMatrix Class Reference

Inheritance diagram for PyTrilinos::Epetra::SerialSymDenseMatrix:

Inheritance graph
[legend]
Collaboration diagram for PyTrilinos::Epetra::SerialSymDenseMatrix:

Collaboration graph
[legend]

List of all members.

Public Member Functions

def __init__
def Shape
def Reshape
def SetLower
def SetUpper
def Upper
def UPLO
def Scale
def NormOne
def NormInf
def CopyUPLOMat
def OneNorm
def InfNorm
def __init__
def Shape
def Reshape
def SetLower
def SetUpper
def Upper
def UPLO
def Scale
def NormOne
def NormInf
def CopyUPLOMat
def OneNorm
def InfNorm

Public Attributes

 this


Detailed Description

Epetra_SerialSymDenseMatrix: A class for constructing and using
symmetric positive definite dense matrices.

The Epetra_SerialSymDenseMatrix class enables the construction and use
of real-valued, symmetric positive definite, double-precision dense
matrices. It is built on the Epetra_SerialDenseMatrix class which in
turn is built on the BLAS via the Epetra_BLAS class.

The Epetra_SerialSymDenseMatrix class is intended to provide full-
featured support for solving linear and eigen system problems for
symmetric positive definite matrices. It is written on top of BLAS and
LAPACK and thus has excellent performance and numerical capabilities.
Using this class, one can either perform simple factorizations and
solves or apply all the tricks available in LAPACK to get the best
possible solution for very ill-conditioned problems.

Epetra_SerialSymDenseMatrix vs. Epetra_LAPACK

The Epetra_LAPACK class provides access to most of the same
functionality as Epetra_SerialSymDenseMatrix. The primary difference
is that Epetra_LAPACK is a "thin" layer on top of LAPACK and
Epetra_SerialSymDenseMatrix attempts to provide easy access to the
more sophisticated aspects of solving dense linear and eigensystems.
When you should use Epetra_LAPACK: If you are simply looking for a
convenient wrapper around the Fortran LAPACK routines and you have a
well-conditioned problem, you should probably use Epetra_LAPACK
directly.

When you should use Epetra_SerialSymDenseMatrix: If you want to (or
potentially want to) solve ill-conditioned problems or want to work
with a more object-oriented interface, you should probably use
Epetra_SerialSymDenseMatrix.

Constructing Epetra_SerialSymDenseMatrix Objects

There are three Epetra_DenseMatrix constructors. The first constructs
a zero-sized object which should be made to appropriate length using
the Shape() or Reshape() functions and then filled with the [] or ()
operators. The second is a constructor that accepts user data as a 2D
array, the third is a copy constructor. The second constructor has two
data access modes (specified by the Epetra_DataAccess argument): Copy
mode - Allocates memory and makes a copy of the user-provided data. In
this case, the user data is not needed after construction.

View mode - Creates a "view" of the user data. In this case, the
user data is required to remain intact for the life of the object.

WARNING:  View mode is extremely dangerous from a data hiding
perspective. Therefore, we strongly encourage users to develop code
using Copy mode first and only use the View mode in a secondary
optimization phase.  Extracting Data from Epetra_SerialSymDenseMatrix
Objects

Once a Epetra_SerialSymDenseMatrix is constructed, it is possible to
view the data via access functions.

WARNING:  Use of these access functions cam be extremely dangerous
from a data hiding perspective.  Vector and Utility Functions

Once a Epetra_SerialSymDenseMatrix is constructed, several
mathematical functions can be applied to the object. Specifically:
Multiplication.

Norms.

Counting floating point operations The Epetra_SerialSymDenseMatrix
class has Epetra_CompObject as a base class. Thus, floating point
operations are counted and accumulated in the Epetra_Flop object (if
any) that was set using the SetFlopCounter() method in the
Epetra_CompObject base class.

C++ includes: Epetra_SerialSymDenseMatrix.h 

Member Function Documentation

def PyTrilinos::Epetra::SerialSymDenseMatrix::__init__ (   self,
  args 
)

__init__(self) -> SerialSymDenseMatrix
__init__(self, Epetra_DataAccess CV, double A, int LDA, int NumRowsCols) -> SerialSymDenseMatrix
__init__(self, SerialSymDenseMatrix Source) -> SerialSymDenseMatrix

Epetra_SerialSymDenseMatrix::Epetra_SerialSymDenseMatrix(const
Epetra_SerialSymDenseMatrix &Source)

Epetra_SerialSymDenseMatrix copy constructor. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::__init__ (   self,
  args 
)

__init__(self) -> SerialSymDenseMatrix
__init__(self, Epetra_DataAccess CV, double A, int LDA, int NumRowsCols) -> SerialSymDenseMatrix
__init__(self, SerialSymDenseMatrix Source) -> SerialSymDenseMatrix

Epetra_SerialSymDenseMatrix::Epetra_SerialSymDenseMatrix(const
Epetra_SerialSymDenseMatrix &Source)

Epetra_SerialSymDenseMatrix copy constructor. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::CopyUPLOMat (   self,
  args 
)

CopyUPLOMat(self, bool Upper, double A, int LDA, int NumRows)

void
Epetra_SerialSymDenseMatrix::CopyUPLOMat(bool Upper, double *A, int
LDA, int NumRows) 

def PyTrilinos::Epetra::SerialSymDenseMatrix::CopyUPLOMat (   self,
  args 
)

CopyUPLOMat(self, bool Upper, double A, int LDA, int NumRows)

void
Epetra_SerialSymDenseMatrix::CopyUPLOMat(bool Upper, double *A, int
LDA, int NumRows) 

def PyTrilinos::Epetra::SerialSymDenseMatrix::InfNorm (   self  ) 

InfNorm(self) -> double

double
Epetra_SerialSymDenseMatrix::InfNorm() const

Computes the Infinity-Norm of the this matrix (identical to NormInf()
method). 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::InfNorm (   self  ) 

InfNorm(self) -> double

double
Epetra_SerialSymDenseMatrix::InfNorm() const

Computes the Infinity-Norm of the this matrix (identical to NormInf()
method). 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::NormInf (   self  ) 

NormInf(self) -> double

double
Epetra_SerialSymDenseMatrix::NormInf() const

Computes the Infinity-Norm of the this matrix. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::NormInf (   self  ) 

NormInf(self) -> double

double
Epetra_SerialSymDenseMatrix::NormInf() const

Computes the Infinity-Norm of the this matrix. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::NormOne (   self  ) 

NormOne(self) -> double

double
Epetra_SerialSymDenseMatrix::NormOne() const

Computes the 1-Norm of the this matrix.

Integer error code, set to 0 if successful. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::NormOne (   self  ) 

NormOne(self) -> double

double
Epetra_SerialSymDenseMatrix::NormOne() const

Computes the 1-Norm of the this matrix.

Integer error code, set to 0 if successful. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::OneNorm (   self  ) 

OneNorm(self) -> double

double
Epetra_SerialSymDenseMatrix::OneNorm() const

Computes the 1-Norm of the this matrix (identical to NormOne()
method).

Integer error code, set to 0 if successful. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::OneNorm (   self  ) 

OneNorm(self) -> double

double
Epetra_SerialSymDenseMatrix::OneNorm() const

Computes the 1-Norm of the this matrix (identical to NormOne()
method).

Integer error code, set to 0 if successful. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::Reshape (   self,
  args 
)

Reshape(self, int NumRows, int NumCols) -> int
Reshape(self, int NumRowsCols) -> int

int
Epetra_SerialSymDenseMatrix::Reshape(int NumRowsCols)

Reshape a Epetra_SerialSymDenseMatrix object.

Parameters:
-----------

In:  NumRowsCols - Number of rows and columns in object.

Allows user to define the dimensions of a Epetra_SerialSymDenseMatrix
at any point. This function can be called at any point after
construction. Any values that were previously in this object are
copied into the new shape. If the new shape is smaller than the
original, the upper left portion of the original matrix (the principal
submatrix) is copied to the new matrix.

Integer error code, set to 0 if successful. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::Reshape (   self,
  args 
)

Reshape(self, int NumRows, int NumCols) -> int
Reshape(self, int NumRowsCols) -> int

int
Epetra_SerialSymDenseMatrix::Reshape(int NumRowsCols)

Reshape a Epetra_SerialSymDenseMatrix object.

Parameters:
-----------

In:  NumRowsCols - Number of rows and columns in object.

Allows user to define the dimensions of a Epetra_SerialSymDenseMatrix
at any point. This function can be called at any point after
construction. Any values that were previously in this object are
copied into the new shape. If the new shape is smaller than the
original, the upper left portion of the original matrix (the principal
submatrix) is copied to the new matrix.

Integer error code, set to 0 if successful. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::Scale (   self,
  args 
)

Scale(self, double ScalarA) -> int

int
Epetra_SerialSymDenseMatrix::Scale(double ScalarA)

Inplace scalar-matrix product A = a A.

Scale a matrix, entry-by-entry using the value ScalarA. This method is
sensitive to the UPLO() parameter.

Parameters:
-----------

ScalarA:  (In) Scalar to multiply with A.

Integer error code, set to 0 if successful. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::Scale (   self,
  args 
)

Scale(self, double ScalarA) -> int

int
Epetra_SerialSymDenseMatrix::Scale(double ScalarA)

Inplace scalar-matrix product A = a A.

Scale a matrix, entry-by-entry using the value ScalarA. This method is
sensitive to the UPLO() parameter.

Parameters:
-----------

ScalarA:  (In) Scalar to multiply with A.

Integer error code, set to 0 if successful. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::SetLower (   self  ) 

SetLower(self)

void
Epetra_SerialSymDenseMatrix::SetLower()

Specify that the lower triangle of the this matrix should be used. 

def PyTrilinos::Epetra::SerialSymDenseMatrix::SetLower (   self  ) 

SetLower(self)

void
Epetra_SerialSymDenseMatrix::SetLower()

Specify that the lower triangle of the this matrix should be used. 

def PyTrilinos::Epetra::SerialSymDenseMatrix::SetUpper (   self  ) 

SetUpper(self)

void
Epetra_SerialSymDenseMatrix::SetUpper()

Specify that the upper triangle of the this matrix should be used. 

def PyTrilinos::Epetra::SerialSymDenseMatrix::SetUpper (   self  ) 

SetUpper(self)

void
Epetra_SerialSymDenseMatrix::SetUpper()

Specify that the upper triangle of the this matrix should be used. 

def PyTrilinos::Epetra::SerialSymDenseMatrix::Shape (   self,
  args 
)

Shape(self, int NumRows, int NumCols) -> int
Shape(self, int NumRowsCols) -> int

int
Epetra_SerialSymDenseMatrix::Shape(int NumRowsCols)

Set dimensions of a Epetra_SerialSymDenseMatrix object; init values to
zero.

Parameters:
-----------

In:  NumRowsCols - Number of rows and columns in object.

Allows user to define the dimensions of a Epetra_DenseMatrix at any
point. This function can be called at any point after construction.
Any values that were previously in this object are destroyed and the
resized matrix starts off with all zero values.

Integer error code, set to 0 if successful. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::Shape (   self,
  args 
)

Shape(self, int NumRows, int NumCols) -> int
Shape(self, int NumRowsCols) -> int

int
Epetra_SerialSymDenseMatrix::Shape(int NumRowsCols)

Set dimensions of a Epetra_SerialSymDenseMatrix object; init values to
zero.

Parameters:
-----------

In:  NumRowsCols - Number of rows and columns in object.

Allows user to define the dimensions of a Epetra_DenseMatrix at any
point. This function can be called at any point after construction.
Any values that were previously in this object are destroyed and the
resized matrix starts off with all zero values.

Integer error code, set to 0 if successful. 

Reimplemented from PyTrilinos::Epetra::Epetra_SerialDenseMatrix.

def PyTrilinos::Epetra::SerialSymDenseMatrix::UPLO (   self  ) 

UPLO(self) -> char

char
Epetra_SerialSymDenseMatrix::UPLO() const

Returns character value of UPLO used by LAPACK routines. 

def PyTrilinos::Epetra::SerialSymDenseMatrix::UPLO (   self  ) 

UPLO(self) -> char

char
Epetra_SerialSymDenseMatrix::UPLO() const

Returns character value of UPLO used by LAPACK routines. 

def PyTrilinos::Epetra::SerialSymDenseMatrix::Upper (   self  ) 

Upper(self) -> bool

bool
Epetra_SerialSymDenseMatrix::Upper() const

Returns true if upper triangle of this matrix has and will be used. 

def PyTrilinos::Epetra::SerialSymDenseMatrix::Upper (   self  ) 

Upper(self) -> bool

bool
Epetra_SerialSymDenseMatrix::Upper() const

Returns true if upper triangle of this matrix has and will be used. 


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

Generated on Thu Dec 17 11:00:20 2009 for PyTrilinos by  doxygen 1.5.9