Skip to content

Commit

Permalink
Print section properties for TB
Browse files Browse the repository at this point in the history
  • Loading branch information
juerghutter committed Mar 19, 2019
1 parent 8d0aca4 commit 5a59074
Show file tree
Hide file tree
Showing 10 changed files with 887 additions and 48 deletions.
395 changes: 349 additions & 46 deletions src/qs_scf_post_tb.F

Large diffs are not rendered by default.

21 changes: 19 additions & 2 deletions src/xtb_matrices.F
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ MODULE xtb_matrices
USE basis_set_types, ONLY: gto_basis_set_p_type,&
gto_basis_set_type
USE block_p_types, ONLY: block_p_type
USE cp_blacs_env, ONLY: cp_blacs_env_type
USE cp_control_types, ONLY: dft_control_type,&
xtb_control_type
USE cp_dbcsr_cp2k_link, ONLY: cp_dbcsr_alloc_block_from_nbl
Expand Down Expand Up @@ -50,6 +51,7 @@ MODULE xtb_matrices
USE orbital_pointers, ONLY: ncoset
USE particle_types, ONLY: particle_type
USE qs_charge_mixing, ONLY: charge_mixing
USE qs_condnum, ONLY: overlap_condnum
USE qs_dispersion_pairpot, ONLY: d3_cnumber,&
d3_cnumber_bcast,&
dcnum_type
Expand Down Expand Up @@ -129,8 +131,8 @@ SUBROUTINE build_xtb_matrices(qs_env, para_env, calculate_forces)
INTEGER, DIMENSION(:, :), POINTER :: first_sgfa, first_sgfb
INTEGER, DIMENSION(:, :, :), POINTER :: cell_to_index
LOGICAL :: defined, diagblock, floating_a, found, &
ghost_a, omit_headers, use_virial, &
xb_inter
ghost_a, norml1, norml2, omit_headers, &
use_arnoldi, use_virial, xb_inter
LOGICAL, ALLOCATABLE, DIMENSION(:) :: floating, ghost
REAL(KIND=dp) :: alphaa, alphab, derepij, dfp, dhij, dr, drk, drx, ena, enb, erep, erepij, &
etaa, etab, exb, f0, f1, fen, fhua, fhub, fhud, foab, hij, k2sh, kab, kcnd, kcnp, kcns, &
Expand All @@ -151,6 +153,7 @@ SUBROUTINE build_xtb_matrices(qs_env, para_env, calculate_forces)
TYPE(atomic_kind_type), DIMENSION(:), POINTER :: atomic_kind_set
TYPE(atprop_type), POINTER :: atprop
TYPE(block_p_type), DIMENSION(2:4) :: dsblocks
TYPE(cp_blacs_env_type), POINTER :: blacs_env
TYPE(cp_logger_type), POINTER :: logger
TYPE(dbcsr_p_type), DIMENSION(:, :), POINTER :: matrix_h, matrix_p, matrix_s, matrix_w
TYPE(dcnum_type), ALLOCATABLE, DIMENSION(:) :: dcnum
Expand Down Expand Up @@ -885,6 +888,20 @@ SUBROUTINE build_xtb_matrices(qs_env, para_env, calculate_forces)
CALL cp_print_key_finished_output(iw, logger, qs_env%input, "DFT%PRINT%AO_MATRICES/OVERLAP")
END IF

! *** Overlap condition number
IF (.NOT. calculate_forces) THEN
IF (cp_print_key_should_output(logger%iter_info, qs_env%input, &
"DFT%PRINT%OVERLAP_CONDITION") .NE. 0) THEN
iw = cp_print_key_unit_nr(logger, qs_env%input, "DFT%PRINT%OVERLAP_CONDITION", &
extension=".Log")
CALL section_vals_val_get(qs_env%input, "DFT%PRINT%OVERLAP_CONDITION%1-NORM", l_val=norml1)
CALL section_vals_val_get(qs_env%input, "DFT%PRINT%OVERLAP_CONDITION%DIAGONALIZATION", l_val=norml2)
CALL section_vals_val_get(qs_env%input, "DFT%PRINT%OVERLAP_CONDITION%ARNOLDI", l_val=use_arnoldi)
CALL get_qs_env(qs_env=qs_env, blacs_env=blacs_env)
CALL overlap_condnum(matrix_s, iw, norml1, norml2, use_arnoldi, blacs_env)
END IF
END IF

