anchor.diff:      ! [review] - JSS: would a better default be true? (Check works with Fionn's new code)
       logical :: half_density_matrix = .false.
   
  +    ! When using the old weighted importance sampling, dmqmc_sampling_probs
  +    ! stores the factors by which probabilities are to be reduced when spawning
  +    ! away from the diagonal.
  +    real(p), allocatable :: dmqmc_sampling_probs(:) ! (max_number_excitations)
  +    ! When using the old weighted importance sampling, how many iterations are
  +    ! the weights varied for?
  +    integer :: finish_varying_weights = 0
  +
   end type dmqmc_in_t
   
   type dmqmc_rdm_in_t
   
  +    ! [todo] - rename.
       ! If true then the reduced density matricies will be calulated for the 'A'
       ! subsystems specified by the user.
       logical :: doing_reduced_dm = .false.
  
positive.code: 
  !--- Type for a ground state RDM ---
  type dmqmc_ground_rdm_t
      ! This stores the reduces matrix, which is slowly accumulated over time
      ! (on each processor).
      real(p), allocatable :: reduced_density_matrix(:,:)
  
negative.code:     ! for DMQMC, so that each level will have roughly equal numbers of psips.
      ! The resulting new weights are used in the next beta loop.
      logical :: dmqmc_find_weights = .false.
      ! If true then the fraction of psips at each
      ! excitation level will be output at each report loop. These fractions
      ! will be stored in the array below.
      ! The number of excitations for a given system is defined by
      ! sys_t%max_number_excitations; see comments in sys_t for more details.
      logical :: calculate_excit_distribution = .false.
      ! If true then the simulation will start with walkers uniformly distributed
      ! along the diagonal of the entire density matrix, including all symmetry
      ! sectors.
  