unres_package_Oct_2016 from emilial
[unres4.git] / source / unres / Makefile_MPICH_ifort_gCACB
1 ###################################################################
2 #INSTALL_DIR = /users/software/mpich-1.2.7p1_intel-10.1_em64_ssh
3 INSTALL_DIR = /users/software/mpich2-1.4.1p1_intel
4 #INSTALL_DIR = /users2/emilial/UNRES/new.f90/source/unres_MD-M
5
6 FC= ${INSTALL_DIR}/bin/mpif90
7
8 OPT =  -O3 -ip 
9
10 #FFLAGS = -fpp -c ${OPT}  -I$(INSTALL_DIR)/include
11 #-mcmodel large -check arg_temp_created -heap-arrays  -recursive
12 #FFLAGS  = -fpp -c ${OPT} #-auto
13 FFLAGS  = -fpp -c -g -CA -CB #-auto -zero -traceback -u -check pointer -check uninit
14 #FFLAGSm = -fpp -c -O #-g -CA -CB -auto -zero -traceback -u -check uninit -check pointer
15 FFLAGSm = -fpp -c -g -CA -CB #-auto -zero -traceback -u -check pointer -check uninit
16 #FFLAGS_ = -fpp -c -g -CA -CB -zero -traceback -u -check pointer -check uninit
17 #FFLAGS1 = -fpp -c -g -CA -CB #-auto #-zero -traceback -u -check pointer -check uninit
18 FFLAGS1 = -fpp -c -g -CA -CB #-auto -zero -traceback -u -check pointer -check uninit
19 FFLAGS2 = -fpp -c -g -CA -CB #-O0  #-I$(INSTALL_DIR)/include
20 #FFLAGS2 = -fpp -c -g -O0  #-I$(INSTALL_DIR)/include
21 #FFLAGSE = -fpp -c ${OPT} #-g -CA -CB -auto -zero -traceback -u -check uninit -check pointer -O3 -ipo -opt_report #-g -CA -CB -auto -zero -traceback -u -check pointer -check uninit #-I$(INSTALL_DIR)/include 
22 FFLAGSE = -fpp -c -g -CA -CB #-auto -zero -traceback -u -check pointer -check uninit #-O3 -ipo -opt_report
23
24 #CPPFLAGS = -DPROCOR -DLINUX -DPGI -DISNAN 
25 # -lmpl only necessary for mpich2-1.4.1p1_intel
26 #LIBS = -L$(INSTALL_DIR)/lib -lmpich xdrf/libxdrf.a -lmpl
27
28 ARCH = LINUX
29 PP = /lib/cpp -P
30
31 #EXE_FILE = unres_MD-M_E0LL2Y.f90_EL.exe
32
33
34 all: no_option
35         @echo "Specify force field: GAB, 4P or E0LL2Y; or NMPI"
36
37 .SUFFIXES: .f90
38 .f90.o:
39         ${FC} ${FFLAGS} ${CPPFLAGS} $*.f90
40
41 objects = xdrf/*.o names.o io_units.o calc_data.o compare_data.o control_data.o \
42         CSA_data.o energy_data.o geometry_data.o map_data.o \
43         MCM_data.o MD_data.o minim_data.o MPI_data.o REMD_data.o comm_local.o \
44         prng_32.o math.o random.o geometry.o md_calc.o io_base.o energy.o check_bond.o muca_md.o\
45         control.o io_config.o MPI.o minim.o \
46         regularize.o compare.o map.o REMD.o MCM_MD.o io.o \
47         MD.o MREMD.o CSA.o unres.o
48
49
50 #${EXE_FILE}: ${objects}
51 #       ${FC} ${OPT} ${objects} -o ${EXE_FILE}
52
53 no_option:
54
55 #NMPI: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DISNAN 
56 NMPI: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN \
57         -DSPLITELE -DLANG0
58 NMPI: EXE_FILE = ../../bin/unres_NO_MPI.F90_EL.exe
59
60 NMPI: ${objects}
61         cc -o compinfo compinfo.c
62         ./compinfo | true
63         ${FC} ${FFLAGS} cinfo.f90
64         ${FC} ${objects} cinfo.o -o ${EXE_FILE}
65
66 # ${FC} ${objects} -Xlinker -M -o ${EXE_FILE}
67 GAB: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \
68         -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC
69 GAB: EXE_FILE = ../../bin/unres_GAB_F90_EL_gCACB.exe
70 GAB: ${objects}
71         cc -o compinfo compinfo.c
72         ./compinfo | true
73         ${FC} ${FFLAGS} cinfo.f90
74         ${FC} ${OPT} ${objects} cinfo.o -o ${EXE_FILE}
75
76 4P: CPPFLAGS = -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \
77         -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC
78 4P: EXE_FILE = ../../bin/unres_4P_F90_EL_gCACB.exe
79 4P: ${objects}
80         cc -o compinfo compinfo.c
81         ./compinfo | true
82         ${FC} ${FFLAGS} cinfo.f90
83         ${FC} ${OPT} ${objects} cinfo.o -o ${EXE_FILE}
84
85 E0LL2Y: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \
86         -DSPLITELE -DLANG0
87 E0LL2Y: EXE_FILE = ../../bin/unres_E0LL2Y_F90_EL_gCACB.exe
88 E0LL2Y: ${objects}
89         cc -o compinfo compinfo.c
90         ./compinfo | true
91         ${FC} ${FFLAGS} cinfo.f90
92         ${FC} ${OPT} ${objects} cinfo.o -o ${EXE_FILE}
93
94
95 xdrf/*.o:
96         cd xdrf && make
97
98 clean:
99         rm -f *.o && rm -f *.mod && rm ${EXE_FILE} && rm -f compinfo && cd xdrf && make clean
100
101
102 names.o: names.f90
103         ${FC} ${FFLAGS} ${CPPFLAGS} names.f90
104
105 io_units.o: io_units.f90
106         ${FC} ${FFLAGS} ${CPPFLAGS} io_units.f90
107
108 calc_data.o: calc_data.f90
109         ${FC} ${FFLAGS} ${CPPFLAGS} calc_data.f90
110
111 compare_data.o: compare_data.f90
112         ${FC} ${FFLAGS} ${CPPFLAGS} compare_data.f90
113
114 control_data.o: control_data.f90
115         ${FC} ${FFLAGS} ${CPPFLAGS} control_data.f90
116
117 CSA_data.o: CSA_data.f90
118         ${FC} ${FFLAGS} ${CPPFLAGS} CSA_data.f90
119
120 energy_data.o: energy_data.f90
121         ${FC} ${FFLAGS} ${CPPFLAGS} energy_data.f90
122
123 geometry_data.o: geometry_data.f90
124         ${FC} ${FFLAGS} ${CPPFLAGS} geometry_data.f90
125
126 map_data.o: map_data.f90
127         ${FC} ${FFLAGS} ${CPPFLAGS} map_data.f90
128
129 MCM_data.o: MCM_data.f90
130         ${FC} ${FFLAGS} ${CPPFLAGS} MCM_data.f90
131
132 MD_data.o: MD_data.f90
133         ${FC} ${FFLAGS} ${CPPFLAGS} MD_data.f90
134
135 minim_data.o: minim_data.f90
136         ${FC} ${FFLAGSm} ${CPPFLAGS} minim_data.f90
137
138 MPI_data.o: MPI_data.f90
139         ${FC} ${FFLAGS} ${CPPFLAGS} MPI_data.f90
140
141 REMD_data.o: REMD_data.f90
142         ${FC} ${FFLAGS} ${CPPFLAGS} REMD_data.f90
143
144 comm_local.o: comm_local.f90
145         ${FC} ${FFLAGS} ${CPPFLAGS} comm_local.f90
146
147 prng_32.o: prng_32.f90
148         ${FC} ${FFLAGS} ${CPPFLAGS} prng_32.f90
149
150 math.o: math.f90
151         ${FC} ${FFLAGS} ${CPPFLAGS} math.f90
152
153 random.o: random.f90
154         ${FC} ${FFLAGS} ${CPPFLAGS} random.f90
155
156 geometry.o: geometry.f90
157         ${FC} ${FFLAGS} ${CPPFLAGS} geometry.f90
158
159 md_calc.o: md_calc.f90
160         ${FC} ${FFLAGS1} ${CPPFLAGS} md_calc.f90
161
162 io_base.o: io_base.f90
163         ${FC} ${FFLAGS} ${CPPFLAGS} io_base.f90
164
165 energy.o: energy.f90
166         ${FC} ${FFLAGSE} ${CPPFLAGS} energy.f90
167
168 check_bond.o: check_bond.f90
169         ${FC} ${FFLAGS} ${CPPFLAGS} check_bond.f90
170
171 control.o: control.f90
172         ${FC} ${FFLAGS} ${CPPFLAGS} control.f90
173
174 io_config.o: io_config.f90
175         ${FC} ${FFLAGS2} ${CPPFLAGS} io_config.f90
176
177 MPI.o: MPI.f90
178         ${FC} ${FFLAGS} ${CPPFLAGS} MPI.f90
179
180 minim.o: minim.f90
181         ${FC} ${FFLAGS1} ${CPPFLAGS} minim.f90
182
183 regularize.o: regularize.f90
184         ${FC} ${FFLAGS} ${CPPFLAGS} regularize.f90
185
186 compare.o: compare.f90
187         ${FC} ${FFLAGS} ${CPPFLAGS} compare.f90
188
189 map.o: map.f90
190         ${FC} ${FFLAGS} ${CPPFLAGS} map.f90
191
192 muca_md.o: muca_md.f90
193         ${FC} ${FFLAGS} ${CPPFLAGS} muca_md.f90
194
195 REMD.o: REMD.f90
196         ${FC} ${FFLAGSE} ${CPPFLAGS} REMD.f90
197
198 MCM_MD.o: MCM_MD.f90
199         ${FC} ${FFLAGS} ${CPPFLAGS} MCM_MD.f90
200
201 io.o: io.f90
202         ${FC} ${FFLAGS} ${CPPFLAGS} io.f90
203
204 MD.o: MD.f90
205         ${FC} ${FFLAGSE} ${CPPFLAGS} MD.f90
206
207 MREMD.o: MREMD.f90
208         ${FC} ${FFLAGS} ${CPPFLAGS} MREMD.f90
209
210 CSA.o: CSA.f90
211         ${FC} ${FFLAGS} ${CPPFLAGS} CSA.f90
212
213 unres.o: unres.f90
214         ${FC} ${FFLAGS} ${CPPFLAGS} unres.f90