PyTrilinos  Development
 All Classes Functions
Public Member Functions | Public Attributes
PyTrilinos.NOX.Epetra.InvOperator Class Reference
Inheritance diagram for PyTrilinos.NOX.Epetra.InvOperator:
Inheritance graph
[legend]
Collaboration diagram for PyTrilinos.NOX.Epetra.InvOperator:
Collaboration graph
[legend]

List of all members.

Public Member Functions

def __init__
def SetUseTranspose
def Apply
def ApplyInverse
def NormInf
def Label
def Operator
def UseTranspose
def HasNormInf
def Comm
def OperatorDomainMap
def OperatorRangeMap
def __disown__

Public Attributes

 this

Detailed Description

Proxy of C++ Epetra_InvOperator class

Constructor & Destructor Documentation

def PyTrilinos.NOX.Epetra.InvOperator.__init__ (   self,
  args 
)
__init__(Epetra_InvOperator self, Operator operatorIn) -> InvOperator

Reimplemented from PyTrilinos.NOX.Epetra.Operator.


Member Function Documentation

def PyTrilinos.NOX.Epetra.InvOperator.Apply (   self,
  args 
)
Apply(self, MultiVector x, MultiVector y) -> int

In C++, the Apply() method is pure virtual, thus intended to be
overridden by derived classes.  In python, cross-language polymorphism
is supported, and you are expected to derive classes from this base
class and redefine the Apply() method.  C++ code (e.g., AztecOO
solvers) can call back to your Apply() method as needed.  You must
support two arguments, labeled here MultiVector x and MultiVector y.
These will be converted from Epetra_MultiVector C++ objects to
numpy-hybrid Epetra.MultiVector objects before they are passed to you.
Thus, it is legal to use slice indexing and other numpy features to
compute y from x.

If application of your operator is successful, return 0; else return
some non-zero error code.

It is strongly suggested that you prevent Apply() from raising any
exceptions.  Accidental errors can be prevented by wrapping your code
in a try block:

    try:
# Your code goes here...
    except Exception, e:
print 'A python exception was raised by method Apply:'
print e
return -1

By returning a -1, you inform the calling routine that Apply() was
unsuccessful.

Reimplemented from PyTrilinos.NOX.Epetra.Operator.

ApplyInverse(self, MultiVector x, MultiVector y) -> int

In C++, the ApplyInverse() method is pure virtual, thus intended to be
overridden by derived classes.  In python, cross-language polymorphism
is supported, and you are expected to derive classes from this base
class and redefine the ApplyInverse() method.  C++ code (e.g., AztecOO
solvers) can call back to your ApplyInverse() method as needed.  You
must support two arguments, labeled here MultiVector x and MultiVector
y.  These will be converted from Epetra_MultiVector C++ objects to
numpy-hybrid Epetra.MultiVector objects before they are passed to you.
Thus, it is legal to use slice indexing and other numpy features to
compute y from x.

If application of your operator is successful, return 0; else return
some non-zero error code.

It is strongly suggested that you prevent ApplyInverse() from raising
any exceptions.  Accidental errors can be prevented by wrapping your
code in a try block:

    try:
# Your code goes here...
    except Exception, e:
print 'A python exception was raised by method ApplyInverse:'
print e
return -1

By returning a -1, you inform the calling routine that ApplyInverse()
was unsuccessful.

Reimplemented from PyTrilinos.NOX.Epetra.Operator.

def PyTrilinos.NOX.Epetra.InvOperator.Comm (   self,
  args 
)
Comm(InvOperator self) -> Comm

Reimplemented from PyTrilinos.NOX.Epetra.Operator.

HasNormInf(InvOperator self) -> bool

Reimplemented from PyTrilinos.NOX.Epetra.Operator.

def PyTrilinos.NOX.Epetra.InvOperator.Label (   self,
  args 
)
Label(InvOperator self) -> char const *

Reimplemented from PyTrilinos.NOX.Epetra.Operator.

def PyTrilinos.NOX.Epetra.InvOperator.NormInf (   self,
  args 
)
NormInf(InvOperator self) -> double

Reimplemented from PyTrilinos.NOX.Epetra.Operator.

def PyTrilinos.NOX.Epetra.InvOperator.Operator (   self,
  args 
)
Operator(InvOperator self) -> Operator
OperatorDomainMap(InvOperator self) -> Map

Reimplemented from PyTrilinos.NOX.Epetra.Operator.

OperatorRangeMap(InvOperator self) -> Map

Reimplemented from PyTrilinos.NOX.Epetra.Operator.

SetUseTranspose(InvOperator self, bool UseTranspose_in) -> int

Reimplemented from PyTrilinos.NOX.Epetra.Operator.

UseTranspose(InvOperator self) -> bool

Reimplemented from PyTrilinos.NOX.Epetra.Operator.


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