anchor.diff:  
                   end do
   
  -                ! Normalise and update running average projected energy.
  -                proj_energy = proj_energy + inst_proj_energy/D0_population
  +                ! Find the spawning rate and add to the running
  +                ! total.
  +                rspawn = rspawn + sum(abs(spawned_walkers(1,:)))/nattempts
   
                   call simple_annihilation()
   
  
positive.code: 
          if (iwalker == ref_det) then
              ! Have reference determinant.
              D0_population = walker_population(iwalker)
          else
              inst_proj_energy = inst_proj_energy + hamil(iwalker,ref_det)*walker_population(iwalker)
          end if
  
negative.code: 
          do ireport = 1, nreport
  
              ! Zero report cycle quantities.
              proj_energy = 0.0_p
              rspawn = 0.0_p
              D0_population = 0.0_p
  
              do icycle = 1, ncycles
  
                  ! Zero spawning arrays.
                  spawned_walkers = 0
  
                  ! Number of spawning attempts that will be made.
                  nattempts = nparticles
  
                  ! Consider all walkers.
                  do iwalker = 1, ndets
  
                      ! It is much easier to evaluate the projected energy at the
                      ! start of the FCIQMC cycle than at the end.
                      call simple_update_proj_energy(iwalker, proj_energy)
  
                      ! Simulate spawning.
                      do ipart = 1, abs(walker_population(iwalker))
  