298cff35a7f26dc8922bdb692fc0a75f3e3148f3
[unres.git] / source / unres / src_MD / Makefile_MPICH_ifort
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
5
6 FC= ifort
7
8 OPT =  -O3 -ip 
9
10 FFLAGS = -c ${OPT} -I$(INSTALL_DIR)/include 
11 FFLAGS1 = -c  -g -CA -CB -I$(INSTALL_DIR)/include 
12 FFLAGS2 = -c  -O3  -I$(INSTALL_DIR)/include  
13 FFLAGSE = -c  -O3 -ipo  -opt_report -I$(INSTALL_DIR)/include
14 #FFLAGS = ${FFLAGS1}
15 #FFLAGSE = ${FFLAGS1}
16
17 # -lmpl necessary in mpich
18 #LIBS = -L$(INSTALL_DIR)/lib -lmpich xdrf/libxdrf.a -lmpl -CB
19 LIBS = -L$(INSTALL_DIR)/lib -lmpich xdrf/libxdrf.a -CB
20
21 ARCH = LINUX
22 PP = /lib/cpp -P
23
24
25 all: no_option
26         @echo "Specify force field: GAB, 4P or E0LL2Y"
27
28 .SUFFIXES: .F
29 .F.o:
30         ${FC} ${FFLAGS} ${CPPFLAGS} $*.F
31
32
33 object = unres.o arcos.o cartprint.o chainbuild.o convert.o initialize_p.o \
34         matmult.o readrtns.o parmread.o gen_rand_conf.o printmat.o map.o \
35         pinorm.o randgens.o rescode.o intcor.o timing.o misc.o intlocal.o \
36         cartder.o checkder_p.o econstr_local.o energy_p_new_barrier.o \
37         energy_p_new-sep_barrier.o gradient_p.o minimize_p.o sumsld.o \
38         cored.o rmdd.o geomout.o readpdb.o regularize.o thread.o fitsq.o mcm.o \
39         mc.o bond_move.o refsys.o check_sc_distr.o check_bond.o contact.o djacob.o \
40         eigen.o blas.o add.o entmcm.o minim_mcmf.o \
41         MP.o compare_s1.o prng_32.o \
42         banach.o rmsd.o elecont.o dihed_cons.o \
43         sc_move.o local_move.o \
44         intcartderiv.o lagrangian_lesyng.o\
45         stochfric.o kinetic_lesyng.o MD_A-MTS.o moments.o int_to_cart.o \
46         surfatom.o sort.o muca_md.o MREMD.o rattle.o gauss.o energy_split-sep.o \
47         q_measure.o gnmr1.o test.o ssMD.o
48
49 no_option:
50
51 GAB: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \
52         -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC
53 GAB: BIN = ../../../bin/unres/MD/unres_ifort_MPICH2_GAB.exe
54 GAB: ${object} xdrf/libxdrf.a
55         cc -o compinfo compinfo.c
56         ./compinfo | true
57         ${FC} ${FFLAGS} cinfo.f
58         ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
59
60 4P: CPPFLAGS = -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \
61         -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC
62 4P: BIN = ../../../bin/unres/MD/unres_ifort_MPICH2_4P.exe
63 4P: ${object} xdrf/libxdrf.a
64         cc -o compinfo compinfo.c
65         ./compinfo | true
66         ${FC} ${FFLAGS} cinfo.f
67         ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
68
69 E0LL2Y: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \
70         -DSPLITELE -DLANG0
71 #E0LL2Y: BIN = ../../../bin/unres/MD/unres_ifort_MPICH2_E0LL2Y.exe
72 E0LL2Y: BIN = ../../../bin/unres/MD/unres_ifort_MPICH_E0LL2Y-200.exe
73 E0LL2Y: ${object} xdrf/libxdrf.a
74         cc -o compinfo compinfo.c
75         ./compinfo | true
76         ${FC} ${FFLAGS} cinfo.f
77         ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
78
79 GAB-DFA: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \
80         -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC -DDFA
81 GAB-DFA: BIN = ../../../bin/unres/MD/unres_ifort_MPICH2_GAB-DFA.exe
82 GAB-DFA: ${object} dfa.o xdrf/libxdrf.a
83         cc -o compinfo compinfo.c
84         ./compinfo | true
85         ${FC} ${FFLAGS} cinfo.f
86         ${FC} ${OPT} ${object} dfa.o cinfo.o ${LIBS}  -o ${BIN}
87
88 4P-DFA: CPPFLAGS = -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \
89         -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC -DDFA
90 4P-DFA: BIN = ../../../bin/unres/MD/unres_ifort_MPICH2_4P-DFA.exe
91 4P-DFA: ${object} dfa.o xdrf/libxdrf.a
92         cc -o compinfo compinfo.c
93         ./compinfo | true
94         ${FC} ${FFLAGS} cinfo.f
95         ${FC} ${OPT} ${object} dfa.o cinfo.o ${LIBS}  -o ${BIN}
96
97 E0LL2Y-DFA: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \
98         -DSPLITELE -DLANG0 -DDFA
99 #E0LL2Y-DFA: BIN = ../../../bin/unres/MD/unres_ifort_MPICH2_E0LL2Y.exe
100 E0LL2Y-DFA: BIN = ../../../bin/unres/MD/unres_ifort_MPICH_E0LL2Y-DFA.exe
101 E0LL2Y-DFA: ${object} dfa.o xdrf/libxdrf.a
102         cc -o compinfo compinfo.c
103         ./compinfo | true
104         ${FC} ${FFLAGS} cinfo.f
105         ${FC} ${OPT} ${object} dfa.o cinfo.o ${LIBS}  -o ${BIN}
106
107
108 xdrf/libxdrf.a:
109         cd xdrf && make
110
111
112 clean:
113         /bin/rm -f *.o && /bin/rm -f compinfo && cd xdrf && make clean
114
115 test.o: test.F
116         ${FC} ${FFLAGS} ${CPPFLAGS} test.F
117
118 chainbuild.o: chainbuild.F
119         ${FC} ${FFLAGS} ${CPPFLAGS} chainbuild.F
120
121 matmult.o: matmult.f
122         ${FC} ${FFLAGS} ${CPPFLAGS} matmult.f
123
124 parmread.o : parmread.F
125         ${FC} ${FFLAGS} ${CPPFLAGS} parmread.F
126
127 intcor.o : intcor.f
128         ${FC} ${FFLAGS} ${CPPFLAGS} intcor.f
129
130 cartder.o : cartder.F
131         ${FC} ${FFLAGS} ${CPPFLAGS} cartder.F
132
133 readpdb.o : readpdb.F
134         ${FC} ${FFLAGS2} ${CPPFLAGS} readpdb.F
135
136 sumsld.o : sumsld.f
137         ${FC} ${FFLAGS2} ${CPPFLAGS} -vec-report2   sumsld.f
138         
139 cored.o : cored.f
140         ${FC} ${FFLAGS2} ${CPPFLAGS} cored.f
141  
142 rmdd.o : rmdd.f
143         ${FC} ${FFLAGS2} ${CPPFLAGS} rmdd.f
144
145 energy_p_new_barrier.o : energy_p_new_barrier.F
146         ${FC} ${FFLAGSE} ${CPPFLAGS} energy_p_new_barrier.F
147
148 gradient_p.o : gradient_p.F
149         ${FC} ${FFLAGSE} ${CPPFLAGS} gradient_p.F
150
151 energy_p_new-sep_barrier.o : energy_p_new-sep_barrier.F
152         ${FC} ${FFLAGSE} ${CPPFLAGS} energy_p_new-sep_barrier.F
153
154 lagrangian_lesyng.o : lagrangian_lesyng.F
155         ${FC} ${FFLAGSE} ${CPPFLAGS} lagrangian_lesyng.F
156
157 MD_A-MTS.o : MD_A-MTS.F
158         ${FC} ${FFLAGSE} ${CPPFLAGS} MD_A-MTS.F
159
160 blas.o : blas.f
161         ${FC} ${FFLAGS1} blas.f
162
163 add.o : add.f
164         ${FC} ${FFLAGS1} add.f
165
166 eigen.o : eigen.f
167         ${FC} ${FFLAGS2} eigen.f
168
169 proc_proc.o: proc_proc.c
170         ${CC} ${CFLAGS} proc_proc.c