Skip to content
Snippets Groups Projects
hiprv2speck 5.46 KiB
#! /usr/bin/perl

# Hipparcos catalog hip_main.dat:
#  ftp://adc.gsfc.nasa.gov/pub/adc/archives/catalogs/1/1239/hip_main.dat.gz
# 42- 46  F5.2  mag     Vmag      ? Magnitude in Johnson V                  (H5)
# 52- 63  F12.8 deg     RAdeg    *? alpha, degrees (ICRS, Eq=J2000)         (H8)
# 65- 76  F12.8 deg     DEdeg    *? delta, degrees (ICRS, Eq=J2000)         (H9)
# 80- 86  F7.2  mas     Plx       ? Trigonometric parallax                 (H11)
# 88- 95  F8.2 mas/yr   pmRA      ? Proper motion mu_alpha.cos(delta), ICRS(H12)
# 97-104  F8.2 mas/yr   pmDE      ? Proper motion mu_delta, ICRS           (H13)
#246-251  F6.3  mag     B-V       ? Johnson B-V colour                     (H37)

# General Catalog of Radial Velocities 
#  ftp://adc.gsfc.nasa.gov/pub/adc/archives/catalogs/3/3213/catalog.dat.gz
# 65- 70  I6            HIC       Hipparcos catalog number
#113-119  F7.2  km/s    RV        Mean Radial Velocity

$d2r = 3.1415926 / 180;
$logmag = log(100) / 5;

print "datavar 0 colorb_v\n";
print "datavar 1 lum\n";
print "datavar 2 Mv\n";
print "datavar 3 mv\n";
print "datavar 4 hipno\n";
print "datavar 5 vx\n";
print "datavar 6 vy\n";
print "datavar 7 vz\n";
print "datavar 8 speed\n";
print "datavar 9 txno\n";
print "# Space velocities in pc/Myr\n";

while($ARGV[0] =~ /^-[mMyr]/) {
  shift, $faintmv = shift if $ARGV[0] =~ /^-m/;
  shift, $faintMv = shift if $ARGV[0] =~ /^-M/;
  shift, $yalecat = shift if $ARGV[0] =~ /^-y/;
  shift, $rvelcat = shift if $ARGV[0] =~ /^-r/;
}

%greek = split(' ', <<EOF);
a alf
b bet
c chi
d del
e eps
f phi
g gam
h eta
i iot
j phi
k kap
l lam
m mu
n nu
o omi
p pi
q the
r rho
s sig
t tau
u ups
w omg
x xi
y psi
z zet
EOF

if($greekcode) {
  ($lettera, $letterz) = unpack("CC", "az");
  # Uses new souped-up sfont.c with greek simplex in +128