aboutsummaryrefslogtreecommitdiff
path: root/noao/onedspec/sensfunc/sfdata.x
diff options
context:
space:
mode:
Diffstat (limited to 'noao/onedspec/sensfunc/sfdata.x')
-rw-r--r--noao/onedspec/sensfunc/sfdata.x59
1 files changed, 59 insertions, 0 deletions
diff --git a/noao/onedspec/sensfunc/sfdata.x b/noao/onedspec/sensfunc/sfdata.x
new file mode 100644
index 00000000..94140049
--- /dev/null
+++ b/noao/onedspec/sensfunc/sfdata.x
@@ -0,0 +1,59 @@
+include "sensfunc.h"
+
+# SF_DATA -- Compute the X and Y values for the particular graph.
+
+procedure sf_data (stds, nstds, graph)
+
+pointer stds[nstds] # Standard star structures
+int nstds # Number of standard stars
+char graph # Graph type
+
+real a
+int i, n
+pointer wp, sp, fp, xp, yp
+
+begin
+ switch (graph) {
+ case 's': # Sensitivity vs. Wavelength
+ do i = 1, nstds {
+ if (STD_FLAG(stds[i]) != SF_INCLUDE)
+ next
+ n = STD_NWAVES(stds[i])
+ a = STD_AIRMASS(stds[i])
+ wp = STD_WAVES(stds[i])
+ sp = STD_SENS(stds[i])
+ xp = STD_X(stds[i])
+ yp = STD_Y(stds[i])
+ call amovr (Memr[wp], Memr[xp], n)
+ call amovr (Memr[sp], Memr[yp], n)
+ }
+ case 'a': # Residuals vs. Airmass
+ do i = 1, nstds {
+ if (STD_FLAG(stds[i]) != SF_INCLUDE)
+ next
+ n = STD_NWAVES(stds[i])
+ a = STD_AIRMASS(stds[i])
+ wp = STD_WAVES(stds[i])
+ sp = STD_SENS(stds[i])
+ fp = STD_FIT(stds[i])
+ xp = STD_X(stds[i])
+ yp = STD_Y(stds[i])
+ call amovkr (a, Memr[xp], n)
+ call asubr (Memr[sp], Memr[fp], Memr[yp], n)
+ }
+ case 'r': # Residuals vs. Wavelength
+ do i = 1, nstds {
+ if (STD_FLAG(stds[i]) != SF_INCLUDE)
+ next
+ n = STD_NWAVES(stds[i])
+ a = STD_AIRMASS(stds[i])
+ wp = STD_WAVES(stds[i])
+ sp = STD_SENS(stds[i])
+ fp = STD_FIT(stds[i])
+ xp = STD_X(stds[i])
+ yp = STD_Y(stds[i])
+ call amovr (Memr[wp], Memr[xp], n)
+ call asubr (Memr[sp], Memr[fp], Memr[yp], n)
+ }
+ }
+end