Function astromUVW( ra, dec, pmra, pmdec, radial_velocity, r_parsec, useDoppler )

Description:
Calculates Cartesian components of velocity from the observed position and proper motion, radial velocity and radial distance, with optional light-time correction. The output is in the same coordinate system as the inputs, that is ICRS for the correspondingly-named Gaia quantities.

The radial distance must be supplied using the r_parsec parameter. A naive estimate from quantities in the Gaia source catalogue may be made with the expression 1000./parallax, though note that this simple inversion of parallax is not in general reliable for parallaxes with non-negligable errors.

The calculations are fairly straightforward, following Eq. 1.5.74 from the Hipparcos catalogue. A (usually small) Doppler factor accounting for light-time effects can also optionally be applied. The effect of this is to multiply the returned vector by a factor of 1/(1-radial_velocity/c), as discussed in Eq. 1.2.21 of the Hipparcos catalogue.

Note that no attempt is made to adjust for solar motion.

Parameters:
ra (floating point)
Right Ascension in degrees
dec (floating point)
Declination in degrees
pmra (floating point)
proper motion in RA * cos(dec) in mas/yr
pmdec (floating point)
proper motion in declination in mas/yr
radial_velocity (floating point)
radial velocity in km/s
r_parsec (floating point)
radial distance in parsec
useDoppler (boolean)
whether to apply the Doppler factor to account for light-time effects
Return Value (array of floating point):
3-element vector giving equatorial velocity components in km/s
Examples:
Signature:
double[] astromUVW(double, double, double, double, double, double, boolean)