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

keywords list updated

This commit is contained in:
Ravindra Shinde 2021-02-24 09:47:16 +01:00
parent 3d304d79a2
commit 344bd9b26d
2 changed files with 136 additions and 7 deletions

View File

@ -11,7 +11,7 @@ PROGRAM iochamp
integer, parameter :: maxa = 100 integer, parameter :: maxa = 100
logical :: doit, debug, check, val, logic(10) logical :: doit, debug, check, val, logic(10)
logical :: beginning, ending logical :: beginning, ending
character(len=72) :: fname, axis, status, filename, title character(len=72) :: fname, axis, status, filename, title, fmt
character(len=72) :: molecule_name, key, comment character(len=72) :: molecule_name, key, comment
character(2) :: symbol(maxa) character(2) :: symbol(maxa)
character(len=20) :: chunks(10), subblock(10) character(len=20) :: chunks(10), subblock(10)
@ -35,7 +35,7 @@ PROGRAM iochamp
! for determinants sections ! for determinants sections
integer :: nelectrons, nalpha, nbeta, ndeterminants, nexcitation, iostat integer :: nelectrons, nalpha, nbeta, ndeterminants, nexcitation, iostat
integer, allocatable :: det_alpha(:), det_beta(:) integer, allocatable :: det_alpha(:), det_beta(:)
real(dp), allocatable :: det_coeff(:) real(selected_real_kind(6,15)), allocatable :: det_coeff(:)
character(len=20) :: temp1, temp2, temp3, temp4, temp5 character(len=20) :: temp1, temp2, temp3, temp4, temp5
!------------------------------------------------------------------------- BEGIN !------------------------------------------------------------------------- BEGIN
@ -369,12 +369,14 @@ PROGRAM iochamp
open (unit=11,file='TZ_1M_500.det', iostat=iostat, action='read' ) open (unit=11,file='TZ_1M_500.det', iostat=iostat, action='read' )
read(11,*) temp1, temp2, nelectrons, temp3, nalpha read(11,*) temp1, temp2, nelectrons, temp3, nalpha
! write(*,'(a,1x,i3,1x,i3)') "write after read1", nelectrons, nalpha write(*,'(a,1x,i3,1x,i3)') "write after read1", nelectrons, nalpha
read(11,*) temp1, ndeterminants, nexcitation read(11,*) temp1, ndeterminants, nexcitation
! write(*,'(a,1x,i3, 1x, i3)') "write after read2", ndeterminants, nexcitation allocate(det_coeff(ndeterminants))
write(*,'(a,1x,i3, 1x, i3)') "write after read2", ndeterminants, nexcitation
read(11,*) (det_coeff(i), i=1,ndeterminants) read(11,*) (det_coeff(i), i=1,ndeterminants)
write(*,'(<ndeterminants>(f11.8,1x))') (det_coeff(i), i=1,ndeterminants) write(fmt,*) '(', ndeterminants, '(f11.8,1x))'
! write(*,'(<ndeterminants>(f10.8, 1x))') (det_coeff(i), i=1,ndeterminants) write(*,fmt) (det_coeff(i), i=1,ndeterminants)
! write(*,'(<ndeterminants>(f11.8, 1x))') (det_coeff(i), i=1,ndeterminants) ! for Intel Fortran
close(11) close(11)

127
src/keywords.F90 Normal file
View File

