Skip to content

Commit 4439ce8

Browse files
committed
added -gf functionallity to remove basis functions
1 parent 061470c commit 4439ce8

2 files changed

Lines changed: 40 additions & 5 deletions

File tree

README.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
cefine
22
======
33

4-
This is the official repository of the ``cefine`` program developed by the
4+
This is the official repository of the `cefine` program developed by the
55
Grimme group in Bonn.
66

7-
`cefine` is a commandline wrapper around the `TURBOMOLE` ``define`` program.
7+
`cefine` is a commandline wrapper around the `TURBOMOLE` `define` program.
88
The program is distributed as is!
99

1010

@@ -103,6 +103,7 @@ cml-input: cefine -h
103103
-diff (add spd/sp diffuse functions)
104104
-test (do not call define)
105105
-nodiff (turns off diff density feature of TM)
106+
-gf (remove g/f on H-Rn in def2-QZVP only)
106107
needs: <coord> file in TM format
107108
optional files : <.SYM> with Schoenflies symbol
108109
(in <coord> dir) <.UHF> integer number Na-Nb
@@ -142,4 +143,4 @@ Bugs
142143
----
143144
The code is distributed as is! You can report bugs by opening an issue,
144145
providing example of in- and output, and we will choose if we can
145-
follow up on it.
146+
follow up on it.

cefine.f90

Lines changed: 36 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,14 @@ Program comand_line_define
3232
character*80 newlib
3333
character*80 dbas
3434
character*80 homedir,cefinerc
35+
character*2 baselem(85)
3536
real*8 extol !tolerance of K integrals
3637
logical RI, MP2, DFT, VDW, DESY, OPT, KEEP, UHF, MODEHT,QUICK,TROLD
3738
logical DFPT2, FC, pr, OR, RIK, NOVDW, EX, CP1, CP2, POL, CC, ECP
3839
logical COORD, FOLD, MOLD, RANGST, SCS, TRUNC,LIB,ALIB,LAP,NDIFF
3940
logical da,FON,TS,R12,MRCI,COSMO,OPTI,ECHO,TEST,OLDMO,SOS,ZERO,FAKE
4041
logical strange_elem,diffuse, egrid, XMOL, MARIJ,REF,nori,BJ,ATM,D4
41-
logical deletion_failed
42+
logical deletion_failed, RMGF
4243
logical cosx ! SAW: added seminumerical exchange = COSX
4344
logical modbas !basis defined in input
4445
logical modgrid !grid defined in input
@@ -58,7 +59,7 @@ Program comand_line_define
5859

5960
pr=.true.
6061
! .'--------------------------------------------'
61-
if(pr) write(*,*)'Command line define V2.2, SG,HK 2006-18 August 2018 (-h for help) '
62+
if(pr) write(*,*)'Command line define V2.21, SG,HK 2006-18 August 2018 (-h for help) '
6263
! write(*,*)
6364
! .'--------------------------------------------'
6465
io=1
@@ -133,6 +134,7 @@ Program comand_line_define
133134
MARIJ=.false.
134135
QUICK=.false.
135136
! BJ=.false.
137+
RMGF=.false.
136138
!JGB BJ as default (!)
137139
BJ=.true.
138140
ZERO=.false.
@@ -286,6 +288,7 @@ Program comand_line_define
286288
write(*,*)' -diff (add spd/sp diffuse functions)'
287289
write(*,*)' -test (do not call define)'
288290
write(*,*)' -nodiff (turns off diff density feature of TM)'
291+
write(*,*)' -gf (remove g/f on H-Rn in def2-QZVP only)'
289292
write(*,*)'needs: <coord> file in TM format'
290293
write(*,*)'optional files : <.SYM> with Schoenflies symbol'
291294
write(*,*)'(in <coord> dir) <.UHF> integer number Na-Nb'
@@ -356,6 +359,7 @@ Program comand_line_define
356359
NOVDW=.true.
357360
func='tpss'
358361
endif
362+
if(index(arg(i),'-gf').ne.0) RMGF=.true.
359363
if(index(arg(i),'-marij ').ne.0) MARIJ=.true.
360364
if(index(arg(i),'-fold').ne.0) FOLD=.true.
361365
if(index(arg(i),'-mold').ne.0) MOLD=.true.
@@ -835,6 +839,36 @@ Program comand_line_define
835839
enddo
836840
close(142)
837841
endif
842+
843+
! RMGF -gf for def2-QZVP
844+
DATA baselem/'he', &
845+
'li','be','b ','c ','n ','o ','f ','ne', &
846+
'na','mg','al','si','p ','s ','cl','ar', &
847+
'k ','ca','sc','ti','v ','cr','mn','fe','co','ni','cu', &
848+
'zn','ga','ge','as','se','br','kr', &
849+
'rb','sr','y ','zr','nb','mo','tc','ru','rh','pd','ag', &
850+
'cd','in','sn','sb','te','i ','xe', &
851+
'cs','ba','la','ce','pr','nd','pm','sm','eu','gd','tb','dy', &
852+
'ho','er','tm','yb','lu','hf','ta','w ','re','os','ir','pt', &
853+
'au','hg','tl','pb','bi','po','at','rn'/
854+
855+
if(RMGF)then
856+
write(io,'('' bm'')')
857+
write(io,'(''h def2-QZVP'')')
858+
write(io,'(''del'')')
859+
write(io,'(''f'')')
860+
write(io,'('' '')')
861+
do i=1,85
862+
write(io,'('' bm'')')
863+
write(io,'(a,1x,a)')trim(baselem(i)),'def2-QZVP'
864+
!write(io,'(''b def2-QZVP'')')
865+
write(io,'(''del'')')
866+
write(io,'(''g'')')
867+
write(io,'('' '')')
868+
enddo
869+
endif
870+
871+
838872
! c CP correction
839873
if(CP1.or.CP2)then
840874
call system('splitmol > splitmol.tmp')

0 commit comments

Comments
 (0)