Cats.Helpers.EthiopianDate.GregorianToJulianDate C# (CSharp) Method

GregorianToJulianDate() public static method

Gregorians to julian date.
public static GregorianToJulianDate ( System.DateTime date ) : double
date System.DateTime The date.
return double
        public static double GregorianToJulianDate(DateTime date)
        {
            //return date.ToOADate() + 2415018.5;

            double year, month, day;
            year = date.Year;
            month = date.Month;
            day = date.Day;

            if (year < 0) { year++; } // No year zero
            // Jean Meeus algorithm, "Astronomical Algorithms", 1991
            if (month < 3)
            {
                month += 12;
                year--;
            }
            var a = Math.Floor(year / 100);
            var b = 2 - a + Math.Floor(a / 4);
            var value = Math.Floor(365.25 * (year + 4716)) + Math.Floor(30.6001 * (month + 1)) + day + b - 1524.5;
            return value;
        }