Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DL-Find GPR Development Version #298

Open
wants to merge 3 commits into
base: dlfind-gpr
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 30 additions & 32 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -55,38 +55,36 @@ set(QUICK_SUBS_SOURCES Angles.f90 copyDMat.f90 copySym.f90
oshell_denspt.f90 naive_distribute.f90 time.cpp)

set(DLFIND_MODULES_SOURCES
dlf_allocate.f90 dlf_checkpoint.f90
dlf_conint.f90 dlf_convergence.f90
dlf_coords.f90 dlf_dimer.f90
dlf_formstep.f90 dlf_global_module.f90
dlf_hdlc_constraint.f90 dlf_hdlc_hdlclib.f90
dlf_hdlc_interface.f90 dlf_hdlc_matrixlib.f90
dlf_hdlc_primitive.f90 dl_find.f90
dlfind_main_driver.f90
dlf_lbfgs.f90 dlf_linalg.f90
dlf_microiter.f90
dlf_neb.f90 dlf_parallel_opt.f90
dlf_qts.f90 dlf_scalestep.f90
dlf_serial.f90 dlf_sort.f90
dlf_stat_module.f90 dlf_svnversion.f90
dlf_task.f90 dlf_time.f90 dlf_util.f90)

set(DLFIND_MODULES_SOURCES
dlf_allocate.f90 dlf_checkpoint.f90
dlf_conint.f90 dlf_convergence.f90
dlf_coords.f90 dlf_dimer.f90
dlf_formstep.f90 dlf_global_module.f90
dlf_hdlc_constraint.f90 dlf_hdlc_hdlclib.f90
dlf_hdlc_interface.f90 dlf_hdlc_matrixlib.f90
dlf_hdlc_primitive.f90 dl_find.f90
dlfind_main_driver.f90
dlf_lbfgs.f90 dlf_linalg.f90
dlf_microiter.f90
dlf_neb.f90 dlf_parallel_opt.f90
dlf_qts.f90 dlf_scalestep.f90
dlf_serial.f90 dlf_sort.f90
dlf_stat_module.f90 dlf_svnversion.f90
dlf_task.f90 dlf_time.f90 dlf_util.f90)
dlf_allocate.f90 dlf_checkpoint.f90
dlf_cinter.f90 dlf_conint.f90
dlf_convergence.f90 dlf_coords.f90
dlf_dimer.f90 dlf_formstep.f90
dlf_geodesic.f90 dlf_global_module.f90
dlf_gpr_hdlc.f90 dlf_gprmep.f90
dlf_hdlc_constraint.f90 dlf_hdlc_hdlclib.f90
dlf_hdlc_interface.f90 dlf_hdlc_matrixlib.f90
dlf_hdlc_primitive.f90 dl_find.f90
dlfind_main_driver.f90 dlfind_quick.f90
dlf_lbfgs.f90 dlf_linalg.f90
dlf_linalg_interface_mod.f90
dlf_microiter.f90
dlf_neb.f90 dlf_oop_lbfgs.f90
dlf_parallel_opt.f90 dlf_pes.f90
dlf_qts.f90 dlf_rateaux.f90
dlf_scalestep.f90 dlf_sct.f90
dlf_serial.f90 dlf_sort.f90
dlf_stat_module.f90 dlf_svnversion.f90
dlf_task.f90 dlf_time.f90
dlf_util.f90 dlf_vpt2_freq.mod.f90
dlf_vpt2_hess_deriv.mod.f90 dlf_vpt2_intcoord.mod.f90
dlf_vpt2_main.mod.f90 dlf_vpt2_part_func.mod.f90
dlf_vpt2_project.mod.f90 dlf_vpt2_terms.mod.f90
dlf_vpt2_test_routines.mod.f90
dlf_vpt2_utility.mod.f90 fftpack5-1d.f90
gpr_extensions.f90 gpr.f90
gpr_kernels.f90 gpr_opt.f90
gpr_types.f90 kronrod.f90
nr_gamma.mod.f90 oop_clock.f90)

