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

List of all members.

Public Member Functions

def __init__
def PutValue
def ExtractCopy
def ExtractView
def MaxValue
def MinValue
def Values
def MyLength
def GlobalLength
def GlobalLength64

Public Attributes

 this

Detailed Description

Epetra_IntVector: A class for constructing and using dense integer
vectors on a parallel computer.

The Epetra_IntVector class enables the construction and use of integer
dense vectors in a distributed memory environment. The distribution of
the dense vector is determined in part by a Epetra_Comm object and a
Epetra_Map (or Epetra_LocalMap or Epetra_BlockMap).

Distributed Global vs. Replicated Local Distributed Global Vectors -
In most instances, a multi-vector will be partitioned across multiple
memory images associated with multiple processors. In this case, there
is a unique copy of each element and elements are spread across all
processors specified by the Epetra_Comm communicator.

Replicated Local Vectors - Some algorithms use vectors that are too
small to be distributed across all processors. Replicated local
vectors handle these types of situation.

Constructing Epetra_IntVectors

There are four Epetra_IntVector constructors. The first is a basic
constructor that allocates space and sets all values to zero, the
second is a copy constructor. The third and fourth constructors work
with user data. These constructors have two data access modes: 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 vector.

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.  All Epetra_IntVector constructors require a map
argument that describes the layout of elements on the parallel
machine. Specifically, map is a Epetra_Map, Epetra_LocalMap or
Epetra_BlockMap object describing the desired memory layout for the
vector.

There are four different Epetra_IntVector constructors: Basic - All
values are zero.

Copy - Copy an existing vector.

Copy from or make view of user int array.

Extracting Data from Epetra_IntVectors

Once a Epetra_IntVector is constructed, it is possible to extract a
copy of the values or create a view of them.

WARNING:  ExtractView functions are extremely dangerous from a data
hiding perspective. For both ExtractView fuctions, there is a
corresponding ExtractCopy function. We strongly encourage users to
develop code using ExtractCopy functions first and only use the
ExtractView functions in a secondary optimization phase.  There are
two Extract functions: ExtractCopy - Copy values into a user-provided
array.

ExtractView - Set user-provided array to point to Epetra_IntVector
data.

WARNING:  A Epetra_Map, Epetra_LocalMap or Epetra_BlockMap object is
required for all Epetra_IntVector constructors.

C++ includes: Epetra_IntVector.h 

Constructor & Destructor Documentation

def PyTrilinos.Epetra.Epetra_IntVector.__init__ (   self,
  args 
)
__init__(Epetra_IntVector self, BlockMap Map, bool zeroOut=True) -> Epetra_IntVector
__init__(Epetra_IntVector self, Epetra_IntVector Source) -> Epetra_IntVector
__init__(Epetra_IntVector self, Epetra_DataAccess CV, BlockMap Map, int * V) -> Epetra_IntVector

Epetra_IntVector::Epetra_IntVector(Epetra_DataAccess CV, const
Epetra_BlockMap &Map, int *V)

Set vector values from user array.

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

In:  Epetra_DataAccess - Enumerated type set to Copy or View.

In:  Map - A Epetra_LocalMap, Epetra_Map or Epetra_BlockMap.

In:  V - Pointer to an array of integer numbers..

Integer error code, set to 0 if successful.  See Detailed Description
section for further discussion. 

Reimplemented from PyTrilinos.Epetra.Object.

Reimplemented in PyTrilinos.Epetra.IntVector, PyTrilinos.Epetra.NumPyIntVector, and PyTrilinos.Epetra.IntVector.


Member Function Documentation

ExtractCopy(Epetra_IntVector self, int * V) -> int

int
Epetra_IntVector::ExtractCopy(int *V) const

Put vector values into user-provided array.

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

Out:  V - Pointer to memory space that will contain the vector values.

Integer error code, set to 0 if successful. 

Reimplemented in PyTrilinos.Epetra.NumPyIntVector.

ExtractView(Epetra_IntVector self, int ** V) -> int

int
Epetra_IntVector::ExtractView(int **V) const

Set user-provided address of V.

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

Out:  V - Address of a pointer to that will be set to point to the
values of the vector.

Integer error code, set to 0 if successful. 

Reimplemented in PyTrilinos.Epetra.NumPyIntVector.

GlobalLength(Epetra_IntVector self) -> int

int
Epetra_IntVector::GlobalLength() const

Returns the global vector length of vectors in the multi-vector. 
GlobalLength64(Epetra_IntVector self) -> long long

long long
Epetra_IntVector::GlobalLength64() const 
def PyTrilinos.Epetra.Epetra_IntVector.MaxValue (   self,
  args 
)
MaxValue(Epetra_IntVector self) -> int

int
Epetra_IntVector::MaxValue()

Find maximum value.

Maximum value across all processors. 
def PyTrilinos.Epetra.Epetra_IntVector.MinValue (   self,
  args 
)
MinValue(Epetra_IntVector self) -> int

int
Epetra_IntVector::MinValue()

Find minimum value.

Minimum value across all processors. 
def PyTrilinos.Epetra.Epetra_IntVector.MyLength (   self,
  args 
)
MyLength(Epetra_IntVector self) -> int

int
Epetra_IntVector::MyLength() const

Returns the local vector length on the calling processor of vectors in
the multi-vector. 
def PyTrilinos.Epetra.Epetra_IntVector.PutValue (   self,
  args 
)
PutValue(Epetra_IntVector self, int Value) -> int

int
Epetra_IntVector::PutValue(int Value)

Set all elements of the vector to Value. 
def PyTrilinos.Epetra.Epetra_IntVector.Values (   self,
  args 
)
Values(Epetra_IntVector self) -> int *

int*
Epetra_IntVector::Values() const

Returns a pointer to an array containing the values of this vector. 

Reimplemented in PyTrilinos.Epetra.NumPyIntVector.


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