November 8, 1990

PAW version 1.10/00

 
1-  New PAW commands:
    =================
 
 
  * /NTUPLE/LINTRA  IDN [ CHOPT NEVENT IFIRST NVARS VARLIS ] 
 
    IDN        C 'Ntuple Identifier'  
    CHOPT      C 'Options' D=' ' R=' ,N,P' 
    NEVENT     I 'Number of events' D=999999  
    IFIRST     I 'First event' D=1  
    NVARS      I 'Number of the most significant variables' D=20 R=0:20  
    VARLIS     C 'Names of the NVARS most significant variables'  
 
    Data reduction on Ntuple.
    The method used is the PRINCIPAL COMPONENTS ANALYSIS. This method 
    consists in applying a linear transformation to the original 
    variables of a ntuple. This transformation is described by an 
    orthogonal matrix and is equivalent to a rotation of the original 
    space to a new set of coordinates vectors, which hopefully provide 
    easier identification and dimensionality reduction. This matrix is 
    real positive definite and symmetric and has all its eigenvalues 
    greater than zero. Among the family of all complete orthonormal bases,
    the basis formed by the eigenvectors of the covariance matrix and 
    belonging to the largest eigenvalues corresponds to the most 
    significant features for the description of the original ntuple.
    Reduction of the variables for NEVENT events starting at IFIRST
    The default is to take all the first 20 variables.
    CHOPT : Possible options 'NP'
 
       'N'  The variables are normalized
            This option is useful in the case the ranges of variables
            are very different
       'P'  Print more results about the analysis
 
    This command creates a file : -> XTOXSI.FORTRAN or xtoxsi.for,xtoxsi.ftn.
    This file contains a Fortran function which computes the new variables.
    These new variables can be visualised in PAW for example via:
 
     PAW > Ntuple/plot id.xtoxsi.ftn(1)
     PAW > Ntuple/plot id.xtoxsi.ftn(1)%xtoxsi.ftn(3)
 
  This new command has been implemented by J.Le Foll (Saclay)
 
 
  * /FUNCTION/DRAW  UFUNC [ CHOPT ] 
 
    UFUNC      C 'Name of function'  
    CHOPT      C 'Options' D=' ' R=' ' 
 
    Draw the function UFUNC in the current ranges specified by the command:
    RANGE XLOW XUP YLOW YUP ZLOW ZUP and with THETA and PHI angles specified
    by the command ANGLE THETA PHI. The number of points used to evaluate the
    function between XLOW, XUP YLOW, YUP, and ZLOW, ZUP can be changed by the
    command POINTS NPX NPY NPZ.
 
    The function UFUNC may be given in two ways:
 
     - As an expression of the variables x, y, z in the case of a simple function.
 
       Example:
 
       PAW >  FUN/DRAW X*Y*Z         | equivalent to :
       PAW >  FUN/DRAW X*Y*Z=0
       PAW >  FUN/DRAW X**2+Y**2+Z**2=1
       PAW >  FUN/DRAW X**2+Y**2=1-Z**2
 
     - UFUNC is the name of a COMIS function in a text file with the
       name UFUNC.FTN or UFUNC.FOR or UFUNC FORTRAN (Apollo, VAX, IBM).
 
       Example:
 
       The file FTEST.FOR contains:
 
            FUNCTION FTEST(X,Y,Z)
            IF(X.LE.0..AND.Y.LE.0.)THEN
              FTEST=(X+0.5)**2+(Y+0.5)**2+(Z+0.5)**2-0.2
            ELSE
              FTEST=(X-0.5)**2+(Y-0.5)**2+(Z-0.5)**2-0.1
            ENDIF
            END
      
       PAW > RANGE -1 1 -1 1 -1 1  | Define the range as a cube between -1 1 in the 3
                                     directions
       PAW > POINTS 20 20 20       | FUN/DRAW will use 20 points in the 3 directions
       PAW > FUN/DRAW FTEST.FOR    | Draw 2 spheres centred on (-0.5,-0.5,-0.5)
                                     and (0.5,0.5,0.5) with the radius SQRT(0.2)
                                     and SQRT(0.1)
 
  * /FUNCTION/ANGLE  [ THETA PHI ] 
 
    THETA      R 'Angle THETA in degrees' D=30  
    PHI        R 'Angle PHI in degrees' D=30  
 
    Change the angles THETA and PHI used by FUN/DRAW and HISTO/PLOT.
 
 
  * /FUNCTION/RANGE  [ XLOW XUP YLOW YUP ZLOW ZUP ] 
 
    XLOW       R 'X Lower limit' D=-1  
    XUP        R 'X Upper limit' D=1  
    YLOW       R 'Y Lower limit' D=-1  
    YUP        R 'Y Upper limit' D=1  
    ZLOW       R 'Z Lower limit' D=-1  
    ZUP        R 'Z Upper limit' D=1  
 
    Change the ranges used by FUN/DRAW.
 
 
  * /GRAPHICS/WORKSTATION  WKID [ CHOPT IWTYP ] 
 
    IWKID      I 'Workstation ID' D=1  
    CHOPT      C 'Options' D='OA'  
    IWTYP      I 'Workstation type' D=1  
 
    To open/close several graphics windows on the workstations
    and change their status.
 
        CHOPT='O'  Open a new workstation
        CHOPT='C'  Close a workstation
        CHOPT='A'  Activate a workstation
        CHOPT='D'  Deactivate a workstation
           IWKID > 0  Perform the action specified by CHOPT on the
                      workstation identified by IWKID.
           IWKID = 0  Perform the action specified by CHOPT on all
                      workstations.
           IWKID < 0  Perform the action specified by CHOPT on the
                      workstation identified by -IWKID and the
                      complementary action on all the others.
        CHOPT='L'  Give the list of open workstations
 
 
  * /GRAPHICS/ATTRIBUTES/PALETTE  PALNB [ NEL LIST ] 
 
    PALNB      I 'Palette number' D=1 R=0:9  
    NEL        I 'Number of elements' D=0 R=1:50  
    LIST       I 'List of palette elements' D=0  
 
    Define a palette of attributes (usually a palette of colours or 
    fill area interior styles). The palette number is normally used 
    in the command SET. For example the command SET HCOL 0.1 defines 
    the palette number 1 as colour indices used by the command LEGO 
    in case of stacked lego plots and plotting of surface with option
    1 or 2 and lego with option 2.
 
 
 
