Nektar++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
Nektar::Utilities::FieldConvertComm Class Reference

#include <Module.h>

Inheritance diagram for Nektar::Utilities::FieldConvertComm:
Inheritance graph
[legend]
Collaboration diagram for Nektar::Utilities::FieldConvertComm:
Collaboration graph
[legend]

Public Member Functions

 FieldConvertComm (int argc, char *argv[], int size, int rank)
 FieldConvertComm (int size, int rank)
virtual ~FieldConvertComm ()
void v_SplitComm (int pRows, int pColumns)
- Public Member Functions inherited from Nektar::LibUtilities::CommSerial
 CommSerial (int argc, char *argv[])
virtual ~CommSerial ()
- Public Member Functions inherited from Nektar::LibUtilities::Comm
 Comm (int narg, char *arg[])
virtual ~Comm ()
void Finalise ()
int GetSize ()
 Returns number of processes.
int GetRank ()
const std::string & GetType () const
void Block ()
 Block execution until all processes reach this point.
void Send (int pProc, Array< OneD, NekDouble > &pData)
void Send (int pProc, Array< OneD, int > &pData)
void Send (int pProc, std::vector< unsigned int > &pData)
void Recv (int pProc, Array< OneD, NekDouble > &pData)
void Recv (int pProc, Array< OneD, int > &pData)
void Recv (int pProc, std::vector< unsigned int > &pData)
void SendRecv (int pSendProc, Array< OneD, NekDouble > &pSendData, int pRecvProc, Array< OneD, NekDouble > &pRecvData)
void SendRecv (int pSendProc, Array< OneD, int > &pSendData, int pRecvProc, Array< OneD, int > &pRecvData)
void SendRecvReplace (int pSendProc, int pRecvProc, Array< OneD, NekDouble > &pSendData)
void SendRecvReplace (int pSendProc, int pRecvProc, Array< OneD, int > &pSendData)
void AllReduce (NekDouble &pData, enum ReduceOperator pOp)
void AllReduce (int &pData, enum ReduceOperator pOp)
void AllReduce (Array< OneD, NekDouble > &pData, enum ReduceOperator pOp)
void AllReduce (Array< OneD, int > &pData, enum ReduceOperator pOp)
void AllReduce (std::vector< unsigned int > &pData, enum ReduceOperator pOp)
void AlltoAll (Array< OneD, NekDouble > &pSendData, Array< OneD, NekDouble > &pRecvData)
void AlltoAll (Array< OneD, int > &pSendData, Array< OneD, int > &pRecvData)
void AlltoAllv (Array< OneD, NekDouble > &pSendData, Array< OneD, int > &pSendDataSizeMap, Array< OneD, int > &pSendDataOffsetMap, Array< OneD, NekDouble > &pRecvData, Array< OneD, int > &pRecvDataSizeMap, Array< OneD, int > &pRecvDataOffsetMap)
void AlltoAllv (Array< OneD, int > &pSendData, Array< OneD, int > &pSendDataSizeMap, Array< OneD, int > &pSendDataOffsetMap, Array< OneD, int > &pRecvData, Array< OneD, int > &pRecvDataSizeMap, Array< OneD, int > &pRecvDataOffsetMap)
void SplitComm (int pRows, int pColumns)
 Splits this communicator into a grid of size pRows*pColumns and creates row and column communicators. By default the communicator is a single row.
CommSharedPtr GetRowComm ()
 Retrieve the row communicator to which this process belongs.
CommSharedPtr GetColumnComm ()
 Retrieve the column communicator to which this process belongs.
bool TreatAsRankZero (void)
bool RemoveExistingFiles (void)

Protected Member Functions

