R: Convert a time to a Julian day

julianDay {oce} | R Documentation

## Convert a time to a Julian day

### Description

Convert a POSIXt time (given as either the `t` argument or as the `year`, `month`, and other arguments) to a Julian day, using the method provided in Chapter 3 of Meeus (1982). It should be noted that Meeus and other astronomical treatments use fractional days, whereas the present code follows the R convention of specifying days in whole numbers, with hours, minutes, and seconds also provided as necessary. Conversion is simple, as illustrated in the example for 1977 April 26.4, for which Meeus calculates julian day 2443259.9. Note that the R documentation for `julian()` suggests another formula, but the point of the present function is to match the other Meeus formulae, so that suggestion is ignored here.

### Usage

    julianDay(
      t,
      year = NA,
      month = NA,
      day = NA,
      hour = NA,
      min = NA,
      sec = NA,
      tz = "UTC"
    )

### Arguments

`t` | a time, in POSIXt format, e.g. as created by `as.POSIXct()`, `as.POSIXlt()`, or `numberAsPOSIXct()`, or a character string that can be converted to a time using `as.POSIXct()`. If `t` is provided, the other arguments are ignored.
`year` | year, to be provided along with `month`, etc., if `t` is not provided.
`month` | numerical value for the month, with January being 1. (This is required if `t` is not provided.)
`day` | numerical value for day in month, starting at 1. (This is required if `t` is not provided.)
`hour` | numerical value for hour of day, in range 0 to 24. (This is required if `t` is not provided.)
`min` | numerical value of the minute of the hour. (This is required if `t` is not provided.)
`sec` | numerical value for the second of the minute. (This is required if `t` is not provided.)
`tz` | timezone

### Value

A Julian-Day number, in astronomical convention as explained in Meeus.

### Author(s)

Dan Kelley

### References

- Meeus, Jean. Astronomical Formulas for Calculators. Second Edition. Richmond, Virginia, USA: Willmann-Bell, 1982.

### See Also

Other things related to astronomy: `angle2hms()`, `eclipticalToEquatorial()`, `equatorialToLocalHorizontal()`, `julianCenturyAnomaly()`, `moonAngle()`, `siderealTime()`, `sunAngle()`, `sunDeclinationRightAscension()`

Other things related to time: `ctimeToSeconds()`, `julianCenturyAnomaly()`, `numberAsHMS()`, `numberAsPOSIXct()`, `secondsToCtime()`, `unabbreviateYear()`

### Examples

    library(oce)
    ## example from Meeus
    t <- ISOdatetime(1977, 4, 26, hour=0, min=0, sec=0, tz="UTC")+0.4*86400
    stopifnot(all.equal(julianDay(t), 2443259.9))

[Package oce version 1.7-2 Index]