2 - PAW commands modified:
    ======================
 
  * /HISTOGRAM/2D_PLOT/LEGO  [ ID THETA PHI CHOPT ] 
 
    Draw a lego plot from 2-Dim or 1-Dim histograms.
    By default (CHOPT = ' ') a hidden line algorithm is used.
    CHOPT = '1' : A hidden surface algorithm is used. The colour of the lego
                  is given by SET HCOL CI where CI is a colour index. For the
                  top and the sides of the lego the same hue is used but with
                  a different light.
    CHOPT = '2' : A hidden surface algorithm is used. The colour of each bar
                  changes according to the value of Z. It is possible to change
                  the set of colours used with SET HCOL c.P where P defines a 
                  palette of colours given by the command ATT/PALETTE.
    It is also possible to produce stacked lego plots. A stacked lego plot
    consists of a super-imposition of several histograms, whose identifiers are
    given in the command LEGO separated by the character "+". 
 
    Example:
 
    PAW > LEGO ID1+ID2+ID3   | Maximum number of ID's is 10
 
    The colours of each IDn is given by the command ATT/PALETTE.
 
    Examples:          
    
    PAW > SET HCOL 2          | The colour of the histogram is 2 (red)
    PAW > LEGO 20             | Display a lego with lines
    PAW > LEGO 20 ! ! 1       | Display a lego with different lights
    PAW > LEGO 20 ! ! 2       | Display a lego with colours
 
    PAW > ATT/PAL 1 3 2 3 4   | Create the list number 1 with 3 elements: 2,3,4 
    PAW > SET HCOL 0.1        | The subsequent stack lego plots will use palette 1
    PAW > LEGO 10+20+30       | Plot a stack of lego plots with lines    
    PAW > LEGO 10+20+30 ! ! 1 | Plot a stack of lego plots with light
 
    Notes: - The commands OPTION BAR, SET BARW and SET BARO act on lego plots
           - The options 1 and 2 must be used only on selective erase devices.
                                                                      
 
  * /HISTOGRAM/2D_PLOT/SURFACE  [ ID THETA PHI CHOPT ] 
 
    Draw a surface plot from 2-Dim or 1-Dim histograms.
    By default (CHOPT = ' ') a hidden line algorithm is used.
    CHOPT = '1' : A hidden surface algorithm is used and each cell is filled
                  with a colour corresponding to the Z value (or grey scale 
                  with PostScript). It is possible to change the set of colours 
                  used with SET HCOL ic.P where P defines a palette of colours
                  given by the command ATT/PALETTE.
    CHOPT = '2' : is similar to option '1' except that the cell lines
                  are not drawn. This is very useful to draw contour
                  plots with colours if THETA=90 and PHI=0.
                                                         
 
  * /HISTOGRAM/PLOT  [ ID CHOPT ]   
 
    This command allows now to plot 1 Dim histograms as lego
    or surface plots with angle THETA=1 PHI=-1 .
    
    Example:
 
    PAW > H/PL 1 LEGO    | plot the 1-Dim histogram 1 as a LEGO with lines
    PAW > H/PL 1 LEGO1   | plot the 1-Dim histogram 1 as a LEGO with 
                           lighting model
    PAW > H/PL 1 LEGO2   | plot the 1-Dim histogram 1 as a LEGO with colours
    PAW > H/PL 1 SURF    | plot the 1-Dim histogram 1 as a SURFACE with lines
    PAW > H/PL 1 SURF1   
    PAW > H/PL 1 SURF2   
    PAW > H/PL 1+2 LEGO1 | Stack of 1 and 2 
 
    The command OPTION BAR acts on lego plots. The offset and the width
    can be changed via the commands SET BARO and SET BARW.
 
  Remark : Stacked lego plots are not supported by PAW under TELNETG.
 
 
  * /GRAPHICS/SET  [ CHATT VALUE ]   
 
    The option HCOL can have the following form:
 
    PAW > SET HCOL 0.P     | P is the PALETTE number used for stacked
                             lego plots
 
    The option NDVZ is available to define the number of divisions on
    the Z axis of lego plots and surface plots.    
 
    PAW > SET NDVZ 10   | The number of divisions on the Z axis will 
                          be optimised around the value 10
    PAW > SET NDVZ -10  | The number of divisions on the Z axis will 
                          be exactly 10
 
    Example: 
 
    PAW > ATT/PAL 1 3 2 3 4      | Define the list 1 with 3 elements
    PAW > SET HCOL 0.1           | Set the list 1 as colours for histograms
    PAW > SET NDVZ 4             | Set the number of Z divisions to 4
    PAW > SURF id 90 0 2         | Draw the contour
                 
 
  * /GRAPHICS/HPLOT/NULL  [ XMIN XMAX YMIN YMAX CHOPT ] 
 
    The new option 'B' allows to suppress the box around the histogram.
 
 
  * /FUNCTION/POINTS  [ NPX NPY NPZ ] 
 
    NPX        I 'Number of points on X axis' D=20 R=2:1000  
    NPY        I 'Number of points on Y axis' D=20 R=2:1000  
    NPZ        I 'Number of points on Z axis' D=20 R=2:1000  
 
    Change the number of points to be used by FUN/DRAW. 
    Note that the default for NPX is 20 for 3D plots but it is 100 for 
    1D plots (FUN/PLOT).
 
    Examples:
 
    PAW > POINT      | Set the number of points to 20 for 3D plots and 100 for 1D plots
    PAW > POINT 30   | Set the number of points to 30 for 3D plots and 1D plots
    PAW > POINT ! 40 | Set the number of X points to 20 for 3D plots and 1D plots
                       and the number of Y point to 40 for 3D plots.
 
 
                       
 