set(DFTD3_SOURCES
api.f90 common.f90 core.f90 pars.f90 sizes.f90)
Expand Down
41 changes: 33 additions & 8 deletions src/dlfind/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -24,19 +24,44 @@ FOR=$(FC) $(FORT_EXT_LIB_FLAGS)
#FOR=$(FC) $(FFLAGS) $(DLFIND_FLAGS)

# modules used by more than one file
OBJ_MOD = $(dlfindobjfolder)/dlf_stat_module.o $(dlfindobjfolder)/dlf_global_module.o $(dlfindobjfolder)/dlf_allocate.o $(dlfindobjfolder)/dlf_util.o \
$(dlfindobjfolder)/dlf_sort.o
OBJ_MOD = $(dlfindobjfolder)/dlf_stat_module.o $(dlfindobjfolder)/dlf_global_module.o \
$(dlfindobjfolder)/dlf_allocate.o $(dlfindobjfolder)/dlf_util.o \
$(dlfindobjfolder)/dlf_sort.o \
$(dlfindobjfolder)/gpr_types.o $(dlfindobjfolder)/gpr_kernels.o \
$(dlfindobjfolder)/dlf_oop_lbfgs.o $(dlfindobjfolder)/oop_clock.o \
$(dlfindobjfolder)/dlf_hdlc_matrixlib.o $(dlfindobjfolder)/dlf_hdlc_primitive.o \
$(dlfindobjfolder)/dlf_hdlc_constraint.o \
$(dlfindobjfolder)/dlf_checkpoint.o \
$(dlfindobjfolder)/dlf_geodesic.o $(dlfindobjfolder)/dlf_gpr_hdlc.o $(dlfindobjfolder)/gpr.o \
$(dlfindobjfolder)/gpr_opt.o $(dlfindobjfolder)/dlf_sct.o \
$(dlfindobjfolder)/dlf_cinter.o $(dlfindobjfolder)/gpr_extensions.o

# Objects that work without numerical libraries (this distinction does not hold any more)
OBJ_NOLAPACK = $(dlfindobjfolder)/dl_find.o $(dlfindobjfolder)/dlf_convergence.o $(dlfindobjfolder)/dlf_checkpoint.o $(dlfindobjfolder)/dlf_svnversion.o\
OBJ_NOLAPACK = $(dlfindobjfolder)/dl_find.o \
$(dlfindobjfolder)/dlf_time.o $(dlfindobjfolder)/dlf_gprmep.o \
$(dlfindobjfolder)/dlf_convergence.o \
$(dlfindobjfolder)/dlf_svnversion.o\
$(dlfindobjfolder)/dlf_linalg_interface_mod.o $(dlfindobjfolder)/dlf_vpt2_utility.mod.o \
$(dlfindobjfolder)/dlf_vpt2_project.mod.o $(dlfindobjfolder)/dlf_vpt2_freq.mod.o \
$(dlfindobjfolder)/dlf_vpt2_intcoord.mod.o \
$(dlfindobjfolder)/dlf_vpt2_hess_deriv.mod.o \
$(dlfindobjfolder)/nr_gamma.mod.o \
$(dlfindobjfolder)/dlf_vpt2_terms.mod.o $(dlfindobjfolder)/dlf_vpt2_part_func.mod.o \
$(dlfindobjfolder)/dlf_vpt2_main.mod.o \
$(dlfindobjfolder)/dlf_formstep.o $(dlfindobjfolder)/dlf_scalestep.o \
$(dlfindobjfolder)/dlf_lbfgs.o $(dlfindobjfolder)/dlf_time.o \
$(dlfindobjfolder)/dlf_task.o $(dlfindobjfolder)/dlf_neb.o $(dlfindobjfolder)/dlf_qts.o $(dlfindobjfolder)/dlf_dimer.o $(dlfindobjfolder)/dlf_conint.o $(dlfindobjfolder)/dlf_coords.o \
$(dlfindobjfolder)/dlf_parallel_opt.o $(dlfindobjfolder)/dlf_microiter.o
$(dlfindobjfolder)/dlf_lbfgs.o \
$(dlfindobjfolder)/dlf_task.o $(dlfindobjfolder)/dlf_neb.o \
$(dlfindobjfolder)/dlf_qts.o \
$(dlfindobjfolder)/dlf_rateaux.o \
$(dlfindobjfolder)/dlf_dimer.o $(dlfindobjfolder)/dlf_conint.o $(dlfindobjfolder)/dlf_coords.o\
$(dlfindobjfolder)/dlf_parallel_opt.o $(dlfindobjfolder)/dlf_microiter.o \
$(dlfindobjfolder)/dlf_pes.o \
$(dlfindobjfolder)/fftpack5-1d.o $(dlfindobjfolder)/kronrod.o \
$(dlfindobjfolder)/dlf_vpt2_test_routines.mod.o

