1
0
mirror of https://github.com/TREX-CoE/fparser.git synced 2024-08-24 22:21:45 +02:00

some cleanup, more keywords added, input file shortened

This commit is contained in:
Ravindra Shinde 2021-02-25 14:57:29 +01:00
parent 0321cdfdfe
commit d5d2dd3c4a
6 changed files with 347 additions and 324 deletions

View File

@ -1,18 +1,27 @@
ianalyt_lap 1 isc 2 nspin1 1 nspin2 1 ifock 0
## file ends here
# global vmc/dmc settings # global vmc/dmc settings
&general unit Hartrees mass 0.5 nforce 1 # &general unit Hartrees mass 0.5 nforce 1
&general seed 1837465927472523 # &general seed 1837465927472523
&general ipr -1 # &general ipr -1
&dmc idmc 2 #&dmc idmc 2
&dmc nfprod 100 #&dmc nfprod 100
&dmc ipq 1 itau_eff 1 iacc_rej 1 icross 1 #&dmc ipq 1 itau_eff 1 iacc_rej 1 icross 1
&dmc icuspg 0 idiv_v 0 icut_br 0 icut_e 0 #&dmc icuspg 0 idiv_v 0 icut_br 0 icut_e 0
&vmc imetro 6 #&vmc imetro 6
&vmc deltar 5. deltat 1. #&vmc deltar 5. deltat 1.
&vmc delta 1. fbias 1. #&vmc delta 1. fbias 1.
&pseudo nloc 4 nquad 6 #&pseudo nloc 4 nquad 6
&jastrow ianalyt_lap 1 isc 2 nspin1 1 nspin2 1 ifock 0

View File