3 - PAW Improvements:
    =================
 
  * Options LOGX and LOGY are available for 2D histograms and Ntuples.
 
  * The commands MIN and MAX work also for 2D histograms (the two commands 
    are mutually exclusive).
 
  * Bug corrected in the command FUN/PLOT in case of option "S".
 
  * The drawing of the error bars takes into account the value given by 
    the command SET HWID.
 
  * The command SET STAT works also for 2D histograms.
 
 
 
4 - HIGZ Improvements:
    ==================
 
  * ZMIN and ZMAX available for all options of IGTABL.
 
  * New PATCH IH for hidden surfaces and hidden lines drawing.
    Implemented in collaboration with E.Chernyaev (IHEP, Protvino)
 
  * Bug corrected in IGTABL for the contour plots: The end points are
    now re-ordered (Cees de Laat - University of Utrecht).
 
  * The marker "point" (type 1) in PostScript is now a filled circle.
    This makes real dots perfectly centred on the given position.
 
  * The HIGZ PostScript driver is now able to generate the two PostScript 
    functions "bl" and "bf" to draw boxes (line and filled). These reduce
    the size of PostScript files containing many boxes by almost a factor 2.
 
  * The HIGZ/PostScript macro names are now compatible with GKSGRAL PostScript
    names. This allows merging files produced by the GKSGRAL metafile
    12201 and the HIGZ metafile -111.
 
  * Pictures generated with PostScript (-111 and -112) are centred.
 
  * New workstation type -113 to generate encapsulated PostScript. This is 
    useful to incorporate graphics in a text processing system (for example LaTex)
 
  * In the PostScript text the characters '(' and ')' are automatically
    escaped by '\', in case of precision 0, if not already done by the user.
 
  * Correction for Black and White devices in X11 interface:
    Background is white. Foreground is black.
 
  * Changes in the DECGKS version (IOPWK, IGQWK, IGRNG) to distinguish between 
    DEC-Windows workstation types and non-windows types by assuming all 
    workstation types having values > 200 are DEC-Windows.
 
  * New version of IRQST for GL (lowercase available).
 
  * New routine IKBOX (in IKERNEL) to draw boxes faster (for GL and GPR).
 
  * New prompt echo type in IRQLC for GPR and GL :
       LCN=20 cross hair
       LCN=30 rubber circle
       LCN=40 rubber band
       LCN=50 rubber rectangle
 
  * Improvements in the fill-area clipping.
 
  * New version of the installation PATCH *HIGZ.
 
       +USE,*HIGZ,Basic graphics package name,Machine name. 
 
    Example:
 
       +USE,*HIGZ,GL,SGI.
       Install the GL version of HIGZ on Silicon Graphics.
 
  * New option 'O' in IZPICT to sort (Order) the NT banks in a picture.
 
  * New option 'NBWK' in IGQWK to return the number of open workstations.
 
  * Optimisation of LOG scale in IGAXIS (labels and grid).
 
  * Error message suppressed in IGAXIS if NDIV=0 .
 
  * Bug corrected in IGHIST: When option C is specified, the centre of each bin 
    is used to draw the curve on histograms having variable binning, instead
    of using the left side of each bin, as before. This has some impact on the 
    command:
            PAW >  HISTO/PLOT id C
                         
 
 
