Skip to content

Commit

Permalink
Merge pull request #25 from grimme-lab/std2
Browse files Browse the repository at this point in the history
std2 major update
  • Loading branch information
mdewergi authored Jan 9, 2025
2 parents a39df01 + 965ffeb commit 4c6ba93
Show file tree
Hide file tree
Showing 59 changed files with 8,673 additions and 1,165 deletions.
773 changes: 773 additions & 0 deletions 2PA.f90

Large diffs are not rendered by default.

42 changes: 34 additions & 8 deletions INFO
Original file line number Diff line number Diff line change
Expand Up @@ -5,27 +5,53 @@

26.08.2014: Version 1.3:

-Interfacing with Gaussian 09 possible (via g2molden)
-Interfacing with Gaussian 09 possible (via g2molden)

29.10.2014: Version 1.4:

-sTDA program is now interfaced to TeraChem
-Eigenvectors may be printed (Turbomole format)
-small bugfixes
-small bugfixes

01.03.2016: Version 1.5:
01.03.2016: Version 1.5:

-xTB
-velocity correction
-xTB
-velocity correction
-make UKS available to public

13.02.2018: Version 1.6:

- linear and nonlinear response function (SHG)
- two-photon absorption

26.11.2019: Version 1.6.1:

- state to state transitions
- SF-sTD-DFT
- NTOs

10.09.2020: Version 1.6.2:

- evaluation of the molecular optical rotation
- <S**2> for spin-flip states
- speed-up for the response function deck

10.10.2022: Version 1.6.3:

- evaluation of the two-photon cross-sections (now fully working)
- RespA approach for the interpretation of molecular response properties
- dual-threshold method for the efficient treatment of large systems
- polarizability bug fixed

12.09.2023: Version 1.6.3.3:

- Sources corrected for NTOs with dual threshold
- Sign error in the response part of the calculation of 2PA strengths is corrected

08.01.2024: Version 2.0.0:

- interfaced by default to libcint (magnetic moment one-electron integrals still computed with the old integral deck)
- XsTDA (restricted and unrestricted[only excited states]) for global hybrids and range-separated hybrids
- XsTD-DFT (restricted and unrestricted[only excited states]) for global hybrids and range-separated hybrids
- SF-XsTD-DFT for global hybrids
- CAM-B3LYP, wB97X-D2, wB97X-D3, wB97MV, SRC2R1, and SRC2R2 RSH functionals natively implemented with XsTD
52 changes: 25 additions & 27 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,47 +1,45 @@

PROG = stda

PROG = std2
OSTYPE=LINUXI
#--------------------------------------------------------------------------

#-------------------------------------------------------------------------
#--------------------------------------------------------------------------
# see https://www.intel.com/content/www/us/en/developer/tools/oneapi/onemkl-link-line-advisor.html details on these options

ifeq ($(OSTYPE),LINUXI)
FC = ifort
# FC = lfc
CC = gcc

### multithread ###
LINKER = ifort -static -qopenmp -I$(MKLROOT)/include/intel64/lp64 -I$(MKLROOT)/include
LIBS = $(MKLROOT)/lib/intel64/libmkl_blas95_lp64.a $(MKLROOT)/lib/intel64/libmkl_lapack95_lp64.a -Wl,--start-group $(MKLROOT)/lib/intel64/libmkl_intel_lp64.a $(MKLROOT)/lib/intel64/libmkl_core.a $(MKLROOT)/lib/intel64/libmkl_intel_thread.a -Wl,--end-group -lpthread -lm

### sequential ###
# LINKER = ifort -static
# LIBS = ${MKLROOT}/lib/intel64/libmkl_blas95_lp64.a ${MKLROOT}/lib/intel64/libmkl_lapack95_lp64.a -Wl,--start-group ${MKLROOT}/lib/intel64/libmkl_intel_lp64.a ${MKLROOT}/lib/intel64/libmkl_core.a $(MKLROOT)/lib/intel64/libmkl_sequential.a -Wl,--end-group -lpthread -lm