int v_GetRank (void)
bool v_TreatAsRankZero (void)
bool v_RemoveExistingFiles (void)
- Protected Member Functions inherited from Nektar::LibUtilities::CommSerial
virtual void v_Finalise ()
virtual void v_Block ()
virtual void v_Send (int pProc, Array< OneD, NekDouble > &pData)
virtual void v_Send (int pProc, Array< OneD, int > &pData)
virtual void v_Send (int pProc, std::vector< unsigned int > &pData)
virtual void v_Recv (int pProc, Array< OneD, NekDouble > &pData)
virtual void v_Recv (int pProc, Array< OneD, int > &pData)
virtual void v_Recv (int pProc, std::vector< unsigned int > &pData)
virtual void v_SendRecv (int pSendProc, Array< OneD, NekDouble > &pSendData, int pRecvProc, Array< OneD, NekDouble > &pRecvData)
virtual void v_SendRecv (int pSendProc, Array< OneD, int > &pSendData, int pRecvProc, Array< OneD, int > &pRecvData)
virtual void v_SendRecvReplace (int pSendProc, int pRecvProc, Array< OneD, NekDouble > &pSendData)
virtual void v_SendRecvReplace (int pSendProc, int pRecvProc, Array< OneD, int > &pSendData)
virtual void v_AllReduce (NekDouble &pData, enum ReduceOperator pOp)
virtual void v_AllReduce (int &pData, enum ReduceOperator pOp)
virtual void v_AllReduce (Array< OneD, NekDouble > &pData, enum ReduceOperator pOp)
virtual void v_AllReduce (Array< OneD, int > &pData, enum ReduceOperator pOp)
virtual void v_AllReduce (std::vector< unsigned int > &pData, enum ReduceOperator pOp)
virtual void v_AlltoAll (Array< OneD, NekDouble > &pSendData, Array< OneD, NekDouble > &pRecvData)
virtual void v_AlltoAll (Array< OneD, int > &pSendData, Array< OneD, int > &pRecvData)
virtual void v_AlltoAllv (Array< OneD, NekDouble > &pSendData, Array< OneD, int > &pSendDataSizeMap, Array< OneD, int > &pSendDataOffsetMap, Array< OneD, NekDouble > &pRecvData, Array< OneD, int > &pRecvDataSizeMap, Array< OneD, int > &pRecvDataOffsetMap)
virtual void v_AlltoAllv (Array< OneD, int > &pSendData, Array< OneD, int > &pSendDataSizeMap, Array< OneD, int > &pSendDataOffsetMap, Array< OneD, int > &pRecvData, Array< OneD, int > &pRecvDataSizeMap, Array< OneD, int > &pRecvDataOffsetMap)
- Protected Member Functions inherited from Nektar::LibUtilities::Comm
 Comm ()

Private Attributes

int m_rank

Additional Inherited Members

- Static Public Member Functions inherited from Nektar::LibUtilities::CommSerial
static CommSharedPtr create (int narg, char *arg[])
 Creates an instance of this class.
- Static Public Attributes inherited from Nektar::LibUtilities::CommSerial
static std::string className
 Name of class.
- Protected Attributes inherited from Nektar::LibUtilities::Comm
int m_size
 Number of processes.
std::string m_type
 Type of communication.
CommSharedPtr m_commRow
 Row communicator.
CommSharedPtr m_commColumn
 Column communicator.

Detailed Description

Definition at line 231 of file PostProcessing/FieldConvert/Module.h.

Constructor & Destructor Documentation

Nektar::Utilities::FieldConvertComm::FieldConvertComm ( int  argc,
char *  argv[],
int  size,
int  rank 
)
inline

Definition at line 234 of file PostProcessing/FieldConvert/Module.h.

: CommSerial(argc, argv)
{
m_size = size;
m_rank = rank;
m_type = "FieldConvert parallel";
}
Nektar::Utilities::FieldConvertComm::FieldConvertComm ( int  size,
int  rank 
)
inline

Definition at line 240 of file PostProcessing/FieldConvert/Module.h.

: CommSerial(0, NULL)
{
m_size = size;
m_rank = rank;
m_type = "FieldConvert parallel";
}
virtual Nektar::Utilities::FieldConvertComm::~FieldConvertComm ( )
inlinevirtual

Definition at line 246 of file PostProcessing/FieldConvert/Module.h.

{}

Member Function Documentation

int Nektar::Utilities::FieldConvertComm::v_GetRank ( void  )
inlineprotectedvirtual

Reimplemented from Nektar::LibUtilities::CommSerial.

Definition at line 255 of file PostProcessing/FieldConvert/Module.h.

{
return m_rank;
}
bool Nektar::Utilities::FieldConvertComm::v_RemoveExistingFiles ( void  )
inlineprotectedvirtual

Reimplemented from Nektar::LibUtilities::Comm.

Definition at line 265 of file PostProcessing/FieldConvert/Module.h.

{
return false;
}
void Nektar::Utilities::FieldConvertComm::v_SplitComm ( int  pRows,
int  pColumns 
)
inlinevirtual

Reimplemented from Nektar::LibUtilities::CommSerial.

Definition at line 247 of file PostProcessing/FieldConvert/Module.h.

{
// Compute row and column in grid.
m_commRow = boost::shared_ptr<FieldConvertComm>(new FieldConvertComm(pColumns,m_rank));
m_commColumn = boost::shared_ptr<FieldConvertComm>(new FieldConvertComm(pRows,0));
}
bool Nektar::Utilities::FieldConvertComm::v_TreatAsRankZero ( void  )
inlineprotectedvirtual

Reimplemented from Nektar::LibUtilities::CommSerial.

Definition at line 260 of file PostProcessing/FieldConvert/Module.h.

{
return true;
}

Member Data Documentation

int Nektar::Utilities::FieldConvertComm::m_rank
private

Definition at line 270 of file PostProcessing/FieldConvert/Module.h.