aboutsummaryrefslogtreecommitdiff
path: root/src/slalib/etrms.f
diff options
context:
space:
mode:
Diffstat (limited to 'src/slalib/etrms.f')
-rw-r--r--src/slalib/etrms.f62
1 files changed, 62 insertions, 0 deletions
diff --git a/src/slalib/etrms.f b/src/slalib/etrms.f
new file mode 100644
index 0000000..efac204
--- /dev/null
+++ b/src/slalib/etrms.f
@@ -0,0 +1,62 @@
+ SUBROUTINE sla_ETRMS (EP, EV)
+*+
+* - - - - - -
+* E T R M S
+* - - - - - -
+*
+* Compute the E-terms (elliptic component of annual aberration)
+* vector (double precision)
+*
+* Given:
+* EP dp Besselian epoch
+*
+* Returned:
+* EV dp(3) E-terms as (dx,dy,dz)
+*
+* Note the use of the J2000 aberration constant (20.49552 arcsec).
+* This is a reflection of the fact that the E-terms embodied in
+* existing star catalogues were computed from a variety of
+* aberration constants. Rather than adopting one of the old
+* constants the latest value is used here.
+*
+* References:
+* 1 Smith, C.A. et al., 1989. Astr.J. 97, 265.
+* 2 Yallop, B.D. et al., 1989. Astr.J. 97, 274.
+*
+* P.T.Wallace Starlink 23 August 1996
+*
+* Copyright (C) 1996 Rutherford Appleton Laboratory
+*-
+
+ IMPLICIT NONE
+
+ DOUBLE PRECISION EP,EV(3)
+
+* Arcseconds to radians
+ DOUBLE PRECISION AS2R
+ PARAMETER (AS2R=0.484813681109535994D-5)
+
+ DOUBLE PRECISION T,E,E0,P,EK,CP
+
+
+
+* Julian centuries since B1950
+ T=(EP-1950D0)*1.00002135903D-2
+
+* Eccentricity
+ E=0.01673011D0-(0.00004193D0+0.000000126D0*T)*T
+
+* Mean obliquity
+ E0=(84404.836D0-(46.8495D0+(0.00319D0+0.00181D0*T)*T)*T)*AS2R
+
+* Mean longitude of perihelion
+ P=(1015489.951D0+(6190.67D0+(1.65D0+0.012D0*T)*T)*T)*AS2R
+
+* E-terms
+ EK=E*20.49552D0*AS2R
+ CP=COS(P)
+ EV(1)= EK*SIN(P)
+ EV(2)=-EK*CP*COS(E0)
+ EV(3)=-EK*CP*SIN(E0)
+
+ END