Add makefile related

This commit is contained in:
jean paul nshuti 2025-10-08 16:30:08 +02:00
parent 464dca1bbb
commit 412bb832f2
1 changed files with 8 additions and 17 deletions

View File

@ -12,7 +12,7 @@ version=localdw-1.0
#IFORT VERSION (DEFAULT) #IFORT VERSION (DEFAULT)
FC = ifort FC = ifort
#MODERN IFORT VERSION (for compiling on laptops) #MODERN IFORT VERSION (for compiling on laptops)
FFLAGS =-O2 -qopenmp -qmkl -heap-arrays -module $(build) -cpp -g -diag-disable=10448 FFLAGS =-O2 -qopenmp -qmkl -heap-arrays -module $(build) -cpp -g -diag-disable=10448
#-openmp -complex-limited-range -xW -i-static -ip -ftz -no-prec-div -opt-prefetch -heap-arrays -align dcommons -mkl -mcmodel=medium #-openmp -complex-limited-range -xW -i-static -ip -ftz -no-prec-div -opt-prefetch -heap-arrays -align dcommons -mkl -mcmodel=medium
DBGFLAGS = -debug -check -check bounds #-warn uncalled -warn nousage -warn nounused -openmp -warn -warn notruncated_source DBGFLAGS = -debug -check -check bounds #-warn uncalled -warn nousage -warn nounused -openmp -warn -warn notruncated_source
DBGFLAGS+= -pg DBGFLAGS+= -pg
@ -44,6 +44,7 @@ VPATH += $(src)
VPATH += $(src)parser VPATH += $(src)parser
VPATH += $(src)parser/lib VPATH += $(src)parser/lib
VPATH += $(src)model VPATH += $(src)model
#VPATH += $(src)model/PES
###################################################################### ######################################################################
#Define objects for different Program parts (sorted in order of compilation) #Define objects for different Program parts (sorted in order of compilation)
@ -52,10 +53,8 @@ parser_obj = io_parameters.o accuracy_constants.o keys.o dim_parameter.o paramet
datamodule_obj = data_module.o #Compile this module before your model files and the genetic files datamodule_obj = data_module.o #Compile this module before your model files and the genetic files
#model_obj = ptr_structure.o Potential_no3_5s_jcp2021_cart_corrected.o surface_mod.o matrix_form.o ctrans.o model.o weight.o adia.o model_obj = ptr_structure.o matrix_form.o ctrans.o model.o weight.o adia.o
#model_obj = ptr_structure.o Potential_no3_5s_jcp2021_cart_corrected.o select_monom_mod.o maik_ctrans.o surface_mod.o matrix_form.o model.o weight.o adia.o
model_obj = ptr_structure.o ctrans.o surface_mod.o matrix_form.o model.o weight.o adia.o
mod_incl = mod_const.incl so_param.incl mod_incl = mod_const.incl so_param.incl
@ -66,20 +65,13 @@ genetic_obj = data_transform.o init.o write.o funcs.o marq.o lbfgsb.o idxsrt_mod
objects = $(addprefix $(build), $(parserlib_obj) $(parser_obj) $(datamodule_obj) $(model_obj) $(genetic_obj) ) objects = $(addprefix $(build), $(parserlib_obj) $(parser_obj) $(datamodule_obj) $(model_obj) $(genetic_obj) )
#plot_dip_obj = $(addprefix $(build), io_parameters.o accuracy_constants.o dim_parameter.oi model.o)
#Note: Since we are using modules, you have carefully choose the order of compilation and take dependencies between modules and subroutines into account! #Note: Since we are using modules, you have carefully choose the order of compilation and take dependencies between modules and subroutines into account!
###################################################################### ######################################################################
# Lib path to pes libray
PATH_PES = $(HOME)/Documents/work/NO3/NO3_PES/NO3_PES_FABIAN/
PES_LIB = $(PATH_PES)libno3_pes_ffabian.a
FFLAGS += -I$(PATH_PES)
LDFLAGS = -L$(PATH_PES) -lno3_pes_ffabian
# define main goal # define main goal
main = genetic main = genetic
main1 = plot_dipole main1 = plot_dipole
.PHONY: ifort gfortran .PHONY: ifort gfortran
@ -90,18 +82,16 @@ gfortran: override FC = $(GNUFC)
gfortran: override FFLAGS = $(GNUFFLAGS) gfortran: override FFLAGS = $(GNUFFLAGS)
gfortran: $(main) gfortran: $(main)
$(main) : dirs $(random_obj) $(objects) $(PES_LIB) $(main) : dirs $(random_obj) $(objects)
$(FC) $(FFLAGS) $(random_obj) $(objects) $(LDFLAGS) -o $(bin)$(main) $(FC) $(FFLAGS) $(random_obj) $(objects) -o $(bin)$(main)
parser.o : io_parameters.o keys.o dim_parameter.o parameterkeys.o parse_errors.o parser.o : io_parameters.o keys.o dim_parameter.o parameterkeys.o parse_errors.o
$(FC) -c $(FFLAGS) $^ -o $@ $(FC) -c $(FFLAGS) $^ -o $@
$(build)%.o : %.f $(build)%.o : %.f
$(FC) -c $(FFLAGS) $^ -o $@ $(FC) -c $(FFLAGS) $^ -o $@
$(build)%.o : %.f90 $(build)%.o : %.f90
$(FC) -c $(FFLAGS) $^ -o $@ $(FC) -c $(FFLAGS) $^ -o $@
$(model_obj) : $(mod_incl) $(model_obj) : $(mod_incl)
@ -115,6 +105,7 @@ trash= *__genmod* $(addprefix $(build),*__genmod* *.mod *.o)
clean: clean:
$(RM) $(objects) $(trash) $(RM) $(objects) $(trash)
all: clean $(main) umb_genetic
neat: clean neat: clean
$(RM) $(random_obj) $(RM) $(random_obj)