|
GADGET-4
|
#include <domain.h>
Inherits setcomm.
Classes | |
| struct | topnode_data |
Public Types | |
| typedef partset::pdata | pdata |
Public Member Functions | |
| domain (MPI_Comm comm, partset *Tp_ptr) | |
| void | domain_decomposition (domain_options mode) |
| void | domain_allocate (void) |
| void | domain_allocate (int maxtopnodes) |
| void | domain_free (void) |
| void | domain_resize_storage (int count_get, int count_get_sph, int option_flag) |
| size_t | domain_sizeof_topnode_data (void) |
| void | reorder_particles (int *Id, int Nstart, int N) |
| void | reorder_gas (int *Id) |
| void | reorder_PS (int *Id, int Nstart, int N) |
| void | reorder_P_and_PS (int *Id) |
| void | reorder_P_PS (int NumGas, int NumPart) |
| void | particle_exchange_based_on_PS (MPI_Comm Communicator) |
Public Member Functions inherited from setcomm | |
| setcomm (MPI_Comm Comm) | |
| setcomm (const char *str) | |
| void | initcomm (MPI_Comm Comm) |
| void | mpi_printf (const char *fmt,...) |
| void | determine_compute_nodes (void) |
Public Attributes | |
| domain_options | Mode |
| int | NTopnodes |
| int | NTopleaves |
| int | MultipleDomains = 1 |
| int | MaxTopNodes |
| int * | ListOfTopleaves |
| int * | NumTopleafOfTask |
| int * | FirstTopleafOfTask |
| int * | TaskOfLeaf |
| topnode_data * | TopNodes |
Public Attributes inherited from setcomm | |
| MPI_Comm | Communicator |
| int | NTask |
| int | ThisTask |
| int | PTask |
| int | ThisNode |
| int | NumNodes = 0 |
| int | TasksInThisNode |
| int | RankInThisNode |
| int | MinTasksPerNode |
| int | MaxTasksPerNode |
| long long | MemoryOnNode |
| long long | SharedMemoryOnNode |
| void domain_allocate | ( | int | maxtopnodes | ) |
| void domain_allocate | ( | void | ) |
| void domain_decomposition | ( | domain_options | mode | ) |
Array of task numbers holding the respective top-level nodes. For the topnodes entries, it is indexed by the Leaf member, for pseudoparticles it is indexed by the node number-MaxPart-MaxNodes.
This is the main routine for the domain decomposition. It acts as a driver routine that allocates various temporary buffers, maps the particles back onto the periodic box if needed, and then does the domain decomposition, followed by a final Peano-Hilbert order of all particles as a tuning measure.
| void domain_resize_storage | ( | int | count_get, |
| int | count_get_sph, | ||
| int | option_flag | ||
| ) |
Definition at line 37 of file domain_exchange.cc.
| void particle_exchange_based_on_PS | ( | MPI_Comm | Communicator | ) |
Definition at line 512 of file domain_exchange.cc.
| void reorder_gas | ( | int * | Id | ) |
Definition at line 336 of file domain_exchange.cc.
| void reorder_P_and_PS | ( | int * | Id | ) |
Definition at line 439 of file domain_exchange.cc.
| void reorder_P_PS | ( | int | NumGas, |
| int | NumPart | ||
| ) |
Definition at line 476 of file domain_exchange.cc.
| void reorder_particles | ( | int * | Id, |
| int | Nstart, | ||
| int | N | ||
| ) |
Definition at line 373 of file domain_exchange.cc.
| void reorder_PS | ( | int * | Id, |
| int | Nstart, | ||
| int | N | ||
| ) |
Definition at line 406 of file domain_exchange.cc.
| int MaxTopNodes |
| domain_options Mode |
| topnode_data* TopNodes |