@ -31,10 +31,9 @@ PROGRAM iochamp
type(block_fdf) :: bfdf, bfdf2 type(block_fdf) :: bfdf, bfdf2
type(parsed_line), pointer :: pline, pline2 type(parsed_line), pointer :: pline, pline2
!type(fdf_file) :: fdffile !type(fdf_file) :: fdffile
integer :: nextorb, nblk_max, nopt_iter, max_iteration, max_iter, linecount, argument(5) integer :: max_iteration, max_iter, linecount, argument(5)
real(dp) :: energy_tol, float_value real(dp) :: float_value
real(dp) :: sr_tau, sr_eps, sr_adiag character(len=20) :: real_format = '(A, T20, F14.8)'
character(len=20) :: real_format = '(A, T20, F14.5)'
character(len=20) :: int_format = '(A, T20, I8)' character(len=20) :: int_format = '(A, T20, I8)'
! for determinants sections ! for determinants sections
@ -73,13 +72,35 @@ PROGRAM iochamp
write(6,'(A)') 'filename jastrow derivatives :: ', file_jastrow_deriv write(6,'(A)') 'filename jastrow derivatives :: ', file_jastrow_deriv
! &optwf ioptwf 1 ioptci 1 ioptjas 1 ioptorb 1
optimize_wavefunction = fdf_boolean("optimize_wavefunction", .false.)
write(6,*) ' optimize_wavefunction = ', optimize_wavefunction
optimize_ci = fdf_boolean('optimize_ci', .false.)
write(6,*) ' optimize_ci = ', optimize_ci
optimize_jastrow = fdf_boolean('optimize_jastrow', .false.)
write(6,*) ' optimize_jastrow = ', optimize_jastrow
optimize_orbitals = fdf_boolean('optimize_orbitals', .false.)
write(6,*) ' optimize_orbitals = ', optimize_orbitals
write(6,'(A)')
write(6,*) '------------------------------------------------------'
!Integer numbers (keyword, default_value). The variable is assigned default_value when keyword is not present !Integer numbers (keyword, default_value). The variable is assigned default_value when keyword is not present
! &optwf ncore 0 nextorb 280 no_active 0
! &optwf nblk_max 200 nopt_iter 2
ncore = fdf_integer('ncore', 0)
write(6,fmt=int_format) 'NCore =', ncore
nextorb = fdf_integer('nextorb', 0) nextorb = fdf_integer('nextorb', 0)
write(6,fmt=int_format) 'Next Orb =', nextorb write(6,fmt=int_format) 'Next Orb =', nextorb
no_active = fdf_integer('no_active', 0)
write(6,fmt=int_format) 'no_active =', no_active
nblk_max = fdf_integer('nblk_max', 0) nblk_max = fdf_integer('nblk_max', 0)
write(6,fmt=int_format) 'nblk max =', nblk_max write(6,fmt=int_format) 'nblk max =', nblk_max
@ -88,6 +109,10 @@ PROGRAM iochamp
! floats (keyword, default_value) variable is assigned default_value when keyword is not present ! floats (keyword, default_value) variable is assigned default_value when keyword is not present
! &optwf sr_tau 0.025 sr_eps 0.001 sr_adiag 0.01
! &optwf isample_cmat 0 energy_tol 0.0
sr_tau = fdf_get('sr_tau', 0.025d0) sr_tau = fdf_get('sr_tau', 0.025d0)
write(6,fmt=real_format) 'sr_tau:', sr_tau write(6,fmt=real_format) 'sr_tau:', sr_tau
@ -100,11 +125,15 @@ PROGRAM iochamp
energy_tol = fdf_get('energy_tol', 0.00001d0) energy_tol = fdf_get('energy_tol', 0.00001d0)
write(6,fmt=real_format) 'energy_tol:', energy_tol write(6,fmt=real_format) 'energy_tol:', energy_tol
nopt_iter = fdf_integer('a', 0) ! &optwf method sr_n multiple_adiag 0
write(6,fmt=int_format) 'a =', nopt_iter
opt_method = fdf_get('opt_method', "sr_n")
write(6,*) 'Optimization method ', opt_method
multiple_adiag = fdf_get('multiple_adiag', .false.)
write(6,*) 'multiple_adiag:', multiple_adiag
nopt_iter = fdf_integer('b', 0)
write(6,fmt=int_format) 'b =', nopt_iter
@ -113,44 +142,34 @@ PROGRAM iochamp
write(6,'(A, L2)') 'Debug:', debug write(6,'(A, L2)') 'Debug:', debug
! mixed types in one line (for example, reading a number with units)
max_iter = fdf_integer('max_iteration', 100)
write(6,*) 'Examples: maximum_iter =', max_iter
float_value = fdf_get('float_value', 0.00001d0) ! ianalyt_lap 1 isc 2 nspin1 1 nspin2 1 ifock 0
write(6,*) 'float_value :: ', float_value analytic_laplacian = fdf_get('ianalyt_lap', 1)
write(6,*) 'analytic laplacian from global.fdf pointer explained ', ianalyt_lap
nspin1 = fdf_get('nspin1', 1)
write(6,*) 'nspin1 from global.fdf ', nspin1
nspin2 = fdf_get('nspin2', 1)
write(6,*) 'nspin2 from global.fdf ', nspin2
ifock = fdf_get('ifock', 1)
write(6,*) 'ifock from global.fdf ', ifock
cutoff = fdf_physical('Energy_Cutoff', 8.d0, 'Ry') ! mixed types in one line (for example, reading a number with units)
write(6,fmt=real_format) 'Energy CutOff in Rydberg :: ', cutoff tau = fdf_get('tau', 0.05)
write(6,fmt=real_format) 'DMC tau = ', tau
phonon_energy = fdf_physical('phonon-energy', 0.01d0, 'eV') etrial = fdf_physical('etrial', -20.d0, 'eV')
write(6,fmt=real_format) 'Phonon Energy in eV :: ', phonon_energy write(6,fmt=real_format) 'Energy CutOff in eV :: ', energy_trial
write(6,'(A)') write(6,'(A)')
write(6,*) '------------------------------------------------------' write(6,*) '------------------------------------------------------'
! block containing logical key-value pairs
doit = fdf_boolean("optimize_wavefunction", .True.)
write(6,*) ' optimize_wavefunction = ', doit
doit = fdf_get('optimize_ci', .True.)
write(6,*) ' optimize_ci = ', doit
doit = fdf_get('optimize_jastrow', .True.)
write(6,*) ' optimize_jastrow = ', doit
doit = fdf_get('optimize_orbitals', .True.)
write(6,*) ' optimize_orbitals = ', doit
write(6,'(A)')
write(6,*) '------------------------------------------------------'
! write(6,'(A,4X)') 'optimize_wavefunction using bline', (subblock(i), i = 1, 4) ! write(6,'(A,4X)') 'optimize_wavefunction using bline', (subblock(i), i = 1, 4)
@ -219,17 +238,16 @@ PROGRAM iochamp
ia = ia + 1 ia = ia + 1
enddo enddo
na = ia - 1 na = ia - 1
endif endif
if (fdf_block('Coordinates', bfdf)) then
write(6,*) 'Coordinates:' write(6,*) 'Coordinates:'
do ia = 1, na do ia = 1, na
write(6,'(A, 4x, 3F10.6)') symbol(ia), (xa(i,ia),i=1,3) write(6,'(A, 4x, 3F10.6)') symbol(ia), (xa(i,ia),i=1,3)
enddo enddo
endif
! Molecule coordinate block ends here
write(6,*) '------------------------------------------------------'
write(6,'(A)')
write(6,*) '------------------------------------------------------' write(6,*) '------------------------------------------------------'
@ -268,72 +286,72 @@ PROGRAM iochamp
if (fdf_block('inline_xyz2', bfdf)) then ! if (fdf_block('inline_xyz2', bfdf)) then
! Forward reading ! ! Forward reading
write(6,*) 'Reading an inline_xyz2 block ' ! write(6,*) 'Reading an inline_xyz2 block '
ia = 1 ! ia = 1
do while(fdf_bline(bfdf, pline)) ! do while(fdf_bline(bfdf, pline))
if (pline%ntokens == 1) then ! if (pline%ntokens == 1) then
number_of_atoms = fdf_bintegers(pline, 1) ! number_of_atoms = fdf_bintegers(pline, 1)
write(*,*) "Number of atoms", number_of_atoms ! write(*,*) "Number of atoms", number_of_atoms
endif ! endif
na = number_of_atoms ! na = number_of_atoms
if (pline%ntokens == 4) then ! if (pline%ntokens == 4) then
symbol(ia) = fdf_bnames(pline, 1) ! symbol(ia) = fdf_bnames(pline, 1)
do i= 1, 3 ! do i= 1, 3
xa(i,ia) = fdf_bvalues(pline, i) ! xa(i,ia) = fdf_bvalues(pline, i)
enddo ! enddo
ia = ia + 1 ! ia = ia + 1
endif ! endif
enddo ! enddo
write(6,*) 'Inline XYZ2 Coordinates block:' ! write(6,*) 'Inline XYZ2 Coordinates block:'
do ia= 1, na ! do ia= 1, na
write(6,'(A4,3F10.6)') symbol(ia), (xa(i,ia),i=1,3) ! write(6,'(A4,3F10.6)') symbol(ia), (xa(i,ia),i=1,3)
enddo ! enddo
endif ! endif
write(6,'(A)') ! write(6,'(A)')
write(6,*) '------------------------------------------------------' ! write(6,*) '------------------------------------------------------'
if (fdf_block('molecule2', bfdf)) then ! if (fdf_block('molecule2', bfdf)) then
! External file reading ! ! External file reading
write(6,*) 'beginning of external file coordinates block ' ! write(6,*) 'beginning of external file coordinates block '
ia = 1 ! ia = 1
! write(*,*) "linecount", fdf_block_linecount("molecule") ! ! write(*,*) "linecount", fdf_block_linecount("molecule")
do while((fdf_bline(bfdf, pline))) ! do while((fdf_bline(bfdf, pline)))
if (pline%ntokens == 1) then ! if (pline%ntokens == 1) then
number_of_atoms = fdf_bintegers(pline, 1) ! number_of_atoms = fdf_bintegers(pline, 1)
write(*,*) "number of atoms", number_of_atoms ! write(*,*) "number of atoms", number_of_atoms
endif ! endif
na = number_of_atoms ! na = number_of_atoms
if (pline%ntokens == 4) then ! if (pline%ntokens == 4) then
symbol(ia) = fdf_bnames(pline, 1) ! symbol(ia) = fdf_bnames(pline, 1)
do i= 1, 3 ! do i= 1, 3
xa(i,ia) = fdf_bvalues(pline, i) ! xa(i,ia) = fdf_bvalues(pline, i)
enddo ! enddo
ia = ia + 1 ! ia = ia + 1
endif ! endif
enddo ! enddo
endif ! endif
write(6,*) 'Coordinates from Molecule2 block: External file' ! write(6,*) 'Coordinates from Molecule2 block: External file'
do ia= 1, na ! do ia= 1, na
write(6,'(A4,3F10.6)') symbol(ia), (xa(i,ia),i=1,3) ! write(6,'(A4,3F10.6)') symbol(ia), (xa(i,ia),i=1,3)
enddo ! enddo
write(6,'(A)') ! write(6,'(A)')
write(6,*) '------------------------------------------------------' ! write(6,*) '------------------------------------------------------'
@ -341,41 +359,41 @@ PROGRAM iochamp
if ( fdf_block('ListBlock',bfdf) ) then ! if ( fdf_block('ListBlock',bfdf) ) then
i = 0 ! i = 0
do while ( fdf_bline(bfdf,pline) ) ! do while ( fdf_bline(bfdf,pline) )
i = i + 1 ! i = i + 1
na = fdf_bnlists(pline) ! na = fdf_bnlists(pline)
write(*,'(2(a,i0),a)') 'Listblock line: ',i,' has ',na,' lists' ! write(*,'(2(a,i0),a)') 'Listblock line: ',i,' has ',na,' lists'
do ia = 1 , na ! do ia = 1 , na
j = -1 ! j = -1
call fdf_bilists(pline,ia,j,isa) ! call fdf_bilists(pline,ia,j,isa)
write(*,'(tr5,2(a,i0),a)') 'list ',ia,' has ',j,' entries' ! write(*,'(tr5,2(a,i0),a)') 'list ',ia,' has ',j,' entries'
call fdf_bilists(pline,ia,j,isa) ! call fdf_bilists(pline,ia,j,isa)
write(*,'(tr5,a,1000(tr1,i0))') 'list: ',isa(1:j) ! write(*,'(tr5,a,1000(tr1,i0))') 'list: ',isa(1:j)
end do ! end do
end do ! end do
end if ! end if
if ( fdf_islreal('list_floats') .and. fdf_islist('list_floats') & ! if ( fdf_islreal('list_floats') .and. fdf_islist('list_floats') &
.and. (.not. fdf_islinteger('list_floats')) ) then ! .and. (.not. fdf_islinteger('list_floats')) ) then
na = -1 ! na = -1
call fdf_list('list_floats',na,listr) ! call fdf_list('list_floats',na,listr)
write(*,'(tr1,a,i0,a)') 'list_floats has ',na,' entries' ! write(*,'(tr1,a,i0,a)') 'list_floats has ',na,' entries'
if ( na < 2 ) stop 1 ! if ( na < 2 ) stop 1
call fdf_list('list_floats',na,listr) ! call fdf_list('list_floats',na,listr)
write(*,'(tr5,a,1000(tr1,f12.8))') 'list_floats: ',listr(1:na) ! write(*,'(tr5,a,1000(tr1,f12.8))') 'list_floats: ',listr(1:na)
else ! else
write(*,*)'list_floats was not recognized' ! write(*,*)'list_floats was not recognized'
stop 1 ! stop 1
end if ! end if
write(6,'(A)') ! write(6,'(A)')
write(6,*) '------------------------------------------------------' ! write(6,*) '------------------------------------------------------'
write(6,'(A)') " Determinants Block" write(6,'(A)') " Determinants Block"
@ -384,7 +402,7 @@ PROGRAM iochamp
if (fdf_block('determinants', bfdf)) then if (fdf_block('determinants', bfdf)) then
! External file reading ! External file reading
write(6,*) 'beginning of external file determinant block ' write(6,*) 'Beginning of external file determinant block '
ia = 1 ia = 1
! call io_status() ! call io_status()
@ -437,13 +455,6 @@ PROGRAM iochamp
! enddo ! enddo
endif endif
! write(6,*) 'Coordinates from Molecule block: External file'
! do ia= 1, na
! write(6,'(A4,3F10.6)') symbol(ia), (xa(i,ia),i=1,3)
! enddo
write(6,'(A)') write(6,'(A)')
write(6,*) '------------------------------------------------------' write(6,*) '------------------------------------------------------'

