03 January 2018 07:00:29 PM CALPAK_TEST: C version Test the CALPAK library. CH_CAP_TEST CH_CAP uppercases a character. C CH_CAP(C) F F f F 1 1 b B B B DATENUM_TO_JED_TEST DATENUM_TO_JED: Matlab DATENUM -> JED. JED (in) DATENUM JED (out) 1721058.50 0.00 1721058.50 1721422.50 364.00 1721422.50 1721423.50 365.00 1721423.50 1721425.50 367.00 1721425.50 1721425.50 367.00 1721425.50 1724220.50 3162.00 1724220.50 1741959.50 20901.00 1741959.50 1749994.50 28936.00 1749994.50 1825029.50 103971.00 1825029.50 1862836.50 141778.00 1862836.50 1922867.50 201809.00 1922867.50 1936747.50 215689.00 1936747.50 1940351.50 219293.00 1940351.50 1948320.50 227262.00 1948320.50 1948438.50 227380.00 1948438.50 1948439.50 227381.00 1948439.50 1952062.50 231004.00 1952062.50 1952067.50 231009.00 1952067.50 2110700.50 389642.00 2110700.50 2114872.50 393814.00 2114872.50 2289425.50 568367.00 2289425.50 2299160.00 578101.50 2299160.00 2299161.00 578102.50 2299161.00 2333269.50 612211.00 2333269.50 2361221.00 640162.50 2361221.00 2361222.00 640163.50 2361222.00 2372547.50 651489.00 2372547.50 2375839.50 654781.00 2375839.50 2394646.50 673588.00 2394646.50 2394710.50 673652.00 2394710.50 2397383.50 676325.00 2397383.50 2400000.50 678942.00 2400000.50 2409702.50 688644.00 2409702.50 2415020.31 693961.81 2415020.31 2429702.50 708644.00 2429702.50 2439702.50 718644.00 2439702.50 2440587.50 719529.00 2440587.50 2443817.50 722759.00 2443817.50 2443818.50 722760.00 2443818.50 2444244.50 723186.00 2444244.50 2449790.50 728732.00 2449790.50 2450138.50 729080.00 2450138.50 2451544.50 730486.00 2451544.50 2458123.29 737064.79 2458123.29 2456282.50 735224.00 2456282.50 2913943.00 1192884.50 2913943.00 DATENUM_VALUES_TEST: DATENUM_VALUES returns values of the MATLAB datenum for a given Y/M/D date Y M D DATENUM 0 1 1 1.00 1 1 1 367.00 100 1 1 36526.00 1000 1 1 365244.00 1939 8 17 708434.00 1944 9 9 710284.00 1952 3 10 713023.00 1966 5 12 718199.00 1980 1 6 723186.00 1996 2 25 729080.00 2000 1 1 730486.00 DAY_LIST_COMMON_TEST DAY_LIST_COMMON prints a list of days between two given YMD dates in the common calendar. Initial date: CE 2012/09/01 Final date: CE 2012/12/31 Sat, 1 Sep 2012 Sun, 2 Sep 2012 Mon, 3 Sep 2012 Tue, 4 Sep 2012 Wed, 5 Sep 2012 Thu, 6 Sep 2012 Fri, 7 Sep 2012 Sat, 8 Sep 2012 Sun, 9 Sep 2012 Mon, 10 Sep 2012 Tue, 11 Sep 2012 Wed, 12 Sep 2012 Thu, 13 Sep 2012 Fri, 14 Sep 2012 Sat, 15 Sep 2012 Sun, 16 Sep 2012 Mon, 17 Sep 2012 Tue, 18 Sep 2012 Wed, 19 Sep 2012 Thu, 20 Sep 2012 Fri, 21 Sep 2012 Sat, 22 Sep 2012 Sun, 23 Sep 2012 Mon, 24 Sep 2012 Tue, 25 Sep 2012 Wed, 26 Sep 2012 Thu, 27 Sep 2012 Fri, 28 Sep 2012 Sat, 29 Sep 2012 Sun, 30 Sep 2012 Mon, 1 Oct 2012 Tue, 2 Oct 2012 Wed, 3 Oct 2012 Thu, 4 Oct 2012 Fri, 5 Oct 2012 Sat, 6 Oct 2012 Sun, 7 Oct 2012 Mon, 8 Oct 2012 Tue, 9 Oct 2012 Wed, 10 Oct 2012 Thu, 11 Oct 2012 Fri, 12 Oct 2012 Sat, 13 Oct 2012 Sun, 14 Oct 2012 Mon, 15 Oct 2012 Tue, 16 Oct 2012 Wed, 17 Oct 2012 Thu, 18 Oct 2012 Fri, 19 Oct 2012 Sat, 20 Oct 2012 Sun, 21 Oct 2012 Mon, 22 Oct 2012 Tue, 23 Oct 2012 Wed, 24 Oct 2012 Thu, 25 Oct 2012 Fri, 26 Oct 2012 Sat, 27 Oct 2012 Sun, 28 Oct 2012 Mon, 29 Oct 2012 Tue, 30 Oct 2012 Wed, 31 Oct 2012 Thu, 1 Nov 2012 Fri, 2 Nov 2012 Sat, 3 Nov 2012 Sun, 4 Nov 2012 Mon, 5 Nov 2012 Tue, 6 Nov 2012 Wed, 7 Nov 2012 Thu, 8 Nov 2012 Fri, 9 Nov 2012 Sat, 10 Nov 2012 Sun, 11 Nov 2012 Mon, 12 Nov 2012 Tue, 13 Nov 2012 Wed, 14 Nov 2012 Thu, 15 Nov 2012 Fri, 16 Nov 2012 Sat, 17 Nov 2012 Sun, 18 Nov 2012 Mon, 19 Nov 2012 Tue, 20 Nov 2012 Wed, 21 Nov 2012 Thu, 22 Nov 2012 Fri, 23 Nov 2012 Sat, 24 Nov 2012 Sun, 25 Nov 2012 Mon, 26 Nov 2012 Tue, 27 Nov 2012 Wed, 28 Nov 2012 Thu, 29 Nov 2012 Fri, 30 Nov 2012 Sat, 1 Dec 2012 Sun, 2 Dec 2012 Mon, 3 Dec 2012 Tue, 4 Dec 2012 Wed, 5 Dec 2012 Thu, 6 Dec 2012 Fri, 7 Dec 2012 Sat, 8 Dec 2012 Sun, 9 Dec 2012 Mon, 10 Dec 2012 Tue, 11 Dec 2012 Wed, 12 Dec 2012 Thu, 13 Dec 2012 Fri, 14 Dec 2012 Sat, 15 Dec 2012 Sun, 16 Dec 2012 Mon, 17 Dec 2012 Tue, 18 Dec 2012 Wed, 19 Dec 2012 Thu, 20 Dec 2012 Fri, 21 Dec 2012 Sat, 22 Dec 2012 Sun, 23 Dec 2012 Mon, 24 Dec 2012 Tue, 25 Dec 2012 Wed, 26 Dec 2012 Thu, 27 Dec 2012 Fri, 28 Dec 2012 Sat, 29 Dec 2012 Sun, 30 Dec 2012 Mon, 31 Dec 2012 EASTER_GREGORIAN_DS_TEST For the Gregorian calendar, for a given year, compute the day and month of Easter. EASTER_GREGORIAN_DS uses Duffett-Smith's algorithm. CORRECT: AD 1997/03/30 COMPUTED: AD 1997/03/30 CORRECT: AD 1998/04/12 COMPUTED: AD 1998/04/12 CORRECT: AD 1999/04/04 COMPUTED: AD 1999/04/04 CORRECT: AD 2000/04/23 COMPUTED: AD 2000/04/23 CORRECT: AD 2001/04/15 COMPUTED: AD 2001/04/15 CORRECT: AD 2002/03/31 COMPUTED: AD 2002/03/31 CORRECT: AD 2003/04/20 COMPUTED: AD 2003/04/20 CORRECT: AD 2004/04/11 COMPUTED: AD 2004/04/11 CORRECT: AD 2005/03/27 COMPUTED: AD 2005/03/27 CORRECT: AD 2006/04/16 COMPUTED: AD 2006/04/16 EASTER_GREGORIAN_EGR_TEST For the Gregorian calendar, for a given year, compute the day and month of Easter. EASTER_GREGORIAN_EGR uses Richards's algorithm #1. CORRECT: AD 1997/03/30 COMPUTED: AD 1997/03/30 CORRECT: AD 1998/04/12 COMPUTED: AD 1998/04/12 CORRECT: AD 1999/04/04 COMPUTED: AD 1999/04/04 CORRECT: AD 2000/04/23 COMPUTED: AD 2000/04/23 CORRECT: AD 2001/04/15 COMPUTED: AD 2001/04/15 CORRECT: AD 2002/03/31 COMPUTED: AD 2002/03/31 CORRECT: AD 2003/04/20 COMPUTED: AD 2003/04/20 CORRECT: AD 2004/04/11 COMPUTED: AD 2004/04/11 CORRECT: AD 2005/03/27 COMPUTED: AD 2005/03/27 CORRECT: AD 2006/04/16 COMPUTED: AD 2006/04/16 EASTER_GREGORIAN_EGR2_TEST For the Gregorian calendar, for a given year, compute the day and month of Easter. EASTER_GREGORIAN_EGR uses Richards's algorithm #2. CORRECT: AD 1997/03/30 COMPUTED: AD 1997/03/30 CORRECT: AD 1998/04/12 COMPUTED: AD 1998/04/12 CORRECT: AD 1999/04/04 COMPUTED: AD 1999/04/04 CORRECT: AD 2000/04/23 COMPUTED: AD 2000/04/23 CORRECT: AD 2001/04/15 COMPUTED: AD 2001/04/15 CORRECT: AD 2002/03/31 COMPUTED: AD 2002/03/31 CORRECT: AD 2003/04/20 COMPUTED: AD 2003/04/20 CORRECT: AD 2004/04/11 COMPUTED: AD 2004/04/11 CORRECT: AD 2005/03/27 COMPUTED: AD 2005/03/27 CORRECT: AD 2006/04/16 COMPUTED: AD 2006/04/16 EASTER_GREGORIAN_KNUTH_TEST For the Gregorian calendar, for a given year, compute the day and month of Easter. EASTER_GREGORIAN_KNUTH uses Knuth's algorithm. CORRECT: AD 1997/03/30 COMPUTED: AD 1997/03/30 CORRECT: AD 1998/04/12 COMPUTED: AD 1998/04/12 CORRECT: AD 1999/04/04 COMPUTED: AD 1999/04/04 CORRECT: AD 2000/04/23 COMPUTED: AD 2000/04/23 CORRECT: AD 2001/04/15 COMPUTED: AD 2001/04/15 CORRECT: AD 2002/03/31 COMPUTED: AD 2002/03/31 CORRECT: AD 2003/04/20 COMPUTED: AD 2003/04/20 CORRECT: AD 2004/04/11 COMPUTED: AD 2004/04/11 CORRECT: AD 2005/03/27 COMPUTED: AD 2005/03/27 CORRECT: AD 2006/04/16 COMPUTED: AD 2006/04/16 EASTER_GREGORIAN_STEWART_TEST For the Gregorian calendar, for a given year, compute the day and month of Easter. EASTER_GREGORIAN_STEWART uses Stewart's algorithm. CORRECT: AD 1997/03/30 COMPUTED: AD 1997/03/30 CORRECT: AD 1998/04/12 COMPUTED: AD 1998/04/12 CORRECT: AD 1999/04/04 COMPUTED: AD 1999/04/04 CORRECT: AD 2000/04/23 COMPUTED: AD 2000/04/23 CORRECT: AD 2001/04/15 COMPUTED: AD 2001/04/15 CORRECT: AD 2002/03/31 COMPUTED: AD 2002/03/31 CORRECT: AD 2003/04/20 COMPUTED: AD 2003/04/20 CORRECT: AD 2004/04/11 COMPUTED: AD 2004/04/11 CORRECT: AD 2005/03/27 COMPUTED: AD 2005/03/27 CORRECT: AD 2006/04/16 COMPUTED: AD 2006/04/16 EASTER_JULIAN_EGR_TEST For the Julian calendar, for a given year, compute the day and month of Easter. EASTER_JULIAN_EGR uses Richards''s algorithm #1. CORRECT (Gregorian): AD 1997/04/27 CORRECT (Julian): AD 1997/04/14 COMPUTED AD 1997/04/14 CORRECT (Gregorian): AD 1998/04/19 CORRECT (Julian): AD 1998/04/06 COMPUTED AD 1998/04/06 CORRECT (Gregorian): AD 1999/04/11 CORRECT (Julian): AD 1999/03/29 COMPUTED AD 1999/03/29 CORRECT (Gregorian): AD 2000/04/30 CORRECT (Julian): AD 2000/04/17 COMPUTED AD 2000/04/17 CORRECT (Gregorian): AD 2001/04/15 CORRECT (Julian): AD 2001/04/02 COMPUTED AD 2001/04/02 CORRECT (Gregorian): AD 2002/05/05 CORRECT (Julian): AD 2002/04/22 COMPUTED AD 2002/04/22 CORRECT (Gregorian): AD 2003/04/27 CORRECT (Julian): AD 2003/04/14 COMPUTED AD 2003/04/14 CORRECT (Gregorian): AD 2004/04/11 CORRECT (Julian): AD 2004/03/29 COMPUTED AD 2004/03/29 CORRECT (Gregorian): AD 2005/05/01 CORRECT (Julian): AD 2005/04/18 COMPUTED AD 2005/04/18 CORRECT (Gregorian): AD 2006/04/23 CORRECT (Julian): AD 2006/04/10 COMPUTED AD 2006/04/10 EASTER_JULIAN_EGR2_TEST For the Julian calendar, for a given year, compute the day and month of Easter. EASTER_JULIAN_EGR2 uses Richards''s algorithm #2. CORRECT (Gregorian): AD 1997/04/27 CORRECT (Julian): AD 1997/04/14 COMPUTED AD 1997/04/14 CORRECT (Gregorian): AD 1998/04/19 CORRECT (Julian): AD 1998/04/06 COMPUTED AD 1998/04/06 CORRECT (Gregorian): AD 1999/04/11 CORRECT (Julian): AD 1999/03/29 COMPUTED AD 1999/03/29 CORRECT (Gregorian): AD 2000/04/30 CORRECT (Julian): AD 2000/04/17 COMPUTED AD 2000/04/17 CORRECT (Gregorian): AD 2001/04/15 CORRECT (Julian): AD 2001/04/02 COMPUTED AD 2001/04/02 CORRECT (Gregorian): AD 2002/05/05 CORRECT (Julian): AD 2002/04/22 COMPUTED AD 2002/04/22 CORRECT (Gregorian): AD 2003/04/27 CORRECT (Julian): AD 2003/04/14 COMPUTED AD 2003/04/14 CORRECT (Gregorian): AD 2004/04/11 CORRECT (Julian): AD 2004/03/29 COMPUTED AD 2004/03/29 CORRECT (Gregorian): AD 2005/05/01 CORRECT (Julian): AD 2005/04/18 COMPUTED AD 2005/04/18 CORRECT (Gregorian): AD 2006/04/23 CORRECT (Julian): AD 2006/04/10 COMPUTED AD 2006/04/10 GPS_TO_JED_TEST GPS_TO_JED: GPS -> JED. JED (in) GPS (C/W/S) JED (out) 2444244.50 0/0/ 0.00 (GPS) 2444244.50 2449790.50 0/792/ 172800.00 (GPS) 2449790.50 2450138.50 0/842/ 0.00 (GPS) 2450138.50 2451544.50 1/18/ 518400.00 (GPS) 2451544.50 2458123.29 1/958/ 414029.00 (GPS) 2458123.29 2456282.50 1/695/ 432000.00 (GPS) 2456282.50 2913943.00 65/539/ 475200.00 (GPS) 2913943.00 I4_MODP_TEST I4_MODP factors a number into a multiple and a remainder. Number Divisor Multiple Remainder 107 50 2 7 107 -50 -2 7 -107 50 -2 43 -107 -50 2 43 Repeat using C percent operator: 107 50 2 7 107 -50 -2 7 -107 50 -2 -7 -107 -50 2 -7 I4_NORMAL_AB_TEST I4_NORMAL_AB computes pseudonormal integers with mean MU and standard deviation SIGMA. The mean = 70.000000 The standard deviation = 10.000000 SEED = 123456789 1 87 2 64 3 82 4 83 5 53 6 48 7 70 8 77 9 67 10 92 I4_UNIFORM_AB_TEST I4_UNIFORM_AB computes pseudorandom values in an interval [A,B]. The lower endpoint A = -100 The upper endpoint B = 200 The initial seed is 123456789 1 -35 2 187 3 149 4 69 5 25 6 -81 7 -23 8 -67 9 -87 10 90 11 -82 12 35 13 20 14 127 15 139 16 -100 17 170 18 5 19 -72 20 -96 I4_WRAP_TEST I4_WRAP forces an integer to lie within given limits. ILO = 4 IHI = 8 I I4_WRAP(I) -10 5 -9 6 -8 7 -7 8 -6 4 -5 5 -4 6 -3 7 -2 8 -1 4 0 5 1 6 2 7 3 8 4 4 5 5 6 6 7 7 8 8 9 4 10 5 11 6 12 7 13 8 14 4 15 5 16 6 17 7 18 8 19 4 20 5 JED_CE_VALUES_TEST: JED_CE_VALUES returns: JED, a Julian Ephemeris Date, and YMDF, the corresponding year, month, day, fraction. JED Y M D F 0 -4713 1 1 0.500000 1 -4713 1 2 0.500000 259261 -4004 10 26 0.500000 347998 -3761 10 8 0.000000 584282 -3114 9 6 0.000000 588466 -3102 2 18 0.250000 758326 -2637 3 8 0.000000 1.43818e+06 -776 7 9 0.000000 1.44639e+06 -753 1 1 0.000000 1.44864e+06 -747 2 26 0.000000 1.44864e+06 -747 2 26 0.000000 1.60771e+06 -312 9 1 0.000000 1.60774e+06 -312 10 1 0.000000 1.71326e+06 -23 8 29 0.000000 1.72142e+06 -1 12 31 0.000000 1.72142e+06 1 1 1 0.000000 1.72143e+06 1 1 3 0.000000 1.72143e+06 1 1 3 0.000000 1.72422e+06 8 8 29 0.000000 1.74196e+06 57 3 24 0.000000 1.74999e+06 79 3 24 0.000000 1.82503e+06 284 8 29 0.000000 1.86284e+06 388 3 3 0.000000 1.92287e+06 552 7 11 0.000000 1.93675e+06 590 7 12 0.000000 1.94035e+06 600 5 24 0.000000 1.94832e+06 622 3 19 0.000000 1.94844e+06 622 7 15 0.000000 1.94844e+06 622 7 16 0.000000 1.95206e+06 632 6 16 0.000000 1.95207e+06 632 6 21 0.000000 2.11487e+06 1078 3 17 0.000000 2.28943e+06 1556 2 9 0.000000 2.29916e+06 1582 10 4 0.500000 2.29916e+06 1582 10 15 0.500000 2.33327e+06 1676 3 4 0.000000 2.36122e+06 1752 9 13 0.500000 2.36122e+06 1752 9 14 0.500000 2.37255e+06 1783 9 18 0.000000 2.37584e+06 1792 9 22 0.000000 2.39465e+06 1844 3 21 0.000000 2.39471e+06 1844 5 24 0.000000 2.4e+06 1858 11 17 0.000000 2.41502e+06 1899 12 31 0.810000 2.44059e+06 1970 1 1 0.000000 2.44424e+06 1980 1 6 0.000000 2.45014e+06 1996 2 25 0.000000 2.45154e+06 2000 1 1 0.000000 2.45307e+06 2004 3 9 0.330000 2.45628e+06 2012 12 23 0.000000 2.91394e+06 3266 1 1 0.500000 JED_IS_LEGAL_TEST JED_IS_LEGAL determines if a JED is legal. JED JED_IS_LEGAL: -100 False -1 False 0 True 1 True 1.5 True 100 True 50000 True JED_MJD_VALUES_TEST: JED_MJD_VALUES returns: JED, a Julian Ephemeris Date, and MJD, the corresponding Modified Julian Day count. JED MJD 1.50723e+06 -892769 1.66004e+06 -739963 1.74689e+06 -653107 1.77064e+06 -629359 1.89273e+06 -507269 1.93158e+06 -468421 1.97485e+06 -425149 2.09116e+06 -308836 2.12151e+06 -278491 2.15578e+06 -244221 2.17403e+06 -225971 2.19158e+06 -208416 2.19526e+06 -204739 2.22927e+06 -170726 2.24558e+06 -154420 2.2661e+06 -133900 2.28854e+06 -111458 2.2909e+06 -109099 2.32314e+06 -76860 2.33485e+06 -65152 2.34802e+06 -51980 2.36698e+06 -33022 2.38565e+06 -14352 2.39283e+06 -7175 2.41622e+06 16223 2.42585e+06 25848 2.43027e+06 30266 2.43083e+06 30833 2.431e+06 31004 2.4487e+06 48698 2.45014e+06 50138 2.46574e+06 65737 2.48608e+06 86076 JED_RD_VALUES_TEST: JED_RD_VALUES returns: JED, a Julian Ephemeris Date, and RD, the corresponding Reingold Dershowitz Day count. JED RD 1.50723e+06 -214193 1.66004e+06 -61387 1.74689e+06 25469 1.77064e+06 49217 1.89273e+06 171307 1.93158e+06 210155 1.97485e+06 253427 2.09116e+06 369740 2.12151e+06 400085 2.15578e+06 434355 2.17403e+06 452605 2.19158e+06 470160 2.19526e+06 473837 2.22927e+06 507850 2.24558e+06 524156 2.2661e+06 544676 2.28854e+06 567118 2.2909e+06 569477 2.32314e+06 601716 2.33485e+06 613424 2.34802e+06 626596 2.36698e+06 645554 2.38565e+06 664224 2.39283e+06 671401 2.41622e+06 694799 2.42585e+06 704424 2.43027e+06 708842 2.43083e+06 709409 2.431e+06 709580 2.4487e+06 727274 2.45014e+06 728714 2.46574e+06 744313 2.48608e+06 764652 JED_TO_DATENUM_TEST JED_TO_DATENUM: Matlab DATENUM -> JED. JED (in) DATENUM JED (out) 1721058.50 0.00 1721058.50 1721422.50 364.00 1721422.50 1721423.50 365.00 1721423.50 1721425.50 367.00 1721425.50 1721425.50 367.00 1721425.50 1724220.50 3162.00 1724220.50 1741959.50 20901.00 1741959.50 1749994.50 28936.00 1749994.50 1825029.50 103971.00 1825029.50 1862836.50 141778.00 1862836.50 1922867.50 201809.00 1922867.50 1936747.50 215689.00 1936747.50 1940351.50 219293.00 1940351.50 1948320.50 227262.00 1948320.50 1948438.50 227380.00 1948438.50 1948439.50 227381.00 1948439.50 1952062.50 231004.00 1952062.50 1952067.50 231009.00 1952067.50 2110700.50 389642.00 2110700.50 2114872.50 393814.00 2114872.50 2289425.50 568367.00 2289425.50 2299160.00 578101.50 2299160.00 2299161.00 578102.50 2299161.00 2333269.50 612211.00 2333269.50 2361221.00 640162.50 2361221.00 2361222.00 640163.50 2361222.00 2372547.50 651489.00 2372547.50 2375839.50 654781.00 2375839.50 2394646.50 673588.00 2394646.50 2394710.50 673652.00 2394710.50 2397383.50 676325.00 2397383.50 2400000.50 678942.00 2400000.50 2409702.50 688644.00 2409702.50 2415020.31 693961.81 2415020.31 2429702.50 708644.00 2429702.50 2439702.50 718644.00 2439702.50 2440587.50 719529.00 2440587.50 2443817.50 722759.00 2443817.50 2443818.50 722760.00 2443818.50 2444244.50 723186.00 2444244.50 2449790.50 728732.00 2449790.50 2450138.50 729080.00 2450138.50 2451544.50 730486.00 2451544.50 2458123.29 737064.79 2458123.29 2456282.50 735224.00 2456282.50 2913943.00 1192884.50 2913943.00 JED_TO_GPS_TEST JED_TO_GPS: JED => GPS. JED (in) GPS (C/W/S) JED (out) 2444244.50 0/0/ 0.00 (GPS) 2444244.50 2449790.50 0/792/ 172800.00 (GPS) 2449790.50 2450138.50 0/842/ 0.00 (GPS) 2450138.50 2451544.50 1/18/ 518400.00 (GPS) 2451544.50 2458123.29 1/958/ 414029.00 (GPS) 2458123.29 2456282.50 1/695/ 432000.00 (GPS) 2456282.50 2913943.00 65/539/ 475200.00 (GPS) 2913943.00 JED_TO_NOON_NEAREST_TEST JED_TO_NOON_NEAREST: JED => JED (nearest noon). JED JED (nearest noon) 0.000000 BCE 4713/01/010.50 0.000000 BCE 4713/01/010.50 1.000000 BCE 4713/01/020.50 1.000000 BCE 4713/01/020.50 259258.000000 BCE 4004/10/230.50 259258.000000 BCE 4004/10/230.50 347998.500000 BCE 3761/10/080.00 347999.000000 BCE 3761/10/080.50 584282.500000 BCE 3114/09/060.00 584283.000000 BCE 3114/09/060.50 588465.750000 BCE 3102/02/180.25 588466.000000 BCE 3102/02/180.50 758325.500000 BCE 2637/03/080.00 758326.000000 BCE 2637/03/080.50 1438178.500000 BCE 776/07/090.00 1438179.000000 BCE 776/07/090.50 1446389.500000 BCE 753/01/010.00 1446390.000000 BCE 753/01/010.50 1448637.500000 BCE 747/02/260.00 1448638.000000 BCE 747/02/260.50 1448637.500000 BCE 747/02/260.00 1448638.000000 BCE 747/02/260.50 1607708.500000 BCE 312/09/010.00 1607709.000000 BCE 312/09/010.50 1607738.500000 BCE 312/10/010.00 1607739.000000 BCE 312/10/010.50 1713262.500000 BCE 23/08/290.00 1713263.000000 BCE 23/08/290.50 1721058.500000 BCE 1/01/020.00 1721059.000000 BCE 1/01/020.50 1721422.500000 BCE 1/12/310.00 1721423.000000 BCE 1/12/310.50 1721423.500000 CE 1/01/010.00 1721424.000000 CE 1/01/010.50 1721425.500000 CE 1/01/030.00 1721426.000000 CE 1/01/030.50 1721425.500000 CE 1/01/030.00 1721426.000000 CE 1/01/030.50 1724220.500000 CE 8/08/290.00 1724221.000000 CE 8/08/290.50 1741959.500000 CE 57/03/240.00 1741960.000000 CE 57/03/240.50 1749994.500000 CE 79/03/240.00 1749995.000000 CE 79/03/240.50 1825029.500000 CE 284/08/290.00 1825030.000000 CE 284/08/290.50 1862836.500000 CE 388/03/030.00 1862837.000000 CE 388/03/030.50 1922867.500000 CE 552/07/110.00 1922868.000000 CE 552/07/110.50 1936747.500000 CE 590/07/120.00 1936748.000000 CE 590/07/120.50 1940351.500000 CE 600/05/240.00 1940352.000000 CE 600/05/240.50 1948320.500000 CE 622/03/190.00 1948321.000000 CE 622/03/190.50 1948438.500000 CE 622/07/150.00 1948439.000000 CE 622/07/150.50 1948439.500000 CE 622/07/160.00 1948440.000000 CE 622/07/160.50 1952062.500000 CE 632/06/160.00 1952063.000000 CE 632/06/160.50 1952067.500000 CE 632/06/210.00 1952068.000000 CE 632/06/210.50 2110700.500000 CE 1066/10/140.00 2110701.000000 CE 1066/10/140.50 2114872.500000 CE 1078/03/170.00 2114873.000000 CE 1078/03/170.50 2289425.500000 CE 1556/02/090.00 2289426.000000 CE 1556/02/090.50 2299160.000000 CE 1582/10/040.50 2299160.000000 CE 1582/10/040.50 2299161.000000 CE 1582/10/150.50 2299161.000000 CE 1582/10/150.50 2333269.500000 CE 1676/03/040.00 2333270.000000 CE 1676/03/040.50 2361221.000000 CE 1752/09/130.50 2361221.000000 CE 1752/09/130.50 2361222.000000 CE 1752/09/140.50 2361222.000000 CE 1752/09/140.50 2372547.500000 CE 1783/09/180.00 2372548.000000 CE 1783/09/180.50 2375839.500000 CE 1792/09/220.00 2375840.000000 CE 1792/09/220.50 2394646.500000 CE 1844/03/210.00 2394647.000000 CE 1844/03/210.50 2394710.500000 CE 1844/05/240.00 2394711.000000 CE 1844/05/240.50 2397383.500000 CE 1851/09/180.00 2397384.000000 CE 1851/09/180.50 2400000.500000 CE 1858/11/170.00 2400001.000000 CE 1858/11/170.50 2409702.500000 CE 1885/06/100.00 2409703.000000 CE 1885/06/100.50 2415020.313520 CE 1899/12/310.81 2415020.000000 CE 1899/12/310.50 2429702.500000 CE 1940/03/140.00 2429703.000000 CE 1940/03/140.50 2439702.500000 CE 1967/07/310.00 2439703.000000 CE 1967/07/310.50 2440587.500000 CE 1970/01/010.00 2440588.000000 CE 1970/01/010.50 2443817.500000 CE 1978/11/050.00 2443818.000000 CE 1978/11/050.50 2443818.500000 CE 1978/11/060.00 2443819.000000 CE 1978/11/060.50 2444244.500000 CE 1980/01/060.00 2444245.000000 CE 1980/01/060.50 2449790.500000 CE 1995/03/140.00 2449791.000000 CE 1995/03/140.50 2450138.500000 CE 1996/02/250.00 2450139.000000 CE 1996/02/250.50 2451544.500000 CE 2000/01/010.00 2451545.000000 CE 2000/01/010.50 2458123.292002 CE 2018/01/040.79 2458123.000000 CE 2018/01/040.50 2456282.500000 CE 2012/12/210.00 2456283.000000 CE 2012/12/210.50 2913943.000000 CE 3266/01/010.50 2913943.000000 CE 3266/01/010.50 JED_TO_NOON_NEXT_TEST JED_TO_NOON_NEXT: JED => JED (next noon). JED JED (next noon) 0.000000 BCE 4713/01/010.50 0.000000 BCE 4713/01/010.50 1.000000 BCE 4713/01/020.50 1.000000 BCE 4713/01/020.50 259258.000000 BCE 4004/10/230.50 259258.000000 BCE 4004/10/230.50 347998.500000 BCE 3761/10/080.00 347999.000000 BCE 3761/10/080.50 584282.500000 BCE 3114/09/060.00 584283.000000 BCE 3114/09/060.50 588465.750000 BCE 3102/02/180.25 588466.000000 BCE 3102/02/180.50 758325.500000 BCE 2637/03/080.00 758326.000000 BCE 2637/03/080.50 1438178.500000 BCE 776/07/090.00 1438179.000000 BCE 776/07/090.50 1446389.500000 BCE 753/01/010.00 1446390.000000 BCE 753/01/010.50 1448637.500000 BCE 747/02/260.00 1448638.000000 BCE 747/02/260.50 1448637.500000 BCE 747/02/260.00 1448638.000000 BCE 747/02/260.50 1607708.500000 BCE 312/09/010.00 1607709.000000 BCE 312/09/010.50 1607738.500000 BCE 312/10/010.00 1607739.000000 BCE 312/10/010.50 1713262.500000 BCE 23/08/290.00 1713263.000000 BCE 23/08/290.50 1721058.500000 BCE 1/01/020.00 1721059.000000 BCE 1/01/020.50 1721422.500000 BCE 1/12/310.00 1721423.000000 BCE 1/12/310.50 1721423.500000 CE 1/01/010.00 1721424.000000 CE 1/01/010.50 1721425.500000 CE 1/01/030.00 1721426.000000 CE 1/01/030.50 1721425.500000 CE 1/01/030.00 1721426.000000 CE 1/01/030.50 1724220.500000 CE 8/08/290.00 1724221.000000 CE 8/08/290.50 1741959.500000 CE 57/03/240.00 1741960.000000 CE 57/03/240.50 1749994.500000 CE 79/03/240.00 1749995.000000 CE 79/03/240.50 1825029.500000 CE 284/08/290.00 1825030.000000 CE 284/08/290.50 1862836.500000 CE 388/03/030.00 1862837.000000 CE 388/03/030.50 1922867.500000 CE 552/07/110.00 1922868.000000 CE 552/07/110.50 1936747.500000 CE 590/07/120.00 1936748.000000 CE 590/07/120.50 1940351.500000 CE 600/05/240.00 1940352.000000 CE 600/05/240.50 1948320.500000 CE 622/03/190.00 1948321.000000 CE 622/03/190.50 1948438.500000 CE 622/07/150.00 1948439.000000 CE 622/07/150.50 1948439.500000 CE 622/07/160.00 1948440.000000 CE 622/07/160.50 1952062.500000 CE 632/06/160.00 1952063.000000 CE 632/06/160.50 1952067.500000 CE 632/06/210.00 1952068.000000 CE 632/06/210.50 2110700.500000 CE 1066/10/140.00 2110701.000000 CE 1066/10/140.50 2114872.500000 CE 1078/03/170.00 2114873.000000 CE 1078/03/170.50 2289425.500000 CE 1556/02/090.00 2289426.000000 CE 1556/02/090.50 2299160.000000 CE 1582/10/040.50 2299160.000000 CE 1582/10/040.50 2299161.000000 CE 1582/10/150.50 2299161.000000 CE 1582/10/150.50 2333269.500000 CE 1676/03/040.00 2333270.000000 CE 1676/03/040.50 2361221.000000 CE 1752/09/130.50 2361221.000000 CE 1752/09/130.50 2361222.000000 CE 1752/09/140.50 2361222.000000 CE 1752/09/140.50 2372547.500000 CE 1783/09/180.00 2372548.000000 CE 1783/09/180.50 2375839.500000 CE 1792/09/220.00 2375840.000000 CE 1792/09/220.50 2394646.500000 CE 1844/03/210.00 2394647.000000 CE 1844/03/210.50 2394710.500000 CE 1844/05/240.00 2394711.000000 CE 1844/05/240.50 2397383.500000 CE 1851/09/180.00 2397384.000000 CE 1851/09/180.50 2400000.500000 CE 1858/11/170.00 2400001.000000 CE 1858/11/170.50 2409702.500000 CE 1885/06/100.00 2409703.000000 CE 1885/06/100.50 2415020.313520 CE 1899/12/310.81 2415021.000000 CE 1900/01/010.50 2429702.500000 CE 1940/03/140.00 2429703.000000 CE 1940/03/140.50 2439702.500000 CE 1967/07/310.00 2439703.000000 CE 1967/07/310.50 2440587.500000 CE 1970/01/010.00 2440588.000000 CE 1970/01/010.50 2443817.500000 CE 1978/11/050.00 2443818.000000 CE 1978/11/050.50 2443818.500000 CE 1978/11/060.00 2443819.000000 CE 1978/11/060.50 2444244.500000 CE 1980/01/060.00 2444245.000000 CE 1980/01/060.50 2449790.500000 CE 1995/03/140.00 2449791.000000 CE 1995/03/140.50 2450138.500000 CE 1996/02/250.00 2450139.000000 CE 1996/02/250.50 2451544.500000 CE 2000/01/010.00 2451545.000000 CE 2000/01/010.50 2458123.292002 CE 2018/01/040.79 2458124.000000 CE 2018/01/050.50 2456282.500000 CE 2012/12/210.00 2456283.000000 CE 2012/12/210.50 2913943.000000 CE 3266/01/010.50 2913943.000000 CE 3266/01/010.50 JED_TO_WEEKDAY_TEST JED_TO_WEEKDAY determines the weekday corresponding to a JED: JED W W True Computed 1507231.500000 1 1 0.000000 1660037.500000 4 4 0.000000 1746893.500000 4 4 0.000000 1770641.500000 1 1 0.000000 1892731.500000 4 4 0.000000 1931579.500000 2 2 7.000000 1974851.500000 7 7 0.000000 2091164.500000 1 1 0.000000 2121509.500000 1 1 0.000000 2155779.500000 6 6 0.000000 2174029.500000 7 7 0.000000 2191584.500000 6 6 0.000000 2195261.500000 1 1 0.000000 2229274.500000 1 1 0.000000 2245580.500000 4 4 0.000000 2266100.500000 7 7 0.000000 2288542.500000 7 7 0.000000 2290901.500000 7 7 0.000000 2323140.500000 4 4 0.000000 2334848.500000 1 1 0.000000 2348020.500000 6 6 0.000000 2366978.500000 1 1 0.000000 2385648.500000 2 2 7.000000 2392825.500000 4 4 0.000000 2416223.500000 1 1 0.000000 2425848.500000 1 1 0.000000 2430266.500000 2 2 7.000000 2430833.500000 2 2 7.000000 2431004.500000 5 5 0.000000 2448698.500000 3 3 0.000000 2450138.500000 1 1 0.000000 2465737.500000 4 4 0.000000 2486076.500000 1 1 0.000000 JED_WEEKDAY_VALUES_TEST: JED_WEEKDAY_VALUES returns Julian Ephemeris Dates (JED) and the corresponding weekday JED # Weekday 1.50723e+06 1 1.66004e+06 4 1.74689e+06 4 1.77064e+06 1 1.89273e+06 4 1.93158e+06 2 1.97485e+06 7 2.09116e+06 1 2.12151e+06 1 2.15578e+06 6 2.17403e+06 7 2.19158e+06 6 2.19526e+06 1 2.22927e+06 1 2.24558e+06 4 2.2661e+06 7 2.28854e+06 7 2.2909e+06 7 2.32314e+06 4 2.33485e+06 1 2.34802e+06 6 2.36698e+06 1 2.38565e+06 2 2.39283e+06 4 2.41622e+06 1 2.42585e+06 1 2.43027e+06 2 2.43083e+06 2 2.431e+06 5 2.4487e+06 3 2.45014e+06 1 2.46574e+06 4 2.48608e+06 1 MONTH_TO_MONTH_NAME_COMMON_TEST WMONTH_TO_MONTH_NAME_COMMON names the months of the year. 1 January 2 February 3 March 4 April 5 May 6 June 7 July 8 August 9 September 10 October 11 November 12 December MONTH_TO_MONTH_NAME_COMMON3_TEST WMONTH_TO_MONTH_NAME_COMMON3 names the months of the year. 1 Jan 2 Feb 3 Mar 4 Apr 5 May 6 Jun 7 Jul 8 Aug 9 Sep 10 Oct 11 Nov 12 Dec R8_MOD_TEST R8_MOD returns the remainder after division. R8_MOD ( X, Y ) has the same sign as X. X Y FMOD(X,Y) R8_MOD(X,Y) -5.631634 9.126352 -5.631634 -5.631634 6.590185 1.233909 0.420640 0.420640 -1.693858 -8.677625 -1.693858 -1.693858 -4.848444 -7.800864 -4.848444 -4.848444 -9.123420 2.679314 -1.085477 -1.085477 -8.765455 -1.009221 -0.691689 -0.691689 -1.973874 5.093470 -1.973874 -1.973874 5.945739 -9.963233 5.945739 5.945739 7.950081 -2.984953 1.980175 1.980175 -8.109105 -9.727662 -8.109105 -8.109105 R8_NINT_TEST R8_NINT produces the nearest integer. X R8_NINT(X) -5.631634 -6 9.126352 9 6.590185 7 1.233909 1 -1.693858 -2 -8.677625 -9 -4.848444 -5 -7.800864 -8 -9.123420 -9 2.679314 3 R8_UNIFORM_AB_TEST R8_UNIFORM_AB produces a random real in a given range. Using range 10.000000 <= A <= 25.000000. I A 0 10.001996 1 13.542136 2 22.679357 3 21.955784 4 10.855646 5 20.834593 6 21.996377 7 18.110503 8 18.220583 9 23.346688 R8_UNIFORM_01_TEST R8_UNIFORM_01 samples a uniform random distribution in [0,1]. distributed random numbers. Using initial random number seed = 123456789 First few values: 0 0.218418 1 0.956318 2 0.829509 3 0.561695 4 0.415307 5 0.066119 6 0.257578 7 0.109957 8 0.043829 9 0.633966 Number of samples was 1000 Minimum value was 0.001838 Maximum value was 0.997908 Average value was 0.503040 Variance was 0.082250 WEEKDAY_TO_NAME_COMMON_TEST WEEKDAY_TO_NAME_COMMON names the days of the week, 1 Sunday 2 Monday 3 Tuesday 4 Wednesday 5 Thursday 6 Friday 7 Saturday WEEKDAY_TO_NAME_COMMON2_TEST WEEKDAY_TO_NAME_COMMON2 names the days of the week, 1 Su 2 M 3 Tu 4 W 5 Th 6 F 7 Sa WEEKDAY_TO_NAME_COMMON3_TEST WEEKDAY_TO_NAME_COMMON3 names the days of the week, 1 Sun 2 Mon 3 Tue 4 Wed 5 Thu 6 Fri 7 Sat WEEKDAY_VALUES_TEST: WEEKDAY_VALUES returns values of the weekday for a given Y/M/D date Y M D W -587 7 30 1 -169 12 8 4 70 9 26 4 135 10 3 1 470 1 7 4 576 5 18 2 694 11 7 7 1013 4 19 1 1066 10 14 7 1096 5 18 1 1190 3 16 6 1240 3 3 7 1288 3 26 6 1298 4 20 1 1391 6 4 1 1436 1 25 4 1492 3 31 7 1553 9 9 7 1560 2 24 7 1648 6 10 4 1680 6 30 1 1716 7 24 6 1768 6 19 1 1819 8 2 2 1839 3 27 4 1903 4 19 1 1929 8 25 1 1941 9 29 2 1943 4 19 2 1943 10 7 5 1992 3 17 3 1996 2 25 1 2038 11 10 4 2094 7 18 1 Y_TO_S_COMMON_TEST: Y_TO_S_COMMON converts a year Y to a string S. Y 'S' 1679 'CE 1679' -566 'BCE 566' 1213 'CE 1213' 1269 'CE 1269' -1666 'BCE 1666' -2242 'BCE 2242' 40 'CE 40' 673 'CE 673' -275 'BCE 275' 2164 'CE 2164' YEAR_LENGTH_DAYS_COMMON_TEST For the Common calendar: YEAR_LENGTH_DAYS_COMMON gives the length of a year. Year Length CE 1580 366 CE 1581 365 CE 1582 355 CE 1583 365 CE 1584 366 CE 1585 365 CE 1750 365 CE 1751 365 CE 1752 366 CE 1753 365 CE 1754 365 CE 1755 365 CE 1000 366 CE 1100 366 CE 1200 366 CE 1300 366 CE 1400 366 CE 1500 366 CE 1600 366 CE 1700 365 CE 1800 365 CE 1900 365 CE 2000 366 YEAR_TO_GOLDEN_NUMBER_TEST YEAR_TO_GOLDEN_NUMBER determines the golden number of a year. Year Golden Number BCE 2 19 BCE 1 1 CE 1 2 CE 2 3 CE 3 4 CE 4 5 CE 5 6 CE 6 7 CE 7 8 CE 8 9 CE 9 10 CE 10 11 CE 11 12 CE 12 13 CE 13 14 CE 14 15 CE 15 16 CE 16 17 CE 17 18 CE 18 19 CE 19 1 CE 20 2 YMD_TO_DECIMAL_TEST YMD_TO_DECIMAL converts a date to a year and decimal. YMD Y.F CE 1962/03/08 1962.18219214.8 CE 1969/07/25 1969.56301414.8 CE 1968/04/18 1968.29644814.8 CE 1965/08/13 1965.61506814.8 CE 1964/02/26 1964.15437214.8 CE 1960/08/29 1960.65983614.8 CE 1962/07/29 1962.57397314.8 CE 1961/02/05 1961.09726014.8 CE 1960/06/09 1960.43852514.8 CE 1966/05/04 1966.33835614.8 YMD_TO_WEEKDAY_COMMON_TEST YMD_TO_WEEKDAY_COMMON returns the day of the week for dates in the Common calendar: YMD Weekday Weekday Tabulated Computed BCE 587/07/30 Sunday Sunday BCE 169/12/08 Wednesday Wednesday CE 70/09/26 Wednesday Wednesday CE 135/10/03 Sunday Sunday CE 470/01/07 Wednesday Wednesday CE 576/05/18 Monday Monday CE 694/11/07 Saturday Saturday CE 1013/04/19 Sunday Sunday CE 1066/10/14 Saturday Saturday CE 1096/05/18 Sunday Sunday CE 1190/03/16 Friday Friday CE 1240/03/03 Saturday Saturday CE 1288/03/26 Friday Friday CE 1298/04/20 Sunday Sunday CE 1391/06/04 Sunday Sunday CE 1436/01/25 Wednesday Wednesday CE 1492/03/31 Saturday Saturday CE 1553/09/09 Saturday Saturday CE 1560/02/24 Saturday Saturday CE 1648/06/10 Wednesday Wednesday CE 1680/06/30 Sunday Sunday CE 1716/07/24 Friday Friday CE 1768/06/19 Sunday Sunday CE 1819/08/02 Monday Monday CE 1839/03/27 Wednesday Wednesday CE 1903/04/19 Sunday Sunday CE 1929/08/25 Sunday Sunday CE 1941/09/29 Monday Monday CE 1943/04/19 Monday Monday CE 1943/10/07 Thursday Thursday CE 1992/03/17 Tuesday Tuesday CE 1996/02/25 Sunday Sunday CE 2038/11/10 Wednesday Wednesday CE 2094/07/18 Sunday Sunday CALPAK_TEST: Normal end of execution. 03 January 2018 07:00:29 PM