mirror of
https://github.com/TREX-CoE/fparser.git
synced 2024-11-03 12:43:58 +01:00
keywords list updated; issues with allocatable pointes to be solved
This commit is contained in:
parent
14a34e7902
commit
ddc5b4ac49
228
src/keywords.F90
228
src/keywords.F90
@ -78,11 +78,11 @@ MODULE keywords
|
|||||||
public :: ncent, natoms, ncenters, ncentres ! number of atoms/centers
|
public :: ncent, natoms, ncenters, ncentres ! number of atoms/centers
|
||||||
public :: iwctype ! specify atom-type for each atom
|
public :: iwctype ! specify atom-type for each atom
|
||||||
public :: znuc, znuclear, atomic_number ! nuclear charge
|
public :: znuc, znuclear, atomic_number ! nuclear charge
|
||||||
public :: cent, atom_coords ! atom positions
|
public :: cent !atom_coords ! atom positions
|
||||||
public :: ndet, ndeterminants ! number of determinants in wavefunction
|
public :: ndet, ndeterminants ! number of determinants in wavefunction
|
||||||
public :: nbasis ! number of basis functions
|
public :: nbasis ! number of basis functions
|
||||||
public :: norb, norbitals ! number of orbitals
|
public :: norb, norbitals ! number of orbitals
|
||||||
public :: cdet, det_coeffs ! coefficients of determinants
|
public :: cdet !det_coeffs ! coefficients of determinants
|
||||||
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
|
||||||
|
|
||||||
@ -104,7 +104,7 @@ MODULE keywords
|
|||||||
public :: scalek, scaling_jastrow ! scale factor for Jastrow
|
public :: scalek, scaling_jastrow ! scale factor for Jastrow
|
||||||
public :: a1,a2 ! Jastrow parameters for Jastrow2
|
public :: a1,a2 ! Jastrow parameters for Jastrow2
|
||||||
public :: a,b,c ! Jastrow parameters for Jastrow3
|
public :: a,b,c ! Jastrow parameters for Jastrow3
|
||||||
public :: a4,b,c ! Jastrow parameters for Jastrow4,5,6
|
public :: a4 ! Jastrow parameters for Jastrow4,5,6
|
||||||
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
|
||||||
|
|
||||||
@ -112,81 +112,161 @@ MODULE keywords
|
|||||||
! 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
|
||||||
|
|
||||||
! private variables
|
private :: sp, dp
|
||||||
|
|
||||||
private ::
|
integer, parameter :: sp = kind(1.0)
|
||||||
|
integer, parameter :: dp = kind(1.0d0)
|
||||||
interface fdf_bnames
|
|
||||||
module procedure names
|
|
||||||
end interface
|
|
||||||
|
|
||||||
! derived data types
|
|
||||||
|
|
||||||
type, public :: atom_t
|
|
||||||
character(len=:) :: name
|
|
||||||
character(len=:) :: symbol
|
|
||||||
integer(int32) :: znuclear
|
|
||||||
real(real64) :: atomic_mass
|
|
||||||
end type atom_t
|
|
||||||
|
|
||||||
|
|
||||||
! declarations
|
! declarations
|
||||||
|
|
||||||
public :: title
|
character(len=132) :: title
|
||||||
public :: irn, rand_seed
|
|
||||||
public :: ijas, form_jastrow
|
integer, target :: irn
|
||||||
public :: isc, form_jastrow_scaling
|
integer, pointer :: rand_seed => irn
|
||||||
public :: iperiodic, periodic
|
|
||||||
public :: ibasis, form_basis
|
integer, target :: ijas
|
||||||
public :: hb, hbar
|
integer, pointer :: form_jastrow => ijas
|
||||||
public :: etrial, energy_trial
|
|
||||||
public :: eunit, energy_unit
|
integer, target :: isc
|
||||||
public :: nstep, nsteps
|
integer, pointer :: form_jastrow_scaling => isc
|
||||||
public :: nblk, nblocks
|
|
||||||
public :: nblkeq, nequil_blocks
|
integer, target :: iperiodic
|
||||||
public :: nconf, nconfigs
|
integer, pointer :: periodic => iperiodic
|
||||||
public :: nconf_new, nconfigs_new
|
|
||||||
public :: idump, unit_restart_dump
|
integer, target :: ibasis
|
||||||
public :: irstar, restart
|
integer, pointer :: form_basis => ibasis
|
||||||
public :: isite, generate_config
|
|
||||||
public :: ipr, print_level
|
real(dp), target :: hb
|
||||||
public :: imetro, form_metropolis
|
real(dp), pointer :: hbar => hb
|
||||||
public :: delta, step_size
|
|
||||||
public :: deltar, step_size_radial
|
real(dp), target :: etrial
|
||||||
public :: deltat, step_size_angular
|
real(dp), pointer :: energy_trial => etrial
|
||||||
public :: fbias, force_bias
|
|
||||||
public :: idmc, form_dmc
|
integer, target :: eunit
|
||||||
public :: nfprod
|
integer, pointer :: energy_unit => eunit
|
||||||
public :: tau
|
|
||||||
public :: nloc, pseudo_format
|
integer, target :: nstep
|
||||||
public :: nquad, nquadrature
|
integer, pointer :: nsteps => nstep
|
||||||
public :: nelec
|
|
||||||
public :: nup, nalpha
|
integer, target :: nblk
|
||||||
public :: ndown, nbeta
|
integer, pointer :: nblocks => nblk
|
||||||
public :: nctype, ntypes_atom
|
|
||||||
public :: ncent, natoms, ncenters, ncentres
|
integer, target :: nblkeq
|
||||||
public :: iwctype
|
integer, pointer :: nequil_blocks => nblkeq
|
||||||
public :: znuc, znuclear, atomic_number
|
|
||||||
public :: cent, atom_coords
|
integer, target :: nconf
|
||||||
public :: ndet, ndeterminants
|
integer, pointer :: nconfigs => nconf
|
||||||
public :: nbasis
|
|
||||||
public :: norb, norbitals
|
integer, target :: nconf_new
|
||||||
public :: cdet, det_coeffs
|
integer, pointer :: nconfigs_new => nconf_new
|
||||||
public :: iworbd
|
|
||||||
public :: ianalyt_lap, analytic_laplacian
|
integer, target :: idump
|
||||||
public :: nspin2
|
integer, pointer :: unit_restart_dump => idump
|
||||||
public :: nord, order_poly
|
|
||||||
public :: norda, order_poly_en
|
integer, target :: irstar
|
||||||
public :: nordb, order_poly_ee
|
integer, pointer :: restart => irstar
|
||||||
public :: nordc, order_poly_een
|
|
||||||
public :: cjas1
|
integer, target :: isite
|
||||||
public :: cjas2
|
integer, pointer :: generate_config => isite
|
||||||
public :: scalek, scaling_jastrow
|
|
||||||
public :: a1,a2
|
integer, target :: ipr
|
||||||
public :: a,b,c
|
integer, pointer :: print_level => ipr
|
||||||
public :: a4,b,c
|
|
||||||
public :: cutjas, cutoff_jastrow
|
integer, target :: imetro
|
||||||
public :: itau_eff, itau_effective
|
integer, pointer :: form_metropolis => imetro
|
||||||
|
|
||||||
|
integer, target :: delta
|
||||||
|
integer, pointer :: step_size => delta
|
||||||
|
|
||||||
|
integer, target :: deltar
|
||||||
|
integer, pointer :: step_size_radial => deltar
|
||||||
|
|
||||||
|
integer, target :: deltat
|
||||||
|
integer, pointer :: step_size_angular => deltat
|
||||||
|
|
||||||
|
integer, target :: fbias
|
||||||
|
integer, pointer :: force_bias => fbias
|
||||||
|
|
||||||
|
integer, target :: idmc
|
||||||
|
integer, pointer :: form_dmc => idmc
|
||||||
|
|
||||||
|
integer :: nfprod
|
||||||
|
real(sp) :: tau
|
||||||
|
|
||||||
|
integer, target :: nloc
|
||||||
|
integer, pointer :: pseudo_format => nloc
|
||||||
|
|
||||||
|
integer, target :: nquad
|
||||||
|
integer, pointer :: nquadrature => nquad
|
||||||
|
|
||||||
|
integer :: nelec
|
||||||
|
|
||||||
|
integer, target :: nup
|
||||||
|
integer, pointer :: nalpha => nup
|
||||||
|
|
||||||
|
integer, target :: ndown
|
||||||
|
integer, pointer :: nbeta => ndown
|
||||||
|
|
||||||
|
integer, target :: nctype
|
||||||
|
integer, pointer :: ntypes_atom => nctype
|
||||||
|
|
||||||
|
integer, target :: ncent
|
||||||
|
integer, pointer :: natoms => ncent, ncenters => ncent, ncentres => ncent
|
||||||
|
|
||||||
|
integer :: iwctype
|
||||||
|
|
||||||
|
integer, target :: znuc
|
||||||
|
integer, pointer :: znuclear => znuc, atomic_number => znuc
|
||||||
|
|
||||||
|
real(dp), allocatable :: cent(:,:)
|
||||||
|
! real(dp), pointer :: atom_coords => cent !! this might have issues in performance
|
||||||
|
|
||||||
|
integer, target :: ndet
|
||||||
|
integer, pointer :: ndeterminants => ndet
|
||||||
|
|
||||||
|
integer :: nbasis
|
||||||
|
|
||||||
|
integer, target :: norb
|
||||||
|
integer, pointer :: norbitals => norb
|
||||||
|
|
||||||
|
real(dp), allocatable :: cdet(:)
|
||||||
|
! integer, pointer :: det_coeffs => cdet ! issues in performance
|
||||||
|
|
||||||
|
integer :: iworbd
|
||||||
|
|
||||||
|
integer, target :: ianalyt_lap
|
||||||
|
integer, pointer :: analytic_laplacian => ianalyt_lap
|
||||||
|
|
||||||
|
integer :: nspin2
|
||||||
|
|
||||||
|
integer, target :: nord
|
||||||
|
integer, pointer :: order_poly => nord
|
||||||
|
|
||||||
|
integer, target :: norda
|
||||||
|
integer, pointer :: order_poly_en => norda
|
||||||
|
|
||||||
|
integer, target :: nordb
|
||||||
|
integer, pointer :: order_poly_ee => nordb
|
||||||
|
|
||||||
|
integer, target :: nordc
|
||||||
|
integer, pointer :: order_poly_een => nordc
|
||||||
|
|
||||||
|
integer, target :: scalek
|
||||||
|
integer, pointer :: scaling_jastrow => scalek
|
||||||
|
|
||||||
|
integer :: cjas1
|
||||||
|
integer :: cjas2
|
||||||
|
|
||||||
|
real(dp) :: a1,a2
|
||||||
|
real(dp) :: a,b,c
|
||||||
|
real(dp) :: a4
|
||||||
|
|
||||||
|
|
||||||
contains
|
real(dp), target :: cutjas
|
||||||
|
real(dp), pointer :: cutoff_jastrow => cutjas
|
||||||
|
|
||||||
|
real(dp), target :: itau_eff
|
||||||
|
real(dp), pointer :: itau_effective => itau_eff
|
||||||
|
|
||||||
|
end module
|
@ -7,6 +7,10 @@ program trial_reading
|
|||||||
character(40) :: temp1, temp2, temp3, fmt
|
character(40) :: temp1, temp2, temp3, fmt
|
||||||
real(selected_real_kind(6,15)), allocatable :: det_coeff(:)
|
real(selected_real_kind(6,15)), allocatable :: det_coeff(:)
|
||||||
|
|
||||||
|
integer, target :: irn
|
||||||
|
integer, pointer :: rand_seed => irn
|
||||||
|
|
||||||
|
|
||||||
type(atom_t) :: atom1
|
type(atom_t) :: atom1
|
||||||
|
|
||||||
atom1 = element("sulfur")
|
atom1 = element("sulfur")
|
||||||
@ -18,6 +22,11 @@ program trial_reading
|
|||||||
|
|
||||||
print*, atom1
|
print*, atom1
|
||||||
|
|
||||||
|
irn = 132432
|
||||||
|
print *, "irn ", irn
|
||||||
|
print *, "rand_seed ", rand_seed
|
||||||
|
|
||||||
|
|
||||||
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
|
||||||
|
Loading…
Reference in New Issue
Block a user