anchor.diff:          allocate(CQS2(ime,jme))
           CQS2=0.01
           
  +        allocate(RAINBL(ime,jme))
  +        RAINBL=domain%rain  ! used to store last time step accumulated precip so that it can be subtracted from the current step
  +                            ! set to domain%rain incase this is a restart run and rain is non-zero to start
  +        allocate(rain_bucket(ime,jme))
  +        rain_bucket=domain%rain_bucket  ! used to store last time step accumulated precip so that it can be subtracted from the current step
  +        
  +        
           domain%T2m = domain%th(:,1,:) * domain%pii(:,1,:)
           domain%Q2m = domain%qv(:,1,:)
           
  
positive.code:         allocate(lhdQV(ime-2,jme-2))
          lhdQV=0
          allocate(Z0(ime,jme))
          Z0=0.01 !?
          allocate(QSFC(ime,jme))
          QSFC=domain%qv(:,1,:)
          allocate(Ri(ime,jme))
          Ri=0
          allocate(z_atm(ime,jme))
  
negative.code:                 ! note this is more or less just diagnostic and could be removed
                  domain%lwup=stefan_boltzmann*EMISS*domain%skin_t**4
                  RAINBL=domain%rain
                  rain_bucket=domain%rain_bucket
                  
  !                 i=139
  !                 j=69
  