# Objects that need LAPACK linked in
OBJ_LAPACK = $(dlfindobjfolder)/dlf_hdlc_matrixlib.o $(dlfindobjfolder)/dlf_hdlc_primitive.o $(dlfindobjfolder)/dlf_hdlc_constraint.o \
$(dlfindobjfolder)/dlf_hdlc_hdlclib.o $(dlfindobjfolder)/dlf_hdlc_interface.o $(dlfindobjfolder)/dlf_linalg.o
OBJ_LAPACK = $(dlfindobjfolder)/dlf_hdlc_hdlclib.o $(dlfindobjfolder)/dlf_hdlc_interface.o \
$(dlfindobjfolder)/dlf_linalg.o

OBJ = $(OBJ_NOLAPACK) $(OBJ_LAPACK)

Expand Down
92 changes: 92 additions & 0 deletions src/dlfind/Makefile.tmp
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# !---------------------------------------------------------------------!
# ! Refactored by Madu Manathunga on 07/25/2020 !
# ! !
# ! Copyright (C) 2020-2021 Merz lab !
# ! Copyright (C) 2020-2021 Götz lab !
# ! !
# ! This Source Code Form is subject to the terms of the Mozilla Public !
# ! License, v. 2.0. If a copy of the MPL was not distributed with this !
# ! file, You can obtain one at http://mozilla.org/MPL/2.0/. !
# !_____________________________________________________________________!
#
# !---------------------------------------------------------------------!
# ! This Makefile builds a QUICK version from source code !
# !---------------------------------------------------------------------!

MAKEIN = ./make.in
include $(MAKEIN)

# !---------------------------------------------------------------------!
# ! Variable declarations !
# !---------------------------------------------------------------------!

FOR=$(FC) $(FORT_EXT_LIB_FLAGS)
#FOR=$(FC) $(FFLAGS) $(DLFIND_FLAGS)

# modules used by more than one file
OBJ_MOD = $(dlfindobjfolder)/dlf_stat_module.o $(dlfindobjfolder)/dlf_global_module.o \
$(dlfindobjfolder)/dlf_allocate.o $(dlfindobjfolder)/dlf_util.o \
$(dlfindobjfolder)/dlf_sort.o \
$(dlfindobjfolder)/gpr_types.o $(dlfindobjfolder)/gpr_kernels.o $(dlfindobjfolder)/gpr.o \
$(dlfindobjfolder)/gpr_opt.o $(dlfindobjfolder)/dlf_sct.o \
$(dlfindobjfolder)/dlf_cinter.o

