anchor.diff:                                                  0.0_p,  1.0_p, 0.0_p,  0.0_p,  &
                                                  -1.0_p,  0.0_p, 0.0_p,  0.0_p  \)
   
  -! [review] - NSB: dmqmc_t was very large, and I think can be split up a bit more
  -! [review] - NSB: logically. I've created derived types for ground-state RDMs and
  -! [review] - NSB: instantaneous RDMs, and for the weighted sampling.
  -! [review] - JSS: split this into input-level data and calculation-derived data.
  -! [review] - NSB: Agree, will do.
  +! [todo] - split this into input-level data and calculation-derived data.
   type dmqmc_estimates_t
       ! [review] - NSB: dmqmc_factor is a bit of a wierd one because it is used more
       ! [review] - NSB: more generally by other methods, too. It is just a number
       ! [review] - NSB: which is set to 2 for DMQMC, or to 1 otherwise.
       ! [review] - NSB: It is a fundamental property of the equation that we evolve with...
       ! [review] - NSB: Suggestions on where to put this?
  +    ! [reply] - JSS: qmc_state_t?
       ! When performing dmqmc calculations, dmqmc_factor = 2.0. This factor is
       ! required because in DMQMC calculations, instead of spawning from one end with
       ! the full probability, we spawn from two different ends with half probability each.
  
positive.code: 
  ! True if allowing non-integer values for psip populations.
  logical :: real_amplitudes = .false.
  
  ! If this logical is true then the program runs the DMQMC algorithm with
  ! importance sampling.
  
negative.code:     real(dp), allocatable :: weight_altering_factors(:)
  end type dmqmc_weighted_sampling_t
  
  ! [todo] - move to sys_heisenberg_t?  derived type for importance sampling data?
  ! When using the Neel singlet trial wavefunction, it is convenient
  ! to store all possible amplitudes in the wavefunction, since
  ! there are relativley few of them and they are expensive to calculate
  real(dp), allocatable :: neel_singlet_amp(:) ! (nsites/2) + 1
  
  !--- Folded spectrum data ---
  ! [todo] - discuss removing folded spectrum
  type folded_spect_t
      ! The line about which you are folding i.e. eps in (H-eps)^2 - E_0
      real(p) :: fold_line = 0
  