Stellarator-Tools
bmw_parallel_context::bmw_parallel_context_class Interface Reference

Base class representing a bmw parallel context. This contains all memory needed parameters needed to parallel processing. More...

Public Member Functions

PROCEDURE, pass set_threads => bmw_parallel_context_set_threads
 
PROCEDURE, pass report => bmw_parallel_context_report
 
PROCEDURE, pass reduce1 => bmw_parallel_context_reduce1
 
PROCEDURE, pass reduce2 => bmw_parallel_context_reduce2
 
PROCEDURE, pass reduce3 => bmw_parallel_context_reduce3
 
PROCEDURE, pass reduce4 => bmw_parallel_context_reduce4
 
GENERIC reduce => reduce1, reduce2, reduce3, reduce4
 
PROCEDURE, pass start => bmw_parallel_context_start
 
PROCEDURE, pass end => bmw_parallel_context_end
 
FINAL bmw_parallel_context_destruct
 
class(bmw_parallel_context_class) function, pointer bmw_parallel_context_construct (comm)
 Construct a bmw_context_class object. More...
 

Public Attributes

integer offset
 Problem space offset.
 
integer stride
 Problem space stride.
 
integer num_threads
 Number of threads.
 
integer comm = MPI_COMM_NULL
 MPI communicator reference for computation. BMW can be used as an embeded library. Multiple instances can be running in parallel on separate problems so do not assume the world comm.
 
logical initialized_mpi
 Flag to mark if bmw intialized the MPI context.
 

Detailed Description

Base class representing a bmw parallel context. This contains all memory needed parameters needed to parallel processing.

Interface for the bmw_parallel_context constructor.

Member Function/Subroutine Documentation

◆ bmw_parallel_context_construct()

class (bmw_parallel_context_class) function, pointer bmw_parallel_context::bmw_parallel_context_class::bmw_parallel_context_construct ( integer, intent(in)  comm)

Construct a bmw_context_class object.

Allocates memory and initializes a bmw_parallel_context_class object.

Parameters
[in]commMPI communicator. Only used if MPI support has been compiled in.
Returns
A pointer to a constructed bmw_parallel_context_class object.

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