DEALLOCATE (basis_set_list)
DEALLOCATE (kind_of)
DEALLOCATE (atom_of_kind)
Expand Down
46 changes: 46 additions & 0 deletions tests/xTB/regtest-3/H2O-geo-pdos.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
&FORCE_EVAL
METHOD Quickstep
&DFT
&PRINT
&PDOS
&EACH
GEO_OPT 2
&END
&END
&END
&QS
METHOD xTB
&END QS
&SCF
EPS_SCF 1.0E-6
SCF_GUESS ATOMIC
MAX_SCF 100
&OT OFF
&END
&END SCF
&END DFT
&SUBSYS
&CELL
ABC 6.0 6.0 6.0
&END CELL
&COORD
O 0.000000 0.000000 -0.065587
H 0.000000 -0.757136 0.520545
H 0.000000 0.757136 0.520545
&END COORD
&TOPOLOGY
CONNECTIVITY GENERATE
&END TOPOLOGY
&END SUBSYS
&END FORCE_EVAL
&MOTION
&GEO_OPT
OPTIMIZER BFGS
MAX_ITER 4
&END
&END
&GLOBAL
PROJECT H2O-geo-pdos
PRINT_LEVEL MEDIUM
RUN_TYPE GEO_OPT
&END GLOBAL
5 changes: 5 additions & 0 deletions tests/xTB/regtest-3/TEST_FILES
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,9 @@ h2o_emd.inp 1 1.0E-12 -5.76503571
si8_wan.inp 1 1.0E-12 -14.36402454198545
si_kp.inp 1 1.0E-12 -14.75264560894033
tmol.inp 1 1.0E-12 -41.90853885813247
ch2o.inp 1 1.0E-12 -7.84456570305608
ch2o_print.inp 1 1.0E-12 -7.84456570305608
si_print.inp 1 1.0E-12 -14.75264560894033
si_band.inp 1 1.0E-12 -14.75264560894033
H2O-geo-pdos.inp 1 1.0E-12 -14.75264560894033
#EOF
37 changes: 37 additions & 0 deletions tests/xTB/regtest-3/ch2o.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
&FORCE_EVAL
&DFT
&QS
METHOD xTB
&END QS
&SCF
SCF_GUESS MOPAC
MAX_SCF 100
EPS_SCF 1.e-8
&END SCF
&PRINT
&MO
CARTESIAN T
EIGENVALUES T
EIGENVECTORS T
OCCUPATION_NUMBERS T
&END MO
&END PRINT
&END DFT
&SUBSYS
&CELL
ABC 20.0 20.0 20.0
PERIODIC NONE
&END CELL
&COORD
O 0.051368 0.000000 0.000000
C 1.278612 0.000000 0.000000
H 1.870460 0.939607 0.000000
H 1.870460 -0.939607 0.000000
&END COORD
&END SUBSYS
&END FORCE_EVAL
&GLOBAL
PROJECT CH2O
RUN_TYPE ENERGY
PRINT_LEVEL LOW
&END GLOBAL
65 changes: 65 additions & 0 deletions tests/xTB/regtest-3/ch2o_print.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
&FORCE_EVAL
&DFT
&QS
METHOD xTB
&END QS
&SCF
SCF_GUESS MOPAC
MAX_SCF 100
EPS_SCF 1.e-8
&PRINT
&MOS_MOLDEN
&END
&END
&END SCF
&PRINT
&MOMENTS
MAGNETIC T
MAX_MOMENT 3
PERIODIC F
REFERENCE COM
&END MOMENTS
&MULLIKEN
&END MULLIKEN
&LOWDIN
&END LOWDIN
&MO
&EACH
QS_SCF 0
&END
CARTESIAN T
EIGENVALUES T
EIGENVECTORS T
OCCUPATION_NUMBERS T
&END MO
&OVERLAP_CONDITION
1-NORM T
ARNOLDI T
DIAGONALIZATION T
&END OVERLAP_CONDITION
&ENERGY_WINDOWS
RESTRICT_RANGE
RANGE 0.4
N_WINDOWS 10
PRINT_CUBES
&END
&END PRINT
&END DFT
&SUBSYS
&CELL
ABC 20.0 20.0 20.0
PERIODIC NONE
&END CELL
&COORD
O 0.051368 0.000000 0.000000
C 1.278612 0.000000 0.000000
H 1.870460 0.939607 0.000000
H 1.870460 -0.939607 0.000000
&END COORD
&END SUBSYS
&END FORCE_EVAL
&GLOBAL
PROJECT CH2O
RUN_TYPE ENERGY
PRINT_LEVEL LOW
&END GLOBAL
50 changes: 50 additions & 0 deletions tests/xTB/regtest-3/graphite-stm.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
&FORCE_EVAL
METHOD Quickstep
&DFT
&QS
METHOD xTB
&xTB
DO_EWALD T
&END
&END QS
&SCF
SCF_GUESS ATOMIC
EPS_SCF 1.E-6
MAX_SCF 30
&OT
PRECONDITIONER FULL_ALL
ENERGY_GAP 0.01
&END
&OUTER_SCF
EPS_SCF 1.0E-6
MAX_SCF 30
&END
&END SCF
&PRINT
&STM
NLUMO 32
BIAS -6 -1 1 6
TH_TORB S
TH_TORB PZ
&END
&END
&END DFT
&SUBSYS
&CELL
A 1.22800000 -2.12695839 0.00000000
B 1.22800000 2.12695839 0.00000000
C 0.00000000 0.00000000 6.69600000
&END CELL
&COORD
C 0.00000000 0.00000000 1.67400000
C 0.00000000 0.00000000 5.02200000
C 1.22800000 0.70898613 1.67400000
C 1.22800000 -0.70898613 5.02200000
&END COORD
&END SUBSYS
&END FORCE_EVAL
&GLOBAL
PROJECT graphite-stm
RUN_TYPE ENERGY
PRINT_LEVEL LOW
&END GLOBAL

0 comments on commit 5a59074

Please sign in to comment.