% @(#)computzypl.hlq	19.1 (ESO-IPG) 02/25/03 14:03:04
%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
%.COPYRIGHT  (c)  1990 European Southern Observatory
%.IDENT      computzypl.hlq
%.AUTHOR     KB, IPG/ESO
%.KEYWORDS   MIDAS, help files, COMPUTE/ZYPLANE
%.PURPOSE    On-line help file for the command: COMPUTE/ZYPLANE
%.VERSION    1.0  12-OCT-1995 : Creation, KB
%----------------------------------------------------------------
\se
SECTION./ZYPL
\es\co
COMPUTE/ZYPLANE					12-OCT-1995  KB
\oc\su
COMPUTE/ZYPLANE result_cube = expression
	compute arithmetic expression on zy_planes of cubes
\us\pu
Purpose:  
	   Compute arithmetic expressions on the zy_planes of image
           cubes.
\up\sub
Subject: 
           Arithmetic.
\bus\sy
Syntax: 
           COMPUTE/ZYPLANE result_cube = expression
\ys\pa
           result_cube = frame to get result of expression.
               The result frame will be created using real data format, no
               matter what data format the individual input frames have.
\\
               If descriptor copying is enabled (which is the default, see also
               the command SET/MIDAS_SYSTEM DSCCOPY=..),
\\
               all non-standard descriptors of the first 3-dim input frame in
               the expression are copied to the result frame unless you enter
               `frame,dscname' as result_cube with dscname the name of a frame
               in the expression;
\\
               then, the non-standard descriptors of that frame are copied
               instead of the ones of the first 3-dim frame in the expression
\ap\pa
           expression = arithmetic expression with up to 21 operands, which may
               be functions and frames or/and constants in the usual algebraic
               notation 
\ap\no
Note:      
           The zy_plane of a cube is formed by the z- and y-axis and has 
           NPIX(3) pixels per row and NPIX(2) pixels per column.
\\
           If a frame operand has NAXIS=2, the single plane of that frame is
           used in the computation for all zy_planes of the result frame.
\\
           If a frame operand has NAXIS=1, the single line of that frame is 
           used in the computation for all lines of all zy_planes of the result
           frame.
\\
           There must be at least one 3-dim frame operand in the arithmetic
           expression, from which the dimensions of the result frame are
           taken over.
\\
           If the result frame has the same name as a frame appearing in the
           expression, no new frame is created, but the result frame is
           overwritten. Furthermore, since no new result frame is created, the
           final data is reconverted to the original data format when closing
           the result frame and you could get truncation errors!
\\
           The operations +, -, *, / and ** are supported with the same
           precedence as in FORTRAN. Parentheses may be used to change that
           order as well as to nest operations.
\\
           The functions
\\
           SQRT(a), EXP(a), EXP10(a), LN(a), LOG10(a), SIN(a) ASIN(a), COS(a),
           ACOS(a), TAN(a), ATAN(a), INT(a), ABS(a), ATAN2(a1,a2), MAX(a1,a2),
           MIN(a1,a2) and MOD(a1,a2)
\\
           are implemented as in FORTRAN. Except, that INT(a) will return the
           nearest integer of "a" converted to real. The trigonometric
           functions expect arguments in degrees!
\\
           Results of illegal operations (e.g. division by zero) are set to
           the "null value" stored in the real keyword NULL.
\on\sa
See also:
           COMPUTE/XYPLANE, COMPUTE/XZPLANE, COMPUTE/IMAGE
\\
           TRANSPOSE/CUBE, SET/MIDAS_SYS
\as\exs
Examples:
\ex
           COMPUTE/ZYPLANE res3 = ima3+10*jma3
             Compute the zy-planes of the resulting cube `res3.bdf' from the
             expression combining the zy-planes of the cubes `ima3.bdf' and
             `jma3.bdf'. The size and no. of zy-planes of the cubes `ima3.bdf'
             and `jma3.bdf' must be equal.
\\
             The dimensions of `res3.bdf' are taken from `ima3.bdf'.
\\
             If descriptor copying is enabled, also all non-standard 
             descriptors of `ima3.bdf' (the 1. 3-dim frame in the expression)
             are copied to `res3.bdf'.
\xe\ex
           COMPUTE/ZYPLANE res3,jma3 = ima3+10*jma3
            As above, but if descriptor copying is enabled, all non-standard
            descriptors of `jma3.bdf' are copied to `res3.bdf'.
\xe\ex
           COMPUTE/ZYPLANE res3 = ima2-ima3
             Compute the zy-planes of the resulting cube `res3.bdf' from the
             difference of the 2-dim frame `ima2.bdf' and all zy-planes of the
             cube `ima3.bdf'. The size of `ima2.bdf' and the size of the
             zy-planes of `ima3.bdf' must be equal. That means, NPIX(1),(2) of
             `ima2.bdf' and NPIX(3),(2) of `ima3.bdf' must be equal.
\\
             The dimensions of `res3.bdf' are taken from `ima3.bdf'.
\xe\ex
           COMPUTE/ZYPLANE res3 = ima2-ima3+sin(ima1)
             Compute the zy-planes of the resulting cube `res3.bdf' from the
             expression involving the 2-dim frame `ima2.bdf', the 3-dim
             frame  `ima3.bdf' and the 1-dim frame `ima1.bdf'. The 2-dim frame 
             `ima2.bdf' is used with all zy-planes of the cube `ima3.bdf'.
             Also, the 1-dim frame `ima1.bdf' is used with all lines of
             `ima2.bdf' and all lines of all zy-planes of `ima3.bdf'. The size
             of `ima2.bdf' and the size of the zy-planes of `ima3.bdf' must be
             equal. Also, the no. of pixels of `ima1.bdf' must be equal to
             the no. of pixels per line of the zy-planes of `ima3.bdf'. That
             means, NPIX(1) of `ima2.bdf' as well as of `ima1.bdf' must be
             equal to NPIX(3) of `ima3.bdf'. And NPIX(2) of `ima2.bdf' must 
             be equal to NPIX(2) of `ima3.bdf'.
\\
             The dimensions of `res3.bdf' are taken from `ima3.bdf'.
\xe \sxe