View File

@ -95,7 +95,7 @@ MODULE keywords
public :: iworbd ! which orbitals enter in which determinants public :: iworbd ! which orbitals enter in which determinants
public :: ianalyt_lap, analytic_laplacian ! analytic laplacian or not public :: ianalyt_lap, analytic_laplacian ! analytic laplacian or not
public :: nspin1, ifock
public :: nspin2 ! 1,2,3,-1,-2 -> nspin2b=abs(nspin2) public :: nspin2 ! 1,2,3,-1,-2 -> nspin2b=abs(nspin2)
! nspin2 > 0 nspin2 sets of a, c parms, nspin2b sets of b parms ! nspin2 > 0 nspin2 sets of a, c parms, nspin2b sets of b parms
! nocuspb=0 parallel e-e cusp conditions satisfied (b=1/2,1/4) ! nocuspb=0 parallel e-e cusp conditions satisfied (b=1/2,1/4)
@ -117,7 +117,25 @@ MODULE keywords
public :: cutjas, cutoff_jastrow ! cutoff for Jastrow4,5,6 if cutjas=6,7 public :: cutjas, cutoff_jastrow ! cutoff for Jastrow4,5,6 if cutjas=6,7
public :: itau_eff, itau_effective public :: itau_eff, itau_effective
! Following not yet added public :: optimize_wavefunction
public :: optimize_ci
public :: optimize_jastrow
public :: optimize_orbitals
public :: ncore
public :: nextorb
public :: nopt_iter
public :: no_active
public :: nblk_max
public :: sr_tau
public :: sr_eps
public :: sr_adiag
public :: energy_tol
public :: opt_method
public :: multiple_adiag
! Following not yet added
! rlobx(y) Lobachevsky parameters for Fock expansion ! rlobx(y) Lobachevsky parameters for Fock expansion
! ipq,iacc_rej,icross,icuspg,idiv_v ! ipq,iacc_rej,icross,icuspg,idiv_v
@ -255,7 +273,7 @@ MODULE keywords
integer, target :: ianalyt_lap integer, target :: ianalyt_lap
integer, pointer :: analytic_laplacian => ianalyt_lap integer, pointer :: analytic_laplacian => ianalyt_lap
integer :: nspin2 integer :: nspin1, nspin2 , ifock
integer, target :: nord integer, target :: nord
integer, pointer :: order_poly => nord integer, pointer :: order_poly => nord
@ -286,4 +304,24 @@ MODULE keywords
real(dp), target :: itau_eff real(dp), target :: itau_eff
real(dp), pointer :: itau_effective => itau_eff real(dp), pointer :: itau_effective => itau_eff
logical :: optimize_wavefunction
logical :: optimize_ci
logical :: optimize_jastrow
logical :: optimize_orbitals
logical :: multiple_adiag
integer :: ncore
integer :: nextorb
integer :: nopt_iter
integer :: no_active
integer :: nblk_max
real(dp) :: sr_tau
real(dp) :: sr_eps
real(dp) :: sr_adiag
real(dp) :: energy_tol
character(len=20) :: opt_method
end module end module

