Level 2 Help for F2

INP

 INPut data sets in byte, I*2, I*4, or REAL*4 format.  The format of the
 input files is taken from its label.  There may be 0 to 18 input data sets.


OUT

 OUTput data set in byte, I*2, I*4, or REAL*4 format. Primary input format
 is assumed if FORMAT is not specified


SIZE

 (Starting Line, Starting Sample, Number of Lines, Number of Samples)
 The standard vicar size field. SIZE gives the area of operation on inputs
 and defines the size of the output.  If larger than any of the inputs,
 its values are reduced to the minimum line or sample of the inputs.
 The SIZE parameter takes precedence over SS, SL, NS, NL.  If it is not
 given (default case), then it gets the information from the first input
 file label.


BANDS

The bands parameter determines the bands in the input
files to be processed. It is specified
as (SB,NB), where
	SB is the starting band
	NB is the number of bands to be copied
(Default is all bands in image.)


SL

 Starting Line - Alternate method of specifying the first SIZE parameter value


SS

 Starting Sample - Alternate method of specifying the first SIZE param value


NL

 Number of Lines - Alternate method of specifying the first SIZE param value


NS

 Number of Samples - Alternate method of specifying the first SIZE param value


SB

Starting Band of window - Can not be defined in SIZE parameter. (Default is
first band in image.)


NB

Number of Bands of window - Can not be defined in SIZE parameter.  (Default is
number of bands in image.)


ORG

Image organization for output image when zero input images.  If omitted, output
image will be BSQ.  Has no effect if there ARE input images.


FORMAT

 Valid values: BYTE, HALF, FULL, REAL.
 These values correspond to the following data formats:
 byte (BYTE), integer*2 (HALF), integer*4 (FULL), real*4 (REAL).
 This parameter specifies the data format of the output file(s).
 Default is primary input format.


FUNCTION

 Specifies a function to be applied to the input data set.
 The function, in the form of a FORTRAN or C like expression, to be
 applied to the input data set(s) to produce the output data
 set.  The default expression is "IN1".
 The function string can include constants, including constants expressed
 in floating point notation.  The string can also include TCL variable
 references.


TRUNC

 Specifies that the results of the calculation will be truncated.
 Default is that results will be rounded.  This keyword is
 inoperative if real*4 output is specified.


EXCLUDE

 Array of values to be excluded from function evaluation.  Up to twenty (20)
 values can be specified.  If any one of the specified values are encountered
 in the inputs, that pixel is not evaluated by the function and the replace-
 ment value specified by the REPLACE parameter is placed in the output pixel.
 If the REPLACE parameter is not specified, the first excluded value among the 
 input pixels is used as the output pixel.


LIMITS

 This is the user defined range of values to be included in function evaluation.
 If values fall outside of this range, the REPLACE parameter value is placed on 
 the output pixel.  If REPLACE is not specified, the lower limit of the range 
 is used.  If the REPLACE value is outside the valid data range, e.g. -54000 for
 halfword data, then the closest valid data value is used in the replacement.
 If the limits are beyond the valid range of the input data, the extremes of the
 input data values are used, e.g. LIMITS=(-5,240) for byte data yields true 
 limits of (0,240).


REPLACE

 Value to be placed in output file when input value is an excluded value or is 
 outside the user specified limits.  REPLACE's value must be within the valid
 data range of the input file.  If the input file is byte, REPLACE can be any
 value between (0,255), inclusive.  If a REPLACE is outside this range, the
 closest valid data value is chosen, e.g. REPLACE=-40000 for halfword data
 yields a REPLACE=-32768.


DUMPCODE

 Activating the keyword 'DUMP tells F2 to display the symbolic output of 
 the compiled code produced by the expression-compiler subroutine KNUTH.
 Its purpose is primarily diagnostic, and allows the examination of the
 way that KNUTH has interpreted the user's input function.

 For example, the command

        f2 INP=(F1,F2) OUT=X FUNCTION="IN1+SQRT(IN2)" 'DUMP

 will output something like:

	Beginning VICAR task F2
	   SQRT   2
	   ADD    1
	   RETN   0
	   ...

 Which reads: load the SQRT of register 2 (IN2) into the active 
 register (which is index 0), then ADD the value of register 1 (IN1)
 to it and RETurnN the value in the active register 0 -- which is
 indeed the requested operation.

 Formerly, F2 always displayed this code dump, but this was sometimes
 inconvienient with long, complex expressions whose dump might require
 80 or more output lines in a log file.