Class JulianDate
java.lang.Object
org.episteme.natural.physics.astronomy.time.JulianDate
Julian Date (JD) representation and conversions.
Julian Date is a continuous count of days since the beginning of the
Julian Period (January 1, 4713 BC, Julian calendar).
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final doubleJulian Date for B1950.0 epochstatic final doubleDays per Julian centurystatic final doubleJulian Date for J2000.0 epoch (2000-01-01 12:00:00 TT) -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddDays(double days) Adds days to this Julian Date.static JulianDatefromGregorian(int year, int month, double day) Creates a JulianDate from a Gregorian calendar date and time (UTC).static JulianDatefromLocalDateTime(LocalDateTime dateTime) Creates a JulianDate from Java LocalDateTime (assumes UTC).intReturns the day of week (0 = Monday, 6 = Sunday).doubleReturns Julian centuries since J2000.0.doubleReturns Modified Julian Date (MJD = JD - 2400000.5).doublegetValue()static JulianDatenow()Returns current Julian Date.double[]Converts back to Gregorian calendar.toString()
-
Field Details
-
J2000
public static final double J2000Julian Date for J2000.0 epoch (2000-01-01 12:00:00 TT)- See Also:
-
B1950
public static final double B1950Julian Date for B1950.0 epoch- See Also:
-
DAYS_PER_CENTURY
public static final double DAYS_PER_CENTURYDays per Julian century- See Also:
-
-
Constructor Details
-
JulianDate
public JulianDate(double julianDate)
-
-
Method Details
-
fromGregorian
Creates a JulianDate from a Gregorian calendar date and time (UTC).- Parameters:
year- Year (e.g., 2024)month- Month (1-12)day- Day of month (1-31, can include fractional days)- Returns:
- JulianDate for the specified date/time
-
fromLocalDateTime
Creates a JulianDate from Java LocalDateTime (assumes UTC). -
toGregorian
public double[] toGregorian()Converts back to Gregorian calendar.- Returns:
- Array [year, month, day] where day may be fractional
-
getJulianCenturies
public double getJulianCenturies()Returns Julian centuries since J2000.0. T = (JD - 2451545.0) / 36525 -
getModifiedJulianDate
public double getModifiedJulianDate()Returns Modified Julian Date (MJD = JD - 2400000.5). MJD starts at midnight, making it more convenient for modern use. -
addDays
Adds days to this Julian Date. -
getDayOfWeek
public int getDayOfWeek()Returns the day of week (0 = Monday, 6 = Sunday). -
getValue
public double getValue() -
toString
-
now
Returns current Julian Date.
-