| 16 |
|
|
| 17 |
|
void divideLabor(); |
| 18 |
|
|
| 19 |
< |
int getMyNode(void) { return mpiPlug->myNode; } |
| 20 |
< |
int getNumberProcessors(void) { return mpiPlug->numberProcessors; } |
| 21 |
< |
int getMyNMol( void ) { return mpiPlug->myNMol; } |
| 22 |
< |
int getMyNlocal( void ) { return mpiPlug->myNlocal; } |
| 23 |
< |
int getTotAtoms( void ) { return mpiPlug->nAtomsGlobal; } |
| 24 |
< |
int getTotNmol( void ) { return mpiPlug->nMolGlobal; } |
| 19 |
> |
int getMyNode( void ) { return parallelData->myNode; } |
| 20 |
> |
int getNProcessors( void ) { return parallelData->nProcessors; } |
| 21 |
> |
int getNMolLocal( void ) { return parallelData->nMolLocal; } |
| 22 |
> |
int getNMolGlobal( void ) { return parallelData->nMolGlobal; } |
| 23 |
> |
int getNAtomsLocal( void ) { return parallelData->nAtomsLocal; } |
| 24 |
> |
int getNAtomsGlobal( void ) { return parallelData->nAtomsGlobal; } |
| 25 |
> |
int getNGroupsLocal( void ) { return parallelData->nGroupsLocal; } |
| 26 |
> |
int getNGroupsGlobal( void ) { return parallelData->nGroupsGlobal; } |
| 27 |
|
int* getAtomToProcMap( void ) { return AtomToProcMap; } |
| 28 |
+ |
int* getGroupToProcMap( void ) { return GroupToProcMap; } |
| 29 |
|
int* getMolToProcMap( void ) { return MolToProcMap; } |
| 30 |
|
int* getMolComponentType(void) { return MolComponentType; } |
| 31 |
|
vector<int> getGlobalAtomIndex(void) {return globalAtomIndex; } |
| 32 |
+ |
vector<int> getGlobalGroupIndex(void) {return globalGroupIndex; } |
| 33 |
|
vector<int> getGlobalMolIndex(void) {return globalMolIndex;} |
| 34 |
|
int getGlobalToLocalMol(int globalIndex) {return globalToLocalMol[globalIndex];} |
| 35 |
|
int getGlobalToLocalAtom(int globalIndex) {return globalToLocalAtom[globalIndex];} |
| 36 |
+ |
int getGlobalToLocalGroup(int globalIndex) {return globalToLocalGroup[globalIndex];} |
| 37 |
|
|
| 33 |
– |
|
| 34 |
– |
//void globalToLocalMol(int globalIndex, int& whichNode, int& localIndex); |
| 35 |
– |
//void globalToLocalAtom(int globalIndex, int& whichNode, int& localIndex); |
| 36 |
– |
|
| 38 |
|
// sets the internal function pointer to fortran. |
| 39 |
|
|
| 40 |
|
void setInternal( setFortranMPI_TD fSetup){ |
| 48 |
|
|
| 49 |
|
protected: |
| 50 |
|
SimInfo* entryPlug; |
| 51 |
< |
mpiSimData* mpiPlug; |
| 51 |
> |
mpiSimData* parallelData; |
| 52 |
|
int *MolToProcMap; |
| 53 |
|
int *MolComponentType; |
| 54 |
|
int *AtomToProcMap; |
| 55 |
|
int *AtomType; |
| 56 |
+ |
int *GroupToProcMap; |
| 57 |
|
vector<int> globalAtomIndex; |
| 58 |
|
vector<int> globalMolIndex; |
| 59 |
+ |
vector<int> globalGroupIndex; |
| 60 |
|
|
| 61 |
|
vector<int> globalToLocalMol; |
| 62 |
|
vector<int> globalToLocalAtom; |
| 63 |
+ |
vector<int> globalToLocalGroup; |
| 64 |
+ |
|
| 65 |
|
// private function to initialize the fortran side of the simulation |
| 66 |
|
setFortranMPI_TD setFsimParallel; |
| 67 |
|
|