ForTrilinos
 All Classes Files Functions Pages
Data Types | List of all members
fepetra_mpicomm Module Reference

Data Types

type  epetra_mpicomm
 

Public Member Functions

Constructor Functions
type(epetra_mpicomm) function epetra_mpicomm (MPI_COMM_WORLD)
 
Epetra_MpiComm MPI Constructor. More...
 
type(epetra_mpicomm) function epetra_mpicomm (this)
 
Epetra_MpiComm Copy Constructor. More...
 
Barrier Methods
subroutine barrier (this)
 
Epetra_MpiComm Barrier function. More...
 
Broadcast Methods
subroutine broadcast (this, MyVals, root, err)
 
Epetra_MpiComm Broadcast function. More...
 
subroutine broadcast (this, MyVals, root, err)
 
Epetra_MpiComm Broadcast function. More...
 
subroutine broadcast_long (this, MyVals, root, err)
 
Epetra_MpiComm Broadcast function. More...
 
subroutine broadcast (this, MyVals, root, err)
 
Epetra_MpiComm Broadcast function. More...
 
GatherAll Methods
subroutine gatherall (this, MyVals, AllVals, err)
 
Epetra_MpiComm All Gather function. More...
 
subroutine gatherall (this, MyVals, AllVals, err)
 
Epetra_MpiComm All Gather function. More...
 
subroutine gather_long (this, MyVals, AllVals, err)
 
Epetra_MpiComm All Gather function. More...
 
Sum Methods
subroutine sumall (this, PartialSums, GlobalSums, err)
 
Epetra_MpiComm Global Summ function. More...
 
subroutine sumall (this, PartialSums, GlobalSums, err)
 
Epetra_MpiComm Global Summ function. More...
 
subroutine sum_long (this, PartialSums, GlobalSums, err)
 
Epetra_MpiComm Global Summ function. More...
 
Max/Min Methods
subroutine maxall (this, PartialMaxs, GlobalMaxs, err)
 
Epetra_MpiComm Global Max function. More...
 
subroutine maxall (this, PartialMaxs, GlobalMaxs, err)
 
Epetra_MpiComm Global Max function. More...
 
subroutine max_long (this, PartialMaxs, GlobalMaxs, err)
 
Epetra_MpiComm Global Max function. More...
 
subroutine minall (this, PartialMins, GlobalMins, err)
 
Epetra_MpiComm Global Min function. More...
 
subroutine minall (this, PartialMins, GlobalMins, err)
 
Epetra_MpiComm Global Min function. More...
 
subroutine min_long (this, PartialMins, GlobalMins, err)
 
Epetra_MpiComm Global Min function. More...
 
Parallel Prefix Methods
subroutine scansum (this, MyVals, scan_sums, err)
 
Epetra_MpiComm Scan Sum function. More...
 
subroutine scansum (this, MyVals, scan_sums, err)
 
Epetra_MpiComm Scan Sum function. More...
 
subroutine scansum_long (this, MyVals, scan_sums, err)
 
Epetra_MpiComm Scan Sum function. More...
 
integer(c_int) function mypid (this)
 
Return my process ID. More...
 
integer(c_int) function numproc (this)
 
Return my process ID. More...
 

Member Function/Subroutine Documentation

subroutine fepetra_mpicomm::barrier ( class(epetra_mpicomm), intent(in)  this)


Epetra_MpiComm Barrier function.

Causes each processor in the communicator to wait until all processors have arrived. Implements Epetra_Comm.