FC = ifx
CC = icx

ifdef USEILP64
LINKER = ifx -Bdynamic $(CURDIR)/libcint/build/libcint.so -Bstatic
LIBS = -Wl,--start-group ${MKLROOT}/lib/libmkl_intel_ilp64.a ${MKLROOT}/lib/libmkl_intel_thread.a ${MKLROOT}/lib/libmkl_core.a -Wl,--end-group -liomp5
FFLAGS = -O3 -qopenmp -I$(MKLROOT)/include/intel64/ilp64 -I$(MKLROOT)/include -i8
else
LINKER = ifx -Bdynamic $(CURDIR)/libcint/build/libcint.so -Bstatic
LIBS = -Wl,--start-group ${MKLROOT}/lib/libmkl_intel_lp64.a ${MKLROOT}/lib/libmkl_intel_thread.a ${MKLROOT}/lib/libmkl_core.a -Wl,--end-group -liomp5
FFLAGS = -O3 -qopenmp -I$(MKLROOT)/include/intel64/lp64 -I$(MKLROOT)/include
endif

CFLAGS = -O -DLINUX
FFLAGS = -O3 -qopenmp -I$(MKLROOT)/include/intel64/lp64 -I$(MKLROOT)/include
endif

ifeq ($(OSTYPE),MACOS)
FC = ifort
CC = gcc
LINKER = ifort -qopenmp -I$(MKLROOT)/include/intel64/lp64 -I$(MKLROOT)/include
LIBS = ${MKLROOT}/lib/libmkl_blas95_lp64.a ${MKLROOT}/lib/libmkl_intel_lp64.a ${MKLROOT}/lib/libmkl_intel_thread.a ${MKLROOT}/lib/libmkl_core.a -liomp5 -lpthread -lm -ldl
FC = ifx
CC = gcc
LINKER = ifx -qopenmp -I$(MKLROOT)/include/intel64/lp64 -I$(MKLROOT)/include
LIBS = ${MKLROOT}/lib/libmkl_blas95_lp64.a ${MKLROOT}/lib/libmkl_intel_lp64.a ${MKLROOT}/lib/libmkl_intel_thread.a ${MKLROOT}/lib/libmkl_core.a -liomp5 -lpthread -ldl -lm
PREFLAG = -E -P
FFLAGS = -O3 -qopenmp -I$(MKLROOT)/include/intel64/lp64 -I$(MKLROOT)/include #-check all
FFLAGS = -O3 -I${MKLROOT}/include/intel64/lp64 -I${MKLROOT}/include
FFLAGS = -O3 -I${MKLROOT}/include/intel64/lp64 -I${MKLROOT}/include
CCFLAGS = -O3 -DLINUX
endif

#################################################
OBJS=\
stdacommon.o stringmod.o main.o pckao.o \
header.o intpack.o velo.o \
header.o intpack.o velo.o libcint.o \
onetri.o prmat.o readl.o block.o\
stda.o stda-rw.o stda-rw_dual.o sutda.o sfstda.o srpapack.o intslvm.o io.o\
linal.o readbasa.o readbasmold.o printvec.o normalize.o\
apbtrafo.o sosor.o readxtb.o linear_response.o molden.o print_nto.o
linal.o readbasa.o readbasmold.o printvec.o normalize.o 2PA.o\
apbtrafo.o sosor.o readxtb.o linear_response.o molden.o print_nto.o xstd.o full.o
#################################################

%.o: %.f90
Expand All @@ -51,7 +49,7 @@ OBJS=\
@echo "making $@ from $<"
$(FC) $(FFLAGS) -c $< -o $@

$(PROG): $(OBJS)
$(PROG): $(OBJS)
@echo "Loading $(PROG) ... "
@$(LINKER) $(OBJS) $(LIBS) -o $(PROG)

Expand Down
Loading

0 comments on commit 4c6ba93

Please sign in to comment.