5 - New HIGZ Interfaces :
    =====================
 
  * ATCGKS Version (Werner Koellner, LBL) : On SUN and VAX
 
  * GDDM Version (A.Quintero, CIEMAT, Madrid): On IBM/VM
 
  * GPR Version : On Apollo
  
  * GL Version on Silicon graphics and IBM RS6000
 
  * X-Window Version: On all X11 machines. Before starting an application 
    linked with the X11 version of HIGZ, the user must type (for example at 
    the login time):
 
    Unix machines :  "setenv DISPLAY host:0.0"            On Cshell
                     "DISPLAY=host" and "export DISPLAY"  On other Shell 
    
    VaxStations   :  "DEFINE DISPLAY host::0.0" 
     
    If HIGZ is use locally it is not necessary to define the variable DISPLAY
    except on the Apollo machines on which this variable must be set to ":0" 
    (for example at login time).
 
    To use any X-Window application remotely on Unix, the local machine 
    (on which runs the application) must be allowed to display on the "host" 
    machine via the command "xhost machine_name". Note that the command "xhost +"
    allows all machines to display on the host machine. On Vaxstations the same 
    thing must be done via the menu: "Customize/Security..."
 
 
 
6 - KUIP improvements
    =================
 
  * Parameters can be entered in command lines also by their name, i.e. 
    independently from their position. This is particularly useful when 
    an optional parameter has to be specified for a command having several 
    optional parameters. Values are assigned to parameters by indicating 
    the name of the parameter, followed by an equal sign, followed by the
    value, with no blanks in between (see first line of example below).
    When the parameter's name is CHOPT a shortcut is possible:
    a minus sign preceding a (non-numerical) value means 'CHOPT='
    (see third and fourth line of example below).
    If a parameter (with no NAME=) is specified after a named
    parameter, it will refer to the parameter following the named one
    (see second line of example below).
 
    Let's take, as an example, the following command:
     
     NTUPLE/PLOT  IDN [ UWFUNC NEVENT IFIRST NUPD CHOPT ] 
  
    One could then enter:
     
     N/PL 123.x NUPD=100       ---> to set IDN to 123.x and NUPD to 100,
                                       instead of N/PL 123.x ! ! ! 100
     
     N/PL NEVENT=1000 500    ---> to set NEVENT to 1000 and IFIRST to 500
                                     (IDN will be asked interactively),
                                       instead of N/PL idn ! 1000 500
     
     N/PL 123.x CHOPT=B        ---> to set IDN to 123.x and CHOPT to B,
                                       instead of N/PL 123.x ! ! ! ! B
     
     N/PL 123.x -B             ---> same as above
     
 *  Multiple commands on a single line are now possible, by separating
    them by a ';'. There is an exception when the character immediately
    following the ';' is numeric, which would mean for example a cycle
    number in a VAX file name specification.
    Also, if the ';' is part of a string enclosed in single quotes,
    it is not treated as a separator.
 
    Example:
     
       V/DEL A; V/CRE A(10); V/LIST     ===>   V/DEL A
                                               V/CRE A(10)
                                               V/LIST
     
       H/FILE 22 F.DAT;H/LIST           ===>   H/FILE 22 F.DAT
                                               H/LIST
     
       H/FILE 22 F.DAT;2;H/LIST         ===>   H/FILE 22 F.DAT;2
                                               H/LIST
 
       H/FILE 22 F.DAT; 2;H/LIST        ===>   H/FILE 22 F.DAT
                                               2
                                               H/LIST
 
       TEXT 'Job nr.7;Run nr.5'         ===>   TEXT 'Job nr.7;Run nr.5'
 
 
 *  Added X11 functionality on UNIX: if the KUIPPAGER environment variable
    is set to xterm, 'vi' is used as editor through X11, according
    to the DISPLAY environment variable (Fons Rademakers/CERN)
 
 *  The IBM/MVS version has been upgraded (Harald Butenschoen/Desy and
    Alain Michalon/Strasbourg).
    The new patchy flags STRASB and DMVS must be specified at installation
    time to distinguish between Strasbourg and Desy implementations.
     
 *  Complex vectors are now available (see chapter on SIGMA below).
     
 *  Alias name  length decreased to 60 (previously 64)
    Alias value length increased to 80 (previously 64)
     
 *  Added new system functions:
        $STYLE  ......................  Current STYLE
        $ANUM  .......................  Number of aliases
        $ANAM(I)  ....................  Name of I-th alias
        $AVAL(I)  ....................  Value of I-th alias
 
 *  Various bugs fixed
 
 
 
