From 40e5a5811c6ffce9b0974e93cdd927cbcf60c157 Mon Sep 17 00:00:00 2001 From: Joe Hunkeler Date: Tue, 11 Aug 2015 16:51:37 -0400 Subject: Repatch (from linux) of OSX IRAF --- sys/vops/ablek.gx | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 sys/vops/ablek.gx (limited to 'sys/vops/ablek.gx') diff --git a/sys/vops/ablek.gx b/sys/vops/ablek.gx new file mode 100644 index 00000000..16a10d27 --- /dev/null +++ b/sys/vops/ablek.gx @@ -0,0 +1,45 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +# ABLEK -- Vector boolean less than or equals constant. C[i], type INT, +# is set to 1 if A[i] is less than or equal to B, else C[i] is set to zero. + +procedure ablek$t (a, b, c, npix) + +PIXEL a[ARB] +PIXEL b +int c[ARB] +int npix +int i +$if (datatype == x) +real abs_b +$endif + +begin + # The case b==0 is perhaps worth optimizing. On many machines this + # will save a memory fetch. + + if (b == 0$f) { + do i = 1, npix + $if (datatype == x) + if (abs (a[i]) == 0) + $else + if (a[i] <= 0) + $endif + c[i] = 1 + else + c[i] = 0 + } else { + $if (datatype == x) + abs_b = abs (b) + $endif + do i = 1, npix + $if (datatype == x) + if (abs (a[i]) <= abs_b) + $else + if (a[i] <= b) + $endif + c[i] = 1 + else + c[i] = 0 + } +end -- cgit