subroutine init_real_time_calc_single()
use real_time_procs, only: get_tot_parts
! this routine takes care of the correct setup of the real-time
! calculation. like reading the popsfiles and preparing the start
! of the calculation and setting certain global variables
implicit none
character(*), parameter :: this_routine = "init_real_time_calc_single"
integer :: ierr
write(stdout, *) " Entering real-time FCIQMC initialisation "
! think about what variables have to be set for a succesful calc.
! also call the "normal" NECI setup routines to allow calculation
call SetupParameters()
! for real-space hubbard, we conver to momentum operators if desired
if (t_kspace_operators) call setup_momentum_operators()
! have to think about the the order about the above setup routines!
! within this Init a readpops is called
! this function already produces the correctly perturbed ground state
call InitFCIMCCalcPar()
! also init pointer here, and think about what options and defaults
! should be set for a succsesfull init
call init_fcimc_fn_pointers()
! setup the k-space hubbard if required (after pointers as some are
! overwritten
if (t_k_space_hubbard) then
call init_k_space_hubbard()
end if
! then call the setup routine, which set all remaining needed quantities
call setup_real_time_fciqmc()
! definetly read-in stored popsfile here.
! need to store both <y(0)| and also create a_j y(0)> during read-in!
! call read_popsfile_real_time()
! actually the InitFCIMCCalcPar should do that now correctly already
! do an MPIbarrier here.. although don't quite know why
call MPIBarrier(ierr)
if (.not. tReadPops) call set_initial_global_data(TotWalkers, CurrentDets)
end subroutine init_real_time_calc_single