This site Web
Home Page | The Sun API | Gallery | InfoSearch | News | Links | Contact Us

Sunlit Design > The Sun API > Documentation > sdxH Function


Index


- Introduction
+ Using the Functions
+ User Guide
+ Function Reference
+ Constants

Contact Developer

Downloads

sdxH Function

Description

Returns the Solar Hour Angle (H) in degrees for a given point in time.

Syntax

sdxH(timex, longitude)

timex   

A String; Modified Julian Day (MJD),  Solar Day of Year (SDY), Universal Time Day (UTD) or Clock Time Day (CTD) time value.

longitude A numeric longitude value in degrees from -180 (west of Greenwich) to +180 (East of Greenwich)

Time Value Formats

MJD Time Value

"<MJD> nnn </MJD>"
"<MJD> nnn </MJD><TimeZone> tz </TimeZone>"

See sdMJDx function.
SDY Time Value

"<SDY> nnn </SDY>"
"<SDY> nnn </SDY><TimeZone> tz </TimeZone>"

See sdSDYx function.
UTD Time Value

"<UTD> nnn </UTD>"
"<UTD> nnn </UTD><TimeZone> tz </TimeZone>"

See sdUTDx function.
CTD Time Value

"<CTD> nnn </CTD>"

See sdCTDx function.

All MJD, SDY, and UTD values are expressed in UT. A <TimeZone> appended to the time value is informational only and doesn't affect the time value. 

The sdMJDx, sdSDYx, sdUTDx, and sdCTDx functions may be used to create time values usable by this function.

Return Values

This function returns a double precision number. The Solar Hour Angle varies on a daily and annual cycle.  

The Hour Angle varies from -180 to +180 degrees. 

If timex is a

MJD time value     The function returns the true solar hour angle for a longitude at a point in world history.
SDY time value The function returns a "least error"/ "average value" true solar hour angle for a longitude optimised for the years 2000 to 2100. How?
UTD time value The function returns the mean hour angle of the sun for this UT time at this longitude.

Useful for laying out sundials which have the 12 noon mark adjusted for the difference between it's location and the standard meridian of the Timezone.
CTD time value The function ignores the longitude parameter.  Returns the mean hour angle of the sun corresponding to the time value.  

Useful for laying out sundials which have 12 noon pointing toward the North pole for the Northern hemisphere and the South pole for the Southern hemisphere.

Remarks

Solar Hour Angle (H) is calculated according to the following Basic like snippets:
MJD and SDY time values H = (timevalue- Int(timevalue))*360 -180 -longitude +sdxEOT(timevalue)
H is reduced to the range -180 to 180 by adding or subtracting multiples of 360
UTD time value H = timevalue *360 -180 -longitude
H is reduced to the range -180 to 180 by adding or subtracting multiples of 360
CTD time value H = timevalue *360 -180
H is reduced to the range -180 to 180 by adding or subtracting multiples of 360

You can convert a degree value to it's Degrees:Minute:Seconds components using the sdDUnpackx function and to a printable text format using sdD2Text function.

Example

What is the Solar Hour Angle at MJD 52448.125 (3am UT, June 23rd, 2002) at the Greenwich observatory:
    The Greenwich observatory is at 0 longitude and 51d29m North.
    
    sdxH("<MJD>52448.125</MJD>",0)
 
    
   
equals -135.5157 (or -135:30:56.5216) degrees.  

The Mean Solar Hour Angle of 3am is -135 degrees.  The result above can be explained by calculating the the Equation of Time at this instant:

    sdxEOT("<MJD>52448.125</MJD>") equals -0:30:56.5216

What is the Solar Hour Angle at 6am, 21st January, 2001 in Amsterdam?:
    Amsterdam's timezone is -1, longitude is 4d32m East.
    
    sdxH(sdMJDx(2001,1,21,6,0,0,-1),sdDMS2D(sdDMSEast,4,32,0))  
    
equals -103.2842 (or -103d:17m:02.9831s) degrees.

The Mean Solar Hour Angle of 6am is -90 degrees.  The result above can be explained as the sum of the
    - Conversion to UT -15 degrees
    - Longitude factor of  - -4d:32m (i.e. +4d:32m)
    - and the Equation of Time at this instant

    sdxEOT(sdMJDx(2001,1,21,6,0,0,-1)) Equals -2d:49m:02.9830s

giving -90 -15 +4d:32m -2d:49m:02.9830s  = -103d:17m:02.9830s