(42S/DM42) Solar Declination, Zenith, and Sunrise - Printable Version +- HP Forums (https://www.hpmuseum.org/forum) +-- Forum: HP Software Libraries (/forum-10.html) +--- Forum: General Software Library (/forum-13.html) +--- Thread: (42S/DM42) Solar Declination, Zenith, and Sunrise (/thread-14139.html) (42S/DM42) Solar Declination, Zenith, and Sunrise - Eddie W. Shore - 12-09-2019 08:40 PM Blog Link: http://edspi31415.blogspot.com/2019/12/hp-42s-and-dm42-solar-declination.html Introduction The program SUNS will calculate: 1. Approximation declination given month and day. A 365-year is assumed. δ ≈ 23.45° sin(.9863 * (284 + n)) where n is the nth day of the year: If month = 1 or month = 2, then: n = IP(30.6 * month + 368.8) + day - 399 If month ≥ 3 then: n = IP(30.6 * month + 1.6) + day - 34 2. Zenith angle θ: θ ≈ acos(sin δ * sin ϕ + cos δ * cos ϕ * cos hour_angle) where: ϕ = latitude, north is positive hour_angle = (12 - number of hours before noon) * 15 3. Approximate time of sunrise: ω ≈ acos(-tan ϕ * tan δ) Sunrise time ≈ (12 - ω/15) converted to HMS The program was entered on a HP 42S, and should work for the Free42 and Swiss Micros DM42. HP 42S/DM42 Program SUNS Code: ```00 {206-Byte Prgm} 01 LBL "SUNS" 02 DEG 03 "MONTH?" 04 PROMPT 05 STO 01 06 "DAY?" 07 PROMPT  08 STO 02 09 "HRS BEFORE NOON" 10 PROMPT  11 STO 03 12 "LAT (N+)?" 13 PROMPT 14 →HR 15 STO 04 16 RCL 02     // calculate n 17 RCL 01 18 CF 00 19 3 20 X>Y? 21 SF 00 22 R↓ 23 30.6 24 * 25 1.6 26 + 27 FS? 00 28 367.2 29 FS? 00 30 + 31 IP 32 + 33 34 34 - 35 FS? 00 36 365 37 FS? 00 38 - 39 CF 00 40 STO 11 41 284     // calculate δ 42 + 43 0.9863 44 * 45 SIN 46 23.45 47 *  48 STO 12 49 "DEC=" 50 ARCL ST X 51 AVIEW  52 STOP 53 12 54 RCL- 03 55 15 56  * 57 STO 13 58 RCL 12   // calculate θ 59 SIN 60 RCL 04 61 SIN 62 * 63 RCL 12 64 COS 65 RCL 04 66 COS 67 * 68 RCL 13 69 COS  70 * 71 + 72 ACOS 73 STO 14 74 "ZENITH=" 75 ARCL ST X 76 AVIEW 77 STOP 78 RCL 04   // calculate ω 79 TAN 80 +/- 81 RCL 12 82 TAN 83 * 84 ACOS 85 15 86 ÷ 87 12 88 X<>Y 89 - 90 →HMS 91 STO 15 92 "SUNRISE=" 93 ARCL ST X 94 AVIEW 95 END``` Variables: R01 = month R02 = day R03 = hours before moon R04 = latitude R11 = n, nth day of the year R12 = δ, declination R13 = hour_angle R14 = θ, zenith R15 = ω, approximate sunrise Example March 15, 8:00 AM (4 hours before noon), latitude is 40° Results: DEC = -2.8191 (-2.8191°) ZENITH = 114.4672 SUNRISE = 6.0928 (around 6:09:28) Remember, these results are approximate! Source: Hewlett Packard. "Solar-Beam Irradiation" Hewlett Packard User's Library Solution: Solar Engineering. HP 41C January 1984.