org.jscience.earth
Class EarthSurfacePosition

java.lang.Object
  extended by org.jscience.earth.EarthSurfacePosition

public class EarthSurfacePosition
extends java.lang.Object

This class represents a location on the surface of planet Earth. Its class variables define a position on Earth and its time zone. Methods for this class deal with solar time and the position of the sun in the sky at this location.


Constructor Summary
EarthSurfacePosition(double latitude, double longitude, int time_zone, double elevation)
          

Create an EarthSurfacePosition object, which represents a location on the surface of planet Earth.

 
Method Summary
 double getDeclination(int daynum)
          Returns solar declination, in degrees (angle between ecliptic and equator), given a day number.
 double getElevation()
          Returns the elevation of the location.
 double getHourAngle(int solar_time)
          Returns Hour Angle, in degrees.
 double getLatitude()
          Returns the latitude of the location station.
 double getLongitude()
          Returns the longitude of the location.
 double getSolarAltitude(double decl, int solar_time)
          Returns solar altitude, in degrees, given solar time and declination.
 double getSolarAltitude(int daynum, int solar_time)
          Returns solar altitude, in degrees, given solar time and day number.
 double getSolarAzimuth(double decl, int solar_time)
          Returns solar azimuth, in degrees, given solar time and declination.
 double getSolarAzimuth(int daynum, int solar_time)
          Returns solar azimuth, in degrees, given solar time and day number.
 int getSolarTime(int daynum, int standard_time)
          Returns local solar time, in seconds, given the day number (in the year) and the local standard time (in seconds).
 int getTimeZone()
          Returns the time zone of the data location, in degrees (longitude of standard meridian).
 int timeInSeconds(int hour, int minute, int second)
          Returns time of day in seconds.
static double toDegrees(double angle)
          DOCUMENT ME!
static double toRadians(double angle)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EarthSurfacePosition

public EarthSurfacePosition(double latitude,
                            double longitude,
                            int time_zone,
                            double elevation)

Create an EarthSurfacePosition object, which represents a location on the surface of planet Earth. The parameters defining the location are its:

Parameters:
latitude - DOCUMENT ME!
longitude - DOCUMENT ME!
time_zone - DOCUMENT ME!
elevation - DOCUMENT ME!
Method Detail

toRadians

public static double toRadians(double angle)

toDegrees

public static double toDegrees(double angle)
DOCUMENT ME!

Parameters:
angle - DOCUMENT ME!
Returns:
DOCUMENT ME!

getLatitude

public double getLatitude()
Returns the latitude of the location station.

Returns:
DOCUMENT ME!

getLongitude

public double getLongitude()
Returns the longitude of the location.

Returns:
DOCUMENT ME!

getTimeZone

public int getTimeZone()
Returns the time zone of the data location, in degrees (longitude of standard meridian).

Returns:
DOCUMENT ME!

getElevation

public double getElevation()
Returns the elevation of the location.

Returns:
DOCUMENT ME!

getDeclination

public double getDeclination(int daynum)
Returns solar declination, in degrees (angle between ecliptic and equator), given a day number.

Parameters:
daynum - DOCUMENT ME!
Returns:
DOCUMENT ME!

getSolarTime

public int getSolarTime(int daynum,
                        int standard_time)
Returns local solar time, in seconds, given the day number (in the year) and the local standard time (in seconds).

Parameters:
daynum - DOCUMENT ME!
standard_time - DOCUMENT ME!
Returns:
DOCUMENT ME!

timeInSeconds

public int timeInSeconds(int hour,
                         int minute,
                         int second)
Returns time of day in seconds. Inputs are the hour of the day (0-23), the minute of the hour (0-59), and second of the minute (0-59).

Parameters:
hour - DOCUMENT ME!
minute - DOCUMENT ME!
second - DOCUMENT ME!
Returns:
DOCUMENT ME!

getHourAngle

public double getHourAngle(int solar_time)
Returns Hour Angle, in degrees. Input is the local solar time, in seconds.

Parameters:
solar_time - DOCUMENT ME!
Returns:
DOCUMENT ME!

getSolarAltitude

public double getSolarAltitude(double decl,
                               int solar_time)
Returns solar altitude, in degrees, given solar time and declination.

Parameters:
decl - DOCUMENT ME!
solar_time - DOCUMENT ME!
Returns:
DOCUMENT ME!

getSolarAltitude

public double getSolarAltitude(int daynum,
                               int solar_time)
Returns solar altitude, in degrees, given solar time and day number.

Parameters:
daynum - DOCUMENT ME!
solar_time - DOCUMENT ME!
Returns:
DOCUMENT ME!

getSolarAzimuth

public double getSolarAzimuth(double decl,
                              int solar_time)
Returns solar azimuth, in degrees, given solar time and declination.

Parameters:
decl - DOCUMENT ME!
solar_time - DOCUMENT ME!
Returns:
DOCUMENT ME!

getSolarAzimuth

public double getSolarAzimuth(int daynum,
                              int solar_time)
Returns solar azimuth, in degrees, given solar time and day number.

Parameters:
daynum - DOCUMENT ME!
solar_time - DOCUMENT ME!
Returns:
DOCUMENT ME!