View File

@ -6,105 +6,29 @@ basis BFD-T-normf0
# %include global.fdf # %include global.fdf
%block molecule < caffeine.xyz
sr_tau 1.023 %block determinants < sample.det
sr_eps 0.001
sr_adiag 0.05
energy_tol 0.004
a = 20
b = 30
optimize_wavefunction 1 optimize_wavefunction 1
optimize_ci 0 optimize_ci = false
optimize_jastrow yes optimize_jastrow yes
optimize_orbitals false optimize_orbitals true
nextorb 280 sr_tau 0.025
nblk_max 200 sr_eps 0.001
nopt_iter 20 sr_adiag 0.01
energy_tol 1.0E-5
ncore 0 no_active 0
nextorb 280 ; nblk_max 200
nopt_iter 2
opt_method sr_n
multiple_adiag no
# The sub blocks currently does not parse. tau = 0.04
etrial = -15 Ha
%block general
pool_directory pool
pseudopotential BFD
basis BFD-T-normf0
%endblock
# Initial spaces, in-between tabs do not matter
max_iteration 2147483647 # Max allowed int
Energy_Cutoff 500.0 eV
float_value 3.14e10
filename 'sample read input.txt'
phonon-energy 344 cm**-1
# An alternative way to provide coordinates
%block Coordinates
C 0.00000 1.40272 0 # can have comments in between or after the data
H 0.00000 2.49029 0
C -1.21479 0.70136 0
H -2.15666 1.24515 0
C -1.21479 -0.70136 0
H -2.15666 -1.24515 0
C 0.00000 -1.40272 0
H 0.00000 -2.49029 0
C 1.21479 -0.70136 0
H 2.15666 -1.24515 0
C 1.21479 0.70136 0
H 2.15666 1.24515 0
%endblock
%block inline_xyz
3
sample comment
O 4.013 0.831 -9.083
H 4.941 0.844 -8.837
H 3.750 -0.068 -9.293
%endblock inline_xyz
### Read molecule's geometry directly from the xyz file (filename should be given as is.)
%block molecule < caffeine.xyz
### Two blocks with the same name not supported. Ignored without warning
%block molecule2 < benzene.xyz %dump
## To include another file having fdf syntax
%include temp.fdf
## Lists
%block ListBlock
list_integers [1 to 6 7 9 10 ] [ 1 to 7 8 9 11 12 ]
%endblock ListBlock
list_floats [ 0.94725807 -0.09274559 -0.05238276 -0.05238264 -0.04867531 -0.04162750 -0.04054186 -0.04017050 -0.04017045 -0.02963522 -0.02749165 -0.02351945 0.02056895 0.02056894 -0.01996166 0.01987062 0.01987060]
### Read determinants directly from the .det file
#%block determinants < TZ_1M_500.det # sample.det
%block determinants < sample.det