subroutine fepetra_mpicomm::broadcast ( class(epetra_mpicomm), intent(in)  this,
real(c_double), dimension(:), intent(inout)  MyVals,
integer(c_int), intent(in)  root,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Broadcast function.

Takes list of input values from the root processor and sends to all other processors. Implements Epetra_Comm.

Parameters
[in,out]myvalsInOut On entry, the root processor contains the list of values. On exit, all processors will have the same list of values. Note that values must be allocated on all processor before the broadcast.
[in]rootIn On entry, contains the processor from which all processors will receive a copy of MyVals.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::broadcast ( class(epetra_mpicomm), intent(in)  this,
integer(c_int), dimension(:), intent(inout)  MyVals,
integer(c_int), intent(in)  root,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Broadcast function.

Takes list of input values from the root processor and sends to all other processors. Implements Epetra_Comm.

Parameters
[in,out]myvalsInOut On entry, the root processor contains the list of values. On exit, all processors will have the same list of values. Note that values must be allocated on all processor before the broadcast.
[in]rootIn On entry, contains the processor from which all processors will receive a copy of MyVals.
[in,out]errReturn any error information
subroutine fepetra_mpicomm::broadcast ( class(epetra_mpicomm), intent(in)  this,
character(kind=c_char), dimension(:), intent(inout)  MyVals,
integer(c_int), intent(in)  root,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Broadcast function.

Takes list of input values from the root processor and sends to all other processors. Implements Epetra_Comm.

Parameters
[in,out]myvalsInOut On entry, the root processor contains the list of values. On exit, all processors will have the same list of values. Note that values must be allocated on all processor before the broadcast.
[in]rootIn On entry, contains the processor from which all processors will receive a copy of MyVals.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::broadcast_long ( class(epetra_mpicomm), intent(in)  this,
integer(c_long), dimension(:), intent(inout)  MyVals,
integer(c_int), intent(in)  root,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Broadcast function.

Takes list of input values from the root processor and sends to all other processors. Implements Epetra_Comm.

Parameters
[in,out]myvalsInOut On entry, the root processor contains the list of values. On exit, all processors will have the same list of values. Note that values must be allocated on all processor before the broadcast.
[in]rootIn On entry, contains the processor from which all processors will receive a copy of MyVals.
[in,out]errReturn any error information
type(epetra_mpicomm) function fepetra_mpicomm::epetra_mpicomm ( type(epetra_mpicomm), intent(in)  this)


Epetra_MpiComm Copy Constructor.

Makes an exact copy of an existing Epetra_MpiComm instance.

type(epetra_mpicomm) function fepetra_mpicomm::epetra_mpicomm (   MPI_COMM_WORLD)


Epetra_MpiComm MPI Constructor.

Creates a Epetra_MpiComm instance for use with MPI. If no specialized MPI communicator is needed, this constuctor can be called with the argument MPI_COMM_WORLD.

subroutine fepetra_mpicomm::gather_long ( class(epetra_mpicomm), intent(in)  this,
integer(c_long), dimension(:), intent(in)  MyVals,
integer(c_long), dimension(:), intent(inout)  AllVals,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm All Gather function.

Take list of input values from all processors in the communicator and creates an ordered contiguous list of tho se values on each processor. Implements Epetra_Comm.

Parameters
[in]myvalsOn entry, contains the list of values, to be sent to all processors.
[in,out]allvalsOn exit, contains the list of values from all processors. Must be of size NumProc*size(MyVals).
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::gatherall ( class(epetra_mpicomm), intent(in)  this,
real(c_double), dimension(:), intent(in)  MyVals,
real(c_double), dimension(:), intent(inout)  AllVals,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm All Gather function.

Take list of input values from all processors in the communicator and creates an ordered contiguous list of those values on each processor. Implements Epetra_Comm.

Parameters
[in]myvalsOn entry, contains the list of values, to be sent to all processors.
[in,out]allvalsOn exit, contains the list of values from all processors. Must be of size NumProc*size(MyVals).
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::gatherall ( class(epetra_mpicomm), intent(in)  this,
integer(c_int), dimension(:), intent(in)  MyVals,
integer(c_int), dimension(:), intent(inout)  AllVals,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm All Gather function.

Take list of input values from all processors in the communicator and creates an ordered contiguous list of tho se values on each processor. Implements Epetra_Comm.

Parameters
[in]myvalsOn entry, contains the list of values, to be sent to all processors.
[in,out]allvalsOn exit, contains the list of values from all processors. Must be of size NumProc*size(MyVals).
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::max_long ( class(epetra_mpicomm), intent(in)  this,
integer(c_long), dimension(:), intent(in)  PartialMaxs,
integer(c_long), dimension(:), intent(inout)  GlobalMaxs,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Global Max function.

Take list of input values from all processors in the communicator, computes the max and returns the max to all processors. Implements Epetra_Comm.

Parameters
[in]partialmaxsOn entry, contains the list of values, usually partial maxs computed locally, using these Partial Maxs, the max across all processors will be computed.
[in,out]globalmaxsOn exit, contains the list of maxs computed across all processors.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::maxall ( class(epetra_mpicomm), intent(in)  this,
real(c_double), dimension(:), intent(in)  PartialMaxs,
real(c_double), dimension(:), intent(inout)  GlobalMaxs,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Global Max function.

Take list of input values from all processors in the communicator, computes the max and returns the max to all processors. Implements Epetra_Comm.

Parameters
[in]partialmaxsOn entry, contains the list of values, usually partial maxs computed locally, using these Partial Maxs, the max across all processors will be computed.
[in,out]globalmaxsOn exit, contains the list of maxs computed across all processors.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::maxall ( class(epetra_mpicomm), intent(in)  this,
integer(c_int), dimension(:), intent(in)  PartialMaxs,
integer(c_int), dimension(:), intent(inout)  GlobalMaxs,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Global Max function.

Take list of input values from all processors in the communicator, computes the max and returns the max to all processors. Implements Epetra_Comm.

Parameters
[in]partialmaxsOn entry, contains the list of values, usually partial maxs computed locally, using these Partial Maxs, the max across all processors will be computed.
[in,out]globalmaxsOn exit, contains the list of maxs computed across all processors.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::min_long ( class(epetra_mpicomm), intent(in)  this,
integer(c_long), dimension(:), intent(in)  PartialMins,
integer(c_long), dimension(:), intent(inout)  GlobalMins,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Global Min function.

Take list of input values from all processors in the communicator, computes the min and returns the min to all processors. Implements Epetra_Comm.

Parameters
[in]partialminsOn entry, contains the list of values, usually partial mins computed locally; using these Partial Mins, the min across all processors will be computed.
[in,out]globalminsOn exit, contains the list of mins computed across all processors.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::minall ( class(epetra_mpicomm), intent(in)  this,
real(c_double), dimension(:), intent(in)  PartialMins,
real(c_double), dimension(:), intent(inout)  GlobalMins,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Global Min function.

Take list of input values from all processors in the communicator, computes the min and returns the min to all processors. Implements Epetra_Comm.

Parameters
[in]partialminsOn entry, contains the list of values, usually partial mins computed locally; using these Partial Mins, the min across all processors will be computed.
[in,out]globalminsOn exit, contains the list of mins computed across all processors.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::minall ( class(epetra_mpicomm), intent(in)  this,
integer(c_int), dimension(:), intent(in)  PartialMins,
integer(c_int), dimension(:), intent(inout)  GlobalMins,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Global Min function.

Take list of input values from all processors in the communicator, computes the min and returns the min to all processors. Implements Epetra_Comm.

Parameters
[in]partialminsOn entry, contains the list of values, usually partial mins computed locally; using these Partial Mins, the min across all processors will be computed.
[in,out]globalminsOn exit, contains the list of mins computed across all processors.
[in,out]errReturn any error information.
integer(c_int) function fepetra_mpicomm::mypid ( class(epetra_mpicomm), intent(in)  this)


Return my process ID.

In MPI mode returns the rank of the calling process. In serial mode returns 0. Implements Epetra_Comm.

integer(c_int) function fepetra_mpicomm::numproc ( class(epetra_mpicomm), intent(in)  this)


Return my process ID.

Returns total number of processes (always returns 1 for MpiComm). Implements Epetra_Comm.

subroutine fepetra_mpicomm::scansum ( class(epetra_mpicomm), intent(in)  this,
real(c_double), dimension(:), intent(in)  MyVals,
real(c_double), dimension(:), intent(inout)  scan_sums,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Scan Sum function.

Take list of input values from all processors in the communicator, computes the scan sum and returns it to all processors such that processor i contains the sum of values from processor 0 up to and including processor i. Implements Epetra_Comm.

Parameters
[in]myvalsOn entry, contains the list of values to be summed across all processors.
[in,out]scan_sumsOn exit, contains the list of values summed across processors 0 through i.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::scansum ( class(epetra_mpicomm), intent(in)  this,
integer(c_int), dimension(:), intent(in)  MyVals,
integer(c_int), dimension(:), intent(inout)  scan_sums,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Scan Sum function.

Take list of input values from all processors in the communicator, computes the scan sum and returns it to all processors such that processor i contains the sum of values from processor 0 up to and including processor i. Implements Epetra_Comm.

Parameters
[in]myvalsOn entry, contains the list of values to be summed across all processors.
[in,out]scan_sumsOn exit, contains the list of values summed across processors 0 through i.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::scansum_long ( class(epetra_mpicomm), intent(in)  this,
integer(c_long), dimension(:), intent(in)  MyVals,
integer(c_long), dimension(:), intent(inout)  scan_sums,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Scan Sum function.

Take list of input values from all processors in the communicator, computes the scan sum and returns it to all processors such that processor i contains the sum of values from processor 0 up to and including processor i. Implements Epetra_Comm.

Parameters
[in]myvalsOn entry, contains the list of values to be summed across all processors.
[in,out]scan_sumsOn exit, contains the list of values summed across processors 0 through i.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::sum_long ( class(epetra_mpicomm), intent(in)  this,
integer(c_long), dimension(:), intent(in)  PartialSums,
integer(c_long), dimension(:), intent(inout)  GlobalSums,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Global Summ function.

Take list of input values from all processors in the communicator, computes the sum and returns the sum to all processors. Implements Epetra_Comm.

Parameters
[in]partialsumsOn entry, contains the list of values, usually partial sums computed locally, to be summed across all processors.
[in,out]globalsumsOn exit, contains the list of values summed across all processors.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::sumall ( class(epetra_mpicomm), intent(in)  this,
integer(c_int), dimension(:), intent(in)  PartialSums,
integer(c_int), dimension(:), intent(inout)  GlobalSums,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Global Summ function.

Take list of input values from all processors in the communicator, computes the sum and returns the sum to all processors. Implements Epetra_Comm.

Parameters
[in]partialsumsOn entry, contains the list of values, usually partial sums computed locally, to be summed across all processors.
[in,out]globalsumsOn exit, contains the list of values summed across all processors.
[in,out]errReturn any error information.
subroutine fepetra_mpicomm::sumall ( class(epetra_mpicomm), intent(in)  this,
real(c_double), dimension(:), intent(in)  PartialSums,
real(c_double), dimension(:), intent(inout)  GlobalSums,
type(error), intent(inout), optional  err 
)


Epetra_MpiComm Global Summ function.

Take list of input values from all processors in the communicator, computes the sum and returns the sum to all processors. Implements Epetra_Comm.

Parameters
[in]partialsumsOn entry, contains the list of values, usually partial sums computed locally, to be summed across all processors.
[in,out]globalsumsOn exit, contains the list of values summed across all processors.
[in,out]errReturn any error information.

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