| 1 | #ifdef __C | 
| 2 | /** This header provides dual access for mpiComponenPlan | 
| 3 | structure in fortran and in c, C++. | 
| 4 | */ | 
| 5 |  | 
| 6 | typedef struct{ | 
| 7 | int nMolGlobal; | 
| 8 | int nAtomsGlobal; | 
| 9 | int nBondsGlobal; | 
| 10 | int nBendsGlobal; | 
| 11 | int nTorsionsGlobal; | 
| 12 | int nSRIGlobal; | 
| 13 | int myMolStart; | 
| 14 | int myMolEnd; | 
| 15 | int myAtomStart; | 
| 16 | int myAtomEnd; | 
| 17 | int myMol; | 
| 18 | int myNlocal; | 
| 19 | int myNode; | 
| 20 | int numberProcessors; | 
| 21 | int rowComm; | 
| 22 | int columnComm; | 
| 23 | int numberRows; | 
| 24 | int numberColumns; | 
| 25 | int nComponentsRow; | 
| 26 | int nComponentsColumn; | 
| 27 | int rowIndex; | 
| 28 | int columnIndex; | 
| 29 | } mpiSimData; | 
| 30 |  | 
| 31 |  | 
| 32 | #endif | 
| 33 |  | 
| 34 |  | 
| 35 | #ifdef __FORTRAN90 | 
| 36 | type, public :: mpiComponentPlan | 
| 37 | sequence | 
| 38 | integer :: nMolGlobal = 0 | 
| 39 | integer :: nAtomsGlobal = 0 | 
| 40 | integer :: nBondsGlobal = 0 | 
| 41 | integer :: nBendsGlobal = 0 | 
| 42 | integer :: nTorsionsGlobal = 0 | 
| 43 | integer :: nSRIGlobal = 0 | 
| 44 | integer :: myMolStart = 0 | 
| 45 | integer :: myMolEnd = 0 | 
| 46 | integer :: myAtomStart = 0 | 
| 47 | integer :: myAtomEnd = 0 | 
| 48 | integer :: myMol = 0 | 
| 49 | integer :: myNlocal = 0 | 
| 50 | integer :: myNode = 0 | 
| 51 | integer :: numberProcessors = 0 | 
| 52 | integer :: rowComm = 0 | 
| 53 | integer :: columnComm = 0 | 
| 54 | integer :: numberRows = 0 | 
| 55 | integer :: numberColumns = 0 | 
| 56 | integer :: nComponentsRow = 0 | 
| 57 | integer :: nComponentsColumn = 0 | 
| 58 | integer :: rowIndex = 0 | 
| 59 | integer :: columnIndex = 0 | 
| 60 | end type mpiComponentPlan | 
| 61 |  | 
| 62 | #endif |