97
src/test-champ.inp.backup Normal file
View File

@ -0,0 +1,97 @@
title "A Sample QMC input file parsed by libfdf interfaced to CHAMP"
pool ./pool
pseudopot BFD
basis BFD-T-normf0
# %include global.fdf
%block molecule < caffeine.xyz
optimize_wavefunction 1
optimize_ci = false
optimize_jastrow yes
optimize_orbitals true
sr_tau 0.025
sr_eps 0.001
sr_adiag 0.01
energy_tol 1.0E-5
ncore 0 no_active 0
nextorb 280 ; nblk_max 200
nopt_iter 2
opt_method sr_n
multiple_adiag no
# Initial spaces, in-between tabs do not matter
max_iteration 2147483647 # Max allowed int
Energy_Cutoff 500.0 eV
float_value 3.14e10
filename 'sample read input.txt'
# An alternative way to provide coordinates
%block Coordinates
C 0.00000 1.40272 0 # can have comments in between or after the data
H 0.00000 2.49029 0
C -1.21479 0.70136 0
H -2.15666 1.24515 0
C -1.21479 -0.70136 0
H -2.15666 -1.24515 0
C 0.00000 -1.40272 0
H 0.00000 -2.49029 0
C 1.21479 -0.70136 0
H 2.15666 -1.24515 0
C 1.21479 0.70136 0
H 2.15666 1.24515 0
%endblock
%block inline_xyz
3
sample comment
O 4.013 0.831 -9.083
H 4.941 0.844 -8.837
H 3.750 -0.068 -9.293
%endblock inline_xyz
### Two blocks with the same name not supported. Ignored without warning
%block molecule2 < benzene.xyz %dump
## To include another file having fdf syntax
%include temp.fdf
## Lists
%block ListBlock
list_integers [1 to 6 7 9 10 ] [ 1 to 7 8 9 11 12 ]
%endblock ListBlock
list_floats [ 0.94725807 -0.09274559 -0.05238276 -0.05238264 -0.04867531 -0.04162750 -0.04054186 -0.04017050 -0.04017045 -0.02963522 ]
### Read determinants directly from the .det file
#%block determinants < TZ_1M_500.det # sample.det
%block determinants < sample.det

