Function: solar-exact-local-noon

solar-exact-local-noon is a byte-compiled function defined in solar.el.gz.

Signature

(solar-exact-local-noon DATE)

Documentation

Date and Universal Time of local noon at *local date* DATE.

The date may be different from the one asked for, but it will be the right local date. The second component of date should be an integer.

Source Code

;; Defined in /usr/src/emacs/lisp/calendar/solar.el.gz
(defun solar-exact-local-noon (date)
  "Date and Universal Time of local noon at *local date* DATE.
The date may be different from the one asked for, but it will be the right
local date.  The second component of date should be an integer."
  (let* ((nd date)
         (ut (- 12.0 (/ (calendar-longitude) 15)))
         (te (solar-time-equation date ut)))
    (setq ut (- ut te))
    (if (>= ut 24)
        (setq nd (list (car date) (1+ (cadr date))
                       (nth 2 date))
              ut (- ut 24)))
    (if (< ut 0)
        (setq nd (list (car date) (1- (cadr date))
                       (nth 2 date))
              ut (+ ut 24)))
    (setq nd (calendar-gregorian-from-absolute ; date standardization
              (calendar-absolute-from-gregorian nd)))
    (list nd ut)))