anchor.diff:  
   
       case ("hse")
  +
  +       ir = U%grid%hi
  +       ic = U%grid%hi
           
          do i = U%grid%hi+1, U%grid%hi+U%grid%ng
             
  
positive.code:                   0.5_dp_t*U%data(ic,iumomx)**2/U%data(ic,iudens))/ &
                    U%data(ic,iudens)
               
               vel = U%data(ic,iumomx)/U%data(ic,iudens)
  
               ! velocity depends on hse_vel_type
               select case (hse_vel_type)
               case ("outflow")
  
negative.code:              ! constant temperature (or internal energy) in the ghost
               ! cells
  
               econst = (U%data(ic,iuener) - &
                    0.5_dp_t*U%data(ic,iumomx)**2/U%data(ic,iudens))/ &
                    U%data(ic,iudens)
               
               ! velocity depends on hse_vel_type
               select case(hse_vel_type)
               case ("outflow")
                  vel = U%data(ic,iumomx)/U%data(ic,iudens)
  
               case ("reflect")
                  vel = -U%data(ir,iumomx)/U%data(ir,iudens)
                  ir = ir - 1
  
               case default
                  print *, "ERROR: invalid hse_vel_type"
                  stop
                  
               end select
  
               
               ! get the pressure below (we already know that it has the
               ! internal energy econst)
  