View File

@ -6,31 +6,29 @@ determinants # default value
orbitals # default value orbitals # default value
jastrow # default value jastrow # default value
jastrow_deriv # default value jastrow_deriv # default value
nextorb 280
nblk_max 200
nopt_iter 20
sr_tau 1.023000000
sr_eps 0.1000000000E-02
sr_adiag 0.5000000000E-01
energy_tol 0.4000000000E-02
a 20
b 30
Debug T # default value
max_iteration 2147483647
float_value 0.3140000000E+11
Energy_Cutoff 36.74899422 Ry
# above item originally: Energy_Cutoff 500.0000000 eV
phonon-energy 0.4264063563E-01 eV
# above item originally: phonon-energy 344.0000000 cm**-1
optimize_wavefunction T optimize_wavefunction T
optimize_ci F optimize_ci F
optimize_jastrow T optimize_jastrow T
optimize_orbitals F optimize_orbitals T
%block general ncore 0
pool_directory pool nextorb 280
pseudopotential BFD no_active 0 # default value
basis BFD-T-normf0 nblk_max 0 # default value
%endblock general nopt_iter 2
sr_tau 0.2500000000E-01
sr_eps 0.1000000000E-02
sr_adiag 0.1000000000E-01
energy_tol 0.1000000000E-04
opt_method sr_n
multiple_adiag F
Debug T # default value
ianalyt_lap 1 # default value
nspin1 1 # default value
nspin2 1 # default value
ifock 1 # default value
tau 0.3999999911E-01
etrial -408.1744362 eV
# above item originally: etrial -15.00000000 Ha
%block molecule %block molecule
24 24
molecule 1,3,7-Trimethylpurine-2,6-dione molecule 1,3,7-Trimethylpurine-2,6-dione
@ -59,59 +57,5 @@ optimize_orbitals F
H 3.2249 1.5791 0.8255 H 3.2249 1.5791 0.8255
H 2.6431 2.5130 -0.5793 H 2.6431 2.5130 -0.5793
%endblock molecule %endblock molecule
%block Coordinates
C 0.00000 1.40272 0 # can have comments in between or after the data
H 0.00000 2.49029 0
C -1.21479 0.70136 0
H -2.15666 1.24515 0
C -1.21479 -0.70136 0
H -2.15666 -1.24515 0
C 0.00000 -1.40272 0
H 0.00000 -2.49029 0
C 1.21479 -0.70136 0
H 2.15666 -1.24515 0
C 1.21479 0.70136 0
H 2.15666 1.24515 0
%endblock Coordinates
%block inline_xyz
3
sample comment
O 4.013 0.831 -9.083
H 4.941 0.844 -8.837
H 3.750 -0.068 -9.293
%endblock inline_xyz
%block inline_xyz2
6
C 3.402 0.773 -9.252
C 4.697 0.791 -8.909
H 2.933 -0.150 -9.521
H 2.837 1.682 -9.258
H 5.262 -0.118 -8.904
H 5.167 1.714 -8.641
%endblock inline_xyz2
%block molecule2
12
benzene example
C 0.00000 1.40272 0.00000
H 0.00000 2.49029 0.00000
C -1.21479 0.70136 0.00000
H -2.15666 1.24515 0.00000
C -1.21479 -0.70136 0.00000
H -2.15666 -1.24515 0.00000
C 0.00000 -1.40272 0.00000
H 0.00000 -2.49029 0.00000
C 1.21479 -0.70136 0.00000
H 2.15666 -1.24515 0.00000
C 1.21479 0.70136 0.00000
H 2.15666 1.24515 0.00000
%endblock molecule2
%block ListBlock
list_integers [1 to 6 7 9 10 ] [ 1 to 7 8 9 11 12 ]
%endblock ListBlock
#:lreal? list_floats T
#:list? list_floats T
#:linteger? list_floats F
list_floats 17
list_floats 17
%block determinants %block determinants
&electrons nelec 22 nup 11 &electrons nelec 22 nup 11