# Objects that work without numerical libraries (this distinction does not hold any more)
OBJ_NOLAPACK = $(dlfindobjfolder)/dl_find.o $(dlfindobjfolder)/dlf_convergence.o \
$(dlfindobjfolder)/dlf_checkpoint.o $(dlfindobjfolder)/dlf_svnversion.o\
$(dlfindobjfolder)/dlf_formstep.o $(dlfindobjfolder)/dlf_scalestep.o \
$(dlfindobjfolder)/dlf_lbfgs.o $(dlfindobjfolder)/dlf_time.o \
$(dlfindobjfolder)/dlf_task.o $(dlfindobjfolder)/dlf_neb.o $(dlfindobjfolder)/dlf_geodesic.o \
$(dlfindobjfolder)/dlf_qts.o \
$(dlfindobjfolder)/dlf_rateaux.o \
$(dlfindobjfolder)/dlf_dimer.o $(dlfindobjfolder)/dlf_conint.o $(dlfindobjfolder)/dlf_coords.o\
$(dlfindobjfolder)/dlf_parallel_opt.o $(dlfindobjfolder)/dlf_microiter.o \
$(dlfindobjfolder)/dlf_pes.o \
$(dlfindobjfolder)/gpr_extensions.o $(dlfindobjfolder)/dlf_oop_lbfgs.o \
$(dlfindobjfolder)/oop_clock.o $(dlfindobjfolder)/dlf_gprmep.o \
$(dlfindobjfolder)/fftpack5-1d.o $(dlfindobjfolder)/kronrod.o \
$(dlfindobjfolder)/dlf_vpt2_main.mod.o \
$(dlfindobjfolder)/dlf_vpt2_part_func.mod.o $(dlfindobjfolder)/dlf_vpt2_terms.mod.o \
$(dlfindobjfolder)/dlf_vpt2_freq.mod.o \
$(dlfindobjfolder)/dlf_vpt2_hess_deriv.mod.o $(dlfindobjfolder)/dlf_vpt2_utility.mod.o \
$(dlfindobjfolder)/dlf_vpt2_test_routines.mod.o $(dlfindobjfolder)/nr_gamma.mod.o

# Objects that need LAPACK linked in
OBJ_LAPACK = $(dlfindobjfolder)/dlf_hdlc_matrixlib.o $(dlfindobjfolder)/dlf_hdlc_primitive.o $(dlfindobjfolder)/dlf_hdlc_constraint.o \
$(dlfindobjfolder)/dlf_hdlc_hdlclib.o $(dlfindobjfolder)/dlf_hdlc_interface.o $(dlfindobjfolder)/dlf_linalg.o \
$(dlfindobjfolder)/dlf_vpt2_project.mod.o $(dlfindobjfolder)/dlf_vpt2_intcoord.mod.o $(dlfindobjfolder)/dlf_gpr_hdlc.o

OBJ = $(OBJ_NOLAPACK) $(OBJ_LAPACK)

OBJ_MAIN = $(dlfindobjfolder)/dlfind_main_driver.o $(dlfindobjfolder)/dlf_serial.o
##OBJ_MAIN = $(dlfindobjfolder)/dlf_serial.o


# !---------------------------------------------------------------------!
# ! Build targets !
# !---------------------------------------------------------------------!

$(OBJ_MOD):$(dlfindobjfolder)/%.o:%.f90
@echo "[QUICK] FC $@"
$(VB)$(FOR) -c $< -o $@

$(OBJ):$(dlfindobjfolder)/%.o:%.f90
@echo "[QUICK] FC $@"
$(VB)$(FOR) -c $< -o $@

$(OBJ_MAIN):$(dlfindobjfolder)/%.o:%.f90
@echo "[QUICK] FC $@"
$(VB)$(FOR) -c $< -o $@

dlfind:$(OBJ_MOD) $(OBJ) $(OBJ_MAIN)
$(VB) $(ARCH) $(ARCHFLAGS) $(libfolder)/libdlfind.$(LIBEXT) $(dlfindobjfolder)/*.o
@-rm -f $(dlfindobjfolder)/dlfind_main_driver.o

# !---------------------------------------------------------------------!
# ! Cleaning targets !
# !---------------------------------------------------------------------!

.PHONY: clean

clean:
@-rm -f *.o *.a *.mod
Loading