1 #ifndef PARALLEL_BOUNDARYCONDS_H 2 #define PARALLEL_BOUNDARYCONDS_H 50 void swapGhostBuffers(
double *sendToLeftBuf,
double *sendToRightBuf,
double *recvFromLeftBuf,
51 double *recvFromRightBuf,
int leftNeighbour,
int rightNeighbour,
int numCellsSent);
65 void packXBuffer(
double *sendToLeftBuf,
double *sendToRightBuf,
double *stateVector,
int nVars);
78 void unpackXBuffer(
double *recvFromLeftBuf,
double *recfFromRightBuf,
double *stateVector,
int nVars);
92 void packYBuffer(
double *sendToLeftBuf,
double *sendToRightBuf,
double *stateVector,
int nVars);
105 void unpackYBuffer(
double *recvFromLeftBuf,
double *recfFromRightBuf,
double *stateVector,
int nVars);
118 void packZBuffer(
double *sendToLeftBuf,
double *sendToRightBuf,
double *stateVector,
int nVars);
131 void unpackZBuffer(
double *recvFromLeftBuf,
double *recfFromRightBuf,
double *stateVector,
int nVars);
178 void apply(
double * cons,
double * prims = NULL,
double * aux = NULL);
187 void setXBoundary(
double *stateVector,
int nVars);
196 void setYBoundary(
double *stateVector,
int nVars);
205 void setZBoundary(
double *stateVector,
int nVars);
255 void apply(
double * cons,
double * prims = NULL,
double * aux = NULL);
288 void apply(
double * cons,
double * prims = NULL,
double * aux = NULL);
297 void setYBoundary(
double *stateVector,
int nVars);
306 void setZBoundary(
double *stateVector,
int nVars);
Periodic boundary conditions for a data structure that has been distributed across ranks ...
Flow boundary conditions for a data structure that has been distributed across ranks ...
ParallelEnv * env
Pointer to ParallelEnv class containing platform specific info such as MPI details.
ParallelFlow(Data *data, ParallelEnv *env)
Constructor.
void unpackXBuffer(double *recvFromLeftBuf, double *recfFromRightBuf, double *stateVector, int nVars)
ParallelOutflow(Data *data, ParallelEnv *env)
Constructor.
virtual ~ParallelOutflow()
Destructor.
void unpackZBuffer(double *recvFromLeftBuf, double *recfFromRightBuf, double *stateVector, int nVars)
void packYBuffer(double *sendToLeftBuf, double *sendToRightBuf, double *stateVector, int nVars)
virtual void apply(double *cons, double *prims=NULL, double *aux=NULL)=0
Application function.
Outflow boundary conditions for a data structure that has been distributed across ranks ...
ParallelBcs(Data *data, ParallelEnv *env)
Constructor.
void packXBuffer(double *sendToLeftBuf, double *sendToRightBuf, double *stateVector, int nVars)
void packZBuffer(double *sendToLeftBuf, double *sendToRightBuf, double *stateVector, int nVars)
Boundary Conditions for a data structure that has been distributed across ranks
Data * data
Pointer to Data class containing global simulation data.
ParallelPeriodic(Data *data, ParallelEnv *env)
Constructor.
virtual ~ParallelFlow()
Destructor.
void swapGhostBuffers(double *sendToLeftBuf, double *sendToRightBuf, double *recvFromLeftBuf, double *recvFromRightBuf, int leftNeighbour, int rightNeighbour, int numCellsSent)
virtual ~ParallelPeriodic()
Destructor.
void unpackYBuffer(double *recvFromLeftBuf, double *recfFromRightBuf, double *stateVector, int nVars)
virtual ~ParallelBcs()
Destructor.