20 lines
722 B
Text
20 lines
722 B
Text
' Horizontal sundial calculations
|
|
INPUT "Enter latitude => "; Lat
|
|
INPUT "Enter longitude => "; Lng
|
|
INPUT "Enter legal meridian => "; Ref
|
|
PRINT
|
|
PI = 4 * ATN(1)
|
|
SLat = SIN(Lat * PI / 180)
|
|
PRINT " sine of latitude: "; USING "#.##^^^^"; SLat
|
|
PRINT " diff longitude: "; USING "####.###"; Lng - Ref
|
|
PRINT
|
|
PRINT "Hour, sun hour angle, dial hour line angle from 6am to 6pm"
|
|
FOR Hour% = -6 TO 6
|
|
HourAngle = 15 * Hour%
|
|
HourAngle = HourAngle - (Lng - Ref): ' correct for longitude difference
|
|
HourLineAngle = ATN(SLat * TAN(HourAngle * PI / 180)) * 180 / PI
|
|
PRINT "HR="; USING "+##"; Hour%;
|
|
PRINT "; HRA="; USING "+###.###"; HourAngle;
|
|
PRINT "; HLA="; USING "+###.###"; HourLineAngle
|
|
NEXT Hour%
|
|
END
|