ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/fortranWrapDefines.hpp
Revision: 1214
Committed: Tue Jun 1 18:42:58 2004 UTC (20 years, 3 months ago) by gezelter
File size: 2695 byte(s)
Log Message:
Cutoff Groups for MPI

File Contents

# User Rev Content
1 mmeineke 377 #ifndef __FORTRAN_WRAP_DEFINES_H__
2     #define __FORTRAN_WRAP_DEFINES_H__
3    
4 mmeineke 836 #define __C
5     #include "fSimulation.h"
6 mmeineke 377
7 mmeineke 836 // here we declare the function pointer typedefs for fortran functions
8 mmeineke 377
9 mmeineke 836 extern "C" {
10 gezelter 941
11 mmeineke 836 typedef void (*makeAtype_TD) ( int* unique_ident,
12     int* isLJ,
13     int* isSticky,
14     int* isDipole,
15     int* isGB,
16     int* isEAM,
17 gezelter 941 int* isCharge,
18 mmeineke 836 double* lj_epslon,
19     double* lj_sigma,
20 gezelter 941 double* charge,
21 mmeineke 836 double* dipole_moment,
22     int* status );
23 chrisfen 999
24 mmeineke 836 typedef void (*newEAMtype_TD)( double* lattice_constant,
25     int* eam_nrho,
26     double* eam_drho,
27     int* eam_nr,
28     double* eam_dr,
29     double* eam_rcut,
30     double* eam_rvals,
31     double* eam_rhovals,
32     double* eam_Frhovals,
33     int* eam_ident,
34     int* status );
35    
36     typedef void (*initFortranFF_TD)( int* LJ_mix_policy,
37     int* useReactionField,
38     int *isError );
39    
40     typedef void (*doForceLoop_TD)( double* positionArray,
41 tim 1142 double* rcArray,
42 mmeineke 836 double* RotationMatrixArray,
43     double* unitVectorArray_l,
44     double* forceArray,
45     double *torqueArray,
46     double* StressTensor,
47     double* potentialEnergy,
48     short int* doPotentialCalc,
49     short int* doStressCalc,
50     int* isError );
51    
52     typedef void (*set_sticky_params_TD)( double* sticky_w0,
53     double* sticky_v0,
54     double* sticky_v0p,
55     double* sticky_rl,
56     double* sticky_ru,
57     double* sticky_rlp,
58     double* sticky_rup );
59 chuckv 631
60 mmeineke 836 typedef void (*set_gb_pair_params_TD)( double* GB_sigma,
61     double* GB_l2b_ratio,
62     double* GB_eps,
63     double* GB_eps_ratio,
64     double* GB_mu,
65     double* GB_nu );
66 chuckv 631
67 mmeineke 836 typedef void (*setFortranSim_TD)( simtype* the_Info,
68     int* nGlobal,
69     int* nLocal,
70     int* identArray,
71     int* nLocalExcludes,
72     int* excludesLocalArray,
73 gezelter 1150 int* nGlobalExcludes,
74 mmeineke 836 int* excludesGlobalArray,
75     int* molMembershipArray,
76 tim 1144 double* mfact,
77     int* ngroup,
78 gezelter 1214 int* globalGroupMembership,
79 mmeineke 836 int* isError );
80 chuckv 631
81 mmeineke 836 typedef void (*setFortranBox_TD) ( double *Hmat,
82     double *HmatI,
83     int* orthoRhombic );
84 mmeineke 377
85 mmeineke 836 typedef void (*notifyFortranCutOff_TD) ( double *rCut,
86 gezelter 1154 double *rSw,
87     double *rList );
88 mmeineke 836 }
89 mmeineke 377
90 chuckv 460
91 mmeineke 836 #ifdef IS_MPI
92 chuckv 460
93 mmeineke 836 #include "mpiComponentPlan.h"
94 mmeineke 377
95    
96 mmeineke 626
97 mmeineke 836 extern "C" {
98    
99     typedef void (*setFortranMPI_TD)( mpiSimData* the_mpiPlug,
100 gezelter 1203 int* nLocal,
101 gezelter 1214 int* globalAtomIndex,
102     int* nGroupsLocal,
103     int* globalGroupIndex,
104 mmeineke 836 int* isError );
105 mmeineke 377
106 mmeineke 836 }
107 mmeineke 377
108     #endif // is_mpi
109    
110     #endif // frotranWrapDefines.hpp