source: trunk/FACT++/pal/palRverot.c

Last change on this file was 18347, checked in by tbretz, 9 years ago
File size: 2.6 KB
Line 
1/*
2*+
3* Name:
4* palRverot
5
6* Purpose:
7* Velocity component in a given direction due to Earth rotation
8
9* Language:
10* Starlink ANSI C
11
12* Type of Module:
13* Library routine
14
15* Invocation:
16* double palRverot ( double phi, double ra, double da, double st );
17
18* Arguments:
19* phi = double (Given)
20* latitude of observing station (geodetic) (radians)
21* ra = double (Given)
22* apparent RA (radians)
23* da = double (Given)
24* apparent Dec (radians)
25* st = double (Given)
26* Local apparent sidereal time.
27
28* Returned Value:
29* palRverot = double
30* Component of Earth rotation in direction RA,DA (km/s).
31* The result is +ve when the observatory is receding from the
32* given point on the sky.
33
34* Description:
35* Calculate the velocity component in a given direction due to Earth
36* rotation.
37*
38* The simple algorithm used assumes a spherical Earth, of
39* a radius chosen to give results accurate to about 0.0005 km/s
40* for observing stations at typical latitudes and heights. For
41* applications requiring greater precision, use the routine
42* palPvobs.
43
44* Authors:
45* PTW: Patrick T. Wallace
46* TIMJ: Tim Jenness (JAC, Hawaii)
47* {enter_new_authors_here}
48
49* History:
50* 2012-03-02 (TIMJ):
51* Initial version
52* Adapted with permission from the Fortran SLALIB library.
53* {enter_further_changes_here}
54
55* Copyright:
56* Copyright (C) 1995 Rutherford Appleton Laboratory
57* Copyright (C) 2012 Science and Technology Facilities Council.
58* All Rights Reserved.
59
60* Licence:
61* This program is free software; you can redistribute it and/or
62* modify it under the terms of the GNU General Public License as
63* published by the Free Software Foundation; either version 3 of
64* the License, or (at your option) any later version.
65*
66* This program is distributed in the hope that it will be
67* useful, but WITHOUT ANY WARRANTY; without even the implied
68* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
69* PURPOSE. See the GNU General Public License for more details.
70*
71* You should have received a copy of the GNU General Public License
72* along with this program; if not, write to the Free Software
73* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
74* MA 02110-1301, USA.
75
76* Bugs:
77* {note_any_bugs_here}
78*-
79*/
80
81#include "pal.h"
82
83#include <math.h>
84
85double palRverot ( double phi, double ra, double da, double st ) {
86
87 /* Nominal mean sidereal speed of Earth equator in km/s (the actual
88 * value is about 0.4651) */
89 const double espeed = 0.4655;
90 return espeed * cos(phi) * sin(st-ra) * cos(da);
91}
Note: See TracBrowser for help on using the repository browser.