METHOD
ParallelPeriodic Class Reference

#include <parallelBoundaryConds.h>

Inheritance diagram for ParallelPeriodic:
Collaboration diagram for ParallelPeriodic:

Public Member Functions

 ParallelPeriodic (Data *data, ParallelEnv *env)
 
virtual ~ParallelPeriodic ()
 
void apply (double *cons, double *prims=NULL, double *aux=NULL)
 
- Public Member Functions inherited from ParallelBcs
 ParallelBcs (Data *data, ParallelEnv *env)
 
virtual ~ParallelBcs ()
 
void swapGhostBuffers (double *sendToLeftBuf, double *sendToRightBuf, double *recvFromLeftBuf, double *recvFromRightBuf, int leftNeighbour, int rightNeighbour, int numCellsSent)
 
void packXBuffer (double *sendToLeftBuf, double *sendToRightBuf, double *stateVector, int nVars)
 
void unpackXBuffer (double *recvFromLeftBuf, double *recfFromRightBuf, double *stateVector, int nVars)
 
void packYBuffer (double *sendToLeftBuf, double *sendToRightBuf, double *stateVector, int nVars)
 
void unpackYBuffer (double *recvFromLeftBuf, double *recfFromRightBuf, double *stateVector, int nVars)
 
void packZBuffer (double *sendToLeftBuf, double *sendToRightBuf, double *stateVector, int nVars)
 
void unpackZBuffer (double *recvFromLeftBuf, double *recfFromRightBuf, double *stateVector, int nVars)
 

Additional Inherited Members

- Public Attributes inherited from ParallelBcs
ParallelEnvenv
 
- Protected Member Functions inherited from Bcs
 Bcs (Data *data)
 
virtual ~Bcs ()
 
- Protected Attributes inherited from Bcs
Datadata
 

Detailed Description

Periodic boundary conditions for a data structure that has been distributed across ranks

Flows that exit across one domain boundary re-enter at the opposing end. I.e. the N ghost cells at one edge of the domain are set to the values of the N physical cells before the ghost cells at the opposing edge.

For left-right reconstruction:
(Note that the lower and upper halves of each row will lie on different ranks)
Before...
____________________________
|0|1|2|3||4|5|6|..... |13||14|15|16|17|
|0|1|2|3||4|5|6|..... |13||14|15|16|17|

After....
____________________________
|10|11|12|13||4|5|6|..... |13||4|5|6|7|
|10|11|12|13||4|5|6|..... |13||4|5|6|7|

..and similar in other directions.

Definition at line 230 of file parallelBoundaryConds.h.

Constructor & Destructor Documentation

◆ ParallelPeriodic()

ParallelPeriodic::ParallelPeriodic ( Data data,
ParallelEnv env 
)
inline

Constructor.

Calls constructor of base class to store the pointer to the Data class and ParallelEnv class.

Parameters
[in]*datapointer to Data class
[in]*envpointer to ParallelEnv class
See also
ParallelBcs::ParallelBcs

Definition at line 242 of file parallelBoundaryConds.h.

◆ ~ParallelPeriodic()

virtual ParallelPeriodic::~ParallelPeriodic ( )
inlinevirtual

Destructor.

Definition at line 244 of file parallelBoundaryConds.h.

Member Function Documentation

◆ apply()

void ParallelPeriodic::apply ( double *  cons,
double *  prims = NULL,
double *  aux = NULL 
)
virtual

Application function.

Applies the Periodic boundary conditions to the ghost cells.

Parameters
[in,out]*conspointer to the conservative (sized) vector
[in,out]*primsoptional pointer to the primitive vector
[in,out]*auxoptional pointer to the primitive vector
See also
Bcs::apply

Implements Bcs.


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