SRVDOPP Name
SRVDOPP
Author
Craig B. Markwardt, NASA/GSFC Code 662, Greenbelt, MD 20770
craigm@lheamail.gsfc.nasa.gov
UPDATED VERSIONs can be found on my WEB PAGE:
http://cow.physics.wisc.edu/~craigm/idl/idl.html
Purpose
Compute relativistic doppler shift (arbitrary velocity & photon dir.)
Major Topics
Physics, Geometry
Calling Sequence
NU1_NU0 = SRVDOPP(U0, V) Description
The function SRVDOPP computes the relativistic doppler shift
between two inertial reference frames.
Consider two inertial coordinate frames. Frame "0" is a "lab" or
rest frame. Frame "1" is a "rocket" or moving frame, moving at
velocity V with respect to the lab frame. The velocity V is
allowed to be an arbitrary 3-vector.
* An observer in the lab frame sees a photon of frequency NU0
propagating in the direction U0. (U0 is a unit 3-vector)
* An observer in the rocket frame observes the same photon with
frequency NU1.
* This function computes the ratio NU1 / NU0.
U0 and V are allowed to be 3xN arrays, which means more than one
set of values can be computed in a single call. If the dimensions
of either U0 or V are 3x1, then it will be expanded to match the
dimensions of the other vector.
NOTE: Velocities passed to SRVDOPP are measured as a *fraction of
the speed of light*.
The formula for computing the relativistic doppler shift is:
NU1_NU0 = (1 - U0 . V) * GAMMA
where
GAMMA is the Lorentz factor = 1/SQRT(1 - |V|^2)
"." is the vector dot product
[ IDL notation is not strictly adhered to in this formula, for
clarity of presentation. ] Inputs
U0 - 3-vector or 3xN array, the unit vector of the photon
propagation direction, as seen in the lab frame.
V - 3-vector or 3xN array, the velocity of the rocket frame as
seen by an observer in the lab. The velocity is normalized
such that the speed of light is 1.
Returns
A N-vector giving the ratio, NU1/NU0, which is the ratio of the
frequency observed in the rocket frame to the frequency seen in
the lab frame. Keyword Parameters
CLASSICAL - if set, then classical Doppler shift is performed,
and the relativistic form is disabled.
Default: not set (i.e., relativity is applied)
Example
IDL> RATIO = SRVDOPP([-1d,0,0], [0.1d,0,0])
A photon of frequency NU0 is moving along the -x axis in the lab
frame; a rocket observer is moving with speed 0.1 c along the +x
axis. NU0 * RATIO is the frequency seen by the rocket observer.
IDL> RATIO = SRVDOPP([0,-1d,0], [0.1,0,0])
The observer is the same, but the photon is moving along the -y
axis. NU0 * RATIO is the frequency seen by the rocket observer.
This is the relativistic transverse doppler shift.
Modification History
Written, 05 May 2002, CM
Documentation, 12 May 2002, CM
Add CLASSICAL keyword, 29 Jul 2002, CM