Scrambler
1
|
Main module for scheduling AMR related data communication. More...
Public Member Functions | |
subroutine, public | CompSendOverlaps (n) |
subroutine, public | CompRecvOverlaps (n) |
Routines required for ProlongateParentsData | |
subroutine | SendChildrenData_LevelPrecalc (level, proc_buffer_sizes) |
Precalculates the buffer size needed to send child data to each processor. | |
subroutine, public | PostSendChildrenData (n) |
subroutine, public | CompSendChildrenData (n) |
subroutine | RecvParentsData_LevelPrecalc (parent_level, proc_buffer_sizes) |
Precalculates the buffer size needed receive child data from each processor. | |
subroutine, public | PostRecvParentsData (n) |
subroutine, public | CompRecvParentsData (n) |
Routines required for ApplyOverlaps | |
subroutine | SendOverlaps_LevelPrecalc (level, proc_buffer_sizes, lUseNew) |
Calculate the buffer sizes needed to handle this processor's overlap sends for this level. | |
subroutine, public | PostSendOverlaps (n, lUseNewOpt) |
subroutine | RecvOverlaps_LevelPrecalc (level, proc_buffer_sizes) |
subroutine, public | PostRecvOverlaps (n) |
Routines required for ApplyChildrenData | |
subroutine | SendParentsData_LevelPrecalc (child_level, proc_buffer_sizes) |
Precalculate the buffer sizes for each ParentData message this processor will send on this level. | |
subroutine, public | PostSendParentsData (n) |
subroutine, public | CompSendParentsData (n) |
subroutine | RecvChildrenData_LevelPrecalc (parent_level, proc_buffer_sizes) |
Calculate the size of the buffers required to receive data from this level's children. | |
subroutine, public | PostRecvChildrenData (n) |
subroutine, public | CompRecvChildrenData (n) |
Routines required for ApplyInitialChildrenData | |
subroutine | SendParentsInitialData_LevelPrecalc (child_level, proc_buffer_sizes) |
Precalculate the buffer sizes for each ParentData message this processor will send on this level on the initial step. | |
subroutine, public | PostSendParentsInitialData (n) |
subroutine, public | CompSendParentsInitialData (n) |
subroutine | RecvInitialChildrenData_LevelPrecalc (parent_level, proc_buffer_sizes) |
Calculate the size of the buffers required to receive data from this level's children on the first timestep. | |
subroutine, public | PostRecvInitialChildrenData (n) |
subroutine, public | CompRecvInitialChildrenData (n) |
Routines required for SyncFluxes | |
subroutine | SendFluxes_LevelPrecalc (level, proc_buffer_sizes) |
Calculates the buffers required for this processor to send a level's flux data to all its neighbors. | |
subroutine, public | PostSendFluxes (n) |
subroutine, public | CompSendFluxes (n) |
subroutine | RecvFluxes_LevelPrecalc (level, proc_buffer_sizes) |
Calculates the buffers required for this processor to receive a level's flux data from all its neighbors. | |
subroutine, public | PostRecvFluxes (n) |
subroutine, public | CompRecvFluxes (n) |
Routines required for ApplyGenericOverlaps | |
subroutine | RecvGenericData_LevelPrecalc (level, fields, nghost, proc_buffer_sizes, lPeriodic, lNeighbors) |
Calculates the buffers required for this processor to receive a level's flux data to all its neighbors. | |
subroutine, public | PostRecvGenericData (n, fields, nghost, lPeriodic, lNeighbors) |
subroutine | SendGenericData_LevelPrecalc (level, fields, nghost, proc_buffer_sizes, lPeriodic, lNeighbors) |
Calculates the buffers required for this processor to send a level's flux data to all its neighbors. | |
subroutine, public | PostSendGenericData (n, fields, nghost, lPeriodic, lNeighbors) |
subroutine, public | CompRecvGenericData (n, fields) |
subroutine, public | CompSendGenericData (n) |
Main module for scheduling AMR related data communication.
Definition at line 35 of file data_level_comms.f90.
subroutine SendChildrenData_LevelPrecalc | ( | INTEGER | level, |
INTEGER, dimension(:), pointer | proc_buffer_sizes | ||
) |
Precalculates the buffer size needed to send child data to each processor.
level | The level of the nodes doing the sending. |
proc_buffer_sizes | A 0:np-1 array of integers to hold the accumulated buffer size for each processor. |
Definition at line 67 of file data_level_comms.f90.
subroutine, public PostSendChildrenData | ( | INTEGER | n | ) |
Definition at line 106 of file data_level_comms.f90.
subroutine, public CompSendChildrenData | ( | INTEGER | n | ) |
Definition at line 160 of file data_level_comms.f90.
subroutine RecvParentsData_LevelPrecalc | ( | INTEGER | parent_level, |
INTEGER, dimension(:), pointer | proc_buffer_sizes | ||
) |
Precalculates the buffer size needed receive child data from each processor.
level | The level of the nodes doing the sending. |
proc_buffer_sizes | A 0:np-1 array of integers to hold the accumulated buffer size for each processor. |
Definition at line 171 of file data_level_comms.f90.
subroutine, public PostRecvParentsData | ( | INTEGER | n | ) |
Definition at line 208 of file data_level_comms.f90.
subroutine, public CompRecvParentsData | ( | INTEGER | n | ) |
Definition at line 247 of file data_level_comms.f90.
subroutine SendOverlaps_LevelPrecalc | ( | INTEGER | level, |
INTEGER, dimension(:), pointer | proc_buffer_sizes, | ||
LOGICAL | lUseNew | ||
) |
Calculate the buffer sizes needed to handle this processor's overlap sends for this level.
level | The level of the overlaps to be sent. |
proc_buffer_sizes | An array of buffer sizes for each processor. Will be populated by this subroutine. |
Definition at line 275 of file data_level_comms.f90.
subroutine, public PostSendOverlaps | ( | INTEGER | n, |
LOGICAL, optional | lUseNewOpt | ||
) |
Definition at line 325 of file data_level_comms.f90.
subroutine, public CompSendOverlaps | ( | INTEGER | n | ) |
Definition at line 387 of file data_level_comms.f90.
subroutine RecvOverlaps_LevelPrecalc | ( | INTEGER | level, |
INTEGER, dimension(:), pointer | proc_buffer_sizes | ||
) |
Definition at line 395 of file data_level_comms.f90.
subroutine, public PostRecvOverlaps | ( | INTEGER | n | ) |
Definition at line 440 of file data_level_comms.f90.
subroutine, public CompRecvOverlaps | ( | INTEGER | n | ) |
Definition at line 487 of file data_level_comms.f90.
subroutine SendParentsData_LevelPrecalc | ( | INTEGER | child_level, |
INTEGER, dimension(:), pointer | proc_buffer_sizes | ||
) |
Precalculate the buffer sizes for each ParentData message this processor will send on this level.
child_level | The level of the nodes sending data to their parents. |
proc_buffer_sizes | A buffer array that will be filled with precalculations for each processor. |
Definition at line 512 of file data_level_comms.f90.
subroutine, public PostSendParentsData | ( | INTEGER | n | ) |
Definition at line 550 of file data_level_comms.f90.
subroutine, public CompSendParentsData | ( | INTEGER | n | ) |
Definition at line 595 of file data_level_comms.f90.
subroutine RecvChildrenData_LevelPrecalc | ( | INTEGER | parent_level, |
INTEGER, dimension(:), pointer | proc_buffer_sizes | ||
) |
Calculate the size of the buffers required to receive data from this level's children.
parent_level | The level of the parents who will be receiving the data. |
proc_buffer_sizes | A pointer to an MPI_np-sized array which will hold the size of the precalculated buffers. |
Definition at line 606 of file data_level_comms.f90.
subroutine, public PostRecvChildrenData | ( | INTEGER | n | ) |
Definition at line 646 of file data_level_comms.f90.
subroutine, public CompRecvChildrenData | ( | INTEGER | n | ) |
Definition at line 690 of file data_level_comms.f90.
subroutine SendParentsInitialData_LevelPrecalc | ( | INTEGER | child_level, |
INTEGER, dimension(:), pointer | proc_buffer_sizes | ||
) |
Precalculate the buffer sizes for each ParentData message this processor will send on this level on the initial step.
child_level | The level of the nodes sending data to their parents. |
proc_buffer_sizes | A buffer array that will be filled with precalculations for each processor. |
Definition at line 716 of file data_level_comms.f90.
subroutine, public PostSendParentsInitialData | ( | INTEGER | n | ) |
Definition at line 755 of file data_level_comms.f90.
subroutine, public CompSendParentsInitialData | ( | INTEGER | n | ) |
Definition at line 803 of file data_level_comms.f90.
subroutine RecvInitialChildrenData_LevelPrecalc | ( | INTEGER | parent_level, |
INTEGER, dimension(:), pointer | proc_buffer_sizes | ||
) |
Calculate the size of the buffers required to receive data from this level's children on the first timestep.
parent_level | The level of the parents who will be receiving the data. |
proc_buffer_sizes | A pointer to an MPI_np-sized array which will hold the size of the precalculated buffers. |
Definition at line 818 of file data_level_comms.f90.
subroutine, public PostRecvInitialChildrenData | ( | INTEGER | n | ) |
Definition at line 858 of file data_level_comms.f90.
subroutine, public CompRecvInitialChildrenData | ( | INTEGER | n | ) |
Definition at line 904 of file data_level_comms.f90.
subroutine SendFluxes_LevelPrecalc | ( | INTEGER | level, |
INTEGER, dimension(:), pointer | proc_buffer_sizes | ||
) |
Calculates the buffers required for this processor to send a level's flux data to all its neighbors.
level | The level of the data being sent. |
proc_buffer_sizes | An integer array of range [0:np-1] that will be populated with buffer sizes. |
Definition at line 930 of file data_level_comms.f90.
subroutine, public PostSendFluxes | ( | INTEGER | n | ) |
Definition at line 970 of file data_level_comms.f90.
subroutine, public CompSendFluxes | ( | INTEGER | n | ) |
Definition at line 1016 of file data_level_comms.f90.
subroutine RecvFluxes_LevelPrecalc | ( | INTEGER | level, |
INTEGER, dimension(:), pointer | proc_buffer_sizes | ||
) |
Calculates the buffers required for this processor to receive a level's flux data from all its neighbors.
level | The level of the data being receive. |
proc_buffer_sizes | An integer array of range [0:np-1] that will be populated with buffer sizes. |
Definition at line 1027 of file data_level_comms.f90.
subroutine, public PostRecvFluxes | ( | INTEGER | n | ) |
Definition at line 1068 of file data_level_comms.f90.
subroutine, public CompRecvFluxes | ( | INTEGER | n | ) |
Definition at line 1109 of file data_level_comms.f90.
subroutine RecvGenericData_LevelPrecalc | ( | INTEGER | level, |
INTEGER, dimension(:) | fields, | ||
INTEGER | nghost, | ||
INTEGER, dimension(:), pointer | proc_buffer_sizes, | ||
LOGICAL, dimension(3) | lPeriodic, | ||
LOGICAL | lNeighbors | ||
) |
Calculates the buffers required for this processor to receive a level's flux data to all its neighbors.
level | The level of the data being received. |
fields | An integer array containing the indices of elliptic fields to be received. |
nghost | The number of ghost cells to consider in an overlap. |
proc_buffer_sizes | An integer array of range [0:np-1] that will be populated with buffer sizes. |
Definition at line 1136 of file data_level_comms.f90.
subroutine, public PostRecvGenericData | ( | INTEGER | n, |
INTEGER, dimension(:) | fields, | ||
INTEGER | nghost, | ||
LOGICAL, dimension(3) | lPeriodic, | ||
LOGICAL | lNeighbors | ||
) |
Definition at line 1181 of file data_level_comms.f90.
subroutine SendGenericData_LevelPrecalc | ( | INTEGER | level, |
INTEGER, dimension(:) | fields, | ||
INTEGER | nghost, | ||
INTEGER, dimension(:), pointer | proc_buffer_sizes, | ||
LOGICAL, dimension(3) | lPeriodic, | ||
LOGICAL | lNeighbors | ||
) |
Calculates the buffers required for this processor to send a level's flux data to all its neighbors.
level | The level of the data being sent. |
fields | An integer array containing the indices of elliptic fields to be sent. |
nghost | The number of ghost cells to consider in an overlap. |
proc_buffer_sizes | An integer array of range [0:np-1] that will be populated with buffer sizes. |
Definition at line 1232 of file data_level_comms.f90.
subroutine, public PostSendGenericData | ( | INTEGER | n, |
INTEGER, dimension(:) | fields, | ||
INTEGER | nghost, | ||
LOGICAL, dimension(3) | lPeriodic, | ||
LOGICAL | lNeighbors | ||
) |
Definition at line 1283 of file data_level_comms.f90.
subroutine, public CompRecvGenericData | ( | INTEGER | n, |
INTEGER, dimension(:) | fields | ||
) |
Definition at line 1338 of file data_level_comms.f90.
subroutine, public CompSendGenericData | ( | INTEGER | n | ) |
Definition at line 1356 of file data_level_comms.f90.