aboutsummaryrefslogtreecommitdiff
path: root/noao/lib/units.h
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2015-07-08 20:46:52 -0400
committerJoseph Hunkeler <jhunkeler@gmail.com>2015-07-08 20:46:52 -0400
commitfa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 (patch)
treebdda434976bc09c864f2e4fa6f16ba1952b1e555 /noao/lib/units.h
downloadiraf-linux-fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4.tar.gz
Initial commit
Diffstat (limited to 'noao/lib/units.h')
-rw-r--r--noao/lib/units.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/noao/lib/units.h b/noao/lib/units.h
new file mode 100644
index 00000000..95d8367e
--- /dev/null
+++ b/noao/lib/units.h
@@ -0,0 +1,50 @@
+# Definition for units package
+
+define UN_LEN 126 # Length of units structure
+define SZ_UNITS 79 # Length of units strings
+
+define UN_TYPE Memi[$1] # Unit type code
+define UN_CLASS Memi[$1+1] # Unit class code
+define UN_LOG Memi[$1+2] # Log code
+define UN_INV Memi[$1+3] # Inverse code
+define UN_SCALE Memr[P2R($1+4)] # Scale factor
+define UN_VREF Memr[P2R($1+5)] # Ref lambda (ang) for velocity
+define UN_LABEL Memc[P2C($1+6)] # Unit label
+define UN_UNITS Memc[P2C($1+46)] # Units string
+define UN_USER Memc[P2C($1+86)] # User units string
+
+# Unit classes
+define UN_UNKNOWN 0 # Unknown
+define UN_WAVE 1 # Wavelength
+define UN_FREQ 2 # Frequency
+define UN_VEL 3 # Velocity
+define UN_ENERGY 4 # Energy
+define UN_DOP 5 # Doppler shift
+
+# Unit types
+define UN_NUNITS 17
+define UN_DIC "|angstroms|nanometers|millimicrons|microns|millimeters\
+ |centimeters|meters|hertz|kilohertz|megahertz|gigahertz\
+ |m/s|km/s|ev|kev|mev|z|log|inverse|"
+
+# Unit scales: Conversions from Angstroms
+define UN_ANG 1.0 # angstroms
+define UN_NM 0.1 # nanometers
+define UN_MMIC 0.1 # millimicrons
+define UN_MIC 1E-4 # microns
+define UN_MM 1E-7 # millimeters
+define UN_CM 1E-8 # centimeter
+define UN_M 1E-10 # meters
+define UN_HZ 2.9979E18 # hertz
+define UN_KHZ 2.9979E15 # kilohertz
+define UN_MHZ 2.9979E12 # megahertz
+define UN_GHZ 2.9979E9 # gigaertz
+define UN_MPS 2.9979E8 # m/s
+define UN_KPS 2.9979E5 # km/s
+define UN_EV 1.2396E4 # ev
+define UN_KEV 1.2396E1 # kev
+define UN_MEV 1.2396E-2 # mev
+define UN_Z 1.0 # doppler shift
+
+# Unit abbreviations
+define ABBREVIATIONS "noao$lib/units.dat"