aboutsummaryrefslogtreecommitdiff
path: root/noao/digiphot/ptools/doc
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/digiphot/ptools/doc
downloadiraf-linux-fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4.tar.gz
Initial commit
Diffstat (limited to 'noao/digiphot/ptools/doc')
-rw-r--r--noao/digiphot/ptools/doc/istable.hlp64
-rw-r--r--noao/digiphot/ptools/doc/pcalc.hlp86
-rw-r--r--noao/digiphot/ptools/doc/pconcat.hlp50
-rw-r--r--noao/digiphot/ptools/doc/pconvert.hlp153
-rw-r--r--noao/digiphot/ptools/doc/pdump.hlp178
-rw-r--r--noao/digiphot/ptools/doc/pexamine.hlp835
-rw-r--r--noao/digiphot/ptools/doc/prenumber.hlp59
-rw-r--r--noao/digiphot/ptools/doc/pselect.hlp130
-rw-r--r--noao/digiphot/ptools/doc/psort.hlp64
-rw-r--r--noao/digiphot/ptools/doc/pttest.hlp78
-rw-r--r--noao/digiphot/ptools/doc/tbcalc.hlp79
-rw-r--r--noao/digiphot/ptools/doc/tbconcat.hlp49
-rw-r--r--noao/digiphot/ptools/doc/tbcrename.hlp50
-rw-r--r--noao/digiphot/ptools/doc/tbdump.hlp193
-rw-r--r--noao/digiphot/ptools/doc/tbkeycol.hlp50
-rw-r--r--noao/digiphot/ptools/doc/tbrenumber.hlp54
-rw-r--r--noao/digiphot/ptools/doc/tbselect.hlp107
-rw-r--r--noao/digiphot/ptools/doc/tbsort.hlp78
-rw-r--r--noao/digiphot/ptools/doc/txcalc.hlp80
-rw-r--r--noao/digiphot/ptools/doc/txconcat.hlp45
-rw-r--r--noao/digiphot/ptools/doc/txdump.hlp167
-rw-r--r--noao/digiphot/ptools/doc/txrenumber.hlp59
-rw-r--r--noao/digiphot/ptools/doc/txselect.hlp121
-rw-r--r--noao/digiphot/ptools/doc/txsort.hlp61
24 files changed, 2890 insertions, 0 deletions
diff --git a/noao/digiphot/ptools/doc/istable.hlp b/noao/digiphot/ptools/doc/istable.hlp
new file mode 100644
index 00000000..3a08376c
--- /dev/null
+++ b/noao/digiphot/ptools/doc/istable.hlp
@@ -0,0 +1,64 @@
+.help istable Aug91 noao.ptools.digiphot
+.ih
+NAME
+istable -- determine the status of a file
+
+.ih
+USAGE
+istable infile
+
+.ih
+PARAMETERS
+
+.ls infile
+The name of the input file whose status is to be determined.
+.le
+.ls table = no
+An output variable which is "yes" if \fIinfile\fR is an STSDAS table
+and "no" otherwise.
+.le
+.ls text = no
+An output variable which is "yes" if \fIinfile\fR is an APPHOT/DAOPHOT
+text database and "no" otherwise.
+.le
+.ls other = no
+An output variable which is "yes" if \fIinfile\fR is neither of the
+above and "no" otherwise.
+.le
+
+.ih
+DESCRIPTION
+ISTABLE is a very simple task which determines whether a specified
+input file is an STSDAS table, an APPHOT/DAOPHOT text database file or
+neither of the above. ISTABLE first tries to open the input file as an
+STSDAS table. If successful ISTABLE returns "yes" in the
+variable \fItable\fR and "no" in \fItext\fR and \fIother\fR. Otherwise
+ISTABLE tries to open the input file as an APPHOT/DAOPHOT text database
+file by checking for the "#K IRAF" keyword.
+If the check is positive ISTABLE return "yes" in
+the variable \fItext\fR and "no" in \fItable\fR and \fIother\fR. If the input
+file is neither an STSDAS table or an APPHOT/DAOPHOT text database
+ISTABLE returns "yes" in the variable \fIother\fR and "no" in \fItext\fR
+and \fItable\fR.
+
+.ih
+EXAMPLES
+
+1. Determine whether the file n4147.mag.1 is an STSDAS table.
+
+.nf
+ pt> istable n4147.mag
+ pt> =istable.table
+
+ ... answer will appear on the screen
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+Users should be wary of running ISTABLE in background as the output
+CL parameters may not be properly updated.
+.ih
+SEE ALSO
+.endhelp
diff --git a/noao/digiphot/ptools/doc/pcalc.hlp b/noao/digiphot/ptools/doc/pcalc.hlp
new file mode 100644
index 00000000..36d06229
--- /dev/null
+++ b/noao/digiphot/ptools/doc/pcalc.hlp
@@ -0,0 +1,86 @@
+.help pcalc May93 noao.digiphot.ptools
+.ih
+NAME
+pcalc - perform an arithmetic operation on a field in a list of apphot/daophot
+databases
+.ih
+USAGE
+pcalc infiles field value
+.ih
+PARAMETERS
+.ls infiles
+The APPHOT/DAOPHOT database(s) containing the field to be recomputed.
+.le
+.ls field
+The field to be recomputed. Field must be an integer or real field
+in the input file(s).
+.le
+.ls value
+The arithmetic expression used to recompute the specified field.
+Value may be an integer or real expression but must match the data
+type of field. The functions real and int may be used to do type
+conversions.
+.le
+
+.ih
+DESCRIPTION
+
+PCALC reads in the values of the \fIfield\fR keyword
+from a set of APPHOT/DAOPHOT databases, replaces the old values
+with new values equal to the value of the arithmetic expression \fIvalue\fR,
+and updates the databases(s).
+
+PCALC is script task which calls TXCALC is the input file is an
+APPHOT/DAOPHOT text database or TBCLAC if APPHOT/DAOPHOT is a tables
+database.
+If the input file is a text database, the expression \fIvalue\fR consists
+of variables which are the field names
+specified by the #N keywords or the parameters specified by the
+#K keywords in the APPHOT/DAOPHOT text databases.
+Only keywords beginning with #N can actually be replaced.
+If the input file is an ST tables database, the expression \fIvalue\fR
+consists of the table column names.
+
+The supported
+arithmetic operators and functions are briefly described below.
+
+.nf
+addition + subtraction -
+multiplication * division /
+negation - exponentiation **
+absolute value abs(x) cosine cos(x)
+sine sin(x) tangent tan(x)
+arc cosine acos(x) arc sine asin(x)
+arc tangent atan(x) arc tangent atan2(x,y)
+exponential exp(x) square root sqrt(x)
+natural log log(x) common log log10(x)
+minimum min(x,y) maximum max(x,y)
+convert to integer int(x) convert to real real(x)
+nearest integer nint(x) modulo mod(x)
+.fi
+
+.ih
+EXAMPLES
+
+1. Change the XCENTER and YCENTER fields to XCENTER + 5.4 and YCENTER + 10.3
+respectively in a file produced by the apphot package center task.
+
+.nf
+ pt> pcalc m92.ctr.1 xcenter "xcenter+5.4"
+ pt> pcalc m92.ctr.1 ycenter "ycenter+10.3"
+.fi
+
+2. Add a constant to the computed magnitudes produced by nstar.
+
+.nf
+ pt> pcalc n4147.nst.2 mag "mag+3.457"
+.fi
+
+.ih
+BUGS
+TXCALC does not allow arrays in the expression field.
+
+.ih
+SEE ALSO
+ptools.tbcalc,tables.tcalc,ptools.pcalc
+.endhelp
diff --git a/noao/digiphot/ptools/doc/pconcat.hlp b/noao/digiphot/ptools/doc/pconcat.hlp
new file mode 100644
index 00000000..f96d9bab
--- /dev/null
+++ b/noao/digiphot/ptools/doc/pconcat.hlp
@@ -0,0 +1,50 @@
+.help pconcat Dec92 noao.digiphot.ptools
+.ih
+NAME
+pconcat -- concatenate a list of APPHOT/DAOPHOT databases
+.ih
+USAGE
+pconcat infiles outfile
+.ih
+PARAMETERS
+.ls infiles
+The list of APPHOT/DAOPHOT databases to be concatenated.
+.le
+.ls outfile
+The name of the output APPHOT/DAOPHOT database.
+.le
+.ls task = "TASK"
+The name of the keywords whose value is the name of the task which wrote
+the database.
+.le
+.ih
+DESCRIPTION
+PCONCAT is a simple task which accepts a list of APPHOT/DAOPHOT
+database files and concatenates them into one resultant output file.
+PCONCAT checks that all the file are indeed APPHOT/DAOPHOT
+database files and that they were all written by the same task before
+performing the concatenation.
+
+PCONCAT is a simple script which call TXCONCAT in the PTOOLS package
+if the input files are text database files or TBCONCAT in the PTOOLS package
+if the input files are STSDAS database files. TBCONCAT is itself a script
+which call the TABLES package task TMERGE to do the actual work.
+
+.ih
+EXAMPLES
+
+1. Concatenate a list of DAOPHOT package task GROUP output database files
+into a single output file.
+
+.nf
+ pt> pconcat m92r.grp.1,m92r.grp.2,m92r.grp.3 m92rall.grp.1
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+.ih
+SEE ALSO
+ptools.txconcat,ptools.tbconcat,tables.tmerge,concatenate
+.endhelp
diff --git a/noao/digiphot/ptools/doc/pconvert.hlp b/noao/digiphot/ptools/doc/pconvert.hlp
new file mode 100644
index 00000000..ca3db8e7
--- /dev/null
+++ b/noao/digiphot/ptools/doc/pconvert.hlp
@@ -0,0 +1,153 @@
+.help pconvert Aug91 noao.digiphot.ptools
+.ih
+NAME
+pconvert -- convert an APPHOT/DAOPHOT text database into an STSDAS table
+.ih
+USAGE
+pconvert textfile table fields
+.ih
+PARAMETERS
+.ls textfile
+The APPHOT/DAOPHOT text database which is to be converted into an
+APPHOT/DAOPHOT STSDAS table database.
+.le
+.ls table
+The name of the output STSDAS table database.
+.le
+.ls fields = "*"
+Template defining the fields to be selected from each record. By default
+all the fields are output. Fields
+are specified by using the names defined in the APPHOT/DAOPHOT text
+database by the
+#N entries. Upper or lower case and minimum match abbreviations are
+permissible. For those fields which have multiple entries such as
+magnitude, an individual value can be referenced by specifying an array
+index, e.g. MAG[2] or several values can be selected by specifying a
+range of elements, e.g. MAG[1-4].
+.le
+.ls expr = yes
+The boolean expression, evaluated independently for each record,
+which serves as a selection criterion. By default all records are selected.
+.le
+.ls append = no
+If append is yes then the converted APPHOT/DAOPHOT text file is appended to an
+existing output STSDAS table database.
+.le
+.ih
+DESCRIPTION
+PCONVERT selects a subset of the fields from each record of an
+APPHOT/DAOPHOT text database and writes these into an STSDAS tabl database.
+The #K keyword parameters in the text database are
+stored as header parameters in the STSDAS table while the selected fields
+are stored in fields (columns) with the names specified by the text
+database #N keywords, units specified
+by the #U keywords, and print format specified by the #F keywords.
+
+The output records are selected on the basis of the boolean
+expression \fIexpr\fR whose variables are the field (column) names
+specified by the #N keywords in the APPHOT/DAOPHOT text database.
+If after substituting the values associated
+with a particular record into the field name variables the
+expression evaluates to yes, that record is included in the output table.
+
+The supported
+operators and functions are briefly described below. A detailed description
+of the boolean expression evaluator and its syntax can be found
+in the manual page for the IMAGES package HEDIT task.
+
+The following logical operators can be used in the boolean expression.
+
+.nf
+ equal == not equal !=
+ less than < less than or equal <=
+ greater than > greater than or equal >=
+ or || and &&
+ negation ! pattern match ?=
+ concatenation //
+.fi
+
+The pattern match character ?= takes a
+string expression as its first argument and a pattern as its second argument.
+The result is yes if the pattern is contained in the string expression.
+Patterns are strings which may contain pattern matching meta-characters.
+The meta-characters themselves can be matched by preceeding them with the escape
+character. The meta-characters are described below.
+
+.nf
+ beginning of string ^ end of string $
+ one character ? zero or more characters *
+ white space # escape character \
+ ignore case { end ignore case }
+ begin character class [ end character class ]
+ not, in char class ^ range, in char class -
+.fi
+
+The boolean expression may also include arithmetic operators and functions.
+The following arithmetic operators and functions are supported.
+
+.nf
+addition + subtraction -
+multiplication * division /
+negation - exponentiation **
+absolute value abs(x) cosine cos(x)
+sine sin(x) tangent tan(x)
+arc cosine acos(x) arc sine asin(x)
+arc tangent atan(x) arc tangent atan2(x,y)
+exponential exp(x) square root sqrt(x)
+natural log log(x) common log log10(x)
+minimum min(x,y) maximum max(x,y)
+convert to integer int(x) convert to real real(x)
+nearest integer nint(x) modulo mod(x)
+.fi
+
+
+If the append parameter is "yes" then the converted input text database is
+appended to the specified output table. When appending to a table each of the
+output fields must already exist in the output table.
+
+.ih
+EXAMPLES
+
+1. Convert the text output from the DAOPHOT PHOT task in the file n4147.mag.1
+to an STSDAS table, selecting only the fields ID, XCENTER, YCENTER,
+MAG,and MSKY ncessary for input to the DAOPHOT fitting routines.
+Put the output in an STSDAS table named n4147.tmag.1.
+
+.nf
+ pt> pconvert n4147.mag.1 n4147.tmag.1 "ID,XCENTER,YCENTER,MAG,MSKY"
+.fi
+
+If there were 4 magnitude fields in n4147.mag.1
+then there would be 4 columns in the output table with names of
+MAG[1], MAG[2], MAG[3] and MAG[4]
+
+
+2. Convert the same file as in example 1. but append the output to
+ n4147.tmag.1 and only select records with YCENTER <= 200.0.
+
+.nf
+ pt> pconvert n4147.mag.1 n4147.tmag.1 "ID,XCENTER,YCENTER,MAG,MSKY" \
+ expr="YCENTER < 200.0" append+
+
+.fi
+
+3. Convert all the records in the NSTAR text database n4147.nst.1 to
+ an STSDAS table.
+
+ pt> pconvert n4147.nst.1 n4147.tnst.1 "*"
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+Changes in the values of the #K keyword quantities which are permitted by
+the APPHOT/DAOPHOT text database format will be lost in the conversion to
+STSDAS table format which does not permit such changes. For example users
+who have
+set up and run PHOT interactively and changed the values of the parameters
+after writing the first record to the text database will see only the initial
+values of the #K keywords in the STSDAS table headers after conversion.
+.ih
+SEE ALSO
+images.hedit
+.endhelp
diff --git a/noao/digiphot/ptools/doc/pdump.hlp b/noao/digiphot/ptools/doc/pdump.hlp
new file mode 100644
index 00000000..d37a87e6
--- /dev/null
+++ b/noao/digiphot/ptools/doc/pdump.hlp
@@ -0,0 +1,178 @@
+.help pdump Feb93 noao.digiphot.ptools
+.ih
+NAME
+pdump - print fields from an APPHOT/DAOPHOT database
+.ih
+USAGE
+pdump infiles fields expr
+.ih
+PARAMETERS
+.ls infiles
+The APPHOT/DAOPHOT databases containing the fields to be dumped.
+.le
+.ls fields
+A template defining the fields to be dumped from each record.
+In the case of APPHOT/DAOPHOT text databases, the fields are specified by
+keywords defined by the
+#K and #N entries in the database. Upper or lower case and minimum match
+abbreviations are permissible. Some fields such as "mag" may have
+multiple entries. An individual entry can be referenced by specifying an
+array index, e.g. "MAG[2]" or several values can be selected by
+specifying a range of elements, e.g. "MAG[1-3]".
+In the case of STSDAS table APPHOT/DAOPHOT databases the fields are the
+column names. Names must be spelled in full but upper or lower case is allowed.
+In the case of STSDAS table databases, it may be necessary to escape the
+leading square bracket so that field "MAG[2]" would be referred to as
+"MAG\[2]". The fields are output in
+the order in which they are specified in the template.
+.le
+.ls expr
+The boolean expression to be evaluated once per record.
+Only the fields in those records for which the boolean expression
+evaluates to yes are printed.
+If \fIexpr\fR = "yes", the specified fields in all the records are
+printed.
+.le
+.ls headers = no
+Dump the APPHOT/DAOPHOT database field headers. The selected
+fields are printed on the standard output, preceded by the parameters list,
+if \fIparameters\fR = yes, and the keyword, units,
+and format information.
+.le
+.ls parameters = yes
+Print the keyword parameters records on the
+standard output if \fIheaders\fR = yes.
+.le
+
+.ih
+DESCRIPTION
+PDUMP selects a subset of fields specified by the \fIfields\fR
+parameter from an APPHOT/DAOPHOT database or a list of databases
+and prints the results on the standard output.
+If \fIheaders\fR = no, the output is in simple list format
+with adjacent fields
+separated by whitespace. The fields are printed in the order in
+which they appear in \fIields\fR. If \fIheaders\fR = yes, the
+selected fields are printed on the standard output, preceded by
+the parameter list, if \fIparameters\fR = yes, and the keyword, units,
+and format information.
+Newlines will not be inserted in the output if the input database
+was an APPHOT/DAOPHOT text file, so users should take
+care not specify so many output fields as to exceed the IRAF text file
+line limit of 161 characters.
+Newlines will be inserted if the original database was an
+STSDAS table.
+
+PDUMP is a simple CL script which calls TXDUMP if the APPHOT/DAOPHOT
+database was a text file and TBDUMP if it was an STSDAS table.
+Although the parameters of TBDUMP and TXDUMP have been tailored to
+make the two tasks appear as similar as possible each task
+offers some capabilities that the other does not. In some
+situations users may wish to use the individual tasks instead of the
+generic script.
+
+The output records are selected on the basis of an input boolean
+expression \fIexpr\fR whose variables are the field names
+specified by the #N keywords or the parameters specified by the
+#K keywords in the APPHOT/DAOPHOT text database or the column names
+in an ST tables database.
+If after substituting the values associated
+with a particular record into the field name variables the
+expression evaluates
+to yes, that record is included in the output table.
+
+The supported
+operators and functions are briefly described below. A detailed description
+of the boolean expression evaluator and its syntax can be found
+in the manual page for the IMAGES package HEDIT task.
+
+The following logical operators can be used in the boolean expression.
+
+.nf
+ equal == not equal !=
+ less than < less than or equal <=
+ greater than > greater than or equal >=
+ or || and &&
+ negation ! pattern match ?=
+ concatenation //
+.fi
+
+The pattern match character ?= takes a
+string expression as its first argument and a pattern as its second argument.
+The result is yes if the pattern is contained in the string expression.
+Patterns are strings which may contain pattern matching meta-characters.
+The meta-characters themselves can be matched by preceeding them with the escape
+character. The meta-characters listed below.
+
+.nf
+ beginning of string ^ end of string $
+ one character ? zero or more characters *
+ white space # escape character \
+ ignore case { end ignore case }
+ begin character class [ end character class ]
+ not, in char class ^ range, in char class -
+.fi
+
+The expression may also include arithmetic operators and functions.
+The following arithmetic operators and functions are supported.
+
+.nf
+addition + subtraction -
+multiplication * division /
+negation - exponentiation **
+absolute value abs(x) cosine cos(x)
+sine sin(x) tangent tan(x)
+arc cosine acos(x) arc sine asin(x)
+arc tangent atan(x) arc tangent atan2(x,y)
+exponential exp(x) square root sqrt(x)
+natural log log(x) common log log10(x)
+minimum min(x,y) maximum max(x,y)
+convert to integer int(x) convert to real real(x)
+nearest integer nint(x) modulo mod(x)
+.fi
+.ih
+EXAMPLES
+
+1. Select the fields XCENTER and YCENTER from the output of the APPHOT
+CENTER task.
+
+.nf
+ pt> pdump image.ctr.3 "XCENTER,YCENTER" yes
+.fi
+
+2. Select the fields XCENTER and YCENTER from the output of the APPHOT
+CENTER task for all records with YCENTER > 100.0.
+
+.nf
+ pt> pdump image.ctr.3 "XCENTER,YCENTER" "YCENTER > 100.0"
+.fi
+
+3. Select the fields ID, XCENTER, YCENTER and the first three magnitudes
+from the output of the APPHOT PHOT task. In the case of STSDAS table
+databases it may be necessary to escape the leading square bracket.
+
+.nf
+ pt> pdump image.mag.3 "ID,XCEN,YCEN,MAG[1],MAG[2],MAG[3]" yes
+
+ or
+
+ pt> pdump image.mag.3 "ID,XCEN,YCEN,MAG\[1],MAG\[2],MAG\[3]" yes
+.fi
+
+
+4. Select the ID, XCENTER, YCENTER, MSKY and MAG fields from the output
+of the DAOPHOT NSTAR task. Print the headers and parameters as well.
+
+.nf
+ pt> pdump image.nst.3 "ID,XCENTER,YCENTER,MSKY,MAG" \
+ yes headers+ parameters+
+.fi
+
+.ih
+BUGS
+Users should not dump more fields than fill a 161 character textline
+as IRAF does not currently fully support longer text lines.
+.ih
+SEE ALSO
+ptools.txdump,ptools.tbdump,tables.tdump
+.endhelp
diff --git a/noao/digiphot/ptools/doc/pexamine.hlp b/noao/digiphot/ptools/doc/pexamine.hlp
new file mode 100644
index 00000000..20289d26
--- /dev/null
+++ b/noao/digiphot/ptools/doc/pexamine.hlp
@@ -0,0 +1,835 @@
+.help pexamine Aug91 noao.digiphot.ptools
+.ih
+NAME
+pexamine -- interactively examine or edit a photometry catalog
+.ih
+USAGE
+pexamine input output image
+.ih
+PARAMETERS
+.ls input
+The name of the input photometry catalog. \fIInput\fR may be either an
+APPHOT/DAOPHOT text database file or an STSDAS binary table database.
+.le
+.ls output
+The name of the edited output catalog. \fIOutput\fR is either an
+APPHOT/DAOPHOT text database or an STSDAS binary table database
+depending on the file type of \fIinput\fR. If \fIoutput\fR = "" no output
+catalog is written.
+.le
+.ls image
+The name of the input image corresponding to the input photometry
+catalog. If \fIimage\fR is "" no image will be attached to PEXAMINE
+and some interactive catalog examining commands will not be available.
+All the catalog editing commands however are still available.
+.le
+.ls deletions = ""
+The name of an optional output deletions photometry catalog. \fIDeletions\fR
+is either an APPHOT/DAOPHOT text database or an STSDAS binary
+table database depending on the file type of \fIinput\fR. If \fIdeletions\fR
+is "" no deletions file is written.
+.le
+.ls photcolumns = "daophot"
+The list of standard photometry columns that are loaded when pexamine is
+run. The options are listed below.
+.ls "daophot"
+The standard columns for the DAOPHOT package. The current list is GROUP, ID,
+XCENTER, YCENTER, MSKY, MAG, MERR, CHI, SHARP and NITER.
+If any of these
+columns are multi-valued, (as in the case of magnitudes measured through
+more than one aperture), the first value is selected.
+The standard list may easily be extended at user request.
+.le
+.ls "apphot"
+The standard columns for the APPHOT package. The current list is ID,
+XCENTER, YCENTER, MSKY, MAG, and MERR.
+If any of these
+columns are multi-valued, (as in the case of magnitudes measured through
+more than one aperture), the first value is selected.
+The standard list may easily be extended at user request.
+.le
+.ls user list
+A user supplied list of standard columns.
+Column names are listed in full in either upper or
+lower case letters, separated by commas. If more than one value of
+a multi-valued column is requested
+the individual values
+must be listed separately as in the following example
+ID, XCENTER, YCENTER, MAG[1], MERR[1], MAG[2], MERR[2].
+.le
+
+\fIPhotcolumns\fR can be changed interactively from within PEXAMINE at
+the cost of rereading the database.
+.le
+.ls xcolumn = "mag" (magnitude), ycolumn = "merr" (magnitude error)
+The names of the two columns which define the default X-Y plot.
+\fIXcolumn\fR and \fIycolumn\fR must be listed in \fIphotcolumns\fR or
+\fIusercolumns\fR but may be changed interactively by the user.
+If either \fIxcolumn\fR or \fIycolumn\fR is a multi-valued quantity
+and more than one value is listed in \fIphotcolumns\fR or \fIusercolumns\fR
+then the desired value number must be specified explicitly in, e.g.
+MAG[2] or MERR[2].
+.le
+.ls hcolumn = "mag" (magnitude)
+The name of the column which defines the default histogram plot.
+\fIHcolumn\fR must be listed in \fIphotcolumns\fR or
+\fIusercolumns\fR but may be changed interactively by the user.
+If \fIhcolumn\fR is a multi-valued quantity and more than one value is
+listed in \fIphotcolumns\fR or \fIusercolumns\fR then the desired value
+must be specified explicitly in \fIhcolumn\fR, e.g. MAG[2].
+.le
+.ls xposcolumn = "xcenter", yposcolumn = "ycenter"
+The names of the two columns which define the X and Y coordinates in
+\fIimage\fR of the objects in the catalog. This information is
+required if the image display and image cursor are to be used to visually
+identify objects in the image with objects in the catalog or if plots
+of image data are requested. \fIXposcolumn\fR and \fIyposcolumn\fR must
+be listed in \fIphotcolumns\fR or \fIusercolumns\fR but may
+be changed interactively by the user.
+.le
+.ls usercolumns = ""
+The list of columns loaded into memory in addition to the
+standard photometry columns \fIphotcolumns\fR. The column
+names are listed in full in upper or lower case letters and separated by
+commas.
+\fIUsercolumns\fR can be changed interactively from within PEXAMINE at
+the cost of rereading the database.
+.le
+.ls max_nstars = 3000
+The maximum number of objects that are loaded into memory at task
+startup time, beginning at object \fIfirst_star\fR. If there are more
+than \fImax_nstars\fR in the catalog only the first \fImax_nstars\fR
+objects are read in.
+.le
+.ls first_star = 1
+The index of the first object to be read out of the catalog.
+.le
+.ls match_radius = 2.0
+The tolerance in pixels to be used for matching objects in the catalog with
+objects marked on the display with the image cursor.
+.le
+.ls graphics = "stdgraph"
+The default graphics device.
+.le
+.ls gcommands = ""
+The graphics cursor. If null the standard graphics cursor is used whenever
+graphics cursor input is requested. A cursor file in the appropriate
+format may be substituted by specifying the name of the file.
+.le
+.ls icommands = ""
+The image display cursor. If null the standard image cursor is used whenever
+image cursor input is requested. A cursor file in the appropriate
+format may be substituted by specifying the name of the file.
+Also the image cursor may be changed to query the graphics device or the
+terminal by setting the environment variable "stdimcur" to "stdgraph"
+or "text" respectively.
+.le
+.ls use_display = yes
+Use the image display? Users without access to an image display should
+set \fIuse_display\fR to "no".
+.le
+
+.ih
+PLOTTING PARAMETERS
+
+PEXAMINE supports five types of plots 1) an X-Y column plot
+2) a histogram column plot 3) a radial profile plot 4) a surface
+plot and 5) a contour plot.
+Each supported plot type has its own parameter set which
+controls the appearance of the plot.
+The names of the five parameter sets are listed below.
+
+.nf
+ cntrplot Parameters for the contour plot
+ histplot Parameters for the column histogram plot
+ radplot Parameters for radial profile plot
+ surfplot Parameters for surface plot
+ xyplot Parameters for the X-Y column plot
+.fi
+
+The same parameters dealing with graph formats occur in many of the parameter
+sets while some are specific only to one parameter set. In the
+summary below those common to more than one parameter set are shown
+only once. The characters in parenthesis are the graph key prefixes
+for the parameter sets in which the parameter occurs.
+
+.ls angh = -33., angv = 25. (s)
+Horizontal and vertical viewing angles in degrees for surface plots.
+.le
+.ls axes = yes (s)
+Draw axes along the edge of surface plots?
+.le
+.ls banner = yes (chrsx)
+Add a standard banner to a graph? The standard banner includes the
+IRAF user and host identification and the date and time.
+.le
+.ls box = yes (chrx)
+Draw graph box and axes?
+.le
+.ls ceiling = INDEF (cs)
+Ceiling data value for contour and surface plots. A value of INDEF does
+not apply a ceiling. In contour plots a value of 0. also does not
+apply a ceiling.
+.le
+.ls dashpat = 528 (c)
+Dash pattern for negative contours.
+.le
+.ls fill = no (yes) (c) (hrx)
+Fill the output viewport regardless of the device aspect ratio?
+.le
+.ls floor = INDEF (cs)
+Floor data value for contour and surface plots. A value of INDEF does
+not apply a floor. In contour plots a value of 0. also does not
+apply a floor.
+.le
+.ls grid = no (rx)
+Draw grid lines at major tick marks?
+.le
+.ls interval = 0.0 (c)
+Contour interval. If 0.0, a contour interval is chosen which places 20 to 30
+contours spanning the intensity range of the image.
+.le
+.ls label= no (c)
+Label the major contours in the contour plot?
+.le
+.ls logx = no, logy = no (rx) (hrx)
+Plot the x or y axis logarithmically? The default for histogram plots is
+to plot the y axis logarithmically.
+.le
+.ls majrx=5, minrx=5, majry=5, minry=5 (chrx)
+Maximum number of major tick marks on each axis and number of minor tick marks
+between major tick marks.
+.le
+.ls marker = "box" (rx)
+Marker to be drawn. Markers are "point", "box",
+"cross", "plus", "circle", "hline", "vline" or "diamond".
+.le
+.ls nbins = 512 (h)
+The number of bins in, or resolution of, histogram plots.
+.le
+.ls ncolumns = 21, nlines = 21 (cs)
+Number of columns and lines used in contour and surface plots.
+.le
+.ls ncontours = 5 (c)
+Number of contours to be drawn. If 0, the contour interval may be specified,
+otherwise 20 to 30 nicely spaced contours are drawn. A maximum of 40 contours
+can be drawn.
+.le
+.ls nhi = -1 (c)
+If -1, highs and lows are not marked. If 0, highs and lows are marked
+on the plot. If 1, the intensity of each pixel is marked on the plot.
+.le
+.ls rinner = 0, router = 8
+The inner and outer radius of the region whose radial profile is to
+be plotted.
+.le
+.ls round = no (chrx)
+Extend the axes up to "nice" values?
+.le
+.ls szmarker = 1 (rx)
+Size of mark except for points. A positive size less than 1 specifies
+a fraction of the device size. Values of 1, 2, 3, and 4 signify
+default sizes of increasing size.
+.le
+.ls ticklabels = yes (chrx)
+Label the tick marks?
+.le
+.ls top_closed = no (h)
+Include z2 in the top histogram bin? Each bin of the histogram is a
+subinterval that is half open at the top. \fITop_closed\fR decides whether
+those pixels with values equal to z2 are to be counted in the histogram. If
+\fItop_closed\fR is yes, the top bin will be larger than the other bins.
+.le
+.ls x1 = INDEF, x2 = INDEF, y1 = INDEF, y2 = INDEF (hrx)
+Range of graph along each axis. If INDEF the range is determined from
+the data range. The default y1 for histogram plots is 0.
+.le
+.ls zero = 0. (c)
+Greyscale value of the zero contour, i.e., the value of a zero point shift
+to be applied to the image data before plotting. Does not affect the values
+of the floor and ceiling parameters.
+.le
+.ls z1 = INDEF, z2 = INDEF (h)
+Range of pixel values to be used in histogram. INDEF values default to
+the range in the region being histogrammed.
+.le
+
+.ih
+DESCRIPTION
+
+PEXAMINE is a general purpose tool for interactively examining and editing
+photometry catalogs produced by the APPHOT or DAOPHOT packages. It is
+intended to aid the user in assessing the accuracy of the photometry,
+in diagnosing problems with particular catalog objects,
+in searching the photometry data for relationships
+between the computed quantities, and in editing the catalog based on
+those observed relationships. PEXAMINE is intended to complement the
+more batch oriented editing facilities of the PSELECT task.
+
+PEXAMINE takes the input catalog \fIinput\fR and the corresponding
+image \fIimage\fR (if defined) and produces an output catalog of selected
+objects \fIoutput\fR (if defined) and an output catalog of deleted objects
+\fIdeletions\fR (if defined). The input catalog may be either an
+APPHOT/DAOPHOT text database or an ST binary table database.
+The file type of the output catalogs \fIoutput\fR and \fIdeletions\fR
+is the same as that of \fIinput\fR.
+
+READING IN THE DATA
+
+PEXAMINE reads the column data specified by \fIphotcolumns\fR and
+\fIusercolumns\fR for up to \fImax_nstars\fR into memory. If there are
+more than \fImax_nstars\fR in the input catalog only the data for the
+first \fImax_nstars\fR is read. The \fIphotcolumns\fR parameter
+defines the list of standard photometry columns to be loaded. If
+"daophot" or "apphot" is selected then the standard columns
+are GROUP, ID, XCENTER, YCENTER, MSKY, MAG, MERR, CHI, SHARP and NITER
+and ID, XCENTER, YCENTER, MSKY, MAG and MERR respectively.
+Otherwise the user must set \fIphotcolumns\fR to his or her own preferred
+list of standard photometry columns. Non-standard columns may also be
+specified using the parameter \fIusercolumns\fR.
+Valid column lists contain the full names of the specified columns
+in upper or lower case letters, separated by commas.
+Either \fIphotcolumns\fR or
+\fIusercolumns\fR may be redefined interactively by the user after
+the task has started up, but only at the
+expense of rereading the data from \fIinput\fR.
+
+PEXAMINE will fail to load a specified column if that column is
+not in the photometry database, is of a datatype other than
+integer or real, or adding that column would exceed the maximum
+number of columns limit currently set at twenty. The user can
+interactively examine the list of requested and loaded standard
+photometry columns, as well as list all the columns in the input
+after the task has started up.
+
+GRAPHICS AND IMAGE COMMAND MODE
+
+PEXAMINE accepts commands either from the graphics cursor \fIgcommands\fR
+(graphics command mode) or the image display cursor \fIicommands\fR
+if available (image command mode).
+PEXAMINE starts up in graphics command mode, but all the
+interactive commands are accessible from both modes and the user can
+switch modes at any time assuming that the \fIuse_display\fR parameter
+to "yes".
+
+PEXAMINE interprets the cursor position in graphics mode
+differently from how it interprets it in image command mode.
+In graphics command mode the cursor coordinates are the position
+of the cursor in the current plot, whereas in image command mode they
+are the x and y coordinates of the cursor in the displayed image.
+For example, if the user issues a command to PEXAMINE to locate the object
+in the catalog nearest the point in the current X-Y plot marked by
+the graphics cursor, PEXAMINE does so by searching
+the data for the object whose values of \fIxcolumn\fR and \fIycolumn\fR
+most closely match those of the current cursor position.
+If the user issues a command to PEXAMINE to locate the
+object in the catalog corresponding to the object marked on the image
+display with the image cursor,
+PEXAMINE does so by searching the data for
+the object whose values of \fIxposcolumn\fR and \fIyposcoumn\fR
+most closely match and fall within \fImatch_radius\fR of the current
+cursor position.
+
+Input to PEXAMINE is through single keystroke commands or colon
+commands. Keystroke commands are simple commands that may
+optionally use the cursor position but otherwise require no arguments.
+The PEXAMINE keystroke commands fall into three categories, basic
+commands, data examining commands and data editing commands, all
+described in detail in the following sections. Colon commands
+take an optional argument and function differently depending on
+the presence or absence of that argument. When the argument is absent
+colon commands are used to display the
+current value of a parameter or list of parameters. When the argument is
+present they change their current value to that argument.
+The basic colon commands are described in detail below.
+
+BASIC KEYSTROKE COMMANDS
+
+These keystroke commands are used to display the help page, switch from
+graphics to image command mode and quit the task.
+
+.ls ?
+Page through the help for the PEXAMINE task
+.le
+.ls :
+Execute a PEXAMINE colon command.
+.le
+.ls g
+Change to graphics command mode. Throughout PEXAMINE graphics command mode
+is the default. All PEXAMINE commands are available in graphics command
+mode.
+.le
+.ls i
+Change to image command mode.
+All the PEXAMINE commands are available in image command mode.
+However if \fIuse_display\fR is no and the image
+cursor has not been aliased to the standard input or a text file
+image command mode is disabled.
+.le
+.ls q
+Quit PEXAMINE without writing an output catalog.
+PEXAMINE queries the user for confirmation of this option.
+.le
+.ls e
+Quit PEXAMINE and write the output catalog.
+.le
+
+DATA EXAMINING COMMANDS
+
+The data examining commands fall into two categories, those that examine
+the catalog data including 'l' (catalog listing), 'o' (object listing),
+'x' (Y column versus X column plot) and 'h' (histogram column plot)
+commands, and those which examine the image data around specific catalog
+objects including 'r' (radial profile plotting), 's' (surface plotting),
+'c' (contour plotting) and 'm' (pixel dumping). The latter group
+require that \fIimage\fR be defined. A brief summary of each data
+examining command is given below.
+.ls l
+Print out the name, datatype, and units for all the columns in the input
+catalog. The list command can be used to check the contents of the input
+catalog and/or determine why a particular column was not loaded.
+.le
+.ls o
+Print out the names and values of the stored columns of the object
+nearest the cursor. In graphics mode the current plot type must be
+X-Y. In image command mode the object nearest the cursor must also be
+no more than \fImatch-radius\fR pixels away from the image cursor to be
+found. If an object is found and the current plot type is X-Y
+the graphics cursor is moved to the position of the selected object
+in the X-Y plot.
+.le
+.ls x
+Plot the data in \fIycolumn\fR versus the data in \fIxcolumn\fR excluding
+any already deleted points and identifying objects marked for deletion
+with a cross. X-Y plotting is undefined if \fIxcolumn\fR or \fIycolumn\fR
+is undefined.
+.le
+.ls h
+Plot the histogram of the data in \fIhcolumn\fR excluding any already
+deleted points and those marked for deletion. Histogram plotting is
+disabled if \fIhcolumn\fR is undefined.
+.le
+.ls r
+Plot the radial profile of the object nearest the cursor including
+only pixels within a distance of \fIrinner\fR and \fIrouter\fR of
+the object center. Radial profile plotting is disabled if \fIimage\fR
+or \fIxposcolumn\fR or \fIyposcolumn\fR is undefined.
+.le
+.ls s
+Plot the surface plot of the object nearest the cursor including
+only pixels within an image section \fIncols\fR by \fInlines\fR
+around the object center. Surface plotting is disabled if \fIimage\fR
+or \fIxposcolumn\fR or \fIyposcolumn\fR is undefined.
+.le
+.ls c
+Plot the contour plot of the object nearest the cursor including
+only pixels within an image section \fIncols\fR by \fInlines\fR
+around the object center. Contour plotting is disabled if \fIimage\fR
+or \fIxposcolumn\fR or \fIyposcolumn\fR is undefined.
+.le
+.ls m
+Dump the pixel values of a grid of 10 by 10 pixels around the object
+nearest the cursor. Pixel value dumping is disabled if \fIimage\fR
+or \fIxposcolumn\fR or \fIyposcolumn\fR is undefined.
+.le
+.ls p
+Replot the current graph.
+.le
+
+DATA EDITING COMMANDS
+
+Data points can be deleted from the catalog in either graphics command
+mode or image
+command mode. In graphics command mode the
+graphics cursor and either the X-Y or histogram plot is used to delete points.
+In image command mode the image cursor and the displayed
+image are used to delete points. A data point has three possible states
+good, marked for deletion and deleted.
+Any one of the keystroke commands 'd' (delete point), '(' (delete points
+with x less than x cursor), ')' (delete points with x greater than x cursor,
+'^' (delete points with y > y cursor), 'v' (delete points with y < y cursor)
+or 'b' (delete points in a box) can be used to mark points for deletion.
+The 'f' key is used to actually delete the points and replot the data.
+In between marking the points for deletion and actually deleting the marked
+points the 't' (toggle) key can be used to undelete the last set marked.
+The full list of the data editing keystroke commands is given below.
+
+.ls z
+Undelete not just unmark all the data points replot.
+.le
+.ls f
+Delete points marked for deletion and replot. Points marked for deletion
+but not actually deleted will be written to the output catalog and not
+written to the deletions catalog.
+.le
+.ls d
+Mark the point nearest the cursor for deletion.
+.le
+.ls u
+Undelete the marked point nearest the cursor.
+.le
+.ls (
+Mark all points with x values less than the x value of the cursor for
+deletion. In graphics command mode points can only be marked for deletion if
+the current plot type is "xyplot" or "histplot". In image command
+mode \fIxposcolumn\fR and \fIyposcolumn\fR must be defined before
+points can be marked for deletion.
+.le
+.ls )
+Mark all points with x values greater than the x value of the cursor for
+deletion. In graphics command mode points can only be marked for deletion if
+the current plot type is "xyplot" or "histplot". In image command
+mode \fIxposcolumn\fR and \fIyposcolumn\fR must be defined before
+points can be marked for deletion.
+.le
+.ls v
+Mark all points with y values less than the y value of the cursor for
+deletion. In graphics command mode points can only be marked for deletion if
+the current plot type is "xyplot". In image command
+mode \fIxposcolumn\fR and \fIyposcolumn\fR must be defined before
+points can be marked for deletion.
+.le
+.ls ^
+Mark all points with y values greater than the y value of the cursor for
+deletion. In graphics command mode points can only be marked for deletion if
+the current plot type is "xyplot". In image command
+mode \fIxposcolumn\fR and \fIyposcolumn\fR must be defined before
+points can be marked for deletion.
+.le
+.ls b
+Mark all points within a box whose lower left and upper right hand corners
+are marked by the cursor for deletion.
+In graphics mode points can only be marked for deletion if the current
+plot type is "xyplot". In image command mode \fIxposcolumn\fR and
+\fIyposcolumn\fR must be defined before points can be marked for
+deletion.
+.le
+.ls t
+Toggle between marking points for deletion or undeletion. The default
+is to mark points for deletion.
+.le
+
+BASIC COLON COMMANDS
+
+All the PEXAMINE parameters can be changed interactively with colon
+commands, including those which determine which data is read in,
+which data is plotted and the parameters of each plot. A brief description
+of the basic commands is given here. The full list is given in the
+following section.
+
+.ls :photcolumns [col1,col2,...]
+Show or set the list of requested standard photometry columns and the list
+of loaded
+photometry columns. If the user supplies a new list of columns the data will be
+reread from disk.
+.le
+.ls :usercolumns [col1,col2,...]
+Show or set the list of requested user columns and the list of loaded
+user columns. If the user supplies a new list of columns the data will be
+reread from disk.
+.le
+.ls :xcolumn [colname]
+Show or set the name of the column to be plotted along the x axis of the
+X-Y plot.
+.le
+.ls :ycolumn [colname]
+Show or set the name of the column to be plotted along the y axis of the
+X-Y plot.
+.le
+.ls :hcolumn [colname]
+Show or set the name of the column to be whose histogram is to be plotted.
+.le
+.ls :eparam [cntrplot/histplot/radplot/surfplot/xyplot]
+Review or edit the list of parameters for the various plot types.
+.le
+.ls :unlearn [cntrplot/histplot/radplot/surfplot/xyplot]
+Return the list of parameters for the various plot types to their default
+values.
+.le
+.ls :x y key cmd
+Execute any defined keystroke "key" supplying the appropriate x and y
+value in place of the cursor position. In graphics command mode the x
+and y position are assumed to be the position in the current graph.
+In image command mode the x and y position are assumed to be the x and
+y coordinate in the image display.
+.le
+
+.ih
+COMMANDS
+
+.nf
+ PEXAMINE Interactive Cursor Keystroke Commands
+
+ Basic Commands
+
+? Print help for the PEXAMINE task
+: PEXAMINE colon commands
+g Activate the graphics cursor
+i Activate the image cursor
+e Exit PEXAMINE and save the edited catalog
+q Quit PEXAMINE and discard the edited catalog
+
+ Data Examining Commands
+
+l List the name, datatype and units for all columns in the catalog
+o Print out the names and values of the stored columns for the
+ object nearest the cursor
+x Replot the current y column versus the current x column
+h Replot the current histogram
+r Plot the radial profile of the object nearest the cursor
+s Plot the surface of the object nearest the cursor
+c Plot the contour plot of the object nearest the cursor
+m Print the data values of the object nearest the cursor
+p Replot the current graph
+
+ Data Editing Commands
+
+z Reinitialize the data by removing all deletions and replot
+d Mark the point nearest the cursor for deletion
+u Undelete the marked point nearest the cursor
+t Toggle between marking points for deletion or undeletion
+( Mark points with X < X (cursor) for deletion or undeletion
+) Mark points with X > X (cursor) for deletion or undeletion
+v Mark points with Y < Y (cursor) for deletion or undeletion
+^ Mark points with Y > Y (cursor) for deletion or undeletion
+b Mark points inside a box for deletion or undeletion
+f Actually delete the marked points and replot
+
+
+ PEXAMINE Interactive Colon Commands
+
+:xcolumn [name] Show/set the X-Y plot X axis quantity
+:ycolumn [name] Show/set the X-Y plot Y axis quantity
+:hcolumn [name] Show/set the histogram plot quantity
+:photcolumns [col1,col2,...] Show/set the list of photometry columns
+:usercolumns [col1,col2,...] Show/set the list of user columns
+:delete [yes/no] Delete or undelete points
+:eparam [x/h/r/s/c] Edit/unlearn the specified plot pset
+ or
+:unlearn
+
+
+ PEXAMINE Interactive X-Y Plotting Commands
+
+:x1 [value] Left world x-coord if not autoscaling
+:x2 [value] Right world x-coord if not autoscaling
+:y1 [value] Lower world y-coord if not autoscaling
+:y2 [value] Upper world y-coord if not autoscaling
+:szmarker [value] Marker size
+:marker [point|box|plus|cross|circle|diamond|hline|vline] Marker type
+:logx [yes/no] Log scale the x axis?
+:logy [yes/no] Log scale the y axis?
+:box [yes/no] Draw box around periphery of window?
+:ticklabels [yes/no] Label tick marks?
+:grid [yes/no] Draw grid lines at major tick marks?
+:majrx [value] Number of major divisions along x axis
+:minrx [value] Number of minor divisions along x axis
+:majry [value] Number of major divisions along y axis
+:minry [value] Number of minor divisions along y axis
+:round [yes/no] Round axes to nice values?
+:fill [yes/no] Fill viewport vs enforce unity aspect ratio?
+
+
+ PEXAMINE Interactive Histogram Plotting Commands
+
+:nbins [value] Number of bins in the histogram
+:z1 [value] Minimum histogram intensity
+:z2 [value] Maximum histogram intensity
+:top_closed [y/n] Include z in the top bin?
+:x1 [value] Left world x-coord if not autoscaling
+:x2 [value] Right world x-coord if not autoscaling
+:y1 [value] Lower world y-coord if not autoscaling
+:y2 [value] Upper world y-coord if not autoscaling
+:logy [yes/no] Log scale the y axis?
+:box [yes/no] Draw box around periphery of window?
+:ticklabels [yes/no] Label tick marks?
+:majrx [value] Number of major divisions along x axis
+:minrx [value] Number of minor divisions along x axis
+:majry [value] Number of major divisions along y axis
+:minry [value] Number of minor divisions along y axis
+:round [yes/no] Round axes to nice values?
+:fill [yes/no] Fill viewport vs enforce unity aspect ratio?
+
+ PEXAMINE Interactive Radial Profile Plotting Commands
+
+:rinner [value] Inner radius of the region to be plotted
+:router [value] Outer radius of the region to be plotted
+:x1 [value] Left world x-coord if not autoscaling
+:x2 [value] Right world x-coord if not autoscaling
+:y1 [value] Lower world y-coord if not autoscaling
+:y2 [value] Upper world y-coord if not autoscaling
+:szmarker [value] Marker size
+:marker [point|box|plus|cross|circle|diamond|hline|vline] Marker type
+:logx [yes/no] Log scale the x axis?
+:logy [yes/no] Log scale the y axis?
+:box [yes/no] Draw box around periphery of window?
+:ticklabels [yes/no] Label tick marks?
+:grid [yes/no] Draw grid lines at major tick marks?
+:majrx [value] Number of major divisions along x axis
+:minrx [value] Number of minor divisions along x axis
+:majry [value] Number of major divisions along y axis
+:minry [value] Number of minor divisions along y axis
+:round [yes/no] Round axes to nice values?
+:fill [yes/no] Fill viewport vs enforce unity aspect ratio?
+
+
+ PEXAMINE Interactive Surface Plotting Commands
+
+:ncolumns [value] Number of columns to be plotted
+:nlines [value] Number of lines to be plotted
+:axes [yes/no] Draw axes?
+:angh [value] Horizontal viewing angle
+:angv [value] Vertical viewing angle
+:floor [value] Minimum value to be plotted
+:ceiling [value] Maximum value to be plotted
+
+
+ PEXAMINE Interactive Contour Plotting Commands
+
+:ncolumns [value] Number of columns to be plotted
+:nlines [value] Number of lines to be plotted
+:floor [value] Minimum value to be plotted
+:ceiling [value] Maximum value to be plotted
+:zero [value] Greyscale value of zero contour
+:ncontours [value] Number of contours to be drawn
+:interval [value] Contour interval
+:nhi [value] Hi/low marking option
+:dashpat [value] Bit pattern for generating dashed lines
+:label [yes/no] Label major contours with their values?
+:box [yes/no] Draw box around periphery of window?
+:ticklabels [yes/no] Label tick marks?
+:majrx [value] Number of major divisions along x axis
+:minrx [value] Number of minor divisions along x axis
+:majry [value] Number of major divisions along y axis
+:minry [value] Number of minor divisions along y axis
+:round [yes/no] Round axes to nice values?
+:fill [yes/no] Fill viewport vs enforce unity aspect ratio?
+.fi
+
+.ih
+EXAMPLES
+
+1. Examine and edit an APPHOT aperture photometry catalog and a DAOPHOT
+allstar catalog without either attaching the associated image or using the
+image display.
+
+.nf
+ pt> pexamine m92.mag.1 m92.mag.ed use_display-
+
+ ... a plot of magnitude error versus magnitude appears on
+ the screen and the graphics cursor comes up ready to accept
+ commands
+
+ ... the user sees a generally smooth trend of increasing
+ magnitude error with increasing magnitude except for a
+ single deviant point at the bright end of the plot
+
+ ... the user decides to remove the deviant point using the
+ 'd' keystroke command to mark the point and the 'f'
+ keystroke command to actually delete and replot the graph
+
+ ... after examining the plot further the user decides to delete
+ all objects for which the magnitude error is > 0.1 magnitudes
+ using the '^' keystroke command, followed by the 'f'
+ keystroke command to actually replot and delete the data.
+
+ ... after deciding that this new plot is satisfactory the user
+ issues the 'e' keystroke command to exit pexamine and save
+ the good data in m92.mag.ed
+
+ pt> pexamine m92.als.1 m92.als.ed use_display-
+
+ ... a plot of magnitude error versus magnitude appears on the
+ screen and the graphics cursor comes up ready to accept
+ commands
+
+ ... after looking at the plot the user decides that what they
+ really want to see is a plot of the goodness of fit parameter
+ chi versus magnitude
+
+ ... the user issues the colon command :ycol chi followed by 'p'
+ keystroke command to replot the data
+
+ ... the user sees a generally smooth trend of increasing
+ chi with increasing magnitude
+
+ ... after examining the plot further the user decides to delete
+ all objects for which the chi value > 2.0 and the
+ magnitude is > 25 using the '^' key and ')' keystroke
+ commands followed by 'f' to save the deletions and replot
+ the data
+
+ ... after deciding that this new plot is satisfactory the user
+ issues the 'e' keystroke command to exit pexamine and save
+ the good data in m92.als.ed
+.fi
+
+2. Examine and edit a DAOPHOT allstar catalog using the subtracted image, the
+original image and the image display.
+
+.nf
+ pt> display image.sub 1
+
+ ... display the subtracted image
+
+ pt> pexamine orionk.als.1 orionk.als.ed image xcol=mag ycol=chi
+
+ ... a plot of the goodness of fit versus magnitude appears
+ on the terminal and the graphics cursor comes up ready to
+ accept commands
+
+ ... the user notices some very anomalous chi values and decides
+ to see if these correspond to objects which have poor
+ subtraction on the displayed image
+
+ ... the user switches to image command mode by tapping the 'i'
+ key, moves to the first poorly subtracted object and taps
+ the 'o' key
+
+ ... a list of the values of the loaded columns including chi
+ appears in the text window , the program switches to graphics
+ mode and places the graphics cursor on the corresponding
+ point in the X-Y plot
+
+ ... the point in question indeed has a very high chi value
+ and the user decides to try and investigate the reason for the
+ anomalous value
+
+ ... the user taps the 'r' key to get a radial profile of the
+ object in the original image
+
+ ... after carefully examining the profile it appears that the
+ object's profile is too broad and that it is not a star
+
+ ... the user switches back to the X-Y plot with the 'x' key,
+ marks the point with the 'd' key and saves the deletions
+ and replots with the 'f' key.
+
+ ... the user goes back to image command mode with the 'i' key
+ and begins investigating the next object
+
+ ... finally after examining the image and making all the changes
+ the user decides to quit and save the changes with the 'e' key
+
+.fi
+
+.ih
+TIME REQUIREMENTS
+
+.ih
+BUGS
+If the display device is on a remote resource the first image cursor
+request will cause PEXAMINE to hang. The remote resource is expecting
+the appropriate password which the user must type in to cause the
+the image cursor to appear. The normal password prompt is
+not being issued or flushed to the terminal. The solution to the problem
+is to put the password in the .irafhosts file
+
+INDEF valued points cannot be accessed by
+PEXAMINE. INDEF valued points should be removed from the input catalog
+with PSELECT prior to entering PEXAMINE.
+
+.ih
+SEE ALSO
+ptools.pselect, ptools.txselect,ptools.tselect
+.endhelp
diff --git a/noao/digiphot/ptools/doc/prenumber.hlp b/noao/digiphot/ptools/doc/prenumber.hlp
new file mode 100644
index 00000000..1dcc4ed9
--- /dev/null
+++ b/noao/digiphot/ptools/doc/prenumber.hlp
@@ -0,0 +1,59 @@
+.help prenumber May93 noao.digiphot.ptools
+.ih
+NAME
+prenumber -- renumber an APPHOT/DAOPHOT database
+.ih
+USAGE
+renumber infile
+.ih
+PARAMETERS
+.ls infile
+The APPHOT/DAOPHOT database to be renumbered.
+.le
+.ls id = "ID"
+The name of the keyword whose value is the sequence number of the object
+.le
+.ls idoffset = 0
+An integer offset to be added to the id numbers of the stars in
+the output renumbered photometry file. If idoffset is > 0, the output
+id numbers will run from 1 + idoffset to N + idoffset instead of from 1 to N.
+in the database.
+.le
+
+.ih
+DESCRIPTION
+PRENUMBER is a simple task which accepts an APPHOT/DAOPHOT
+database file and renumbers the objects in the file from 1 + idoffset
+to N + idoffset,
+where N is the number of objects in the database. A renumber operation is
+often performed
+after an append operation to insure that the database objects have unique id
+numbers or after a sort to put the id numbers in order.
+
+PRENUMBER is a script which executes TXRENUMBER if the APPHOT/DAOPHOT
+database is a text database or TCALC if the file is an STSDAS table
+database.
+.ih
+EXAMPLES
+
+1. Renumber a sorted NSTAR database that has been sorted on magnitude.
+
+.nf
+ pt> prenumber m92r.nst.1
+.fi
+
+2. Renumber a PHOT photometry file of extra stars so as to ensure the
+stars' id numbers are greater than 4000.
+
+.nf
+ pt> prenumber m92r.mag.extra idoffset=4000
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+.ih
+SEE ALSO
+ptools.txrenumber,ptools.tbrenumber,tables.tcalc
+.endhelp
diff --git a/noao/digiphot/ptools/doc/pselect.hlp b/noao/digiphot/ptools/doc/pselect.hlp
new file mode 100644
index 00000000..92d4f163
--- /dev/null
+++ b/noao/digiphot/ptools/doc/pselect.hlp
@@ -0,0 +1,130 @@
+.help pselect Aug91 noao.digiphot.ptools
+.ih
+NAME
+pselect - select records from an APPHOT/DAOPHOT database
+.ih
+USAGE
+pselect infiles outfiles expr
+.ih
+PARAMETERS
+.ls infiles
+The APPHOT/DAOPHOT databases containing the records from which the
+selection is to be made.
+.le
+.ls outfiles
+The output APPHOT/DAOPHOT databases containing the selected records.
+.le
+.ls expr
+The boolean expression to be evaluated. The expression
+is evaluated once for each record. If \fIexpr\fR = yes,
+a copy is made of the input file.
+.le
+
+.ih
+DESCRIPTION
+PSELECT selects a subset of the records
+from an APPHOT/DAOPHOT database or a list of databases
+and writes the new records out to another database or list of
+databases.
+
+The output records are selected on the basis of an input boolean
+expression \fIexpr\fR whose variables are in the case of text
+databases the field names
+specified by the #N keywords or the parameters specified by the
+#K keywords and in the case of an STSDAS table database the
+column names.
+If after substituting the values associated
+with a particular record into the field name variables the
+expression evaluates
+to yes, that record is included in the output database.
+
+The supported
+operators and functions are briefly described below. A detailed description
+of the boolean expression evaluator and its syntax can be found
+in the manual page for the IMAGES package HEDIT task.
+
+The following logical operators can be used in the boolean expression.
+
+.nf
+ equal == not equal !=
+ less than < less than or equal <=
+ greater than > greater than or equal >=
+ or || and &&
+ negation ! pattern match ?=
+ concatenation //
+.fi
+
+The pattern match character ?= takes a
+string expression as its first argument and a pattern as its second argument.
+The result is yes if the pattern is contained in the string expression.
+Patterns are strings which may contain pattern matching meta-characters.
+The meta-characters themselves can be matched by preceeding them with the escape
+character. The meta-characters are listed below.
+
+.nf
+ beginning of string ^ end of string $
+ one character ? zero or more characters *
+ white space # escape character \
+ ignore case { end ignore case }
+ begin character class [ end character class ]
+ not, in char class ^ range, in char class -
+.fi
+
+The boolean expression may also include arithmetic operators and functions.
+The following arithmetic operators and functions are supported.
+
+.nf
+addition + subtraction -
+multiplication * division /
+negation - exponentiation **
+absolute value abs(x) cosine cos(x)
+sine sin(x) tangent tan(x)
+arc cosine acos(x) arc sine asin(x)
+arc tangent atan(x) arc tangent atan2(x,y)
+exponential exp(x) square root sqrt(x)
+natural log log(x) common log log10(x)
+minimum min(x,y) maximum max(x,y)
+convert to integer int(x) convert to real real(x)
+nearest integer nint(x) modulo mod(x)
+.fi
+
+.ih
+EXAMPLES
+
+1. Select the records from the output of the APPHOT CENTER task for
+which 100. <= XCENTER <= 200. and 300. <= YCENTER <= 400.
+
+.nf
+ pt> pselect m92.ctr.3 m92out \
+ "XCE >= 100. && XCE <= 200. && YCE >= 300. && YCE <= 400."
+.fi
+
+2. Select the records from the output of the APPHOT PHOT task for which
+the first magnitude is not equal to INDEF. In the case of the
+an STSDAS table database it may be necessary to escape the
+leading square bracket.
+
+.nf
+ pt> pselect n4147.mag.3 n4147out "MAG[1] != INDEF"
+
+ or
+
+ pt> pselect n4147.mag.3 n4147out "MAG\[1] != INDEF"
+.fi
+
+3. Select the records from the output of the DAOPHOT ALLSTAR task
+for which CHI <= 5.0 and MERR <= .10 magnitudes.
+
+.nf
+ pt> pselect m92b.al.2 m92out "CHI <= 5.0 && MERR <= 1.0"
+.fi
+
+.ih
+BUGS
+Array valued fields in text databases are not allowed in the expression
+field.
+
+.ih
+SEE ALSO
+images.hedit,ptools.tbselect,tables.tselect,ptools.txselect
+.endhelp
diff --git a/noao/digiphot/ptools/doc/psort.hlp b/noao/digiphot/ptools/doc/psort.hlp
new file mode 100644
index 00000000..806448c9
--- /dev/null
+++ b/noao/digiphot/ptools/doc/psort.hlp
@@ -0,0 +1,64 @@
+.help psort Aug91 noao.digiphot.ptools
+.ih
+NAME
+psort -- sort an APPHOT/DAOPHOT database file
+.ih
+USAGE
+psort infiles field
+.ih
+PARAMETERS
+.ls infiles
+The input APPHOT/DAOPHOT databases to be sorted. The sort is performed in place.
+.le
+.ls field
+The field to be sorted on. If the input file is a text database,
+\fIfield\fR may be any quantity defined by
+the APPHOT/DAOPHOT #K and #N keywords. If the input file is an STSDAS
+table database \fIfield\fR may be any column name. \fIField\fR may be
+of type integer or real, in which case a numeric sort is performed,
+boolean, in which case the boolean constant "no" is assumed to have a
+smaller value than "yes", or character in which case an alphabetic sort
+is performed.
+.le
+.ls ascend = yes
+Sort in increasing value order.
+.le
+.ih
+DESCRIPTION
+PSORT is a simple task which accepts an APPHOT/DAOPHOT database file
+and sorts it in place based on the value of the selected quantity
+\fIfield\fR. By default the sort is in increasing order of the value
+of field, but a reverse sort can be performed by
+setting \fIascend\fR = no.
+
+If \fIfield\fR is a real or integer the sort is numeric, if boolean
+the constant "no" is assumed to have a smaller value than "yes", if
+character the sort is alphabetic.
+
+PSORT is a simple CL script which call TXSORT if the input database is
+a text file and TSORT if the input database is a text file.
+.ih
+EXAMPLES
+
+1. Sort the output of the APPHOT task PHOT in increasing order of
+the y coordinate.
+
+.nf
+ pt> psort m92.mag.1 YCENTER
+.fi
+
+2. Sort the output of the DAOPHOT task ALLSTAR in increasing order of
+magnitude.
+
+.nf
+ pt> psort m92.al.1 MAG
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+.ih
+SEE ALSO
+ptools.txsort,tables.tsort,ptools.tbsort
+.endhelp
diff --git a/noao/digiphot/ptools/doc/pttest.hlp b/noao/digiphot/ptools/doc/pttest.hlp
new file mode 100644
index 00000000..3329e017
--- /dev/null
+++ b/noao/digiphot/ptools/doc/pttest.hlp
@@ -0,0 +1,78 @@
+.help pttest Oct91 noao.digiphot.ptools
+.ih
+NAME
+pttest -- run basic tests on the ptools package tasks
+.ih
+USAGE
+pttest rootname
+.ih
+PARAMETERS
+.ls rootname
+The root name of the output test files. The actual test files are stored in
+in the PTOOLS package test directory. If the test files already exist
+PTTEST will exit with a warning message.
+.le
+.ls ptlogfile = ""
+The name of the output log file. By default all the output is logged in a file
+called \fIrootname.log"\fR. If the log file already exists PTTEST will
+exit with a warning message.
+.le
+.ls ptplotfile = ""
+The name of the output plot file. By default all the graphics output is
+logged in a file called \fIrootname.plot"\fR. If the plot file already exists
+PTTEST will exit with a warning message.
+.le
+
+.ih
+DESCRIPTION
+
+PTTEST is a simple script which exercises each of the major tasks in the
+PTOOLS package in turn. At startup PTTEST reads a small set of text files
+stored in the PTOOLS test subdirectory and creates copies of them in
+the user's working directory. PTTEST initializes the PTTOLS package by
+returning
+all the parameters to their default state, runs each of the PTOOLS
+tasks in non-interactive mode, spools the text output to the file
+\fIptlogfile\fR, and the graphics output from the PEXAMINE task to the plot
+metacode file \fIptplotfile\fR.
+
+Some of PTOOLS tasks which PTTEST attempts to test are in the STSDAS TABLES
+package. If this package is not available a warning message will appear
+on the screen and this part of the PTTEST script will be skipped.
+The TABLES external addon package is available from ST.
+
+.ih
+EXAMPLES
+
+1. Check to see that all the PTOOLS tasks are functioning correctly.
+.nf
+ da> ptools
+
+ ... load the ptools package
+
+ da> pttest testit
+
+ ... run the test script
+
+ da> lprint testit.log
+
+ ... print the text output
+
+ da> gkidir testit.plot
+
+ ... list the contents of the plot file
+
+ da> gkiextract testit.plot 1-N | stdplot
+
+ ... send the plots to the plotter
+
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+.ih
+SEE ALSO
+tables
+.endhelp
diff --git a/noao/digiphot/ptools/doc/tbcalc.hlp b/noao/digiphot/ptools/doc/tbcalc.hlp
new file mode 100644
index 00000000..9e0f83b9
--- /dev/null
+++ b/noao/digiphot/ptools/doc/tbcalc.hlp
@@ -0,0 +1,79 @@
+.help tbcalc May93 noao.digiphot.ptools
+.ih
+NAME
+tbcalc - perform an arithmetic operation on a column in a list of apphot/daophot
+ ST tables databases
+.ih
+USAGE
+tbcalc textfiles column value
+.ih
+PARAMETERS
+.ls textfiles
+The APPHOT/DAOPHOT ST tables database(s) containing the column to be recomputed.
+.le
+.ls column
+The column to be recomputed. Column must be an integer or real column
+in the input file(s).
+.le
+.ls value
+The arithmetic expression used to recompute the specified column.
+Value may be an integer or real expression but must match the data
+type of column.
+.le
+
+.ih
+DESCRIPTION
+
+TBCALC reads in the value of the \fIcolumn\fR
+from a set of APPHOT/DAOPHOT ST tables databases, replaces it with a new
+value specified by the arithmetic expression \fIvalue\fR,
+and updates the ST tables databases(s).
+
+The expression \fIvalue\fR consists of variables which are column names
+in the APPHOT/DAOPHOT ST tables database.
+TBCALC uses the TABLES package task TCALC to actually perform the
+arithmetic operation.
+
+The supported
+arithmetic operators and functions are briefly described below.
+
+.nf
+addition + subtraction -
+multiplication * division /
+negation - exponentiation **
+absolute value abs(x) cosine cos(x)
+sine sin(x) tangent tan(x)
+arc cosine acos(x) arc sine asin(x)
+arc tangent atan(x) arc tangent atan2(x,y)
+exponential exp(x) square root sqrt(x)
+natural log log(x) common log log10(x)
+minimum min(x,y) maximum max(x,y)
+convert to integer int(x) convert to real real(x)
+nearest integer nint(x) modulo mod(x)
+.fi
+
+.ih
+EXAMPLES
+
+1. Change the XCENTER and YCENTER fields to XCENTER + 5.4 and YCENTER + 10.3
+respectively in a file produced by the daophot package allstar task.
+
+.nf
+ pt> tbcalc m92.als.1 xcenter "xcenter+5.4"
+ pt> tbcalc m92.als.1 ycenter "ycenter+10.3"
+.fi
+
+2. Add a constant to the computed magnitudes produced by the daophot
+package nstar task.
+
+.nf
+ pt> tbcalc n4147.nst.2 mag "mag+3.457"
+.fi
+
+.ih
+BUGS
+
+.ih
+SEE ALSO
+ptools.txcalc,tables.tcalc,ptools.pcalc
+.endhelp
diff --git a/noao/digiphot/ptools/doc/tbconcat.hlp b/noao/digiphot/ptools/doc/tbconcat.hlp
new file mode 100644
index 00000000..846b8f6e
--- /dev/null
+++ b/noao/digiphot/ptools/doc/tbconcat.hlp
@@ -0,0 +1,49 @@
+.help tbconcat Dec92 noao.digiphot.ptools
+.ih
+NAME
+tbconcat -- concatenate a list of APPHOT/DAOPHOT STSDAS databases
+.ih
+USAGE
+tbconcat tables outtable
+.ih
+PARAMETERS
+.ls tables
+The list of APPHOT/DAOPHOT STSDAS databases to be concatenated.
+.le
+.ls outtable
+The name of the output APPHOT/DAOPHOT STSDAS database.
+.le
+.ls task = "TASK"
+The name of the keyword whose value is the name of the task which wrote
+the database.
+.le
+.ih
+DESCRIPTION
+TBCONCAT is a simple task which accepts a list of APPHOT/DAOPHOT STSDAS
+database files and concatenates them into one resultant database.
+TBCONCAT checks that all the file are indeed APPHOT/DAOPHOT STSDAS
+database files and that they were all written by the same task before
+performing the concatenation.
+
+TBCONCAT is a simple script built around the STSDAS TABLES package
+task TMERGE. Users should consult the manual page for TMERGE for
+more details about the inner working of the task.
+
+.ih
+EXAMPLES
+
+1. Concatenate a list of DAOPHOT package GROUP output tables into a
+single file.
+
+.nf
+ pt> tbconcat m92r.grp.1,m92r.grp.2,m92r.grp.3 m92rall.grp.1
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+.ih
+SEE ALSO
+ptools.txconcat,ptools.pconcat,tables.tmerge,concatenate
+.endhelp
diff --git a/noao/digiphot/ptools/doc/tbcrename.hlp b/noao/digiphot/ptools/doc/tbcrename.hlp
new file mode 100644
index 00000000..47d4fd3f
--- /dev/null
+++ b/noao/digiphot/ptools/doc/tbcrename.hlp
@@ -0,0 +1,50 @@
+.help tbcrename Aug91 noao.digiphot.ptools
+.ih
+NAME
+tbcrename -- rename selected columns in a list of table
+
+.ih
+USAGE
+tbcrename tables columns names
+
+.ih
+PARAMETERS
+
+.ls table
+The list of input tables files.
+.le
+.ls columns
+The list of columns separated by commas whose names are to be changed.
+.le
+.ls names
+The list of new column names separated by commas.
+.le
+
+.ih
+DESCRIPTION
+
+TBCRENAME takes a list of ST tables \fItables\fR and changes the names
+of selected columns \fIcolumns\fR to the names specified in \fInames\fR.
+If the input file is not an ST table or the column does not exist
+no action is taken. Otherwise the specified column is renamed.
+
+.ih
+EXAMPLES
+
+1. For the list of ST tables in tablelist, rename the columns "MAG,MERR"
+to "MAG[1],MERR[1]". Note the use of '\' to escape the pattern matching
+meta-character '['.
+
+.nf
+ pt> tbcrename @tablelist "MAG,MERR" "MAG\[1],MERR\[1]"
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+Since the contents of the ST table are altered the user must have
+write permission on the table in order to run TBCRENAME.
+.ih
+SEE ALSO
+.endhelp
diff --git a/noao/digiphot/ptools/doc/tbdump.hlp b/noao/digiphot/ptools/doc/tbdump.hlp
new file mode 100644
index 00000000..3cb5eac4
--- /dev/null
+++ b/noao/digiphot/ptools/doc/tbdump.hlp
@@ -0,0 +1,193 @@
+.help tbdump Feb93 noao.digiphot.ptools
+.ih
+NAME
+tbdump -- print fields (columns) from a list of APPHOT/DAOPHOT STSDAS table
+ databases
+.ih
+USAGE
+tbdump tables columns expr
+.ih
+PARAMETERS
+.ls tables
+The name of the APPHOT/DAOPHOT table database(s) to be dumped.
+.le
+.ls columns
+The template specifying the names of the columns to be dumped.
+A null or blank string means
+dump all columns. A column template consists of a list
+of either column names or column patterns containing the usual pattern matching
+meta-characters. The names or patterns are separated by commas or white space.
+Column names must be spelled in full but may be upper or lower case.
+The columns list can be placed in a file and the name of the file preceded
+by an '@' character given in place of the column template.
+If the first non-white character in the column template
+is the negation character '~', the output will contain those columns
+NOT named in the remainder of the column template.
+.le
+.ls expr
+The boolean expression to be evaluated once per record.
+Only the fields in those records for which the boolean expression
+evaluates to yes are printed.
+If \fIexpr\fR = "yes", the specified columns in all the records are
+printed.
+.le
+.ls datafile = STDOUT
+If \fIDatafile\fR is not null ("") then the table data will be written
+to an output file with this name. By default the table data is written
+on the standard output.
+\fIDatafile\fR will not be created if the table is empty.
+.le
+.ls cdfile = ""
+If \fICdfile\fR is not null ("") then the column definitions will be written
+to an output file with this name.
+The column definitions consist of the column name, data type (R, D, I, B,
+or C), print format, and units.
+.le
+.ls pfile = ""
+If \fIPfile\fR is not null ("") then the header parameters will be written
+to an output file with this name.
+\fIPfile\fR will not be created if there are no header parameters.
+.le
+.ls rows = "-"
+\fIRows\fR is a string which may be used to specify ranges of rows which are
+to be dumped. The default of "-" means dump all rows. The first
+ten rows could be specified as \fIrows\fR = "1-10" or just \fIrows\fR = "-10".
+To dump the first ten rows and all rows from 900 through the last,
+use \fIrows\fR = "-10,900-". \fIRows\fR = "1,3,7,23" will print only
+those four rows. It is not an error to specify rows larger than the largest
+row number as they will simply be ignored.
+See the help for RANGES in XTOOLS for further information.
+.le
+.ls pagwidth = 158
+The width of the output for printing the table data. If any of the columns
+to be printed is wider than this an error message will be displayed, and
+the data will not be dumped. The width of each character column is
+increased by two to include a pair of enclosing quotes.
+.le
+.ih
+DESCRIPTION
+This task converts selected records from an APPHOT/DAOPHOT STSDAS table
+database to ASCII format
+and by default prints the result on the standard output.
+TBDUMP output does not include row numbers or column names.
+The TABLES package task TPRINT can be used for more readable output.
+
+The PTOOLS version of TBDUMP described here is
+actually a combination of the STSDAS TABLES package tasks TSELECT and TDUMP.
+
+The three primary uses for TBDUMP are to format STSDAS tables for input to
+applications
+which expect simple text input, allow editing that would be
+difficult or impossible with the TABLES package TEDIT task, such as
+global substitutions,
+and facilitate copying a table over a network to another computer.
+For the latter two applications the table can be dumped to three separate files
+containing column definitions, header parameters, and table data,
+edited, column data types changed, etc.
+The TABLES package TCREATE can be used to create a new table from the three
+ASCII files produced by TBDUMP.
+By default only the column data is dumped.
+
+TBDUMP queries for the columns to be dumped. If \fIcolumns\fR is null ("")
+then all the columns are dumped.
+All the rows are dumped by default, but ranges of
+rows may be specified with the \fIrows\fR parameter.
+If the table is wider than will fit on a page,
+the output will consist of more than one line per row of the table,
+but all the columns will be printed before moving on to the next row.
+This is in contrast to TPRINT,
+which prints all rows for those columns that will fit on a page,
+then prints all rows for the next set of columns, etc.
+Character columns with multiple words are printed with enclosing quotes.
+
+The TABLES package TLCOL task (with TLCOL.NLIST=1) may be used to generate
+a list of
+column names so there is no question about spelling or case. This list may
+be edited to rearrange the names and/or delete some, the list
+file preceded by an '@' and used as the value of the \fIcolumns\fR
+parameter.
+
+The output records are selected on the basis of an input boolean
+expression \fIexpr\fR whose variables are the tables column names.
+If after substituting the values associated
+with a particular record into the field name variables the
+expression evaluates
+to yes, that record is included in the output table.
+
+The supported
+operators and functions are briefly described below. A detailed description
+of the boolean expression evaluator and its syntax can be found
+in the manual page for the IMAGES package HEDIT task.
+
+The following logical operators can be used in the boolean expression.
+
+.nf
+ equal == not equal !=
+ less than < less than or equal <=
+ greater than > greater than or equal >=
+ or || and &&
+ negation ! pattern match ?=
+ concatenation //
+.fi
+
+The pattern match character ?= takes a
+string expression as its first argument and a pattern as its second argument.
+The result is yes if the pattern is contained in the string expression.
+Patterns are strings which may contain pattern matching meta-characters.
+The meta-characters themselves can be matched by preceeding them with the escape
+character. The meta-characters listed below.
+
+.nf
+ beginning of string ^ end of string $
+ one character ? zero or more characters *
+ white space # escape character \
+ ignore case { end ignore case }
+ begin character class [ end character class ]
+ not, in char class ^ range, in char class -
+.fi
+
+The expression may also include arithmetic operators and functions.
+The following arithmetic operators and functions are supported.
+
+.nf
+addition + subtraction -
+multiplication * division /
+negation - exponentiation **
+absolute value abs(x) cosine cos(x)
+sine sin(x) tangent tan(x)
+arc cosine acos(x) arc sine asin(x)
+arc tangent atan(x) arc tangent atan2(x,y)
+exponential exp(x) square root sqrt(x)
+natural log log(x) common log log10(x)
+minimum min(x,y) maximum max(x,y)
+convert to integer int(x) convert to real real(x)
+nearest integer nint(x) modulo mod(x)
+.fi
+.ih
+EXAMPLES
+.nf
+1. Dump the "ID", "MAG" and "MAGERR" columns of the DAOPHOT package NSTAR
+output to the standard output.
+
+ pt> tbdump n4147.nst.1 "ID,MAG,MAGERR" yes
+
+2. Dump the "ID", "MAG", and "MAGERR" columns of the above file for records
+which have "MAG <= 20.0".
+
+ pt> tbdump n4147.nst.1 "ID,MAG,MAGERR" "MAG <= 20.0"
+
+3. Dump the "MAG" and "MAGERR" columns of the above file and pipe the
+result to graph.
+
+ pt> tbdump n4147.nst.1 "MAG,MAGERR" yes | graph STDIN
+
+4. Dump all the columns in the first 100 rows of the above file.
+
+ pt> tbdump n4147.nst.1 "" yes rows="1-100"
+.fi
+.ih
+BUGS
+.ih
+SEE ALSO
+tables.tdump,tables.tprint,tables.tlcol,tables.tcreate,ptools.txdump,ptools.pdump
+.endhelp
diff --git a/noao/digiphot/ptools/doc/tbkeycol.hlp b/noao/digiphot/ptools/doc/tbkeycol.hlp
new file mode 100644
index 00000000..0c79b882
--- /dev/null
+++ b/noao/digiphot/ptools/doc/tbkeycol.hlp
@@ -0,0 +1,50 @@
+.help tbkeycol Aug91 noao.ptools.digiphot
+.ih
+NAME
+tbkeycol -- create new table columns from table header keywords
+
+.ih
+USAGE
+tbkeycol table keywords
+
+.ih
+PARAMETERS
+
+.ls table
+The list of input ST tables.
+.le
+.ls keywords
+The list of ST table header keywords, separated by commas, whose values will be
+copied into the newly created ST table columns.
+.le
+
+.ih
+DESCRIPTION
+
+TBKEYCOL takes a list of ST tables \fItable\fR and copies the values of the
+header keywords \fIkeywords\fR into newly created columns of the same name.
+If the input file is not an ST table, an output column of the same name as the
+keyword already exists, or the keyword does not exist, no action is
+taken. Otherwise a new column of the same name as the keyword is created,
+and the value of the keyword is copied into all rows of the table.
+
+.ih
+EXAMPLES
+
+1. For the list of ST tables in tablelist, copy the values of the header
+keywords "IMAGE", "ITIME", "IFILTER", and "XAIRMASS" into table columns
+of the same name.
+
+.nf
+ pt> tbkeycol @tablelist "IMAGE,ITIME,IFILTER,XAIRMASS"
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+Since the structure of the ST table is altered the user must have
+write permission on the table in order to run TBKEYCOL.
+.ih
+SEE ALSO
+.endhelp
diff --git a/noao/digiphot/ptools/doc/tbrenumber.hlp b/noao/digiphot/ptools/doc/tbrenumber.hlp
new file mode 100644
index 00000000..55c50770
--- /dev/null
+++ b/noao/digiphot/ptools/doc/tbrenumber.hlp
@@ -0,0 +1,54 @@
+.help tbrenumber May93 noao.digiphot.ptools
+.ih
+NAME
+tbrenumber -- renumber a list of APPHOT/DAOPHOT STSDAS table database(s)
+.ih
+USAGE
+tbrenumber tables
+.ih
+PARAMETERS
+.ls tables
+The list of APPHOT/DAOPHOT STSDAS table databases to be renumbered.
+.le
+.ls idoffset = 0
+An integer offset to be added to the id numbers of the stars in
+the output renumbered photometry file. If idoffset is > 0, the output
+id numbers will run from 1 + idoffset to N + idoffset instead of from 1 to N.
+.le
+.ls id = "ID"
+The name of the keyword whose value is the sequence number of the object
+in the database.
+.le
+.ih
+DESCRIPTION
+TBRENUMBER is a simple script task which accepts an APPHOT/DAOPHOT STSDAS
+table database and renumbers the objects from 1 + idoffset to N + idoffset,
+where N is the number
+of objects in the database. TBRENUMBER calls the TABLES package TCALC task
+to actually do the work.
+
+.ih
+EXAMPLES
+
+1. Renumber a concatenated NSTAR photometry file that has been written with
+TBCONCAT.
+
+.nf
+ pt> tbrenumber m92r.nst
+.fi
+
+2. Renumber a PHOT photometry file of extra stars so as to ensure the
+stars' id numbers are greater than 4000.
+
+.nf
+ pt> tbrenumber m92r.mag.extra idoffset=4000
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+.ih
+SEE ALSO
+ptools.txrenumber,ptools.prenumber,tables.tcalc
+.endhelp
diff --git a/noao/digiphot/ptools/doc/tbselect.hlp b/noao/digiphot/ptools/doc/tbselect.hlp
new file mode 100644
index 00000000..1a4ad6f4
--- /dev/null
+++ b/noao/digiphot/ptools/doc/tbselect.hlp
@@ -0,0 +1,107 @@
+.help tbselect Aug91 noao.digiphot.ptools
+.ih
+NAME
+tbselect -- create a new APPHOT/DAOPHOT table database from selected rows
+of an old APPHOT/DAOPHOT table database
+.ih
+USAGE
+tbselect intable outtable expr
+.ih
+PARAMETERS
+.ls intable
+The list of APPHOT/DAOPHOT STSDAS table databases from which rows are
+copied.
+.le
+.ls outtable
+The list of output APPHOT/DAOPHOT table databases to contain the copied rows.
+The number of output tables must equal the number of input tables.
+.le
+.ls expr
+The boolean expression which determines which rows are copied to the new
+table. \fIExpr\fR is evaluated once for each input row of data.
+If \fIexpr\fR is "yes" a copy is made of the old input table.
+.le
+.ih
+DESCRIPTION
+TSELECT creates a new APPHOT/DAOPHOT table database containing a subset of
+the rows in the old table database.
+The rows are selected on the basis of an input boolean expression whose
+variables are table column names.
+If after substituting the values associated
+with a particular row into the column name variables the expression evaluates
+to yes, that row is included in the output table.
+
+The supported
+operators and functions are briefly described below. A detailed description
+of the boolean expression evaluator and its syntax can be found
+in the manual page for the IMAGES package HEDIT task.
+
+The following logical operators can be used in the expression.
+
+.nf
+ equal == not equal !=
+ less than < less than or equal <=
+ greater than > greater than or equal >=
+ or || and &&
+ negation ! pattern match ?=
+ concatenation //
+.fi
+
+The pattern match character ?= takes a
+string expression as its first argument and a pattern as its second argument.
+The result is yes if the pattern is contained in the string expression.
+Patterns are strings which may contain pattern matching meta-characters.
+The meta-characters themselves can be matched by preceeding them with the escape
+character. The meta-characters are listed below.
+
+.nf
+ beginning of string ^ end of string $
+ one character ? zero or more characters *
+ white space # escape character \
+ ignore case { end ignore case }
+ begin character class [ end character class ]
+ not, in char class ^ range, in char class -
+.fi
+
+The expression may also include arithmetic operators and functions.
+The following arithmetic operators and functions are supported.
+
+.nf
+addition + subtraction -
+multiplication * division /
+negation - exponentiation **
+absolute value abs(x) cosine cos(x)
+sine sin(x) tangent tan(x)
+arc cosine acos(x) arc sine asin(x)
+arc tangent atan(x) arc tangent atan2(x,y)
+exponential exp(x) square root sqrt(x)
+natural log log(x) common log log10(x)
+minimum min(x,y) maximum max(x,y)
+convert to integer int(x) convert to real real(x)
+nearest integer nint(x) modulo mod(x)
+.fi
+.ih
+EXAMPLES
+
+1. Extract all stars brighter than twentieth magnitude from an
+the output of the DAOPHOT ALLSTAR task and create a new database.
+
+.nf
+ pt> tbselect m92.al.1 m92out "MAG <= 20.0"
+.fi
+
+2. Create a new database from the output of the DAOPHOT NSTAR task by
+removing all INDEF valued magnitudes.
+
+.nf
+ pt> tbselect n2264b.nst.1 n2264out "MAG != INDEF"
+
+.fi
+.ih
+BUGS
+Column names must be set off from operators by blanks in the expression so
+that they can be correctly parsed by the expression evaluator.
+.ih
+SEE ALSO
+ptools.txselect,tables.tselect,ptools.tbselect
+.endhelp
diff --git a/noao/digiphot/ptools/doc/tbsort.hlp b/noao/digiphot/ptools/doc/tbsort.hlp
new file mode 100644
index 00000000..6812868a
--- /dev/null
+++ b/noao/digiphot/ptools/doc/tbsort.hlp
@@ -0,0 +1,78 @@
+.help tbsort Aug91 noao.digiphot.ptools
+.ih
+NAME
+tbsort -- sort an APPHOT/DAOPHOT STSDAS table database on one or more columns
+.ih
+USAGE
+tbsort table columns
+.ih
+PARAMETERS
+.ls table
+The list of APPHOT/DAOPHOT table databases to be sorted in-place.
+All tables are sorted on the same column or columns.
+.le
+.ls columns
+The list of columns to sort on. A column template consists of a list of
+either column names, or column patterns containing the usual pattern matching
+meta-characters. The names or patterns are separated by commas or white space.
+The list can be placed in a file and the name of the file preceeded by a
+'@' can be given in place of the column template.
+.le
+.ls ascend = yes
+If \fIascend\fR = yes, the table is sorted in ascending value order, with the
+first
+row containing the smallest value of the sorted column. Otherwise, the table
+is sorted in descending order, with the largest value first.
+.le
+.ls casesens = yes
+If \fIcasesens\fR = yes, sorts on character columns are case sensitive,
+with upper case letters preceding lower case in the sort.
+Otherwise, the sort is case insensitive.
+.le
+.ih
+DESCRIPTION
+TBSORT sorts an APPHOT/DAOPHOT STSDAS table database.
+TBSORT operates in place so
+a copy of the unsorted table must be made with the TABLES
+package TCOPY task in order to preserve the original table.
+The column or columns to sort on are specified by the parameter
+\fIcolumns\fR, which is a list of column names or column name patterns
+separated by
+commas. The most significant column name is the first in the list. Subsequent
+columns are used to break ties. There are two flags, \fIascend\fR
+and \fIcasesens\fR. If \fIascend\fR is yes,
+the first row in the output table holds the smallest value if
+the sorted column is numeric or the first string in alphabetic order if the
+sorted column is a character string. If \fIcasesens\fR is yes,
+upper case characters
+precede lower case characters in sort order. Otherwise, case is not significant
+in determining the sort order. No precedes yes when sorting a boolean column
+in ascending order. Null table elements always are last in the sort, regardless
+of whether \fIascend\fR is yes or no.
+
+TBSORT is identical to the TABLES package sort with the exception that
+it has its own copy of the default parameter set so that users
+can modify the parameters independently of the TBSORT task in TABLES.
+.ih
+EXAMPLES
+
+1. Sort the output of the DAOPHOT ALLSTAR task in increasing order of
+magnitude.
+
+.nf
+ pt> tbsort m92.al.1 MAG
+.fi
+
+2. Sort the output of the DAOPHOT task NSTAR in increasing order of
+the y position.
+
+.nf
+ pt> tbsort m92.nst.1 YCENTER
+.fi
+
+.ih
+BUGS
+.ih
+SEE ALSO
+ptools.txsort,ptools.psort,tables.tbsort
+.endhelp
diff --git a/noao/digiphot/ptools/doc/txcalc.hlp b/noao/digiphot/ptools/doc/txcalc.hlp
new file mode 100644
index 00000000..747adabd
--- /dev/null
+++ b/noao/digiphot/ptools/doc/txcalc.hlp
@@ -0,0 +1,80 @@
+.help txcalc May93 noao.digiphot.ptools
+.ih
+NAME
+txcalc - perform an arithmetic operation on a field in a list of apphot/daophot
+ text databases
+.ih
+USAGE
+txcalc textfiles field value
+.ih
+PARAMETERS
+.ls textfiles
+The APPHOT/DAOPHOT text database(s) containing the field to be recomputed.
+.le
+.ls field
+The field to be recomputed. Field must be an integer or real field
+in the input file(s).
+.le
+.ls value
+The arithmetic expression used to recompute the specified field.
+Value may be an integer or real expression but must match the data
+type of field. The functions real and int may be used to do type
+conversions.
+.le
+
+.ih
+DESCRIPTION
+
+TXCALC reads in the values of the \fIfield\fR keyword
+from a set of APPHOT/DAOPHOT text databases, replaces the old values
+with new values equal to the value of the arithmetic expression \fIvalue\fR,
+and updates the text databases(s).
+
+The expression \fIvalue\fR consists of variables which are the field names
+specified by the #N keywords or the parameters specified by the
+#K keywords in the APPHOT/DAOPHOT text databases.
+Only keywords beginning with #N can actually be replaced.
+
+The supported
+arithmetic operators and functions are briefly described below.
+
+.nf
+addition + subtraction -
+multiplication * division /
+negation - exponentiation **
+absolute value abs(x) cosine cos(x)
+sine sin(x) tangent tan(x)
+arc cosine acos(x) arc sine asin(x)
+arc tangent atan(x) arc tangent atan2(x,y)
+exponential exp(x) square root sqrt(x)
+natural log log(x) common log log10(x)
+minimum min(x,y) maximum max(x,y)
+convert to integer int(x) convert to real real(x)
+nearest integer nint(x) modulo mod(x)
+.fi
+
+.ih
+EXAMPLES
+
+1. Change the XCENTER and YCENTER fields to XCENTER + 5.4 and YCENTER + 10.3
+respectively in a file produced by the apphot package center task.
+
+.nf
+ pt> txcalc m92.ctr.1 xcenter "xcenter+5.4"
+ pt> txcalc m92.ctr.1 ycenter "ycenter+10.3"
+.fi
+
+2. Add a constant to the computed magnitudes produced by nstar.
+
+.nf
+ pt> txcalc n4147.nst.2 mag "mag+3.457"
+.fi
+
+.ih
+BUGS
+TXCALC does not allow arrays in the expression field.
+
+.ih
+SEE ALSO
+ptools.tbcalc,tables.tcalc,ptools.pcalc
+.endhelp
diff --git a/noao/digiphot/ptools/doc/txconcat.hlp b/noao/digiphot/ptools/doc/txconcat.hlp
new file mode 100644
index 00000000..87516f72
--- /dev/null
+++ b/noao/digiphot/ptools/doc/txconcat.hlp
@@ -0,0 +1,45 @@
+.help txconcat Dec92 noao.digiphot.ptools
+.ih
+NAME
+txconcat -- concatenate a list of APPHOT/DAOPHOT text databases
+.ih
+USAGE
+txconcat textfiles outfile
+.ih
+PARAMETERS
+.ls textfiles
+The list of APPHOT/DAOPHOT text databases to be concatenated.
+.le
+.ls outfile
+The name of the output APPHOT/DAOPHOT text database.
+.le
+.ls task = "TASK"
+The name of the keywords whose value is the name of the task which wrote
+the database.
+.le
+.ih
+DESCRIPTION
+TXCONCAT is a simple task which accepts a list of APPHOT/DAOPHOT text
+database files and concatenates them into one resultant output file.
+TXCONCAT checks that all the file are indeed APPHOT/DAOPHOT text
+database files and that they were all written by the same task before
+performing the concatenation.
+
+.ih
+EXAMPLES
+
+1. Concatenate a list of DAOPHOT PHOT task result files into a single
+output file.
+
+.nf
+ pt> txconcat m92r.mag.1,m92r.mag.2,m92r.mag.3 m92rall.mag.1
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+.ih
+SEE ALSO
+ptools.tbconcat,ptools.pconcat,tables.tmerge,concatenate
+.endhelp
diff --git a/noao/digiphot/ptools/doc/txdump.hlp b/noao/digiphot/ptools/doc/txdump.hlp
new file mode 100644
index 00000000..bd432afb
--- /dev/null
+++ b/noao/digiphot/ptools/doc/txdump.hlp
@@ -0,0 +1,167 @@
+.help txdump Aug91 noao.digiphot.ptools
+.ih
+NAME
+txdump - print fields from selected records in an APPHOT/DAOPHOT text database
+.ih
+USAGE
+txdump textfiles fields expr
+.ih
+PARAMETERS
+.ls textfiles
+The APPHOT/DAOPHOT text database whose fields from selected records are to
+be printed.
+.le
+.ls fields
+A template defining the fields to be printed from each selected record.
+The fields are specified by keywords defined in the text database output
+files #K and #N entries. Upper or lower case and minimum match
+abbreviations are permissible. Some fields such as "mag" may have
+multiple entries. An individual entry can be referenced by specifying an
+array index, e.g. "mag[2]" or several values can be selected by
+specifying a range of elements, e.g. "mag[1-3]". The fields are output in
+the order in which they are specified in the template.
+.le
+.ls expr
+The boolean expression to be evaluated once per record.
+Only the fields in those records for which the boolean expression
+evaluates to yes are printed.
+If \fIexpr\fR = "yes", the specified fields in all the records are
+printed.
+.le
+.ls headers = no
+Preserve the APPHOT/DAOPHOT text database output format. The selected
+fields are printed on the standard output, preceded by parameters list,
+if \fIparameters\fR = yes, and the keyword, units,
+and format information, exactly as they appear in the text database.
+.le
+.ls parameters = yes
+Print the keyword parameters records in APPHOT/DAOPHOT format on the
+standard output if \fIheaders\fR = yes.
+.le
+
+.ih
+DESCRIPTION
+\fITXDUMP\fR selects a subset of fields specified by the \fIfields\fR
+parameter from an APPHOT/DAOPHOT text database or a list of databases by
+evaluating a boolean expression supplied by the user and prints the
+results on the standard output.
+If \fIheaders\fR = no, the resultant output is in simple list format
+with all the specified fields in one line of text and adjacent fields
+separated by whitespace. The fields are printed in the order in
+which they appear in \fIexpr\fR. If \fIheaders\fR = yes, the
+selected fields are printed on the standard output, preceded by
+the parameter list, if \fIparameters\fR = yes, and the keyword, units,
+and format information, exactly as they appear in the text database.
+Newlines will not be inserted in the output so users should take
+care not to exceed the IRAF text file line limit of 161 characters.
+
+The output records are selected on the basis of an input boolean
+expression \fIexpr\fR whose variables are the field names
+specified by the #N keywords or the parameters specified by the
+#K keywords in the APPHOT/DAOPHOT text database.
+If after substituting the values associated
+with a particular record into the field name variables the
+expression evaluates
+to yes, that record is included in the output table.
+
+The supported
+operators and functions are briefly described below. A detailed description
+of the boolean expression evaluator and its syntax can be found
+in the manual page for the IMAGES package HEDIT task.
+
+The following logical operators can be used in the boolean expression.
+
+.nf
+ equal == not equal !=
+ less than < less than or equal <=
+ greater than > greater than or equal >=
+ or || and &&
+ negation ! pattern match ?=
+ concatenation //
+.fi
+
+The pattern match character ?= takes a
+string expression as its first argument and a pattern as its second argument.
+The result is yes if the pattern is contained in the string expression.
+Patterns are strings which may contain pattern matching meta-characters.
+The meta-characters themselves can be matched by preceeding them with the escape
+character. The meta-characters listed below.
+
+.nf
+ beginning of string ^ end of string $
+ one character ? zero or more characters *
+ white space # escape character \
+ ignore case { end ignore case }
+ begin character class [ end character class ]
+ not, in char class ^ range, in char class -
+.fi
+
+The expression may also include arithmetic operators and functions.
+The following arithmetic operators and functions are supported.
+
+.nf
+addition + subtraction -
+multiplication * division /
+negation - exponentiation **
+absolute value abs(x) cosine cos(x)
+sine sin(x) tangent tan(x)
+arc cosine acos(x) arc sine asin(x)
+arc tangent atan(x) arc tangent atan2(x,y)
+exponential exp(x) square root sqrt(x)
+natural log log(x) common log log10(x)
+minimum min(x,y) maximum max(x,y)
+convert to integer int(x) convert to real real(x)
+nearest integer nint(x) modulo mod(x)
+.fi
+
+.ih
+EXAMPLES
+
+1. Print the fields XCENTER and YCENTER from the output of the APPHOT
+CENTER task.
+
+.nf
+ pt> txdump image.ctr.1 XCENTER,YCENTER yes
+.fi
+
+2. Select the fields ID, XCENTER, YCENTER and the first three magnitudes
+MAG{1-3] from the output of the APPHOT PHOT task.
+
+.nf
+ pt> txdump image.mag.2 "ID,XCEN,YCEN,MAG[1-3]" yes
+.fi
+
+3. Print all fields for all records in the above file with a magnitude
+through the first aperture of less than 20.0.
+
+.nf
+ pt> txdump image.mag.2 * "MAG[1] < 20.0"
+.fi
+
+4. Print the id and all magnitudes for which magnitudes 1 and 2 are < 20.0
+from a file which is the output of the APPHOT PHOT task.
+
+.nf
+ pt> txdump image.mag.3 ID,MAG "MAG[1] < 20.0 && MAG[2] < 20.0"
+.fi
+
+5. Select the ID, XCENTER, YCENTER, MSKY and MAG fields from the output
+ of the DAOPHOT NSTAR task for records where the magnitude is not
+ INDEF, while preserving the format of the text database so it
+ is suitable for input into a rerun of NSTAR.
+
+.nf
+ pt> txdump image.nst.1 "ID,XCENTER,YCENTER,MSKY,MAG" \
+ "MAG[1] != INDEF" headers+
+.fi
+
+.ih
+BUGS
+TXDUMP does not allow arrays in the expression field.
+
+Users should not dump more fields than fill a 161 character textline
+as IRAF does not currently fully support longer text lines.
+.ih
+SEE ALSO
+images.hedit,ptools.tbdump,tables.tdump,ptools.pdump
+.endhelp
diff --git a/noao/digiphot/ptools/doc/txrenumber.hlp b/noao/digiphot/ptools/doc/txrenumber.hlp
new file mode 100644
index 00000000..67ac5a42
--- /dev/null
+++ b/noao/digiphot/ptools/doc/txrenumber.hlp
@@ -0,0 +1,59 @@
+.help txrenumber May93 noao.digiphot.ptools
+.ih
+NAME
+txrenumber -- renumber a list of APPHOT/DAOPHOT text database
+.ih
+USAGE
+txrenumber textfiles
+.ih
+PARAMETERS
+.ls textfiles
+The APPHOT/DAOPHOT text database to be renumbered.
+.le
+.ls idoffset = 0
+An integer offset to be added to the id numbers of the stars in
+the output renumbered photometry file. If idoffset is > 0, the output
+id numbers will run from 1 + idoffset to N + idoffset instead of from 1 to N.
+.le
+.ls id = "ID"
+The name of the keyword whose value is the sequence number of the object in
+the list. After renumbering the original values of the \fIid\fR are replaced
+by numbers 1 through N, where N is the total number of objects in the list.
+The id keyword must denote an integer quantity.
+.le
+.ih
+DESCRIPTION
+TXRENUMBER is a simple task which accepts an APPHOT/DAOPHOT text
+database file and renumbers all the objects in the file beginning
+with 1 and ending with the number of objects in the file.
+The renumber operation is performed in place. The original
+values of the \fIid\fR field are replaced by numbers 1 + idoffset
+through N + idoffset
+where N is the total number of objects in the list.
+A renumber operation is typically performed after another
+list operation such as TXCONCAT or TXSORT.
+
+.ih
+EXAMPLES
+
+1. Renumber the stars in a concatenated file produced by TXCONCAT.
+
+.nf
+ pt> txrenumber m92rall.mag.1
+.fi
+
+2. Renumber a PHOT photometry file of extra stars so as to ensure the
+stars' id numbers are greater than 4000.
+
+.nf
+ pt> txrenumber m92r.mag.extra idoffset=4000
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+.ih
+SEE ALSO
+ptools.tbrenumber,ptools.prenumber,tables.tcalc
+.endhelp
diff --git a/noao/digiphot/ptools/doc/txselect.hlp b/noao/digiphot/ptools/doc/txselect.hlp
new file mode 100644
index 00000000..b80357ea
--- /dev/null
+++ b/noao/digiphot/ptools/doc/txselect.hlp
@@ -0,0 +1,121 @@
+.help txselect Aug91 noao.digiphot.ptools
+.ih
+NAME
+txselect - select records from an APPHOT/DAOPHOT text database
+.ih
+USAGE
+txselect textfiles outfiles expr
+.ih
+PARAMETERS
+.ls textfiles
+The APPHOT/DAOPHOT text database(s) containing the records from which the
+selection is to be made.
+.le
+.ls outfiles
+The output APPHOT/DAOPHOT text database(s) containing the selected records.
+.le
+.ls expr
+The boolean expression to be evaluated once for each record.
+Each input record for which \fIexpr\fR evaluates as "yes" will be
+written to the output file.
+If \fIexpr\fR = yes, a copy is made of the input file.
+.le
+
+.ih
+DESCRIPTION
+TXSELECT selects a subset of the records
+from a set of APPHOT/DAOPHOT text databases
+and writes the new records out to another set of text databases.
+
+The output records are selected on the basis of an input boolean
+expression \fIexpr\fR whose variables are the field names
+specified by the #N keywords or the parameters specified by the
+#K keywords in the APPHOT/DAOPHOT text database.
+If after substituting the values associated
+with a particular record into the field name variables the
+expression evaluates
+to yes, that record is included in the output database.
+
+The supported
+operators and functions are briefly described below. A detailed description
+of the boolean expression evaluator and its syntax can be found
+in the manual page for the IMAGES package HEDIT task.
+
+The following logical operators can be used in the boolean expression.
+
+.nf
+ equal == not equal !=
+ less than < less than or equal <=
+ greater than > greater than or equal >=
+ or || and &&
+ negation ! pattern match ?=
+ concatenation //
+.fi
+
+The pattern match character ?= takes a
+string expression as its first argument and a pattern as its second argument.
+The result is yes if the pattern is contained in the string expression.
+Patterns are strings which may contain pattern matching meta-characters.
+The meta-characters themselves can be matched by preceeding them with the escape
+character. The meta-characters listed below.
+
+.nf
+ beginning of string ^ end of string $
+ one character ? zero or more characters *
+ white space # escape character \
+ ignore case { end ignore case }
+ begin character class [ end character class ]
+ not, in char class ^ range, in char class -
+.fi
+
+The boolean expression may also include arithmetic operators and functions.
+The following arithmetic operators and functions are supported.
+
+.nf
+addition + subtraction -
+multiplication * division /
+negation - exponentiation **
+absolute value abs(x) cosine cos(x)
+sine sin(x) tangent tan(x)
+arc cosine acos(x) arc sine asin(x)
+arc tangent atan(x) arc tangent atan2(x,y)
+exponential exp(x) square root sqrt(x)
+natural log log(x) common log log10(x)
+minimum min(x,y) maximum max(x,y)
+convert to integer int(x) convert to real real(x)
+nearest integer nint(x) modulo mod(x)
+.fi
+
+.ih
+EXAMPLES
+
+1. Select the records from the output of the APPHOT CENTER task for
+which 100. <= XCENTER <= 200. and 300. <= YCENTER <= 400.
+
+.nf
+ pt> txselect m92.ctr.1 m92out \
+ "XCE >= 100. && XCE <= 200. && YCE >= 300. && YCE <= 400."
+.fi
+
+2. Select the records from the output of the APPHOT PHOT task for which
+the first magnitude is not equal to INDEF.
+
+.nf
+ pt> txselect n4147.mag.2 n4147out "MAG[1] != INDEF"
+.fi
+
+3. Select the records from the output of the DAOPHOT ALLSTAR task
+ for which CHI <= 5.0 and MERR <= .10 magnitudes.
+
+.nf
+ pt> txselect m92b.al.1 m92out "CHI <= 5.0 && MERR <= 1.0"
+.fi
+
+.ih
+BUGS
+TXSELECT does not allow arrays in the expression field.
+
+.ih
+SEE ALSO
+images.hselect,images.hedit,ptools.tbselect,tables.tselect,ptools.pselect
+.endhelp
diff --git a/noao/digiphot/ptools/doc/txsort.hlp b/noao/digiphot/ptools/doc/txsort.hlp
new file mode 100644
index 00000000..b9a324fd
--- /dev/null
+++ b/noao/digiphot/ptools/doc/txsort.hlp
@@ -0,0 +1,61 @@
+.help txsort Aug91 noao.digiphot.ptools
+.ih
+NAME
+txsort -- sort a list of APPHOT/DAOPHOT text database file(s)
+.ih
+USAGE
+txsort textfile field
+.ih
+PARAMETERS
+.ls textfiles
+The input APPHOT/DAOPHOT text database(s) to be sorted.
+The sort is performed in place.
+.le
+.ls field
+The field to be sorted on. \fIField\fR may be any quantity defined by
+the APPHOT/DAOPHOT #K and #N keywords. The keywords may be
+of type integer or real, in which case a numeric sort is performed,
+boolean, in which case the boolean constant "no" has a smaller value
+than "yes", or character in which case an alphabetic sort is performed.
+.le
+.ls ascend = yes
+Sort in increasing value order.
+.le
+.ih
+DESCRIPTION
+TXSORT is a simple task which accepts a list of APPHOT/DAOPHOT text
+database files
+and sorts them in place based on the value of the selected field
+specifier \fIfield\fR. By default the sort is performed in increasing order
+of the value
+of \fIfield\fR, but a reverse sort can be performed by
+setting \fIascend\fR = "no".
+
+If \fIfield\fR is a real or integer quantity the sort is numeric; if boolean
+the boolean constant "no" is assumed to have a smaller value than "yes"; if
+character the sort is alphabetic.
+.ih
+EXAMPLES
+
+1. Sort the output of the APPHOT task PHOT in increasing order of
+the y position.
+
+.nf
+ pt> txsort m92.mag.1 YCENTER
+.fi
+
+2. Sort the output of the DAOPHOT task ALLSTAR in increasing order of
+ magnitude.
+
+.nf
+ pt> txsort m92.al.1 MAG
+.fi
+
+.ih
+TIME REQUIREMENTS
+.ih
+BUGS
+.ih
+SEE ALSO
+ptools.tbsort,tables.tsort,ptools.psort,sort
+.endhelp