summaryrefslogtreecommitdiffstats
path: root/contrib/awk/test/tweakfld.awk
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/awk/test/tweakfld.awk')
-rw-r--r--contrib/awk/test/tweakfld.awk296
1 files changed, 0 insertions, 296 deletions
diff --git a/contrib/awk/test/tweakfld.awk b/contrib/awk/test/tweakfld.awk
deleted file mode 100644
index e7b538f..0000000
--- a/contrib/awk/test/tweakfld.awk
+++ /dev/null
@@ -1,296 +0,0 @@
-# To: bug-gnu-utils@prep.ai.mit.edu
-# Cc: arnold@gnu.ai.mit.edu
-# Date: Mon, 20 Nov 1995 11:39:29 -0500
-# From: "R. Hank Donnelly" <emory!head-cfa.harvard.edu!donnelly>
-#
-# Operating system: Linux1.2.13 (Slackware distrib)
-# GAWK version: 2.15 (?)
-# compiler: GCC (?)
-#
-# The following enclosed script does not want to fully process the input data
-# file. It correctly executes the operations on the first record, and then dies
-# on the second one. My true data file is much longer but this is
-# representative and it does fail on a file even as short as this one.
-# The failure appears to occur in the declared function add2output. Between the
-# steps of incrementing NF by one and setting $NF to the passed variable
-# the passed variable appears to vanish (i.e. NF does go from 68 to 69
-# and before incrementing it "variable" equals what it should but after
-# "variable" has no value at all.)
-#
-# The scripts have been developed using nawk on a Sun (where they run fine)
-# I have tried gawk there but get a different crash which I have not yet traced
-# down. Ideally I would like to keep the script the same so that it would run
-# on either gawk or nawk (that way I can step back and forth between laptop and
-# workstation.
-#
-# Any ideas why the laptop installation is having problems?
-# Hank
-#
-#
-# #!/usr/bin/gawk -f
-
-BEGIN {
- # set a few values
- FS = "\t"
- OFS = "\t"
- pi = atan2(0, -1)
-# distance from HRMA to focal plane in mm
- fullradius = 10260.54
-
- # set locations of parameters on input line
- nf_nrg = 1
- nf_order = 3
- nf_item = 4
- nf_suite = 5
- nf_grating = 8
- nf_shutter = 9
- nf_type = 13
- nf_src = 14
- nf_target = 15
- nf_voltage = 16
- nf_flux = 17
- nf_filt1 = 20
- nf_filt1_th = 21
- nf_filt2 = 22
- nf_filt2_th = 23
- nf_bnd = 24
- nf_hrma_polar = 27
- nf_hrma_az = 28
- nf_detector = 30
- nf_acis_read = 32
- nf_acis_proc = 33
- nf_acis_frame = 34
- nf_hxda_aplist = 36
- nf_hxda_y_range = 37
- nf_hxda_z_range = 38
- nf_hxda_y_step = 39
- nf_hxda_z_step = 40
- nf_sim_z = 41
- nf_fam_polar = 43
- nf_fam_az = 44
- nf_fam_dither_type = 45
- nf_mono_init = 51
- nf_mono_range = 52
- nf_mono_step = 53
- nf_defocus = 54
- nf_acis_temp = 55
- nf_tight = 59
- nf_offset_y = 64
- nf_offset_z = 65
-
- while( getline < "xrcf_mnemonics.dat" > 0 ) {
- mnemonic[$1] = $2
- }
-
-# "date" | getline date_line
-# ADR: use a fixed date so that testing will work
- date_line = "Sun Mar 10 23:00:27 EST 1996"
- split(date_line, in_date, " ")
- out_date = in_date[2] " " in_date[3] ", " in_date[6]
-}
-
-function add2output( variable ) {
-#print("hi1") >> "debug"
- NF++
-#print("hi2") >> "debug"
- $NF = variable
-#print("hi3") >> "debug"
-}
-
-function error( ekey, message ) {
- print "Error at input line " NR ", anode " ekey >> "errors.cleanup"
- print " " message "." >> "errors.cleanup"
-}
-
-function hxda_na() {
- $nf_hxda_aplist = $nf_hxda_y_range = $nf_hxda_z_range = "N/A"
- $nf_hxda_y_step = $nf_hxda_z_step = "N/A"
-}
-
-function acis_na() {
- $nf_acis_read = $nf_acis_proc = $nf_acis_frame = $nf_acis_temp = "N/A"
-}
-
-function hrc_na() {
-# print ("hi") >> "debug"
-}
-
-function fpsi_na() {
- acis_na()
- hrc_na()
- $nf_sim_z = $nf_fam_polar = $nf_fam_az = $nf_fam_dither_type = "N/A"
-}
-
-function mono_na() {
- $nf_mono_init = $nf_mono_range = $nf_mono_step = "N/A"
-}
-
-# this gives the pitch and yaw of the HRMA and FAM
-# positive pitch is facing the source "looking down"
-# positive yaw is looking left
-# 0 az is north 90 is up
-# this also adds in the FAM X,Y,Z positions
-
-function polaz2yawpitch(polar, az) {
- theta = az * pi / 180
- phi = polar * pi / 180 / 60
-
-
- if( polar == 0 ) {
- add2output( 0 )
- add2output( 0 )
- } else {
- if(az == 0 || az == 180)
- add2output( 0 )
- else
- add2output( - polar * sin(theta) )
-
-
-# x = cos (phi)
-# y = sin (phi) * cos (theta)
-# add2output( atan2(y,x)*180 / pi * 60 )
-
- if(az == 90 || az ==270 )
- add2output( 0 )
- else
- add2output( - polar * cos(theta) )
-
- }
-# x = cos (phi)
-# z= sin (phi) * sin (theta)
-# add2output( atan2(z,x)*180 / pi * 60 )
-
- if(config !~ /HXDA/) {
-# negative values of defocus move us farther from the source thus
-# increasing radius
- radius = fullradius - defocus
-
-# FAM_x; FAM_y; FAM_z
- if((offset_y == 0) && (offset_z == 0)){
- add2output( fullradius - radius * cos (phi) )
-
- if (az == 90 || az ==270)
- add2output( 0 )
- else
- add2output( radius * sin (phi) * cos (theta) )
-
- if (az == 0 || az == 180)
- add2output( 0 )
- else
- add2output( - radius * sin (phi) * sin (theta) )
- } else {
-# ******* THIS SEGMENT OF CODE IS NOT MATHEMATICALLY CORRECT FOR ****
-# OFF AXIS ANGLES AND IS SUPPLIED AS A WORKAROUND SINCE IT WILL
-# PROBABLY ONLY BE USED ON AXIS.
- add2output( defocus )
- add2output( offset_y )
- add2output( offset_z )
- }
-
- } else {
- add2output( "N/A" )
- add2output( "N/A" )
- add2output( "N/A" )
- }
-}
-
-# set TIGHT/LOOSE to N/A if it is not one of the two allowed values
-function tight_na() {
- if( $nf_tight !~ /TIGHT|LOOSE/ ) {
- $nf_tight == "N/A"
- }
-}
-
-# this entry is used to give certain entries names
-{
- type = $nf_type
- item = $nf_item
- suite = $nf_suite
- order = $nf_order
- detector = $nf_detector
- grating = $nf_grating
- offset_y= $nf_offset_y
- offset_z= $nf_offset_z
- bnd = $nf_bnd
- defocus = $nf_defocus
-}
-
-{
- # make configuration parameter
- # as well as setting configuration-dependent N/A values
-
- if( $nf_bnd ~ "SCAN" ) {
- # BND is scanning beam
- config = "BND"
- hxda_na()
- fpsi_na()
- } else {
- if( grating == "NONE" ) {
- config = "HRMA"
- } else {
- if( grating == "HETG" ) {
- if( order != "Both" ) {
- $nf_shutter = order substr($nf_shutter, \
- index($nf_shutter, ",") )
- }
- } else {
- order = "N/A"
- }
- config = "HRMA/" grating
- }
-
- if( detector ~ /ACIS|HRC/ ) {
- detsys = detector
- nsub = sub("-", ",", detsys)
- config = config "/" detsys
- hxda_na()
- } else {
- config = config "/HXDA"
- fpsi_na()
- if( detector == "HSI" ) {
- hxda_na()
- }
- }
- }
-
- add2output( config )
-
- if( $nf_src ~ /EIPS|Penning/ ) mono_na()
-
- if( $nf_src == "Penning" ) $nf_voltage = "N/A"
-
- itm = sprintf("%03d", item)
-
- if(config in mnemonic) {
- if( type in mnemonic ) {
- ID = mnemonic[config] "-" mnemonic[type] "-" suite "." itm
- add2output( ID )
- } else {
- error(type, "measurement type not in list")
- }
- } else {
- error(config, "measurement configuration not in list")
- }
-
- # add date to output line
- add2output( out_date )
-
- # Convert HRMA polar and azimuthal angles to yaw and pitch
- polaz2yawpitch($nf_hrma_polar, $nf_hrma_az)
-
- # set TIGHT/LOOSE to N/A if it is not one of the two allowed values
- tight_na()
-
- # compute number of HXDA apertures
- if( config ~ /HXDA/ && $nf_hxda_aplist != "N/A")
- add2output( split( $nf_hxda_aplist, dummy, "," ) )
- else
- add2output( "N/A" )
-
- # make sure the BND value is properly set
- if($nf_bnd == "FIXED" && detector ~ /ACIS/)
- $nf_bnd =bnd"-SYNC"
- else
- $nf_bnd = bnd"-FREE"
- print
-}
OpenPOWER on IntegriCloud