@ -0,0 +1,127 @@
! Licence information goes here
!
!
#if defined HAVE_CONFIG_H
# include "config.h"
#endif
#define THIS_FILE "keywords.F90"
!=====================================================================
!
! This file is a part of parser module of CHAMP
! It contains the variables, their default values, a short descriptions.
! The variables are initiazed with their default values here.
! These values will be changed by the parsed input
!
! Ravindra Shinde
!
!=====================================================================
MODULE keywords
! use iochamp
implicit none
public ::
private ::
interface fdf_bnames
module procedure names
end interface
! Dynamic list for parsed_line structures
type, public :: line_dlist
character(len=MAX_LENGTH) :: str
type(parsed_line), pointer :: pline => null()
!
type(line_dlist), pointer :: next => null()
type(line_dlist), pointer :: prev => null()
end type line_dlist
contains
! title title
! irn random number seeds (four 4-digit integers)
! ijas form of Jastrow. (between 1 and 6, mostly we use 4)
! isc form of scaling function for ri,rj,rij in Jastrow (between 1 and 7, mostly use 2,4,6,7,16,17)
! iperiodic 0 finite system
! >0 periodic system
! ibasis form of basis
! hb hbar=0.5 for Hartree units
! etrial guess for energy
! eunit 'Hartree'
! nstep number of steps per block
! nblk number of blocks
! nblkeq number of equilibration blocks
! nconf target number of MC configurations in dmc
! nconf_new number of new MC configs. saved per processor.
! idump dump restart file
! irstar restart from restart file
! isite call sites to generate starting MC config. in vmc
! ipr print level
! imetro form of Metropolis (6 is most efficient choice for most systems)
! 1 simple algorithm with force-bias
! 6 accelerated Metropolis algorithm from Cyrus' 1993 PRL
! delta step-size for simple algorithm
! deltar radial step-size for accelerated algorithm
! deltat angular step-size for accelerated algorithm
! fbias force-bias. (Use 1 always).
! idmc form of dmc algorithm
! 1 simple dmc
! 2 improved dmc from Umrigar, Nightingale, Runge 1993 JCP
! ipq,itau_eff,iacc_rej,icross,icuspg,idiv_v
! nfprod number of products to undo for estimating population control bias in dmc
! tau time-step in dmc
! nloc nonlocal pseudopotential
! 0 local
! 1 in Fahy format
! 2 in Troullier-Martins format (unformatted)
! 3 in Troullier-Martins format (formatted)
! nquad number of angular quadrature points for nonlocal psp.
! nelec number of electrons
! nup number of up-spin electrons
! nctype number of atom/center types
! ncent number of atoms/centers
! iwctype specify atom-type for each atom
! znuc nuclear charge
! cent atom positions
! ndet number of determinants in wavefunction
! nbasis number of basis functions
! norb number of orbitals
! cdet coefficients of determinants
! iworbd which orbitals enter in which determinants
! ianalyt_lap analytic laplacian or not
! ijas form of Jastrow. (between 1 and 6, mostly we use 4)
! isc form of scaling function for ri,rj,rij in Jastrow (between 1 and 7, mostly use 2,4,6,7)
! 2 [1-exp(scalek*r)]/scalek
! 3 [1-exp{-scalek*r-(scalek*r)**2/2}]/scalek
! 4 r/(1+scalek*r)
! 5 r/{1+(scalek*r)**2}**.5
! 6 Short-range version of 2 (range given bu cutjas)
! 7 Short-range version of 4 (range given bu cutjas)
! nspin2 1,2,3,-1,-2 -> nspin2b=abs(nspin2)
! 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)
! nspin2 < 0 -> nspin2=1
! nspin2=1 sets of a and c parms, nspin2b sets of b parms
! -1 nocuspb=1 parallel e-e cusp conditions not satisfied (1/2,1/2)
! -2 nocuspb=0 parallel e-e cusp conditions satisfied (1/2,1/4)
! nord order of the polynmial
! norda order of the e-n polynmial in Jastrow4
! nordb order of the e-e polynmial in Jastrow4
! nordc order of the e-e-n polynmial in Jastrow4
! cjas1 simple jastrow1 (0.5 to satisfy cusps, parallel-spins automatically take half this value)
! cjas2 simple jastrow1 parameter
! scalek scale factor for Jastrow
! a1,a2 Jastrow parameters for Jastrow2
! a,b,c Jastrow parameters for Jastrow3
! a4,b,c Jastrow parameters for Jastrow4,5,6
! cutjas cutoff for Jastrow4,5,6 if cutjas=6,7
! rlobx(y) Lobachevsky parameters for Fock expansion