7 - SIGMA improvements
    ==================
 
 *  An almost complete functionality for complex calculations has been 
    implemented under SIGMA/KUIP. The details of the implementation are 
    as follows:
 
 *  A complex number is defined as a pair of signed or unsigned real or
    integer numbers separated by the letter I. Example:
   
          Z=r1Ir2
        
    will be interpreted as r1 + r2i
 
 
    The mathematical operators are extended to complex calculus, and 
    mixed-mode operations are always permitted, where an operation between
    a complex and a real gives a complex as result. The same convention is 
    valid for system functions, with no need to specify a complex function 
    name. For instance, SIN of a complex quantity will result in a complex 
    result. In this way a procedure (e.g. a macro) can be written 
    independently from the data type.
 
 *  A number of additional functions are introduced to facilitate
    complex array handling and to allow real-complex and complex-real
    transitions.
    These are:
    
     R=REAL(Z)  takes the real part of Z and assigns it to R (real)
     R=IMAG(Z)  takes the imaginary part of Z and assigns it to R (real)
     Z=CPLX(X,Y) generates a complex result from two real arguments or
                 real parts of complex arguments so that Z = x +yi
     CZ=CONJ(X) generates the complex conjugate of Z.
 
*   All complex calculations are in simple precision.
 
*   The commands: Vector/Create, Vector/Read, and Vector/Print operate 
    correctly on complex vectors. Other commands, which are not foreseen for
    complex, will operate on the REAL or IMAGinary parts of the complex vector. 
    Example: assuming that the user wants to plot the real part of the complex 
    vector COMVEC (of 100 components) against the imaginary part, it will be 
    enough to type:
  
      GRAPH 100 $SIGMA(REAL(COMVEC)) $SIGMA(IMAG(COMVEC)) 
        or:
 
      SIGMA RE=REAL(COMVEC)
      SIGMA IM=IMAG(COMVEC)
      GRAPH 100 RE IM
 
 
 
8 - COMIS improvements
    ==================
         
 
*   More than 20 continuation lines may be specified in a FORTRAN statement.
    This extension was necessary to cope with N-tuples with a large number of
    columns (>100) in the function generated by the command UWFUNC. 
 
*   Characters in columns 73-80 are ignored. This change was necessary due
    to many problems on VM with XEDIT.

Release NotesKnown bugsFAQsContributionsTutorialReference manualDown loadMiscellaneous

Paw.Support@cern.ch