(50g) Week day / Season begin / Mean / True ecliptic / Julian Day / Astron Nutation +- HP Forums (https://www.hpmuseum.org/forum) +-- Forum: HP Software Libraries (/forum-10.html) +--- Forum: General Software Library (/forum-13.html) +--- Thread: (50g) Week day / Season begin / Mean / True ecliptic / Julian Day / Astron Nutation (/thread-16266.html) |
(50g) Week day / Season begin / Mean / True ecliptic / Julian Day / Astron Nutation - Gil - 01-31-2021 01:07 PM HP49-50G Just changed the title, as the prog calculates also the week day (Sunday = 0, Monday = 1,..., Saturday = 6) for arg yyyy.mmdd, with year >= -4713. To calculate Earth axial tilt, indicate year.mmdd (stack level 2) H.mmss (stack level 1). Then press —>epsilon. Note EPSILON.0 is the mean ecliptic, whereas EPSILON is the true ecliptic value, which takes into account the nutation. Accurateness is within 0.01", according to Astronomical Algorithms, from Jean Meeus. Apparently, most figures published in Internet give approximate or wrong values, in particular regarding the arctic circle (90 - mean/real axial tilt). Please then check with professional astronomical application before using it on a large scale. Season beginning was included here, accurateness within 60". Juste give for that : yyyy SEASON Commentaries or corrections welcome. Regards, Gil RE: Season begin / Mean / True ecliptic / Julian Day / Astronomical Nutation - Gil - 02-12-2021 12:39 PM HP49-50G Version 4 2 programs : - SEASON begin - Earth axial tilt. - SEASON Give chosen year with four digits like yyyy Then press SEASON - Earth axial tilt Indicate year.mmdd (stack level 2) [example 2921.0131 ENTER] H.mmss (stack level 1) [for 0 a.m., put 0 ENTER] Then press —>epsilon. This Version 4 includes different astronomical theories: - 80 for IAU 1980 - 86 for Laskar 1986 - 00 for IAU Series 2000B - 03 for IAU 2006, P03 model if you want to check some published results like the ones given by on-line calculators such as http://www.neoprogrammics.com/nutations/nutations_1980_2000b/ that uses a mix of 80/03/06, though since 2006 IAU2006 recommends to use P03 model, in particular for epsilon_mean (and not Laskar's 10-degrees polynom). Working example January 1st, 2021, 0 Hour Type yyyy.mmdd ENTER H.mmsds ENTER That is: 2021.0101 ENTER 0 ENTER Then —>epsilon You should get : 2021.0101 0 JD: 2459215.5* T: .210006844627 L80°'s: 269.59303576 L00°'s: 269.59320244 L´80°'s: 357.342886373 L´00°'s: 357.34338291 F80°'s: 49.00099684 F00°'s: 49.00105768 D80°'s: 206.592894532 D00°'s: 206.592835096 : Omega80°'s: 78.5145929153 Omegs00°'s: 78.5146055221 : Delts¥80[s]: -16.154209453 Delta¥00[s]: -16.1620342527 Epsilonµ80°´s: 23.261161652 Epsilonµ86°´s: 23.2611617738 Epsilonµ03°´s: 23.2611569968 DeltaEpsilon 80[s]: 1.25832275817 DeltsEpsilon00[s]: 1.26469136991 Epsilon80°´s: 23.2612874843 Epsilon86.80°´s: 23.2612876061 Epsilon86.00°´s: 23.2612882429 Epsilon03.00°´s: 23.2612834659 Epsilonµ03°´s: 23.2611569968 DeltsEpsilon00[s]: 1.26469136991 * Note* To convert JD into a date + hour, don't use fraction. Use instead integer part in stack line 2 and fraction part in stack line 1. Then JD—> Here 2459215 ENTER 0.5 ENTER Then JD—> Remarks welcome. Regards, Gil RE: Season begin / Mean / True ecliptic / Julian Day / Astronomical Nutation - Gil - 02-17-2021 03:38 PM Version 5. Just added the variable DATEH, a list representing the yyyy.mmdd and time requested for the —>epsilon calculation: if you clean the screen you might want to know the initial inputs RE: (50g) (RPL) Season begin / Mean / True ecliptic / Julian Day / Astronomical Nutation - Gil - 04-08-2021 04:50 PM New Version 7 Calculates now also the day of the week. 0 stands for Sunday, 1 for Monday..., 6 for Saturday. Give as single input: yyyy.mmdd and press —>WK.D Works for year -4712 to "no limit" in the future. It uses the Julian day and the code is the following : \<< "1 Input: yyyy.mmdd " DROP 0 \->JD DROP UNROT DROP2 2 + 7 MOD \>> Can be used with an ASN User Key, to get an answer from any place/Directory you are working on. For instance, in my case: \<< PATH \-> p \<< HOME HOME1 EARTH EPHEM \->WK.D p EVAL \>> \>> As usual copy the full file/directory ended by .doc and attached here into your (phone) HP49-50G calculator. Regards, Gil RE: (50g) Week day / Season begin / Mean / True ecliptic / Julian Day / Astron Nutation - Gil - 11-15-2021 04:33 AM Version #/label introduced. Now this is the version Xe. 1) Output for weekday improved with bugs fixed. 2) JD conversion with calendar date "corrected" according to usual notion of calendar date : no date of the format 0.mmdd is anymore admitted, as the year 0 has never existed. Though now the negative years yyyy correspond to (yyyy+1) in Meus' Astronomical Algorithms (the strictly positive year remaining unchanged and 0.mmddd format, as mentioned, disappearing), for the rest the method employed to get JD or a calendar date follows rigorously the one proposed by Meeus in his book. Two consequences: a) Now JD=0 correspond to date "-4713.0101, 12 h" (Meeus: to date "-4712.0101, 12 h"). b) The day -1.1231 (December 31st, year -1) is now followed, "more logically" (for most common users), by +1.0101 (January 1st, year +1). A rough checking is made to check for non-allowed negative JD, dates before "-4713.0101, 12hours" or years=0. 3) Introduction, on page 1.5 of the directory, of a preliminary version for the topical year calculation at an instant T. RE: (50g) Week day / Season begin / Mean / True ecliptic / Julian Day / Astron Nutation - Gil - 11-15-2021 10:24 AM Version Xf New updated version of tropical year according to IMCCE paper published on September 2021, after VSOP2013 model. RE: (50g) Week day / Season begin / Mean / True ecliptic / Julian Day / Astron Nutation - Gil - 11-15-2021 10:46 PM The calculation for the tropical year was added recently to the directory. An error relative to it was fixed up in this new version Xi (the reference of which + date to be found on last page 10.5 of the directory). The input and output for the tropical year (at page 1.5) are now saved on page 2.1 & 2.2 under names DAT.T (for Date T=Tropical) & TRP. YR. On page 2.3, the input for the epsilon program (at page 1.6), is now labelled DAT.epsilon (and no more under name DATE.H). As always, possible to find the Julian Day from (page 1.4) starting from "calendar date + fraction of day" and reverse (page 1.3). Season and weekday calculation remain at the very beginning of the directory, at pages 1.1 & 1.2. My thanks to Pascal Descamps of Institut de mécanique céleste et de calcul des éphémérides (IMCCE) for his readiness in forwarding me the formulae relative to tropical year, including its most up-to-date expression in connection with VSOP2013. RE: (50g) Week day / Season begin / Mean / True ecliptic / Julian Day / Astron Nutation - Gil - 12-30-2021 12:06 PM Version Xi2c Suppression of a string for label output in —>WK.D. Regards, Gil RE: (50g) Week day / Season begin / Mean / True ecliptic / Julian Day / Astron Nutation - Gil - 04-10-2022 04:53 AM Correction for present weekday calculation. For the special case -4713.0101 (January 1 BCE), the weekday calculated is correct, but the date shown was induly transformed into -4713.0102. —> Issue fixed up now. —> Corresponding new code: \<< "1 Input: yyyy.mmdd no year < -4713 ! " DROP DUP -4713.0101 == 1 0 IFTE \-> k \<< .0001 k * - 0 \->JD ROT DROP2 2 + k - 7 MOD DUP { Sun Mon Tue Wed Thu Fri Sat } SWAP 1 + GET SWAP R\->I \->TAG k .0001 * ROT + "y.mmdd" \->TAG SWAP \>> \>> The name of that program in Ephemerid Directory was changed into —>WK2.D. It is to be found at the very end of EPHEMERID Directory. The reason: A completely new program, using mathematician John Conway (died from Covid on 11 April 2020) Doomsday algorithm, was developed under the name —>WK.D. The input is as in the previous program. The pro: you don't need any more to calculate previously the Astronomical Julian Day; you can now enter any valid *date. (*The year zero does not exist, as when you start something, the year in question is never zero, but year 1— though that non existing year zero in real life is used internally here for computing purposes —, December 31, year -1, being therefore followed by January 1, year +1 * as previously, the date after October 4 1582, Julian Calendar, is October 15,1582, Gregorian Calendar) In other words dates before January 1st 4713 BCE are now allowed; for instance -88888.0131 will return correctly Tuesday. (See for checking: https://keisan.casio.com/exec/system/1247132711) The corresponding code — now corrected in bold —, for that completely new, unlimited program —>WK.D: \<< "1 Input: yyyy.mmdd any year, even <-4713 ! \[]No Year 0 31.12 yr-1 follow. by 01.01 yr+1 \[]1582.1004 followed by 1582.1015 (Jul\->Greg) " DROP "yyyy.mmdd" \->TAG DUP DUP IP SWAP FP ABS 100 * DUP FP 100 * SWAP IP ROT 100 / DUP IP SWAP FP 100 * DUP 0 \<= 1 0 IFTE + DUP2 SWAP 100 * + \-> d m Y y Yy \<< y DUP 2 MOD 0 \=/ 11 0 IFTE + 2 / DUP 2 MOD 0 \=/ 11 0 IFTE + 7 SWAP 7 MOD - Yy 1582 < Yy 1582 == m 10 < AND OR Yy 1582 == m 10 == AND d 5 \<= AND OR IF THEN Y NEG 7 MOD Yy 4 MOD 0 == 1 0 IFTE ELSE Y 4 MOD \-> YM \<< CASE YM 0 == THEN 2 END YM 1 == THEN 0 END YM 2 == THEN 5 END YM 3 == THEN 3 END END \>> IF y 0 \=/ THEN y 4 MOD 0 == 1 0 IFTE ELSE Yy 400 MOD 0 == 1 0 IFTE END END \-> ly \<< + d CASE m 1 == THEN 3 ly + END m 2 == THEN 0 ly + END m 3 == THEN 0 END m 4 == THEN 4 END m 5 == THEN 9 END m 6 == THEN 6 END m 7 == THEN 4 END m 8 == THEN 8 END m 9 == THEN 5 END m 10 == THEN 10 END m 11 == THEN 0 END 12 END - + 7 MOD DUP { Sun Mon Tue Wed Thu Fri Sat } SWAP 1 + GET SWAP R\->I \->TAG \>> \>> \>> Now all 1st of each month of each odd year from -4701 (BCE) to 4701 (ACE) give the same and correct results (weekdays) with both programs —>WK.D and —>WK2.D. In fact, you could leave the version running via Julian Day calculation, as nowadays conventions for the months and their lengths are not to be found nor valid as such in the past. The attached correct files should be WKneuB.Doc EPHEMERID.Ver.Xi3c.Doc (c and not b) Should errors occurr, please inform me to check and correct the issue. Regards, Gil Campart RE: (50g) Week day / Season begin / Mean / True ecliptic / Julian Day / Astron Nutation - Gil - 02-27-2023 11:12 AM New version 5d For seasons begin (equinoxes and solstices), with full algorithms according to[b] abridged version VDOP1987 (using tables pages 418-421 of Jean Meeus Astronomical Algorithms. Slight correction in subprogram —>LBR (48-50) Ephemerid version 8 - Gil - 2025-01-13 6:58 AM Version 8 11 main programs included in the uploaded directory: 1a/b) SEASON (one very long execution program, accuracy within 9s; another one, fast but not so accurate), 2) —>JD (date to JD), 3) JD—> (JD to date), 4) —>T ((JD-2451545)/36525), 5) T—>Date (above T to date) <new> 6) —>deltaT (TT-UT), 7) —>Teph (Terrestrial Time to Ephemerid Time) <new> 8) —>WK.D (week day) 9) —>epsilon (Earth axial tilt), 10) —>TROPIC.YR (new : Sidereal Year) 11) —>SID (Sidereal Time, mean and apparent), Besides calculation of: M :µ Anomaly of the Sun M´:µ Anomaly of the Moon F :µArg LatMoon D :µElong Moon from Sun deta¥/deltaEpsilon NutationLon/Obliq Omega:µLongAscendNode Moon according to Astronomical Algorithms, 2nd edition, by Jean Meeus with the theories 80:IAU1980 00:IAU2000B 86:LASKAR1986 03=P2003 FK5:FundamentalKatal84, when launching the program —> epsilon (axial tilt), the present version calculates also automatically some other parameters: 1) the equation of time according to abridged version VSOP1987 2) together with alpha Sun's Ascension and delta Sun's Declination, both with errors less than a fraction of a second, including: L0:Sun geometric mean longitude C:Sun equation Centre O/ß:Sun true geocentric longitude/latitude Lamda: Sun apparent Longitude nu: Sun true anomaly R: distance Sun centre to Earth centre. Besides, some important changes were made in program sideral time together with minor changes in SEASON (exact and fast mode). A sign correction was made in table T00 (line 2,column 8) for the IAU 2000B SeriesB. RE: (48-50) Ephemerid version 9 - Gil - 2025-01-24 5:32 PM New version 9 Correction in Season Fast: 31 DROPN, instead of 33 DROPN. (48-50) Ephemerid version 10 - Gil - 2025-02-13 7:31 AM Version 10 11 main programs included in the uploaded directory: 1a/b) SEASON (one very long execution program, accuracy within 9s; another one, fast but not so accurate), 2) —>JD (date to JD), 3) JD—> (JD to date), 4) —>T ((JD-2451545)/36525), 5) T—>Date (above T to date) <new> 6) —>deltaT (TT-UT), 7) —>Teph (Terrestrial Time to Ephemerid Time) <new> 8) —>WK.D (week day) 9) —>epsilon (Earth axial tilt), 10) —>TROPIC.YR (new : Sidereal Year) 11) —>SID (Sidereal Time, mean and apparent), Besides calculation of: M : µ Anomaly of the Sun M´: µ Anomaly of the Moon F : µArg LatMoon D : µElong Moon from Sun deta¥/deltaEpsilon: nutationLon/Obliq Omega: µLongAscendNode Moon according to Astronomical Algorithms, 2nd edition, by Jean Meeus with the theories 80:IAU1980 00:IAU2000B 86:LASKAR1986 03=P2003 FK5:FundamentalKatal84, when launching the program —> epsilon (axial tilt), the present version calculates also automatically some other parameters: 1) the equation of time according to abridged version VSOP1987 2) together with alpha Sun's Ascension and delta Sun's Declination, both with errors less than a fraction of a second, including: L0: Sun geometric mean longitude C: Sun equation Centre O/ß: Sun true geocentric longitude/latitude Lamda: Sun apparent Longitude nu: Sun true anomaly R: distance Sun centre to Earth centre. Besides, some important changes were made in program sideral time together with minor changes in SEASON (exact and fast mode). A sign correction was made in table T00 (line 2,column 8) for the IAU 2000B SeriesB. |