 
 (def default-dim-stride 1)
 (def default-lat-lon-stride 1)
+(def default-lat-lon-resolution 1)
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;;   Records   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;   Support/Utility Functions   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(defn adjusted-lon
  [lon resolution]
  (- (* lon resolution)
     (* default-lon-lo resolution)))

(defn adjusted-lat
  [lat resolution]
  (- (* lat resolution)
     (* default-lat-lo resolution)))

;; XXX Can we use these instead? Why was the phase shifting written
;;     so obtrusely? There's got to be a reason, I just don't know it ...
;; XXX This is being tracked in CMR-4959


(defn lon-lo-phase-shift
  [lon-max lon-lo]
  (log/debug "Got lon-max:" lon-max)
  (-> (/ (* (dec lon-max)
            (- lon-lo default-lon-lo))
         (- default-lon-hi default-lon-lo))
      Math/floor
      int))

(defn lon-hi-phase-shift
  [lon-max lon-hi]
  (log/debug "Got lon-max:" lon-max)
  (-> (/ (* (dec lon-max)
            (- lon-hi default-lon-lo))
         (- default-lon-hi default-lon-lo))
      Math/ceil
      int))

;; XXX Note that the following two functions were copied from this JS:
;;
