ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/fortranWrapDefines.hpp
Revision: 999
Committed: Fri Jan 30 15:01:09 2004 UTC (20 years, 5 months ago) by chrisfen
File size: 2465 byte(s)
Log Message:
Substantial changes. OOPSE now has a working WATER.cpp forcefield and parser.
This involved changes to WATER.cpp and ForceFields amoung other files. One important
note: a hardwiring of LJ_rcut was made in calc_LJ_FF.F90. This will be removed on
the next commit...

File Contents

# Content
1 #ifndef __FORTRAN_WRAP_DEFINES_H__
2 #define __FORTRAN_WRAP_DEFINES_H__
3
4 #define __C
5 #include "fSimulation.h"
6
7 // here we declare the function pointer typedefs for fortran functions
8
9 extern "C" {
10
11 typedef void (*makeAtype_TD) ( int* unique_ident,
12 int* isLJ,
13 int* isSticky,
14 int* isDipole,
15 int* isGB,
16 int* isEAM,
17 int* isCharge,
18 double* lj_epslon,
19 double* lj_sigma,
20 double* charge,
21 double* dipole_moment,
22 int* status );
23
24 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 double* RotationMatrixArray,
42 double* unitVectorArray_l,
43 double* forceArray,
44 double *torqueArray,
45 double* StressTensor,
46 double* potentialEnergy,
47 short int* doPotentialCalc,
48 short int* doStressCalc,
49 int* isError );
50
51 typedef void (*set_sticky_params_TD)( double* sticky_w0,
52 double* sticky_v0,
53 double* sticky_v0p,
54 double* sticky_rl,
55 double* sticky_ru,
56 double* sticky_rlp,
57 double* sticky_rup );
58
59 typedef void (*set_gb_pair_params_TD)( double* GB_sigma,
60 double* GB_l2b_ratio,
61 double* GB_eps,
62 double* GB_eps_ratio,
63 double* GB_mu,
64 double* GB_nu );
65
66 typedef void (*setFortranSim_TD)( simtype* the_Info,
67 int* nGlobal,
68 int* nLocal,
69 int* identArray,
70 int* nLocalExcludes,
71 int* excludesLocalArray,
72 int* nGloabalsExcludes,
73 int* excludesGlobalArray,
74 int* molMembershipArray,
75 int* isError );
76
77 typedef void (*setFortranBox_TD) ( double *Hmat,
78 double *HmatI,
79 int* orthoRhombic );
80
81 typedef void (*notifyFortranCutOff_TD) ( double *rCut,
82 double *rList,
83 double *ecr,
84 double *est );
85 }
86
87
88 #ifdef IS_MPI
89
90 #include "mpiComponentPlan.h"
91
92
93
94 extern "C" {
95
96 typedef void (*setFortranMPI_TD)( mpiSimData* the_mpiPlug,
97 int *nLocal,
98 int* globalIndexArray,
99 int* isError );
100
101 }
102
103 #endif // is_mpi
104
105 #endif // frotranWrapDefines.hpp