d9a43148af4dbcc91e94b21a43394d6f1e289c79
[unres.git] / source / unres / src_MD / CMakeLists.txt
1 #
2 # CMake project file for UNRES with MD for single chains
3
4
5 enable_language (Fortran)
6
7
8 #================================
9 # Set source file lists
10 #================================
11 set(UNRES_MD_SRC0 
12         add.f 
13         arcos.f
14         banach.f 
15         blas.f 
16         bond_move.f 
17         cartder.F 
18         cartprint.f 
19         check_sc_distr.f
20         check_bond.f 
21         chainbuild.F 
22         checkder_p.F 
23         compare_s1.F 
24         contact.f 
25         convert.f 
26         cored.f 
27         dihed_cons.F 
28         djacob.f 
29         econstr_local.F
30         eigen.f 
31         elecont.f 
32         energy_split-sep.F 
33         entmcm.F
34         fitsq.f 
35         gauss.f 
36         gen_rand_conf.F
37         geomout.F 
38         gnmr1.f 
39         intcartderiv.F 
40         initialize_p.F 
41         int_to_cart.f 
42         intcor.f 
43         intlocal.f 
44         kinetic_lesyng.f 
45         lagrangian_lesyng.F 
46         local_move.f 
47         map.f 
48         matmult.f 
49         mc.F 
50         mcm.F 
51         MD_A-MTS.F 
52         minimize_p.F 
53         minim_mcmf.F 
54         misc.f 
55         moments.f
56         MP.F 
57         MREMD.F 
58         muca_md.f 
59         parmread.F 
60         pinorm.f 
61         printmat.f 
62         prng_32.F
63         q_measure.F 
64         randgens.f 
65         rattle.F 
66         readpdb.F 
67         readrtns.F 
68         refsys.f 
69         regularize.F
70         rescode.f 
71         rmdd.f 
72         rmsd.F 
73         sc_move.F 
74         sort.f 
75         stochfric.F 
76         sumsld.f 
77         surfatom.f 
78         test.F
79         timing.F
80         thread.F 
81         unres.F
82         ssMD.F
83 )
84
85 set(UNRES_MD_SRC3 
86         energy_p_new_barrier.F 
87         energy_p_new-sep_barrier.F 
88         gradient_p.F )
89
90 set(UNRES_MD_PP_SRC
91         cartder.F
92         chainbuild.F 
93         checkder_p.F 
94         compare_s1.F 
95         dihed_cons.F 
96         econstr_local.F 
97         energy_p_new_barrier.F 
98         energy_p_new-sep_barrier.F 
99         energy_split-sep.F 
100         entmcm.F 
101         gen_rand_conf.F
102         geomout.F 
103         gradient_p.F 
104         initialize_p.F 
105         intcartderiv.F 
106         lagrangian_lesyng.F 
107         mc.F 
108         mcm.F 
109         MD_A-MTS.F
110         minimize_p.F 
111         minim_mcmf.F 
112         MP.F 
113         MREMD.F 
114         parmread.F 
115         prng_32.F
116         q_measure1.F 
117         q_measure3.F 
118         q_measure.F
119         rattle.F 
120         readpdb.F 
121         readrtns.F 
122         regularize.F 
123         rmsd.F 
124         sc_move.F 
125         stochfric.F 
126         test.F 
127         thread.F 
128         timing.F
129         unres.F 
130         proc_proc.c 
131
132
133 #================================================
134 # Set comipiler flags for different sourcefiles  
135 #================================================
136 if (Fortran_COMPILER_NAME STREQUAL "ifort")
137   set(FFLAGS0 "-ip -w" ) 
138   set(FFLAGS1 "-w -g -d2 -CA -CB" ) 
139   set(FFLAGS2 "-w -g -00 ")
140   #set(FFLAGS3 "-c -w -O3 -ipo -ipo_obj -opt_report" )
141   set(FFLAGS3 "-w -ipo " )
142 elseif (Fortran_COMPILER_NAME STREQUAL "gfortran")
143   set(FFLAGS0 "-std=legacy -I. " ) 
144   set(FFLAGS1 "-std=legacy -g -I. " ) 
145   set(FFLAGS2 "-std=legacy -I. ")
146   #set(FFLAGS3 "-c -w -O3 -ipo -ipo_obj -opt_report" )
147   set(FFLAGS3 "-std=legacy -I. " )
148 endif (Fortran_COMPILER_NAME STREQUAL "ifort")
149
150
151 # Add MPI compiler flags
152 if(UNRES_WITH_MPI)
153   set(FFLAGS0 "${FFLAGS0} -I${MPI_Fortran_INCLUDE_PATH}")
154   set(FFLAGS1 "${FFLAGS1} -I${MPI_Fortran_INCLUDE_PATH}")
155   set(FFLAGS2 "${FFLAGS2} -I${MPI_Fortran_INCLUDE_PATH}")
156   set(FFLAGS3 "${FFLAGS3} -I${MPI_Fortran_INCLUDE_PATH}")
157 endif(UNRES_WITH_MPI)
158
159 set_property(SOURCE ${UNRES_MD_SRC0} APPEND PROPERTY COMPILE_FLAGS ${FFLAGS0} )
160 #set_property(SOURCE ${UNRES_MD_SRC1} PROPERTY COMPILE_FLAGS ${FFLAGS1} )
161 #set_property(SOURCE ${UNRES_MD_SRC2} PROPERTY COMPILE_FLAGS ${FFLAGS2} )
162 set_property(SOURCE ${UNRES_MD_SRC3} PROPERTY COMPILE_FLAGS ${FFLAGS3} )
163
164 #=========================================
165 # Settings for GAB force field 
166 #=========================================
167 if(UNRES_MD_FF STREQUAL "GAB" )
168   # set preprocesor flags   
169   set(CPPFLAGS "PROCOR -DUNRES -DISNAN -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC")
170
171 #=========================================
172 #  Settings for E0LL2Y force field
173 #=========================================
174 elseif(UNRES_MD_FF STREQUAL "E0LL2Y")
175   # set preprocesor flags   
176   set(CPPFLAGS "PROCOR -DUNRES -DISNAN -DSPLITELE -DLANG0" )
177 elseif(UNRES_MD_FF STREQUAL "4P")
178   set(CPPFLAGS "UNRES -DISNAN -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC -DSCCORPDB" )
179 endif(UNRES_MD_FF STREQUAL "GAB")
180
181 #=========================================
182 # System specific flags
183 #=========================================
184 if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
185   set(CPPFLAGS "${CPPFLAGS} -DLINUX") 
186 endif(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
187
188 #=========================================
189 # Compiler specific flags
190 #=========================================
191
192 if (Fortran_COMPILER_NAME STREQUAL "ifort")
193   # Add ifort preprocessor flags
194   set(CPPFLAGS "${CPPFLAGS} -DPGI") 
195 elseif (Fortran_COMPILER_NAME STREQUAL "f95")
196   # Add new gfortran flags
197   set(CPPFLAGS "${CPPFLAGS} -DG77") 
198 elseif (Fortran_COMPILER_NAME STREQUAL "gfortran")
199   # Add old gfortran flags
200   set(CPPFLAGS "${CPPFLAGS} -DG77") 
201 endif (Fortran_COMPILER_NAME STREQUAL "ifort")
202
203 #=========================================
204 # Add MPI preprocessor flags
205 #=========================================
206 if (UNRES_WITH_MPI)
207   set(CPPFLAGS "${CPPFLAGS} -DMP -DMPI") 
208 endif(UNRES_WITH_MPI)
209
210 #=========================================
211 # Add 64-bit specific preprocessor flags
212 #=========================================
213 if (architektura STREQUAL "64")
214   set(CPPFLAGS "${CPPFLAGS} -DAMD64")
215 endif (architektura STREQUAL "64")
216
217 #=========================================
218 # Apply preprocesor flags to *.F files
219 #=========================================
220 set_property(SOURCE ${UNRES_MD_PP_SRC} PROPERTY COMPILE_DEFINITIONS ${CPPFLAGS} )  
221
222
223 #========================================
224 #  Setting binary name
225 #========================================
226 if(UNRES_WITH_MPI) 
227   # binary with mpi
228   set(UNRES_BIN "unresMD_${Fortran_COMPILER_NAME}_MPI_${UNRES_MD_FF}.exe")
229 else(UNRES_WITH_MPI)
230   # binary without mpi
231   set(UNRES_BIN "unresMD_${Fortran_COMPILER_NAME}_single_${UNRES_MD_FF}.exe")
232 endif(UNRES_WITH_MPI)  
233
234 #=========================================
235 # cinfo.f workaround for cmake
236 #=========================================
237 # get the current date  
238 TODAY(DATE)
239 # generate cinfo.f
240
241 set(CINFO "${CMAKE_CURRENT_BINARY_DIR}/cinfo.f")
242 FILE(WRITE ${CINFO}
243 "C CMake generated file
244        subroutine cinfo
245        include 'COMMON.IOUNITS'
246        write(iout,*)'++++ Compile info ++++'
247        write(iout,*)'Version ${UNRES_MAJOR}.${UNRES_MINOR} build ${UNRES_PATCH}'
248 ")
249
250 CINFO_FORMAT(${CINFO} "Compiled" "${DATE}" )
251 CINFO_FORMAT(${CINFO} "Compiled by" "$ENV{USER}@$ENV{HOST}" )
252 CINFO_FORMAT(${CINFO} "OS name:" "${CMAKE_SYSTEM_NAME}" )
253 CINFO_FORMAT(${CINFO} "OS release:" "${CMAKE_SYSTEM}" )
254 CINFO_FORMAT(${CINFO} "Fortran Compiler:" "${CMAKE_Fortran_COMPILER}" )
255 CINFO_FORMAT(${CINFO} "MD Force field:" "${UNRES_MD_FF}" )
256 CINFO_FORMAT(${CINFO} "CPPFLAGS =" "${CPPFLAGS}")
257
258 FILE(APPEND ${CINFO} 
259 "       write(iout,*)'++++ End of compile info ++++'  
260        return 
261        end ")
262
263 # add include path
264 set_property(SOURCE ${CMAKE_CURRENT_BINARY_DIR}/cinfo.f PROPERTY COMPILE_FLAGS "${FFLAGS0} -I${CMAKE_CURRENT_SOURCE_DIR}")
265
266 #=========================================
267 # Set full unres MD sources
268 #=========================================
269 set(UNRES_MD_SRCS ${UNRES_MD_SRC0} ${UNRES_MD_SRC3} ${CMAKE_CURRENT_BINARY_DIR}/cinfo.f )
270
271
272 #=========================================
273 # Build the binary
274 #=========================================
275 add_executable(UNRES_BIN-MD ${UNRES_MD_SRCS} )
276 set_target_properties(UNRES_BIN-MD PROPERTIES OUTPUT_NAME ${UNRES_BIN})
277 set_property(TARGET UNRES_BIN-MD PROPERTY RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin )
278 #add_dependencies (${UNRES_BIN} ${UNRES_XDRFLIB})
279
280
281 #=========================================
282 # Link libraries
283 #=========================================
284 # link MPI library (libmpich.a)  
285 if(UNRES_WITH_MPI)
286   target_link_libraries( UNRES_BIN-MD ${MPI_Fortran_LIBRARIES} )
287 endif(UNRES_WITH_MPI)
288 # link libxdrf.a 
289 #message("UNRES_XDRFLIB=${UNRES_XDRFLIB}")
290 target_link_libraries( UNRES_BIN-MD xdrf )
291
292 #=========================================
293 # Install Path
294 #=========================================
295 install(TARGETS UNRES_BIN-MD DESTINATION ${CMAKE_INSTALL_PREFIX}/unres/MD) 
296
297 #=========================================
298 # TESTS 
299 #=========================================
300
301 #-- Copy all the data files from the test directory into the source directory
302 #SET(UNRES_TEST_FILES
303 #       ala10.inp
304 #    )
305
306 #FOREACH (UNRES_TEST_FILE ${UNRES_TEST_FILES})
307 #      SET (unres_test_dest "${CMAKE_CURRENT_BINARY_DIR}/${UNRES_TEST_FILE}")
308 #      MESSAGE (STATUS " Copying ${UNRES_TEST_FILE} from ${CMAKE_SOURCE_DIR}/examples/unres/MD/ff_gab/${UNRES_TEST_FILE} to ${unres_test_dest}")
309 #      ADD_CUSTOM_COMMAND (
310 #          TARGET     ${UNRES_BIN}
311 #          POST_BUILD
312 #          COMMAND    ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/examples/unres/MD/ff_gab/${UNRES_TEST_FILE} ${unres_test_dest}
313 #      )
314 #ENDFOREACH (UNRES_TEST_FILE ${UNRES_TEST_FILES})
315
316 #=========================================
317 # Generate data test files
318 #=========================================
319 #  test_single_ala.sh
320 #=========================================
321
322 FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/scripts/test_single_ala.sh
323 "#!/bin/sh
324 export POT=GB
325 export PREFIX=ala10
326 #-----------------------------------------------------------------------------
327 UNRES_BIN=${CMAKE_BINARY_DIR}/bin/${UNRES_BIN}
328 #-----------------------------------------------------------------------------
329 DD=${CMAKE_SOURCE_DIR}/PARAM
330 export BONDPAR=$DD/bond.parm
331 export THETPAR=$DD/thetaml.5parm
332 export ROTPAR=$DD/scgauss.parm
333 export TORPAR=$DD/torsion_631Gdp.parm
334 export TORDPAR=$DD/torsion_double_631Gdp.parm
335 export ELEPAR=$DD/electr_631Gdp.parm
336 export SIDEPAR=$DD/sc_GB_opt.1gab_3S_qclass5no310-shan2-sc-16-10-8k
337 export FOURIER=$DD/fourier_opt.parm.1igd_hc_iter3_3
338 export SCPPAR=$DD/scp.parm
339 export SCCORPAR=$DD/sccor_pdb_shelly.dat
340 export PATTERN=$DD/patterns.cart
341 #-----------------------------------------------------------------------------
342 $UNRES_BIN
343 ")
344
345 #
346 # File permissions workaround
347 #
348 FILE(   COPY ${CMAKE_CURRENT_BINARY_DIR}/scripts/test_single_ala.sh 
349         DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
350         FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
351 )
352
353
354
355 #=========================================
356 #  ala10.inp
357 #=========================================
358
359 file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/ala10.inp
360 "ala10 unblocked
361 SEED=-1111333 MD ONE_LETTER rescale_mode=2 
362 nstep=15000 ntwe=100 ntwx=1000 dt=0.1 lang=0 tbf t_bath=300 damax=1.0          &
363 reset_moment=1000 reset_vel=1000
364 WLONG=1.35279 WSCP=1.59304 WELEC=0.71534 WBOND=1.00000 WANG=1.13873            &
365 WSCLOC=0.16258 WTOR=1.98599 WTORD=1.57069 WCORRH=0.42887 WCORR5=0.00000        &
366 WCORR6=0.00000 WEL_LOC=0.16036 WTURN3=1.68722 WTURN4=0.66230 WTURN6=0.00000    &
367 WVDWPP=0.11371 WHPB=1.00000                                                    &
368 CUTOFF=7.00000 WCORR4=0.00000
369 12
370 XAAAAAAAAAAX 
371  0
372  0
373    90.0000   90.0000   90.0000  90.000   90.000   90.000   90.000   90.000 
374    90.0000   90.0000
375   180.0000  180.0000  180.0000 180.000  180.000  180.000  180.000  180.000
376   180.0000
377   110.0000  110.0000  110.0000 100.000  110.000  100.000  110.000  110.000 
378   110.0000  110.0000
379  -120.0000 -120.0000 -120.000 -120.000 -120.000 -120.000 -120.000 -120.000
380  -120.0000 -120.0000
381 ")
382
383 if(UNRES_MD_FF STREQUAL "E0LL2Y")
384
385 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/prota.pdb
386         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
387
388 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/prota_unres.pdb
389         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
390
391 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/prota_ENE.inp
392         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
393
394 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/prota_MIN_CART.inp
395         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
396
397 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/1l2y_micro.inp
398         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
399
400 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/1l2y_MIN_INT.inp
401         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
402
403 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/1l2y_MIN_REGULAR_INT.inp
404         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
405
406 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/1L2Y_B.inp
407         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
408
409 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/1L2Y_L.inp
410         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
411
412 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/1L2Y_NH.inp
413         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
414
415
416 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/1L2Y.pdb
417         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
418
419 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/1L2Y_remd.inp
420         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
421
422 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/1ei0_min.inp
423         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
424
425 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/1ei0.pdb
426         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
427
428 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/prota_unres_energy_check.sh
429         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} 
430         FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
431 )
432
433 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/matplotlib_fit_hist.py
434         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} 
435         FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
436 )
437
438 FILE(COPY ${CMAKE_SOURCE_DIR}/ctest/matplotlib_hist.py
439         DESTINATION ${CMAKE_CURRENT_BINARY_DIR} 
440         FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
441 )
442
443
444
445 #=========================================
446 #  test_prota_E0LL2Y.sh
447 #=========================================
448
449 FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/scripts/test_prota_E0LL2Y.sh
450 "#!/bin/sh
451 export POT=GB
452 export FGPROCS=$2
453 export PREFIX=$1
454 #-----------------------------------------------------------------------------
455 UNRES_BIN=${CMAKE_BINARY_DIR}/bin/${UNRES_BIN}
456 #-----------------------------------------------------------------------------
457 DD=${CMAKE_SOURCE_DIR}/PARAM
458 export BONDPAR=$DD/bond_AM1.parm
459 export THETPAR=$DD/theta_abinitio.parm
460 export ROTPAR=$DD/rotamers_AM1_aura.10022007.parm
461 export TORPAR=$DD/torsion_631Gdp.parm
462 export TORDPAR=$DD/torsion_double_631Gdp.parm
463 export ELEPAR=$DD/electr_631Gdp.parm
464 export SIDEPAR=$DD/scinter_$POT.parm
465 export FOURIER=$DD/fourier_opt.parm.1igd_hc_iter3_3
466 export SCPPAR=$DD/scp.parm
467 export SCCORPAR=$DD/sccor_am1_pawel.dat
468 export THETPARPDB=$DD/thetaml.5parm
469 export ROTPARPDB=$DD/scgauss.parm
470 export PATTERN=$DD/patterns.cart
471 #-----------------------------------------------------------------------------
472 echo CTEST_FULL_OUTPUT
473 $UNRES_BIN
474 ./prota_unres_energy_check.sh $1 ${UNRES_BIN}
475 ")
476
477 #
478 # File permissions workaround
479 #
480 FILE(   COPY ${CMAKE_CURRENT_BINARY_DIR}/scripts/test_prota_E0LL2Y.sh 
481         DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
482         FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
483 )
484
485 #  MESSAGE (STATUS "${MPI_Fortran_LIBRARIES}")
486   if ("${MPI_Fortran_LIBRARIES}"  MATCHES "lam")
487      MESSAGE (STATUS "LAM MPI library detected")
488      set (boot_lam "-boot")
489   else()
490      set (boot_lam "")
491   endif()
492
493   if (UNRES_SRUN)
494    set (np "-n")
495    set (mpiexec "srun")
496   else()
497    set (np "-np")
498    set (mpiexec "mpiexec")
499   endif()
500           
501
502 FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/scripts/test_mpi_E0LL2Y.sh
503 "#!/bin/sh
504 export POT=GB
505 export FGPROCS=$2
506 export PREFIX=$1
507 #-----------------------------------------------------------------------------
508 UNRES_BIN=${CMAKE_BINARY_DIR}/bin/${UNRES_BIN}
509 #-----------------------------------------------------------------------------
510 DD=${CMAKE_SOURCE_DIR}/PARAM
511 export BONDPAR=$DD/bond_AM1.parm
512 export THETPAR=$DD/theta_abinitio.parm
513 export ROTPAR=$DD/rotamers_AM1_aura.10022007.parm
514 export TORPAR=$DD/torsion_631Gdp.parm
515 export TORDPAR=$DD/torsion_double_631Gdp.parm
516 export ELEPAR=$DD/electr_631Gdp.parm
517 export SIDEPAR=$DD/scinter_$POT.parm
518 export FOURIER=$DD/fourier_opt.parm.1igd_hc_iter3_3
519 export SCPPAR=$DD/scp.parm
520 export SCCORPAR=$DD/sccor_am1_pawel.dat
521 export THETPARPDB=$DD/thetaml.5parm
522 export ROTPARPDB=$DD/scgauss.parm
523 export PATTERN=$DD/patterns.cart
524 #-----------------------------------------------------------------------------
525 echo CTEST_FULL_OUTPUT
526 ${mpiexec} ${boot_lam} ${np} $3 $UNRES_BIN | grep -v traj1file
527 ./prota_unres_energy_check.sh $1 ${UNRES_BIN}
528 ")
529
530 #
531 # File permissions workaround
532 #
533 FILE(   COPY ${CMAKE_CURRENT_BINARY_DIR}/scripts/test_mpi_E0LL2Y.sh 
534         DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
535         FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
536 )
537
538
539 endif(UNRES_MD_FF STREQUAL "E0LL2Y")
540
541
542
543 # Add tests
544
545 if(NOT UNRES_WITH_MPI)
546                   
547   if(UNRES_MD_FF STREQUAL "GAB")
548     add_test(NAME UNRES_MD_Ala10 COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_single_ala.sh )
549   endif(UNRES_MD_FF STREQUAL "GAB")
550  
551   if(UNRES_MD_FF STREQUAL "E0LL2Y")
552     add_test(NAME UNRES_ENE_prota COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh prota_ENE 1 )
553     add_test(NAME UNRES_MIN_prota COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh prota_MIN_CART 1 )
554     add_test(NAME UNRES_MIN_INT COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh 1l2y_MIN_INT 1 )
555     add_test(NAME UNRES_REGULAR COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh 1l2y_MIN_REGULAR_INT 1 )
556     add_test(NAME UNRES_MD_microcanonical COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh 1l2y_micro 1 )
557     add_test(NAME UNRES_Langevin COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh 1L2Y_L 1 )
558     add_test(NAME UNRES_NoseHoover COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh 1L2Y_NH 1 )
559     add_test(NAME UNRES_Berendsen COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh 1L2Y_B 1 )
560     add_test(NAME UNRES_ss_static_min COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh 1ei0_min 1 )
561   endif(UNRES_MD_FF STREQUAL "E0LL2Y")
562
563 else(NOT UNRES_WITH_MPI)
564
565
566   if(UNRES_MD_FF STREQUAL "GAB")
567     add_test(NAME UNRES_MD_MPI_Ala10 COMMAND ${mpiexec} ${boot_lam} ${CMAKE_CURRENT_BINARY_DIR}/test_single_ala.sh )
568   endif(UNRES_MD_FF STREQUAL "GAB")
569
570   if(UNRES_MD_FF STREQUAL "E0LL2Y")
571     add_test(NAME UNRES_ENE_prota COMMAND ${mpiexec} ${boot_lam} ${np} 2 ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh prota_ENE 2 )
572     add_test(NAME UNRES_ENE1_prota COMMAND ${mpiexec} ${boot_lam} ${np} 1 ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh prota_ENE 1 )
573     add_test(NAME UNRES_MIN_prota COMMAND ${mpiexec} ${boot_lam} ${np} 2 ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh prota_MIN_CART 2 )
574     add_test(NAME UNRES_MIN_INT COMMAND ${mpiexec} ${boot_lam} ${np} 1 ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh 1l2y_MIN_INT 1 )
575     add_test(NAME UNRES_REGULAR COMMAND ${mpiexec} ${boot_lam} ${np} 1 ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh 1l2y_MIN_REGULAR_INT 1 )
576     add_test(NAME UNRES_MD_microcanonical COMMAND ${mpiexec} ${boot_lam} ${np} 2 ${CMAKE_CURRENT_BINARY_DIR}/test_prota_E0LL2Y.sh 1l2y_micro 2 )
577     add_test(NAME UNRES_Langevin COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_mpi_E0LL2Y.sh 1L2Y_L 2 2 )
578     add_test(NAME UNRES_NoseHoover COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_mpi_E0LL2Y.sh 1L2Y_NH 2 2 )
579     add_test(NAME UNRES_Berendsen COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_mpi_E0LL2Y.sh 1L2Y_B 2 2 )
580     add_test(NAME UNRES_remd COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_mpi_E0LL2Y.sh 1L2Y_remd 1 8 )
581     add_test(NAME UNRES_ss_static_min COMMAND sh ${CMAKE_CURRENT_BINARY_DIR}/test_mpi_E0LL2Y.sh 1ei0_min 1 2 )
582   endif(UNRES_MD_FF STREQUAL "E0LL2Y")
583
584 endif(NOT UNRES_WITH_MPI)
585