anchor.diff:                  melt_ice  = melt-melt_snow
   
                   ! actual melt is sum of melted snow and ice (melted snow over land)
  -                where (land_ice_ocean > 2)
  +                where (land_ice_ocean == 2)
                       melt = melt_snow + melt_ice
                   elsewhere
                       melt = melt_snow
  
positive.code:             ! Relax snow height to maximum (eg, 5 m)
              snow_to_ice  = dmax1(0.d0,hsnow-hsmax) 
              hsnow        = hsnow - snow_to_ice
              massbal_ice  = snow_to_ice/tstic - melt_ice + refrozen_rain   ! Use to force ice sheet model
              new_ice      = massbal_ice*tstic ! update new ice budget: remove or add ice
  
              if (.not. bnd%massbal) then
                  where (land_ice_ocean == 2)
                      massbal = massbal_snow + massbal_ice
                  elsewhere
                      massbal = massbal_snow + dmax1(0.0_dp,massbal_ice)
                  end where
              end if
  
  
negative.code:                 ! potential refeezing snow
                  refrozen_snow = dmax1(refr-refrozen_rain,0.0_dp)
                  ! actual refreezing snow
                  refrozen_snow = dmin1(refrozen_snow,melt_snow)
                  ! actual refreezing
                  refrozen_rain =  f_rz*refrozen_rain
                  refrozen_snow =  f_rz*refrozen_snow
                  refr = refrozen_rain + refrozen_snow
              end if 
  
              ! 3) runoff
              runoff = melt + rf - refrozen_rain
  
              ! 4) accumulation: sum of all incoming solid water (just diagnostic, here)
              if (.not. bnd%acc) then
                  acc = sf - subl/rhow + refr
              end if
              
              ! 5) surface mass balance
              massbal_snow = sf - subl/rhow - melt_snow
  