1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
SUBROUTINE sla_PM (R0, D0, PR, PD, PX, RV, EP0, EP1, R1, D1)
*+
* - - -
* P M
* - - -
*
* Apply corrections for proper motion to a star RA,Dec
* (double precision)
*
* References:
* 1984 Astronomical Almanac, pp B39-B41.
* (also Lederle & Schwan, Astron. Astrophys. 134,
* 1-6, 1984)
*
* Given:
* R0,D0 dp RA,Dec at epoch EP0 (rad)
* PR,PD dp proper motions: RA,Dec changes per year of epoch
* PX dp parallax (arcsec)
* RV dp radial velocity (km/sec, +ve if receding)
* EP0 dp start epoch in years (e.g. Julian epoch)
* EP1 dp end epoch in years (same system as EP0)
*
* Returned:
* R1,D1 dp RA,Dec at epoch EP1 (rad)
*
* Called:
* sla_DCS2C spherical to Cartesian
* sla_DCC2S Cartesian to spherical
* sla_DRANRM normalize angle 0-2Pi
*
* Note:
* The proper motions in RA are dRA/dt rather than
* cos(Dec)*dRA/dt, and are in the same coordinate
* system as R0,D0.
*
* P.T.Wallace Starlink 23 August 1996
*
* Copyright (C) 1996 Rutherford Appleton Laboratory
*-
IMPLICIT NONE
DOUBLE PRECISION R0,D0,PR,PD,PX,RV,EP0,EP1,R1,D1
* Km/s to AU/year multiplied by arc seconds to radians
DOUBLE PRECISION VFR
PARAMETER (VFR=0.21094502D0*0.484813681109535994D-5)
INTEGER I
DOUBLE PRECISION sla_DRANRM
DOUBLE PRECISION W,EM(3),T,P(3)
* Spherical to Cartesian
CALL sla_DCS2C(R0,D0,P)
* Space motion (radians per year)
W=VFR*RV*PX
EM(1)=-PR*P(2)-PD*COS(R0)*SIN(D0)+W*P(1)
EM(2)= PR*P(1)-PD*SIN(R0)*SIN(D0)+W*P(2)
EM(3)= PD*COS(D0) +W*P(3)
* Apply the motion
T=EP1-EP0
DO I=1,3
P(I)=P(I)+T*EM(I)
END DO
* Cartesian to spherical
CALL sla_DCC2S(P,R1,D1)
R1=sla_DRANRM(R1)
END
|