Sundial Design with a Programmable Scientific Calculator
Designing a proper sundial involves mathematics. There is no way around this. To lay out the lines to interpret a shadow, we are forced to use mathematical techniques. Even the “simple” graphical techniques are a form of mathematics. The more accurate trigonometric calculations look very intimidating and difficult. The computer programs that seem to do it all for us are filled with such complex mathematics. The methods described by Waugh and others use the logarithms of trigonometric functions adding a level of complexity to aid in calculations. How can an ordinary person with just high school mathematics deal with the mathematical problems and get on with the art of sundial design?
These days we have excellent tools that can handle the mathematical calculations for sundials very well. Computers are generally used but a simple cheap scientific calculator with trigonometric functions is all we really need. If that calculator has extra memories and can be programmed to remember the steps, the repetitive calculations can be simplified. The NASS Scientific Calculator with trigonometric functions, three memories and forty program steps handles most sundial design calculations very well. Following are example programs designed specifically for this calculator and adaptable to many similar models.
NASS Scientific Calculator Programs:
Calculator Functions: An introduction for the Chicago Workshop
Trigonometry: Sine, Cosine, Tangent, Inverse-1
Angles: DEG, DMS, Time
Memories: M, K1, K2
Programs: LRN, COMP, HLT, (x)
Sundials Design:
Horizontal: Time & Hour Angles, Offsets
Vertical: Time & Hour Angles, Offsets
Vertical Declining:
Substyle Distance, Substyle Height, Difference in Longitude
Time, Polar & Hour Angles, Offsets
Analemmatic: Hour Points, Zodiac Date Line, Seasonal Markers
Longitude Correction
Solar Position:
Noon, Sunrise, Sunset
Prime Vertical
Altitude, Azimuth
Declination Lines
Great Circle Distance
Sundial Design:
The hour lines on a horizontal sundial depend on the Latitude of the dial and the Time. Time is measured from noon meridian as a time angle t, + in the afternoon and – in the morning. The trig equation is Tan HA = Sin Lat x Tan t.
This same general equation and following calculator program are also applicable for vertical sundials, including declining sundials, by solving for the horizontal equivalent dial. The program solves for the Hour Angle HA for various time angles using the Latitude or equivalent and the Difference in Longitude, when applicable, stored in the K memories.
Offsets: Lengths are easier to measure accurately than angles so the program provides an offset option, calculating the length along the borders of a square with sides equal to a specified size set arbitrarily at 10 in the program.
Horizontal Sundial:
First store the Latitude in the memoryK1. Eg. For Chicago 41.88 2NDX->K1.
Clear K2 ON/C2NDX->K2 as it DL is not used for horizontal dials.
Then start programming in the learn mode for t = 15.
2NDLRN2ND(X) 15 +K2=TANxK1SIN=X->Mx 10 = 2ND HLT
The display shows the X Offset (1.79) based on Y = 10.
For the Hour Angle continue with these steps. MR2NDtan-1 2NDHLT
If the Hour Angle displayed (10.14º) is greater than 45º you should use the Y offset. Continue with these program steps MR2ND1/X x 10 =
The display now shows the Y Offset (55.90) based on X = 10.
Then enter 2NDLRN to exit the learn mode.
To use the stored program, clear the display, ON/C , press COMP, enter the time angle, eg 15 and press COMP for the X offset, press COMP again for the Hour angle and then press COMP again for the Y offset.
This table shows the results for Chicago and a Size of 10 cm.
Time / Angle t / X Offset / Hour Angle / Y Offset12:00 / 0º / 0 / 0º / error
1:00 / 15º / 1.79 / 10.14º / 55.90
2:00 / 30º / 3.85 / 21.08º / 25.95
3:00 / 45º / 6.68 / 33.73º / 14.98
4:00 / 60º / 11.56 / 49.14º / 8.65
5:00 / 75º / 24.91 / 68.13º / 4.01
6:00 / 90º / error / 90.00º / 0
7:00 / 105º / -24.91 / -68.13 / -4.01
Vertical Sundial:
For a south-facing (meridian) sundial, use the same program as above. K2 (DL) remains 0. The only difference is to store the Co-Latitude in K1. The Co-Latitude is 90º-Lat so the Co-Latitude for Chicago is 90 – 41.88 = 48.12º 2NDX->K1.
As before, to use the stored program, clear the display, ON/C , press COMP enter the time angle t, eg 15 and press COMP for the X offset, COMP again for the Hour angle and COMP again for the Y offset.
Time / Angle t / X Offset / Hour Angle / Y Offset12:00 / 0º / 0 / 0º / error
1:00 / 15º / 2.00 / 11.28º / 50.13
2:00 / 30º / 4.30 / 23.26 / 23.26
3:00 / 45º / 7.45 / 36.67º / 13.43
4:00 / 60º / 12.90 / 52.21º / 7.75
5:00 / 75º / 27.79 / 70.21º / 3.60
6:00 / 90º / error / 90.00º / 0
The drawing below shows on the right how the offsets are used to draw the hour lines. On the left is a dial design based on these hour lines. The offset square is just used to set the hour lines. Any size or shape could be used for the dial design by simply extending the Hour Lines.
Vertical Declining Sundial:
For a Vertical Declining Sundial, design for the horizontal equivalent sundial using the program outlined previously. First calculate the parameters for this horizontal equivalent: the Substyle Distance SD, Substyle Height SH, Difference in Longitude DL and the Angle to the Vertical AV.
Put Latitude and Wall declination into the K Memories.
Latitude eg 41.88 2NDX->K1, Wall Declination eg 32 2ND X->K2
Calculate and note the parameters (displayed) for the vertical declining dial.
Clear the display and register, ON/C for each calculation
Substyle Distance: Tan SD = Sin Dec / Tan Lat:
ON/CK2SIN/ K1TAN=2NDtan-1 (30.58)
`
Substyle Height: Sin SH = Cos Dec x Cos Lat:
ON/CK2COSxK1COS=2NDsin-1(39.15)
Difference in Longitude: Tan DL = Tan Dec / Sin Lat
ON/CK2TAN/K1SIN=2ND tan-1 (43.11)
To express the Difference in Longitude as time, divide by 15 and convert to Hours:Minutes:Seconds using DMS: eg 43.11 /15 =2NDDMS (2:52:26)
Now calculate the horizontal equivalent dial using the same program as for a horizontal sundial but substitute Substyle HeightSH for the Latitude and the Polar Angle P as the time angle where P = DL + t. Solve for the Hour Angles HA on the plane of the dial with the modified sundial equation Tan HA = Tan P x Sin SH. Again calculate the offsets based on a size of 10. These hour angles and offsets are measyred from the substyle. To lay the angles out on the wall the offset drawing must be rotated to make the 12 noon meridian vertical as shown in the following sketch.
Start by storing Substyle Height SH in K1 and Difference in Longitude DL in K2.
Enter Substyle Height eg. 39.15 2NDX->K1
Enter Difference in Longitude eg 43.11 2NDX->K2
Now clear the display and enter the same the same program as before.
Clear the display, ON/C , press COMP enter the time angle as (X), eg 15 and press COMP for the X offset, COMP again for the Hour Angle and then COMP again for the Y offset. Enter afternoon times as +t and morning times as –t using the +/- key.
The following table shows the results for a Vertical Sundial in Chicago, Latitude 41.88º, a morning dial on a wall declining +32º east of south.
Time / Angle t / X Offset / Hour Angle / Y Offset12:00 / 0º / 5.91 / 30.58º / 16.92
1:00 pm / 15º / 10.14 / 45.42º / 9.85
2:00 pm / 30º / 20.79 / 64.32º / 4.81
3:00 pm / 45º / 191.32 / 87.00 / 0.52
4:00 pm / 60º / -27.11 / -69.75 / -3.69
11:00 am / -15º / 3.37 / 18.64º / 29.65
10:00 am / -30º / 1.47 / 8.36º / 68.01
-DL / -43.11º / 0 / 0 / 0
9:00 am / -45º / -0.21 / -1.19º / -480
8:00 am / -60º / -1.92 / -10.85º / -52.16
7:00 am / -75º / -3.93 / -21.44º / -25.46
6:00 am / -90º / -6.74 / -34.00º / -14.83
5:00 am / -105 / -11.82 / -49.77º / -8.46
The offset drawing must be rotated as shown below trough an angle equal to the substyle distance. The 12 Noon meridian is always a vertical line on a vertical declining sundial. Extend the hour lines as required to complete the layout of the dial.
Analemmatic Sundial:
An analemmatic sundial is the planar (2D) version of an equatorial ring dial. Projected onto the horizontal plane, the equatorial ring becomes an ellipse and the polar style becomes the zodiac date line. This calculator program for the design of an analemmatic sundial is in three parts; the Hour Points, the Zodiac Date Line and Seasonal Markers.
The Hour Points for an analemmatic sundial are on an ellipse. The minor axis and all the Y coordinates of the hour points are reduced from a circle by the sine of the Latitude. For each 15 degree hour angle (t), the (X,Y) coordinates of the hour points are therefore X= Sin t and Y = Cos t x Sin Lat. These are all scaled by the size of for the semi-major axis, typically 2.5 meters for a human gnomon.
Store the Latitude (41.88) in K1X->K1and the Size (2.5) in K2X->K2 .
Program 1: Hour Points: Enter time, hours from noon, and calculate the coordinates (X,Y) for hour points. The program converts time in hours to the time angle t by multiplying by 15 º/hour.
X = K2 x Sin t 2NDLRN2ND(x)1 x 15 =X->MSINxK2 = 2NDHLT
Y = K2 x Cos t x Sin K1 MRCOSxK1SINxK2=2NDLRN
To use the program, clear the register, ON/C press COMP, enter the time in hours from noon, + pm and – am.
Press COMP for X, and press COMP again for Y.
Time
/ Hour Point X / Hour PointY12:00 / 0 / 1.669
1:00 pm / 0.647 / 1.612
2:00 pm / 1.25 / 1.445
3:00 pm / 1.768 / 1.180
4:00 pm / 2.165 / 0.834
5:00 pm / 2.415 / 0.432
6:00 pm / 2.500 / 0.0
7:00 pm / 2.415 / -0.432
8:00 pm / 2.165 / -0.834
11:00 am 11:00 / -0.647 / 1.612 etc.
The Zodiac Date Line tells you where on the North/South or Y axis to place the vertical gnomon for each day of the year. There are two components to this line. It is a tangent line based on the size of the dial brought to the horizontal plan with the Cosine of the Latitude,Y = Tan Dec x Size x Cos Lat
Program 2: Zodiac Date Line:
2NDLRN2ND(x) 1 TANxK2xK1COS=2NDLRN
Clear ON/C press COMP and enter Solar Declination at (X) to calculate Y. Continue through the yearly cycle to+/- 23.44º, entering the Declination on various dates. This declination data is from Sonnenhurh.xls by Sonderegger and Bailey.
Date
/Declination
/Zodiac Y
1 January / -23.01 / -0.7901 February / -17.14 / -0.574
1 March / -7.64 / -0.250
20 March Equinox / 0.18 / 0
1 April / 4.49 / 0.146
1 May / 15.03 / 0.500
1 June / 22.03 / 0.753
21 June Solstice / 23.44 / 0.807
1 July / 23.12 / 0.795
1August / 18.05 / 0.607
1 September / 8.33 / 0.273
21 Sept. Equinox / 0.76 / 0.025
1 October / -3.13 / -0.102
1 November / -14.38 / -0.477
1 December / -21.78 / -0.744
21 Dec. Solstice / -23.44 / -0.807
.
In particular, note and store X->M Y for the Declination of 18º for August 1 for the Seasonal Marker calculation.
Seasonal Markersare points on the X axis that indicate where and when the sun rises and sets through the seasons. Stand on the Zodiac date line and sight over the seasonal markers to the Hour Points to see the time when the sun rises or sets. Stand on the seasonal marker and sight over the Zodiac Dates to see the azimuth, where the sun rises or sets.
Where the sun rises is given is: Sunrise Azimuth: Cos Az = Sin Dec / Cos Lat.
The position on the X axis for the Seasonal Marker is Distance X = Y x Tan Az where Y is the position for that date on the Zodiac Date Line. There is some minor variation in the Seasonal Marker position through the year but the position for the Solar Declination = 18º is a good average. This you should have calculated using the previous program and stored in M. This Y value also includes the Size parameter. Now calculate the Seasonal Marker Distance with these steps.
Enter 18 SIN/K1COS=cos –1TANxMR=for the Seasonal Marker Distances on the X (East / West) axis, - for sunrise and + for sunset. For this 5 meter in Chicago the Seasonal Markers are at X = +/- 1.33 meters. The sketch below showing a typical analemmatic sundial layout is for a different latitude and size.
Longitude Correction for Clock Time:
All these calculations are based on true local time determined by the position of the sun. At noon, the sun is due south at its maximum altitude. Clocks show an arbitrary average legal civil time based on time zones, daylight savings and an instrument correction, the equation of time. Unfortunately you will need to be able to convert clock time to solar time to show that the sundial is correct. The calculator makes this conversion as it has a conversion to Degrees: Minutes: Seconds 2ND-> DMS.
Enter your longitude, say Chicago 87.63º W. Divide by 15 to change the degrees of longitude to hours. (5.842). Press 2ND-> DMS to convert this to time. (5:50:31) Chicago: 87.63º = 5.842 hours = 5:50:31 hh:mm:ss.
Chicago is in the Central Time Zone, centered on 90º degrees or 6 hours west. The sun is earlier in Chicago than 90º longitude by 6:00:00 - 5:50:31 = 00:09:29.
For daylight savings time (spring forward) add one hour to the clock. Solar noon in Chicago in the summer is therefore typically at 12:50:31 CDST.
All the calculations in these programs use the time angle t, the time in degrees from solar noon. You can calculate the lines on any sundial to include the longitude correction. Divide the longitude by 15 and subtract the time zone longitude: eg Chicago 87.63º / 15 – 6 = -0.158º Add this to all your time angle t to give the clock hour lines on your dial. Eg. t + (-0.158). For each hour add 15º to the previous corrected time angle.
Solar Position:
Sundials tell time by showing the position of the sun. If you know your location and the solar declination of the day, you can calculate a number of interesting things related to the position of the sun. Simple trig functions using your latitude and solar declination can be easily solved with a scientific calculator.
In these examples calculator buttons are in boxes like 2ND COS-1 ,numbers are just entered, and answers displayed are shown in brackets like (60.9)
Start by putting the Latitude and Declination into the K Memories.
For example: Chicago on 18 August:
Latitude 41.88 2NDX->K1, Solar Declination 12.78 2NDX ->K2
The following special cases with simplified geometry can be calculated using the values in the K Memories and trig functions.
Noon: At noon when sun is due South, the solar Altitude=90º-Lat + Dec
ON/C 90 –K1+K2= Altitude at Noon (60.90º) for Chicago 18 August.
Sunrise, Sunset:
Time: When does the sun set? Cos t = - Tan (Lat) x Tan (Dec)
ON/CK1TANx K2TAN=+/-2ND COS-1
This gives you t, the time as an angle from noon. (101.73)
Divide by 15 for hours. ÷15 = (6.782)
For Sunset* add 12 for noon + 12 = (18.7823)
Convert to Hours:Minutes:Seconds with 2ND->DMS
Sunset Time is 18:46:56
*For Sunrise subtract from noon – 12 =+/-
Azimuth: Where does the sun set? Cos (Az) = Sin(Dec) / Cos (Lat)
ON/C K2SIN÷ K1COS = 2ND COS-1 (72.71º)
Path: At what angle does the sun set? Cos (Phi) = Sin (Lat) / Cos(Dec)
ON/C K1SIN÷ K2COS = 2ND COS-1 (46.80º)
Prime Vertical: Time when Sun is due East or West
Cos t = Tan (Dec) / Tan (Lat)
ON/C K2TAN÷ K1TAN = 2ND COS-1 (75.346º)
This gives you t, the time as an angle from noon when the sun is due east. Divide by 15 for hours. ÷15 = (5.023)
For west. add 12 for noon. (17.023) or (17:01:23)
Converted to Hours:Minutes:Seconds with 2ND->DMS
Altitude and Azimuth:
The position of the sun can be calculated for any time any day of the year if you know the local solar time and solar declination using the Navigators’ Equation from spherical trigonometry.
Sin Alt = Sin Lat x Sin Dec + Cos Lat x Cos Dec x Cos t
This is easily remembered as the sine,sine, sine, cos, cos, cos equation. The calculation can be programmed into the calculator for repetitive calculations. As before, Start as before by putting the Latitude and Declination into the K Memories and the time angle t, 15º per hour from noon, in memory X->M.
Now clear the display and start programming in the learn mode.
Program: 2NDLRN MR COSxK1 COSxK2COS+ K1SINxK2SIN=2NDsin-1 2NDHLT
The display shows the Altitude of the sun at 1 pm (58.1064º). Continue for Azimuth using the equation: Sin Az = Cos Dec x Sin t / Cos Alt
COS2ND1/XxMR SINxK2COS=2NDsin-1 2NDLRN
The display shows the Azimuth of the sun at 1 pm (28.5375º).
The program is complete. To use the stored program for other times, , enter the time angle into the memory, clear the display, press COMP to start the program calculating the Altitude and COMP again for the Azimuth. The calculator is slow, taking over 10 seconds for each complex calculation.
Time tºAltitude Azimuth
Noon 0 60.90º0º
1:00pm 15 X->M: ON/C COMP (58.106º) COMP (28.537º) SW
2:00pm 30 X->M: ON/C COMP (50.941º) COMP (50.700º) SW
3:00pm 45 X->M: ON/C COMP (41.384º) COMP (66.793º) SW
4:00pm 60 X->M: ON/C COMP (30.712º) COMP (79.191º) SW
5:00pm 75 X->M: ON/C COMP (19.609º) COMP (89.769º) SW
6:00pm 90 X->M: ON/C COMP ( 8.492º) COMP (80.414º)*NW
7:00pm105 X->M: ON/C COMP (-2.31º)** COMP (70.520º)*NW
11:00am -15 X->M: ON/C COMP (58.106º) COMP (-28.537º) SE
For morning the numbers are the same for each hour from noon but the sign changes for t and the Azimuth is SE
*Trig Ambiguity: 180-80.414 = 99.586º for SW: ** After sunset.
Declination Lines:
Knowing the altitude and azimuth of the sun, you can now calculate and plot Declination Lines, the path of the shadow of the tip of a gnomon.
Set up a table for of Time, time angle t, Altitude and Azimuth with the data already calculated, and do repeated calculations with the following program entering the Altitude and Azimuth to find the polar and Cartesian coordinates of the declination line. The vertical Gnomon Height G is programmed in as 5, an arbitrary size. The length of the gnomon base is Y = 5 / Tan Lat. Calculate this Y first and store it in memory to be added to the Y values of the shadow to bring them to the origin of the graph, where the sloping style intersects the horizontal plane. For Chicago this is: 5 / 41.88 TAN=X->M
Program: Start in the learn mode and enter the altitude as 2 at (X).
2NDLRN2ND(X) 2 TAN2ND1/xX5=2ND X->K12NDHLT
The display shows the Shadow Length SL stored in K1.
Enter the Azimuth and calculate (X,Y):
2ND(X)3 2NDX->K2SIN xK1=2NDHLT The displayed value is X.
Then enter1K2COSxK1+MR=2NDLRN for Y and to leave the LRN mode..
To use the stored program, clear the display, ON/C press COMP , enter Altitude, and press COMP for Shadow Length. Press COMP and enter Azimuth, press COMP for X and then COMP for Y.
This table shows the results for Chicago, August 21, gnomon height 5 cm.
Bold Altitude and Azimuth are entered as (X1) and (X2).
Displayed Shadow Length, and (X,Y) are italicized in the table.
Time / Angle t / Altitude /Shadow
/ Azimuth / X / Y12:00 / 0º / 60.90º / 2.78 / 0.0º / 0 / 8.36
1:00 / 15º / 58.10º / 3.11 / 28.53º / 1.49 / 8.31
2:00 / 30º / 50.94º / 4.058 / 50.70º / 3.14 / 8.15
3:00 / 45º / 41.38º / 5.675 / 66.79º / 5.22 / 7.81
4:00 / 60º / 30.71º / 8.418 / 79.19º / 8.27 / 7.16
5:00 / 75º / 19.61º / 14.034 / 89.77º / 14.03 / 5.63
6:00 / 90º / 8.49º / 33.496 / 99.59º / 33.03 / -0.0