Chapter 1
ITEM
OPTION
1
C \Command or menu name or keyword(s)" D=' '
C \Option" D='N'
Possible OPTION values are:
EDIT
The help text is written to a le and the editor is invoked,
NOEDIT
The help text is output on the terminal output.
KEYWORD give access to all commands associated to that keyword(s).
E
Same as 'EDIT'.
N
Same as 'NOEDIT'
K
Same as 'KEYWORD'
Find help information by command name, menu name or keywords.
If ITEM is a valid command name (and there is only one such command) then full explanation on that
command is provided: syntax (as given by the command USAGE), functionality, list of parameters with
their attributes. If ITEM also corresponds to other commands associated to it with a "keyword" then a
"See also" message, followed by the names of these commands is given.
If ITEM is a menu (or a submenu) a dialogue is guiding the user in traversing the tree command structure
for getting full explanation on a specic command from that tree.
If HELP is entered without parameters, the search start from the top level menu and the user is guided
in traversing the complete tree command structure.
'HELP -KEYWORD' (or 'HELP -K') followed by one or more keywords causes HELP to give access to
all commands associated to that (list of) keyword(s). If the keyword corresponds to a valid command or
(sub)menu name all corresponding commands are accessible. This option is especially useful when you do
not know the exact name of a valid command or menu and you can only describe it by its functionality
(e.g. 'HELP -KEYWORD POSTSCRIPT').
N.B. If ITEM does not correspond to any valid command or menu name then the option `-KEYWORD'
is automatically invoked.
'HELP -EDIT' (or just 'CHELP -E') switches to edit mode: instead of writing the help text to the terminal
output, it is written into a temporary le and the pager or editor dened by the command HOST PAGER
is invoked. (On Unix workstations the pager can be dened to display the help text asynchrously in a
separated window.) 'CHELP -NOEDIT' (or just 'CHELP -N') switches back to standard mode. The
startup value is system dependent.
1.0.1 HELP [ item option ]
Command Processor commands.
KUIP
Chapter 1
2
FNAME C \File name"
Invoke the editor on the le. The command HOST EDITOR can be used to dene the editor.
If FNAME does not contain an extension the default letype '.KUMAC' is supplied. The search path
dened by the command DEFAULTS is used to nd an already existing le. If the le does not exist it
is created with the given name.
1.0.5 EDIT fname
will produce the le MAN.TEX containg the documentation of all available commands in LaTeX format.
MANUAL / MAN.TEX LATEX
ITEM
OUTPUT
OPTION
C \Command or menu path"
C \Output le name" D=' '
C \Text formatting system" D=' '
Possible OPTION values are:
' '
plain text : plain text format
LATEX LaTeX format (encapsulated)
TEX
LaTeX format (without header)
Write on a le the text formatted help of a command. If ITEM is a menu path the help for all commands
linked to that menu is written. If ITEM='/' the help for the complete command tree is written. If
OUTPUT=' ' the text is written to the terminal.
The output le produced with option LATEX can be processed directly by LaTeX, i.e. it contains a
standard header dening the meta commands used for formatting the document body. With option TEX
only the document body is written into the output le which can be included by a driver le containing
customized denitions of the standard meta commands. Example:
1.0.4 MANUAL item [ output option ]
ITEM C \Command name"
Give the syntax of a command. If ITEM='/' the syntax of all commands is given.
1.0.3 USAGE item
ITEM
OPTION
C \Command or menu path" D=' '
C \View mode" D='N'
Possible OPTION values are:
EDIT
The help text is written to a le and the editor is invoked,
E
Same as 'EDIT'.
NOEDIT The help text is output on the terminal output.
N
Same as 'NOEDIT'
Find help information only on valid command name or menu path.
A more general help facility, associated to keywords, is given by the command HELP.
If ITEM is a command its full explanation is given: syntax (as given by the command USAGE), functionality, list of parameters with their attributes (prompt, type, default, range, etc.). If ITEM='/' the
help for all commands is given.
If CHELP is entered without parameters or ITEM is a submenu, the dialogue style is switched to 'AN',
guiding the user in traversing the tree command structure.
'CHELP -EDIT' (or just 'CHELP -E') switches to edit mode: instead of writing the help text to the
terminal output, it is written into a temporary le and the pager or editor dened by the command
HOST PAGER is invoked. (On Unix workstations the pager can be dened to display the help text
asynchrously in a separated window.) 'CHELP -NOEDIT' (or just 'CHELP -N') switches back to standard
mode. The startup value is system dependent.
1.0.2 CHELP [ item option ]
STRING
SEC
3
C \Message string" D=' '
R \Number of seconds" D=0 R=0:
Make a pause (e.g. inside a macro). Wait a given number of seconds (if SEC.GT.0) or just until hCRi is
entered (if SEC.EQ.0). A message string is also written on the terminal before waiting.
1.0.12 WAIT [ string sec ]
CMD
C \Shell command string" D=' '
Execute a command of the host operating system. The command string is passed to the command
processor dened by HOST SHELL. If CMD=' ' the shell is spawned as interactive subprocess. To
return from the shell enter 'RETURN' (the full word, not just hCRi) or 'exit' (depending on the operation
system).
1.0.11 SHELL [ cmd ]
STRING
OUTPUT
C \Message string" D=' ' Separate
C \Output le name" D=' '
Write a message string on OUTPUT le name. OUTPUT le is opened in "append" mode (open for
writing at end of le, or create for writing). If OUTPUT=' ' the text is written to the terminal. If
'Message string' contains several words separated by one or more spaces the string must be surrounded
by single quotes.
1.0.10 FMESSAGE [ string output ]
STRING C \Message string" D=' ' Separate
Write a message string on the terminal. A useful command inside a macro. Several message strings can
be given in the same command line, each of them separated by one or more spaces (the usual parameter
separator); therefore multiple blanks will be dropped and only one will be kept. If multiple blanks should
not be dropped, the string must be surrounded by single quotes.
1.0.9 MESSAGE [ string ]
N
FNAME
I \N last commands to be saved" D=-99 R=-99:
C \File name" D=' '
Perform various operations with the history le.
If FNAME is not specied, the current history le is assumed by default (the startup history le name
is LAST.KUMAC). To change the history le the command LAST 0 NEW-FNAME must be entered.
If N.EQ.-99 (default case) the default host editor is called to edit the current history le, containing all
the commands of the session.
If N.LT.0 the last -N commands are printed on the screen. On MVS this allows to edit and resubmit
commands. On workstations this allows to resubmit blocks of commands by mouse-driven cut-and-paste
operations.
If N.EQ.0 the history le FNAME is rewound and set as the current one (the command LAST 0 FNAME
itself is not recorded).
If N.GT.0 the last N commands of the session are saved in the current history le.
See also the command RECORDING.
1.0.8 LAST [ n fname ]
FNAME C \File name"
Invoke the PostScript viewer on the le. The command HOST PSVIEWER can be used to dene the
PostScript viewer.
If FNAME does not contain an extension the default letype '.PS' is supplied.
1.0.7 PSVIEW fname
FNAME
C \File name"
Send a le to the printer. The command HOST PRINT can be used to dene the host command for
printing the le depending on it le extension.
1.0.6 PRINT fname
I \Number of seconds" R=0:
C \Command string" D=' '
Execute a command if program is idle. The command string is executed if there was no keyboard activity
during SEC seconds.
...........
$FORMAT(number,format)
......
$SUBSTRING(STRING,IX,NCH) ...
$UPPER(STRING) ..............
$LOWER(STRING) ..............
$LEN(STRING) ................
$INDEX(STR1,STR2) ...........
STR1
$WORDS(STRING,SEP) ..........
$WORD(STRING,K,N,SEP) .......
$QUOTE(STRING) ..............
$UNQUOTE(STRING) ............
$EXEC('macro args') .........
$DEFINED('var_name') ........
$EVAL(Expression) ...........
$SIGMA(Expression) ..........
$RSIGMA(Expression) ..........
$NUMVEC .....................
$VEXIST(VNAME) ..............
$VLEN(VNAME,IDIM)
$DATE .......................
$TIME .......................
$CPTIME .....................
$RTIME ......................
$VDIM(VNAME,IDIM) ...........
4
Number of words separated by SEP
Extract N words starting at word K
Add quotes around STRING
Remove quotes around STRING
EXITM value of EXEC call
List of defined macro variables
Result of the Expression computed by KUIP
Result of the Expression computed by SIGMA
As above but a decimal point is added to
integer results
Format a number according to a Fortran
format string, e.g.
Current date in format DD/MM/YY
Current time in format HH.MM.SS
CP time elapsed since last call (in sec)
Real time elapsed since last call (in sec)
Physical length of vector VNAME
on dimension IDIM (1..3)
As above, but for the logical length
(i.e. stripping trailing zeroes)
Current number of vectors
Index of vector VNAME
(1..$NUMVEC or 0 if VNAME does not exist)
STRING(IX:IX+NCH-1)
STRING changed to upper case
STRING changed to lower case
Length of STRING
Position of first occurrence of STR2 in
The function name (and arguments) is literally replaced, at run-time, by its current value. At present,
the following functions are available:
*** KUIP System Functions ***
List of all KUIP System Functions.
1.0.17 FUNCTIONS
End of the interactive session.
1.0.16 QUIT
End of the interactive session.
1.0.15 EXIT
List all Input/Output logical units currently open. The les attached to them are also shown.
1.0.14 UNITS
SEC
STRING
1.0.13 IDLE sec [ string ]
$CALL('fun(args)') ..........
$ICALL('ifun(args)') ........
$LCALL('lfun(args)') ........
$DCALL('dfun(args)') ........
$HCDIR() ....................
$HEXIST(id) .................
$HINFO(id,'1DHISTO') ........
$HINFO(id,'2DHISTO') ........
$HINFO(id,'TABLE') ..........
$HINFO(id,'PROFILE') ........
otherwise
$HINFO(id,'NTUPLE') .........
$HINFO(id,'LOG') ............
$HINFO(id,'ENTRIES') ........
$HINFO(id,'MEAN') ...........
$HINFO(id,'RMS') ............
$HINFO(id,'EVENTS') .........
$HINFO(id,'OVERFLOW') .......
$HINFO(id,'UNDERFLOW') ......
$HINFO(id,'MIN') ............
$HINFO(id,'MAX') ............
$HINFO(id,'SUM') ............
$HINFO(id,'NSLIX') ..........
$HINFO(id,'NSLIY') ..........
$HINFO(id,'NBANX') ..........
$HINFO(id,'NBANY') ..........
$HINFO(id,'NPROX') ..........
$HINFO(id,'NPROY') ..........
$HINFO(id,'XBINS') ..........
$HINFO(id,'XMIN') ...........
$HINFO(id,'XMAX') ...........
$HINFO(id,'YBINS') ..........
$HINFO(id,'YMIN') ...........
$ARGS .......................
$KEYNUM .....................
$KEYVAL .....................
$LAST .......................
$ANUM .......................
$ANAM(I) ....................
$AVAL(I) ....................
$STYLE ......................
$OS .........................
$MACHINE ....................
$PID ........................
$IQUEST(I) ..................
$ENV(var) ...................
$FEXIST(file) ...............
$SHELL(cmd,N) ...............
only)
$SHELL(cmd,sep) .............
$SHELL(cmd) .................
5
1 if ID is a Ntuple or 0 otherwise
1 if ID has LOG Y scale or 0 otherwise
Number of entries
Mean value
Standard deviation
Number of equivalent events
Content of overflow channel
Content of underflow channel
Minimum bin content
Maximum bin content
Total histogram content
Number of X slices
Number of Y slices
Number of X bandes
Number of Y bandes
Projection X (0 or 1)
Projection Y (0 or 1)
Number of bins in X direction
Lower histogram limit in X direction
Upper histogram limit in X direction
Number of bins in Y direction
Lower histogram limit in Y direction
Call a Fortran REAL FUNCTION
Call an INTEGER FUNCTION
Call a LOGICAL FUNCTION and return 0 or 1
Call a DOUBLE PRECISION FUNCTION
Current Hbook working directory
1 if histogram ID exists or 0 otherwise
1 if ID is a 1D histogram or 0 otherwise
1 if ID is a 2D histogram or 0 otherwise
1 if ID is a table or 0 otherwise
1 if ID is a profile histogram or 0
Shell output with newlines replaced by sep
Same as $SHELL(cmd,' ')
$FORMAT(1.5,F5.2) ==> ' 1.50'
$FORMAT(123,I5.5) ==> '00123'
Command line at program invocation
Address of latest clicked key in style GP
Value of latest clicked key in style GP
Latest command line executed
Number of aliases
Name of I-th alias
Value of I-th alias
Current style as defined by SET/STYLE
Operating system name, e.g. UNIX or VMS
Hardware or Unix brand, e.g. VAX or HPUX
Process ID
Value of IQUEST(I) status vector
Value of environment variable
1 if file exists or 0 otherwise
N'th line of shell command output (Unix
Weight of Red in color table
Weight of Green in color table
Weight of Blue in color table
Cut expression $n
Replace $n in the (quoted) string by
1 if the option is on 0 otherwise (see
Upper histogram limit in Y direction
Histogram title
Number of zones in X direction
Number of zones in Y direction
Current Normalization Transformation number
Lower X limit of window in current NT
Upper X limit of window in current NT
Lower Y limit of window in current NT
Upper Y limit of window in current NT
Lower X limit of viewport in current NT
Upper X limit of viewport in current NT
Lower Y limit of viewport in current NT
Upper Y limit of viewport in current NT
Horizontal text alignment
Vertical text alignment
Text font
Text precision
HPLOT/HIGZ attributes (see HELP SET for
6
Print the version string for PAW and the underlying packages.
1.0.19 VERSION
CHOPT C \Options" D='B'
Possible CHOPT values are:
B Send a bug report
C Send a comment, suggestion, etc.
Email a bug report or comment to the PAW team. The local editor is invoked with a template to be
lled out. After the template has been edited, version information about PAW and the operating system
is appended. The user is asked for a conrmation before the report is send.
In Paw++ this command can be accessed via the 'Help' menu of the 'Executive Window' or the 'Main
Browser' (menu item 'Mail Paw++ Developers').
This command is implemented only on UNIX, VMS and VM systems.
If the environment variable PAWSUPPORT is dened it is used as email adress.
1.0.18 BUGREPORT [ chopt ]
$HINFO(id,'YMAX') ...........
$HTITLE(id) .................
$GRAFINFO('XZONES') .........
$GRAFINFO('YZONES') .........
$GRAFINFO('NT') .............
$GRAFINFO('WNXMIN') .........
$GRAFINFO('WNXMAX') .........
$GRAFINFO('WNYMIN') .........
$GRAFINFO('WNYMAX') .........
$GRAFINFO('VPXMIN') .........
$GRAFINFO('VPXMAX') .........
$GRAFINFO('VPYMIN') .........
$GRAFINFO('VPYMAX') .........
$GRAFINFO('TXALIH') .........
$GRAFINFO('TXALIV') .........
$GRAFINFO('TXFONT') .........
$GRAFINFO('TXPREC') .........
$GRAFINFO('attr') ...........
valid names)
$OPTION('option') ...........
HELP OPTION)
$RGBINFO(icol,'R') ..........
$RGBINFO(icol,'G') ..........
$RGBINFO(icol,'B') ..........
$CUT(n) .....................
$CUTEXPAND(string) ..........
$CUT(n)
7
would delete the alias name BETA instead of ALPHA itself.
ALIAS/CREATE ALPHA BETA
ALIAS/CREATE BETA GAMMA
ALIAS/DELETE ALPHA
whould create an recursive alias BETA and
ALIAS/CREATE ALPHA BETA
ALIAS/CREATE ALPHA BETA
To juxtaposition aliases, a double slash can be used as concatenation sign. Inside quoted strings and
for the ALIAS commands themselves the alias substitution is inhibited. Otherwise
Operations with aliases. Aliases are dened to provide shortcut abbreviations for the input line or some
part of it. When encountered on an input line an alias is replaced by its string value which can contain
further aliases. (Be careful not to dene recursive aliases.)
KUIP/ALIAS
Chapter 2
/
,
=
:
.
%
'
(
)
8
NAME C \Alias name wildcard" Loop
Delete the denition of aliases matching the wildcard. NAME='*' deletes all aliases.
2.0.22 DELETE name
NAME C \Alias name wildcard" D='*'
List all aliases matching the wildcard (names and values).
2.0.21 LIST [ name ]
Aliases occuring inside an value are expanded indepedent whether the value is enclosed by quotes. The
option -N allows to suppress this implicit alias expansion.
SHELL LS
only when LS is the rst token on a command line. In the following case LS will not be translated
DIR
is equivalent to
Alias/Create LS DIR C
Graph/Struct/Scratch File1/Name1/Name2/ID
is equivalent to
Alias/Create GG Graph/Struct/Scratch
Alias/Create FF File1/Name1/Name2
GG FF/ID
Also switch ON the alias translation, i.e. ALIAS/TRANSLATION ON. If CHOPT='C' then the alias is
a command alias, i.e. an alias that will only be translated when it is the rst token on a command line.
Example:
blank
NAME
VALUE
CHOPT
C \Alias name"
C \Alias value"
C \Option" D='A'
Possible CHOPT values are:
A create an Argument alias
C create a Command alias
N No alias expansion of value
Create an alias NAME which should be substituted by VALUE. An alias name is a sequence of letters
and digits starting with a letter. The underscores (' '), the at-sign ('@') and the dollar-sign ('$') count
as letters.
There are two types of aliases: Command aliases are recognized only if they occur in the command
position, i.e. as the rst token on the line. Argument aliases are recognized anywhere on the command
line (except inside quoted strings) if they are surrounded by one of the following separators:
2.0.20 CREATE name value [ chopt ]
9
OPTION C \Option" D='ON'
Possible OPTION values are:
?
show current setting
ON
switch alias translation ON
OFF switch alias translation OFF
Switch ON/OFF the alias translation. If OFF, alias denitions are not used in parsing the command
lines. It is automatically switched ON when an alias is created. If OPTION='?' the current value is
shown. The startup value is OFF.
2.0.23 TRANSLATION [ option ]
\Option" D='?'
\max Y LENgth of each menu item box" D=0.025 R=0.005:0.25
\space available for the application" D=0.8 R=0:0.90
\max Y length of space between menus" D=0.02 R=-0.5:0.50
\X or Y border for menus" D=0.015 R=0:0.25
\Graphics workstation type" D=0
Possible OPTION values are:
?
show current style
C
Command line : select Command line input
AN Menu with Numbers : select general Alpha menu (with Numbers)
AL Menu with Letters : select general Alpha menu (with Letters)
G
Graphics menu hardware : select Graphics menu (with hardware character fonts)
GW Graphics menu shadowed : select Graphics menu (with shadowed Width eect)
GS Graphics menu Software : select Graphics menu (with Software character fonts)
GP Panel keys : select Graphics menu (with Panel keys only, i.e. no command tree menu)
XM Motif/X11 : select Motif/X11 interface
Select the user dialog style (or working mode). The startup value is 'C' (command mode). The current
value is returned by the system function $STYLE.
The G-styles are only available if the application program is calling KUWHAG instead of KUWHAT.
When one of these options is choosen the remaining parameters control the geometrical layout of the
menus on the screen and the graphics workstation type (in case HIGZ was not initialized).
Style 'XM' is only available if the program is calling KUWHAM. In that case switching to other styles is
not possible.
LINE
GKEY
10
R \Line number" D=0
C \Graphics key value(s)" D=' '
Set up a (user-denable) panel of commands with graphics keys. These keys are associated to predened commands (or list of commands), which are generally corresponding to actions frequently executed.
3.0.25 PANEL line [ gkey ]
OPTION
SGYLEN
SGSIZE
SGYSPA
SGBORD
WKTYPE
C
R
R
R
R
I
3.0.24 STYLE [ option sgylen sgsize sgyspa sgbord wktype ]
Set or show various KUIP parameters and options.
KUIP/SET SHOW
Chapter 3
0
2.04 MESSAGE
2.04
| reset the panel (in memory)
| initialize 4th key of 2nd line to MESSAGE
| clear 4th key of 2nd line
is the key position (column and row number)
is the complete command name (or list of commands)
to be excuted when the button is pressed.
| entering VAB will execute VEC/PRI VAB.
| entering AB will execute VEC/PRI VAB
| entering 11:20 will execute VEC/PRI V(11:20)
pixmap (optional)
"user-friendly"
label (optional)
where:
x,y
command
11
button label.
has to be specified when you want to have graphical keys
instead of pure text labels.
is the key position (column and row number)
is the complete command name (or list of commands)
to be excuted when the button is pressed.
is an alias name for this command. If specified,
it is used for the button label (when the appropriate
"View" option is selected) instead of the complete
command (which is generally too long for a
PANEL x.y command [label] [pixmap]
Syntax of the command in "KUIP/Motif" :
All what is described above (for "STYLE GP") is still available. But the (more) general syntax in
"KUIP/Motif" is:
PANEL 1.03 'VEC/PRI V($)'
The dollar sign inside a key is replaced by additional keyboard input. Example:
PANEL 1.03 'VEC/PRI V--'
Keys ending with a double minus sign behave as above but no blank is put at the place of the double
minus. Example:
PANEL 1.03 'VEC/PRI-'
Note that the key number on the right of the decimal point must always be dened with two digits.
Keys ending with a minus sign make an additional request of keyboard input; the complete command
line will be the key text, with a blank at the place of the minus, concatenated with the additional keyboard
input. Example:
PANEL
PANEL
PANEL
Examples:
where:
x,y
command
PANEL x.y command
The "panel interface" is available in "STYLE GP" and in KUIP/Motif (but not in the basic command
mode). Nevertheless the syntax of the PANEL command is dierent in these two modes of interface.
The "panel interface" is a lot more powerful in KUIP/Motif, which means that the command is more
complex.
N.B. in "STYLE GP" only one panel of commands can be set up, whereas in KUIP/Motif there is
no limitation.
Syntax of the command in "STYLE GP" :
0 D [title] [geometry]
0 C [title]
0 D 'This is my first panel' 500x300+500+600
0 C 'This is my first panel'
LINE
COL
TITLE
WIDTH
HEIGHT
XPOS
YPOS
12
I \Number of lines" D=5 R=1:30
I \Number of columns" D=5 R=1:30
C \Panel Title" D='NewPanel'
I \Panel width (in pixels)" D=300 R=10:
I \Panel height (in pixels)" D=300 R=10:
I \X Position (in pixels)" D=0 R=0:
I \Y Position (in pixels)" D=0 R=0:
Set up a new panel with empty keys. This new panel must then be lled interactively.
3.0.26 NEWPANEL line col title width height xpos ypos
As the "panel interface" is rather complex and powerful in KUIP-Motif, if you want to know all the
possibilities, we invite you to refer to the KUIP User Guide (where you will also nd picture illustrations).
closes (destroys and erases from the screen) the panel whith title \This is my rst panel". If no title
is specied the last created panel is closed by default.
- PANEL
displays the panel which has been set in memory by the key denition, and sets the title to \This is
my rst panel", the window size to \500x300" (WxH) and the window position to \500 600" in x and y.
If no title and/or no geometry is specied one is given by default.
- PANEL
Examples:
can be use to close the last panel, or the one corresponding to the given title.
PANEL
can be use to display the current panel which is in memory with (optionals) a given title and geometry
(size and position).
PANEL
In KUIP/Motif, the special value "0" for x.y (PANEL 0 ...) can be used for dierent purposes
(according to the 2nd parameter value):
=>
=>
=>
V/CR AA(10)
V/CR BB(10)
V/LIST
=>
=>
shows its current value
reset (equivalent to COMMAND $*)
PROMPT
13
C \Prompt string" D=' '
Set the prompt string for the command mode dialogue. If PROMPT is blank the current prompt is left
unchanged. If PROMPT contains the character sequence '[]' the current command number is inserted
between the square brackets.
3.0.31 PROMPT prompt
Set ON/OFF/ALL the timing of commands. If ON, the real time and the CPU time for the latest executed
command (or macro) are presented. If ALL, the time is shown for each command being executed within
a macro. The startup value is OFF.
ALL
OFF
ON
OPTION C \Option" D='ON'
Possible OPTION values are:
3.0.30 TIMING [ option ]
PATH C \Root directory" D='/'
Set the root for searching commands. If PATH='?' the current root is shown. This allows to access
commands regardless of possible ambiguities with dierent menus. Commands are rst searched starting
from the current root: if a command is found it is executed. Only if a command is not found a second
pass of search is done, starting now from the top root of the command tree (i.e. '/').
3.0.29 ROOT [ path ]
PATH
CMDEX
C \Application name" D=' '
C \Exit command" D='EXIT'
Set the application name. This means that all input lines will be concatenated to the string PATH (until
the command specied by the parameter CMDEX is executed, which resets the application to the null
string). The value of CMDEX may be specied if the default value EXIT has to be changed (i.e. because
already used by the application). APPLICATION can also be inserted in a macro: in this case at least
4 characters must be specied (i.e. APPL).
3.0.28 APPLICATION path [ cmdex ]
Note that COMMAND and subsequent command lines can be used inside macros, excepted when producing macro statements (like EXEC, IF, GOTO, etc.). For example, the above examples would work
also inside macros, while COMMAND 'EXEC $*' or COMMAND 'GOTO $1' will not.
COMMAND
COMMAND *
COMMAND 'VECTOR/PLOT $1 555 $2'
AA E
=>
VECTOR/PLOT AA 555 E
BB
=>
VECTOR/PLOT BB 555
COMMAND 'V/CR $*(10)'
AA
BB
V/LIST
CHPATH
C \Path name for command line" D=' '
Set a lter for the parsing of command lines. If it has been called, it means that whenever a command
line is entered, if and only if it is not an existing command (not just ambiguous), it is inserted into the
CHPATH string, with $n (n=1..9) being replaced by the n-th token of the command (tokens are separated
by spaces), or $* being replaced by the whole command line. Examples:
3.0.27 COMMAND [ chpath ]
14
NREC I \Rate for recording on history le" D=25 R=0:
Set the recording rate for the history le. Every NREC commands of the session the current history le
is updated. If NREC=0 the history is not kept at all (i.e. the le is not written). See also the command
LAST.
3.0.34 RECORDING [ nrec ]
NCOL I \Number of columns for terminal output" D=80 R=-1:
Set the maximum number of columns for terminal output. If NCOL=0 the current number of columns is
shown. If NCOL=-1 the current number of columns is taken from the environment variable COLUMNS.
If COLUMNS is undened the startup value is 80.
3.0.33 COLUMNS [ ncol ]
Set ON/OFF the break handling. If OPTION='?' the current value is shown. The startup value is ON.
Hitting the keyboard interrupt (CTRL/C on VMS or CTRL/Q on the Apollo) under break ON condition,
the current command or macro execution will be interrupted and the user will get again the application
prompt.
BREAK TB switch ON the traceback of the routines called, with their line numbers, when an error
occurs. This allows the detection of the routines which provoked the error.
?
TB
OFF
ON
OPTION C \Option" D='ON'
Possible OPTION values are:
3.0.32 BREAK [ option ]
| DECwindow interface to EVE
15
The startup value can be dened by the environment variable 'EDITOR'. Otherwise it is set to a system
dependent default: 'DM' (Apollo), 'EDT' (VMS), 'XEDIT' (VM/CMS), 'vi' (Unix).
HOST_EDITOR 'xterm -e vi &'
the KUIP/EDIT command will block until the editor terminates if either the 'kuesvr' is not available or
'DISPLAY' is undened. When using the edit server the editor command is expected to create its own
window. 'vi' being a frequent choice, the above command is automatically interpreted as
HOST_EDITOR 'vi &'
The ampersand ags your intention to use the edit server if possible. If the edit server cannot be used
the ampersand will be ignored, i.e. even with
- The KUIP edit server 'kuesvr' must be found in the search path.
- The editor command set by HOST_EDITOR must end with an ampersand ('&').
- The environment variable 'DISPLAY' must be set.
On Unix workstations it is possible to do asynchronous editing via the KUIP edit server, i.e. to start an
editor in a separate window while the application can continue to receive commands. In order to do that
the following conditions must be fullled:
HOST_EDITOR vi
HOST_EDITOR 'emacs -geometry 80x48'
On Unix a variety of editors are available, e.g.
HOST_EDITOR TPU/DISP=DECW
EDITOR
TOP
LEFT
WIDTH
HEIGHT
DXPAD
DYPAD
NPADS
C \Host editor command" D='?'
I \Top position of the edit window" D=20 R=0:
I \Left position of the edit window" D=20 R=0:
I \Width of the edit window" D=0 R=0:
I \Height of the edit window" D=0 R=0:
I \X oset for help PAD windows" D=30 R=0:
I \Y oset for help PAD windows" D=20 R=0:
I \Maximum number of shifted pads" D=4 R=1:
Set the host command to invoke the editor. The EDIT command will invoke this editor. If EDITOR='?'
the current host editor command is shown.
On Apollo the special value EDITOR='DM' invoke Display Manager pads. The special values EDITOR='WINDOW' and 'PAD' can be used to specify the window positions (in pixel units). 'WINDOW'
denes the parameters for edit pads, while 'PAD' denes the parameters for read-only pads (e.g. used
by 'HELP -EDIT').
On VMS the special values EDITOR='EDT' and 'TPU' invoke the callable editors. The startup time
is considerably lower compared to spawning the editor as a subprocess. The callable EDT has one
disadvantage though: after an error, e.g. trying to edit a le in a non-existing directory, subsequent calls
will always fail. The TPU call can be augmented by command line options, e.g.
3.0.35 HOST EDITOR [ editor top left width height dxpad dypad npads ]
16
C \Command recall and editing style"
Possible OPTION values are:
OPTION
3.0.40 RECALL STYLE [ option ]
D='?'
SHELL C \Host shell command" D='?'
Set the default host shell invoked by the KUIP/SHELL command. If OPTION='?' the current host
shell is shown. The startup value is taken from the 'SHELL' environment variable.
3.0.39 HOST SHELL [ shell ]
PSVIEWER C \Host PostScript Viewer command" D='?'
Set the host command to invoke the PostScript Viewer. The PSVIEW command will invoke this
PostScript Viewer. If PSVIEWER='?' then the current viewer command is shown.
The startup value can be dened by the environment variables 'KUIPPSVIEWER' or 'PSVIEWER'.
On Unix workstations it is by default set to 'ghostview'. On VAX/VMS the default commands is
'VIEW/FORM=PS/INTERFACE=DECWINDOWS'.
3.0.38 HOST PSVIEWER [ psviewer ]
invokes the shell command 'latex refman.tex ; dvips refman'. The predened defaults are not guaranteed
to work since the actual print commands are very much installation dependent.
MANUAL / refman.tex latex
HOST_PRINTER 'latex $* ; dvips $-' .tex
KUIP/PRINT refman.tex
COMMAND
FILETYPE
C \Host printer command" D='?'
C \File extension" D=' '
Set the host commands for printing les with KUIP/PRINT. The KUIP/PRINT command will use the
host command matching the le extension or use the default command dened for FILETYPE=' '.
If COMMAND='?' the currently set commands are shown. If COMMAND=' ' the currently dened
command is delete. The command string can contain '$*' and '$-' to indicate the position where the le
name with/without le extension should be inserted. For example,
3.0.37 HOST PRINTER [ command letype ]
On Apollo the special value PAGER='DM' denes the use of Display Manager read-only pads. The pad
positions can be adjusted by the HOST EDITOR command.
The startup value can be dened by the environment variables 'KUIPPAGER' or 'PAGER'. If neither of
them is dened the value set by the HOST EDITOR command is used. On VAX/VMS the startup value
is 'TYPE/PAGE'.
HOST_PAGER 'xterm -e view &'
HOST_PAGER 'ved &'
On Unix workstations the pager can be asynchronous by creating a separate window, e.g.
HOST_PAGER more
PAGER C \Host pager command" D='?'
Set the host command to view a le in read-only mode. If OPTION='?' the current host pager command
is shown. The 'HELP -EDIT' command will invoke this pager, e.g.
3.0.36 HOST PAGER [ pager ]
show current setting
Korn shell : Emacs like command line editing
Korn shell + Overwrite : like 'KSH' but overwrite instead of insert mode
VAX/VMS DCL : DCL command line editing
VAX/VMS DCL + Overwrite : like 'DCL' but overwrite instead of insert mode
disable command line editing
:
:
:
:
:
:
:
^P/^N
^R/^S
^T
^U
^Y
TAB
LF, CR
Move cursor to beginning/end of the line.
Move cursor forward/backward one character.
Delete the character under the cursor.
Delete the character to the left of the cursor.
Kill from the cursor to the end of line.
Redraw current line.
Toggle overwrite/insert mode. Text added in overwrite mode
(including yanks) overwrites existing text, while insert mode
does not overwrite.
Move to previous/next item on history list.
Perform incremental reverse/forward search for string on
the history list. Typing normal characters adds to the
current search string and searches for a match. Typing
^R/^S marks the start of a new search, and moves on to
the next match. Typing ^H or DEL deletes the last
character from the search string, and searches from the
starting location of the last search.
Therefore, repeated DELs appear to unwind to the match
nearest the point at which the last ^R or ^S was typed.
If DEL is repeated until the search string is empty the
search location begins from the start of the history
list. Typing ESC or any other editing character accepts
the current match and loads it into the buffer,
terminating the search.
Toggle the characters under and to the left of the cursor.
Kill from the prompt to the end of line.
Yank previously killed text back at current location.
Note that this will overwrite or insert, depending on
the current mode.
By default adds spaces to buffer to get to next TAB stop
(just after every 8th column).
Returns current buffer to the program.
BS/^E
^F/^D
17
: Move cursor to beginning/end of the line.
: Move cursor forward/backward one character.
'DCL' style provides the following control keys for editing:
:
:
:
:
:
:
:
^A/^E
^F/^B
^D
^H, DEL
^K
^L
^O
Set the command recall and editing style. If OPTION='?' the current style is shown. The startup
value is 'DCL' on VAX/VMS, 'NONE' on Cray and Apollo DM pads, and 'KSH' on other systems.
If the terminal emulator returns ANSI escape sequences (hpterm doesn't!) the up/down arrow keys
can be used to recall items from the command history list and the left/right arrow keys to move the
cursor.
'KSH' style provides the following control keys for editing:
NONE
DCLO
DCL
KSHO
KSH
?
:
:
:
:
:
:
Delete the character to the left of the cursor.
Toggle overwrite/insert mode.
Move to previous item on history list.
Delete from the beginning of the line to the cursor.
Move to next TAB stop.
Returns current buffer to the program.
'
18
forces case sensitivity for the EDIT command and restores the previous mode afterwards.
FILECASE KEEP; EDIT Read.Me; FILECASE RESTORE
OPTION C \Case conversion for lenames" D='?'
Possible OPTION values are:
?
show current setting
KEEP
lenames are kept as entered on the command line
CONVERT lenames are case converted
RESTORE restore previous FILECASE setting
Set or show the case conversion for lenames.
This command has only an eect on Unix systems to select whether lenames are kept as entered on the
command line. The startup value is 'CONVERT', i.e. lenames are converted to lowercase.
On other systems lenames are always converted to uppercase.
The 'RESTORE' option set the conversion mode to the value eective before the last FILECASE
KEEP/CONVERT command. E.g. the sequence
3.0.43 FILECASE [ option ]
OPTION C \Substitution of environment variables" D='?'
Possible OPTION values are:
?
show current setting
ON
enable substitution
OFF disable substitution
Set or show the status of environment variable substitution.
This command allows to enable/disable the interpretation of environment variables in command lines.
The startup value is 'ON', i.e. "$var" is substituted by the variable value.
Note that the system function "$ENV(var)" allows using environment variables even for 'DOLLAR OFF'
.
3.0.42 DOLLAR [ option ]
The startup value is ON.
- the command it is not executable anymore
- STYLE G draws a shadowed box on the command
- HELP may be still requested on the command
Set or show the visibility attributes of a command.
If CHOPT='OFF':
ON
OFF
?
CMD
CHOPT
C \Command name" D='
C \?, OFF, ON" D='?'
Possible CHOPT values are:
3.0.41 VISIBILITY cmd [ chopt ]
DEL
^A
^B
^U
TAB
LF, CR
19
DIR*ECTORY C \Directory name" D=' '
Set or show the local working directory.
The current working directory is set to the given path name or the current directory is shown.
To show the current directory used LCDIR without argument. 'LCDIR ' switches to the home directory.
'LCDIR .' switches back to the working directory at the time the program was started.
3.0.44 LCDIR [ directory ]
will list only macros starting with ABC.
MACRO/LIST ABC
20
MNAME C \Macro name pattern" D=' '
List all macros in the search path dened by MACRO/DEFAULTS. Macros are les with the extension
KUMAC. MNAME may be specied to restrict the list to the macros containing such a string in the rst
part of their name. For example,
4.0.46 LIST [ mname ]
The command MACRO/DEFAULTS can be used to dene a directory search path for macro les.
EXEC ABC
to exec first (or unnamed) macro of file ABC.KUMAC
EXEC ABC#M to exec macro M of file ABC.KUMAC
MNAME
MARGS
C \Macro name"
C \Macro arguments" D=' ' Separate
Execute the command lines contained in the macro MNAME. As a le can contain several macros, the
character '#' is used to select a particular macro inside a le as explained below.
If MNAME does not contain the character '#', the le MNAME.KUMAC is searched and the rst macro
is executed (it may be an unnamed macro if a MACRO statement is not found as rst command line in
the le).
If MNAME is of the form FILE#MACRO, the le named FILE.KUMAC is searched and the macro
named MACRO is executed.
Examples:
4.0.45 EXEC mname [ margs ]
Macro Processor commands.
MACRO
Chapter 4
21
Set ON/OFF the trace of commands during macro execution. If TRACE='ON' the next command is
written on the terminal before being executed. If LEVEL='TEST' the command is only echoed but not
executed. If LEVEL='WAIT' the command WAIT is automatically inserted after the execution of each
command. The startup values are OPTION='OFF' and LEVEL=' '.
DEBUG
FULL
WAIT
TEST
' '
Possible LEVEL values are:
OFF
ON
OPTION
LEVEL
C \Option" D='ON'
C \Level" D=' '
Possible OPTION values are:
4.0.47 TRACE [ option level ]
| search all disks
| search only disks A and C
| try EXEC CMD first; if not found try command CMD
| if CMD is not a command try EXEC CMD
| CMD must be a command
Application DATA vec.dat
1 2 3
4 5 6
7 8 9
vec.dat
vec/read x,y,z vec.dat
22
Application command to store immediate data into a le. Example:
4.0.49 DATA
The startup value is 'Command' (also reset by PATH='.').
Important note:
Inside macros the DEFAULT -A (or -AR) logic is disabled, i.e. DEFAULT -C is always assumed.
DEFAULT -Command
CMD
DEFAULT -Auto
CMD
DEFAULT -AutoReverse
CMD
If PATH='?' the currently dened search path is shown. If PATH='.' the search path is undened, i.e.
les are search for in the current directory (A-disk on VM/CMS) only. The startup value is PATH='.'.
The search path is not applied if the le specication already contains an explicit directory path or if it
starts with a '-' character (which is stripped o).
OPTION allows to dene whether macros can be invoked by their name only without prepending the
KUIP/EXEC command:
MACRO/DEFAULT '*'
MACRO/DEFAULT 'A,C'
denes to search les rst in the current directory, then in the subdirectory 'macro' of the current
directory, and last the subdirectory 'macro' of the home directory.
On VM/CMS system PATH denes a comma separated list of lemodes. E.g.
MACRO/DEFAULT '.,macro,~/macro'
MACRO/DEFAULT '[],[.macro],[macro]'
| Unix
| VMS
C \Search path for macro les" D='?'
C \Automatic EXEC" D='?'
Possible OPTION values are:
?
show current setting
Command
search for commands only
C
same as 'Command'
Auto
search for commands before macros
A
same as 'Auto'
AutoReverse search for macros before commands
AR
same as 'AutoReverse'
Set or show MACRO search attributes.
On Unix and VMS systems PATH denes a comma separated list of directories in which the commands
KUIP/EDIT, MACRO/EXEC, and MACRO/LIST search for macro les. For example,
PATH
OPTION
4.0.48 DEFAULTS [ path option ]
Explanation of KUIP macro language and syntax.
A macro is a set of command lines stored in a le, which can be created and modied with any text
editor.
In addition to all available KUIP commands the special "macro statements" listed below are valid
only inside macros. Note that the statement keywords are xed. Aliasing such as "ALIAS/CREATE
jump GOTO" is not allowed.
Operations on global variables.
C \Variable name" Loop
C \Initial value" D=' '
C \Comment text" D=' '
Create a global variable.
If used inside a macro the variable [name] is declared as global.
NAME
FILE
23
C \Variable name" D='*'
C \Output le" D=' '
List global variables.
If a le name is specied the output is the list of GLOBAL/CREATE commands to dene the selected
global variables. The default le extension is .kumac.
5.0.53 LIST [ name le ]
NAME C \Variable name" Loop
Delete global variables.
The global variables listed are deleted. The name may contain '*' as a wildcard matching any sequence
of characters.
5.0.52 DELETE name
NAME C \Variable name" Loop
Import global variables.
If used inside a macro the variables listed are declared as global. The name may contain '*' as a wildcard
matching any sequence of characters.
5.0.51 IMPORT name
NAME
VALUE
TEXT
24
MACRO/SYNTAX
MACRO/GLOBAL
5.0.50 CREATE name [ value text ]
Chapter 6
Chapter 5
number
vector-name
(for scalar vectors)
vector-name(expr)
vector-name(expr,expr)
vector-name(expr,expr,expr)
[variable-name]
(if value is numeric or
the name of a scalar vector)
[variable-name](expr...)
(if value is a vector name)
alias-name
(if value is numeric constant)
$system-function(...)
- expr
expr + expr
expr - expr
expr * expr
expr / expr
(expr)
ABS(expr)
INT(expr)
MOD(expr,expr)
25
They can be used in the macro statements DO, FOR, and EXITM, in macro variable assignments, as
system function arguments where a numeric value is expected, or as the argument to the $EVAL function.
Note that all arithmetic operations are done in oating point, i.e., "5/2" becomes "2.5". If a oating point
result appears in a place where an integer is expected, for example as an index, the value is truncated.
|
|
|
|
|
|
|
|
|
|
|
|
expr ::=
|
|
|
|
|
Explanation of arithmetic expression syntax.
The syntactic elements for building arithmetic expressions are:
7.0.54 Arithmetic
KUIP has a built-in parser for dierent kinds of expressions: arithmetic expressions, boolean expressions, string expressions, and "garbage expressions".
Explanation of KUIP expression syntax.
MACRO/SYNTAX/Expressions
Chapter 7
::=
|
|
|
|
|
|
expr rel-op expr
string eq-op string
expr eq-op string
.NOT. bool
bool .AND. bool
bool .OR. bool
( bool )
::= .EQ. | .NE.
| =
| <>
quoted-string
unquoted-string
string // string
expr // string
[variable-name]
alias-name
$system-function(...)
(concatenation)
(expr represented as string)
macro variable replacement; values containing a
blank character are implicitly quoted
system function calls are replaced one by one with
their value provided that the argument is a syntactically
correct expression
string concatenation
o
o
o
26
alias substitution
o
is not a proper string expression. Unless they appear in a macro statement where specically only an
arithmetic or a boolean expression is allowed, KUIP does not complain about these syntax errors. Instead
the following transformations are applied:
s = $OS$MACHINE
Explanation of "garbage" expression syntax.
Expressions which do not satisfy any of the other syntax rules we want to call "garbage" expressions.
For example,
7.0.57 Garbage
string ::=
|
|
|
|
|
|
Explanation of string expression syntax.
String expressions can be used in the macro statements CASE, FOR, and EXITM, in macro variable
assignments, as system function arguments where a string value is expected, or as the argument to the
$EVAL function. They may be constructed from the syntactic elements shown below.
7.0.56 String
eq-op
rel-op ::= .LT. | .LE. | .GT. | .GE.
| <
| <= | >
| >=
| eq-op
bool
Explanation of Boolean expression syntax.
Boolean expressions can only be used in the macro statements IF, WHILE, and REPEAT. The possible
syntactic elements are shown below.
7.0.55 Boolean
Fully qualified name of the macro.
Number of macro arguments
List of all macro arguments, separated by blanks
EXITM return code of the last macro called by
the current one. The value is "0" if the last
macro did not supply a return code or no macro
has been called yet.
27
As for numbered variables these names cannot be used on the left-hand side of an assignment. The values
or [#] and [*] are updated by the SHIFT statement.
[0]
[#]
[*]
[@]
Predened special macro variables.
For each macro the following special variables are always dened:
8.0.59 Special
Accessing macro arguments.
The EXEC command can pass arguments to a macro. The arguments are assigned to the numbered
variables [1], [2], etc., in the order given in the EXEC command. The name of the macro, including the
le specication, is assigned to [0].
A numbered variable cannot be redened, i.e., an assignment such as "1 = foo" is illegal. See
MACRO/SYNTAX/SHIFT.
8.0.58 Numbered
The right-hand side of the assignment can be an arithmetic expression, a string expression, or a
garbage expression (see MACRO/SYNTAX/Expressions). The expression is evaluated and the result is
stored as a string (even for arithmetic expressions).
A variable value can be used in other expressions or in command lines by enclosing the name in square
brackets, [name]. If the name enclosed in brackets is not a macro variable then no substitution takes
place.
name = expression
Explanation of KUIP macro variables.
Macro variables do not have to be declared. They become dened by an assignment statement,
MACRO/SYNTAX/Variables
Chapter 8
[ prompt ]
allows to traverse the list of macro arguments.
WHILE [1] <> ' ' DO
arg = [1]
...
SHIFT
ENDDO
28
Manipulation numbered variables.
The only possible manipulation of numbered variables is provided by the SHIFT statement which copies
[2] into [1], [3] into [2], etc., and discards the value of the last dened numbered variable. For example,
the construct
8.0.63 SHIFT
Variable values can be queried from the user during macro execution. The READ statement prompts for
the variable value. If name is already dened the present value will be proposed as default.
READ name
Reading a variable value from the keyboard.
8.0.62 READ
makes all dened global variables visible.
EXTERN *
The variable names listed in the EXTERN statement are declared as global variables. If a name has not
been dened with the GLOBAL/CREATE command, it is created implicitly and initialized to the empty
string. The name list may contain wildcards, for example
EXTERN name ...
Declaring a global variable.
8.0.61 Global
There is only one level of indirection, i.e., the name contained in "name" may not start with another
"%".
DO i=1,[#]
arg = [%i]
...
ENDDO
is substituted by that other variable's value. For example, this is another way to traverse the list of macro
arguments:
[%name]
Referencing a macro variable indirectly.
Macro variables can be referenced indirectly. If the variable [name] contains the name of another variable
the construct
8.0.60 Indirection
| error!
29
In order to return from a macro prematurely the EXITM statement must be used. The value is stored
into the variable [@] in the calling macro. If no value is given it defaults to zero.
EXITM [ value ]
Terminate macro execution and return to calling macro.
9.0.66 EXITM
is illegal. See MACRO/SYNTAX/EXITM.
The value is stored into the variable [@] in the calling macro. If no value is given it defaults to zero.
IF ... THEN
RETURN
ENDIF
The RETURN statement ags the end of the macro denition and not the end of macro execution, i.e.,
the construct
RETURN [ value ]
Ending a macro denition
9.0.65 RETURN
Each statement is either a command line or one of the macro constructs described in this section
(MACRO/SYNTAX). For the rst macro in the le the MACRO header can be omitted. For the last
macro in the le the RETURN trailer may be omitted. Therefore a .kumac le containing only commands
(like the LAST.KUMAC) already constitutes a valid macro.
MACRO macro-name [ parameter-list ]
statements
RETURN
Dening a macro.
A .kumac le may contain several macros. An individual macro has the form
9.0.64 MACRO
Statements for dening macros.
MACRO/SYNTAX/Denitions
Chapter 9
30
Ignore rest of KUMAC le.
A logical "end of le" marker. The KUIP parser will not read any part of a .kumac le which appears
after the "ENDKUMAC" command.
9.0.68 ENDKUMAC
The STOPM statement unwinds nested macro calls and returns to the command line prompt.
STOPM
Terminate macro execution and return to command line prompt.
9.0.67 STOPM
[ statements ]
[ statements ]
IF expression THEN
GOTO label
ENDIF
This old-fashioned construct is equivalent to
IF expression GOTO label
31
The simplest form of ow control is provided by the GOTO statement which continues execution at the
statement following the target "label:". If the jump leads into the scope of a block statement, for example
a DO-loop, the result is undened.
The target may be given by a variable containing the actual label name.
GOTO label
Unconditional and conditional branching.
10.0.70 GOTO and IF GOTO
The CASE switch evaluates the string expression and compares it one by one against the label lists until
the rst match is found. If a match is found the statements up to the next label are executed before
skipping to the statement following the ENDCASE. None of the statements are executed if there is no
match with any label.
Each label is a string constant and the comparison witht the selection expression is case-sensitive. If the
same statement sequence should be executed for distinct values a comma-separated list of values can be
used.
The "*" character in a label item acts as wildcard matching any string of zero or more characters, i.e.,
"(*)" constitutes the default label.
CASE expression IN
(label) statement
...
(label) statement
ENDCASE
Select one of many branches.
10.0.69 CASE
Macro statements for general ow control.
MACRO/SYNTAX/Branching
Chapter 10
ON ERROR STOPM
[ expression ]
32
An error handler can be reactivated by this statement.
ON ERROR
An error handler can be deactivated by this statement.
OFF ERROR
continues execution with the next command independent of the status code. This is the initial setting
when entering a macro.
ON ERROR CONTINUE
are short-hand notations for a corresponding EXITM or STOPM statement at the targat label.
and
ON ERROR EXITM
installs an error handler which tests the status code after each command and branches to the given label
when a non-zero value is found. The error handler is local to each macro.
ON ERROR GOTO label
Installing an error handler.
Each command returns a status code which should be zero if the operation was successful or non-zero if
any kind of error condition occurred. The status code can be tested by $IQUEST(1) system function.
10.0.72 ON ERROR
The general IF construct executes the statements following the rst IF/ELSEIF clause for with the
boolean expression is true and then continues at the statement following the ENDIF. The ELSEIF clause
can be repeated any number of times or can be omitted altogether. If none of the expressions is true, the
statements following the optional ELSE clause are executed.
IF expression THEN
statements
ELSEIF expression THEN
statements
...
ELSEIF expression THEN
statements
ELSE
statements
ENDIF
Conditional execution of statement blocks.
10.0.71 IF THEN
[, step_expr ]
FOR arg IN [*]
...
ENDFOR
33
In a FOR-loop the number of iterations is determined by the number of items in the blank-separated
expression list. The expression list must not be empty. One by one each expression evaluated and assigned
to the variable name before the statements are executed.
The expressions can be of any type: arithmetic, string, or garbage expressions, and they do not need to
be all of the same type. In general each expression is a single list item even if the result contains blanks.
The variable [*] is treated as a special case being equivalent to the expression list "[1] [2] ... [n]" which
allows yet another construct to traverse the macro arguments:
FOR name IN expr_1 [ expr_2 ... expr_n ]
statements
ENDFOR
Loop over items in an expression list.
11.0.74 FOR
The step size (setp expr) defaults to "1". The arithmetic expressions involved can be oating point values
but care must be taken of rounding errors.
Note that "DO i=1,0" results in zero iterations and that the expressions are evaluated only once.
DO loop = start_expr, finish_expr
statements
ENDDO
Loop incrementing a loop counter.
11.0.73 DO
Macro statements for construction loops.
MACRO/SYNTAX/Looping
Chapter 11
34
Allows to continue with the next loop iteration without executing the rest of the loop body. Execution
continues just before the end clause of a DO, FOR, WHILE, or REPEAT block, where "level" indicates
how many nested blocks to skip. The default value level=1 skips to the end of the innermost loop
construct.
NEXTL [ level ]
Continue with next loop iteration.
11.0.78 NEXTL
Allows to terminate a loop prematurely. The BREAKL continues executing after the end clause of a DO,
FOR, WHILE, or REPEAT block, where "level" indicates how many nested constructs to terminate.
The default value level=1 terminates the innermost loop construct.
BREAKL [ level ]
Terminate a loop.
11.0.77 BREAKL
The WHILE-loop is iterated while the boolean expression evaluates to true. The loop body is not executed
at all if the boolean expression is false already in the beginning.
WHILE expression DO
statements
ENDWHILE
Loop while condition is true.
11.0.76 WHILE
The body of a REPEAT-loop is executed at least once and iterated until the boolean expression evaluates
to true.
REPEAT
statements
UNTIL expression
Loop until condition becomes true.
11.0.75 REPEAT
for
for
for
for
for
all elements
element 13-th
elements 12-th to last
elements first to 10-th
elements 5-th to 8-th
for
for
for
for
for
elements 5-th to 8-th in 2-nd column
elements 5-th to 8-th in 2-nd to 3-rd columns
element 5-th in 2-nd column
all elements in 3-rd row
all elements in 2-nd column (SPECIAL CASE)
35
An 'invisible' vector called '?', mono-dimensional and of length 100, is always present. Is is used
for communicating between user arrays and KUIP vectors, being equivalenced with the real array VECTOR(100) in the labeled common block /KCWORK/.
The latest line shows the special (and non-standard with FORTRAN 77) notation such that missing
indexes are substituted to the right.
Vec(2,5:8)
Vec(2:3,5:8)
Vec(2,5)
Vec(:,3)
Vec(2)
may be addressed by:
Vec(3,100) (2-dimensional with 3 columns by 100 rows):
Vec
Vec(13)
Vec(12:)
Vec(:10)
Vec(5:8)
may be addressed by:
Vec(20) (mono-dimensional with 20 elements)
Vector Processor commands. Vectors are equivalent to FORTRAN 77 arrays and they use the same
notation except when omitting indexes (see last line below). Up to 3 dimensions are supported. Examples:
VECTOR
Chapter 12
Vararg
--->
VEC/CREATE Z(20) R 1 1 1 1 1 2 3 3 3
--->
--->
deletes all vectors starting by AB
deletes all vectors
V(5)
V1(2:3,5)
V1(5,2:3)
V1(3,3:4)
V1(2:3,5)
W(3,4)
V2(4:5,9)
V2(4:5,9)
V2(4,4:5)
V2(2,4:5)
|
|
|
|
|
O.K.
O.K.
O.K.
NOT allowed
NOT allowed
36
Enter HELP VECTOR for more information on vector addressing.
VEC/COPY
VEC/COPY
VEC/COPY
VEC/COPY
VEC/COPY
VNAM1
VNAM2
C \Source vector name"
C \Destination vector name"
Copy a vector into another one. Mixed vector type copy is supported (e.g. Integer |i Real and viceversa).
If VNAM2 does not exist it is created with the required dimensions, not necessarily the same as the source
vector if a sub-range was specied. For example, if A is a 3 x 100 vector and B does not exist, COPY
A(2,11:60) B will create B as a 50 elements mono-dimensional vector; a special (and non-standard with
FORTRAN 77) notation is used such that, still using the above vectors, COPY A(2,1:100) B and COPY
A(2) B have the same eect.
Note that VECTOR/COPY does not allow a range for the destination vector not specifying consecutive
elements (i.e. along the rst dimension):
12.0.82 COPY vnam1 vnam2
VEC/DEL AB*
VEC/DEL *
VLIST C \Vector list" D=' ' Loop
Delete from memory all vectors in the list VLIST. The vectors are separated in the list by a comma and
embedded blanks are not allowed. An asterisk at the end of VLIST acts as wild-card:
12.0.81 DELETE vlist
List all vectors (name, dimensions, type).
12.0.80 LIST
Enter HELP VECTOR for more information on vector addressing.
3
VEC/CREATE Z(20) R 5*1 2 4*3
In the last example only the rst three elements are lled. Vector elements may be changed later with
the command VECTOR/INPUT.
If many equal values have to be entered consecutively, one can specify just one value and precede it by a
repetition factor and an asterisk. Example:
VEC/CREATE V(10) R 1 2 3 4 5 66 77 88 99 111
VEC/CREATE W(20) R 1 2 3
Create a vector named VNAME (elements are set to zero). The dimensions are taken from the name,
for example VEC(20), VEC(3,100), VEC(2,2,10). Up to 3 dimensions are supported. Dimensions which
are not specied are taken to 1, for example VEC(10) |i VEC(10,1,1) and VEC |i VEC(1,1,1). The
vector may be of type Real or Integer. A vector is lled at the same time if parameters are given after
the TYPE:
I
R
VNAME
TYPE
VALUES
C \Vector name(length)"
C \Vector type" D='R'
C \Value list" D=' ' Separate
Possible TYPE values are:
12.0.79 CREATE vname [ type values ]
--->
VEC/INPUT V 1 1 1 1 1 2 3 3 3 3
VNAME
DENSE
37
C \Vector name"
I \Output density" D=1 R=0,1,2
Write to the terminal the content of a vector. Enter HELP VECTOR for more information on vector
addressing.
If DENSE.EQ.0 the output is one vector element per line. If DENSE.EQ.1 the output for a sequence of
identical vector elements is compressed to two lines stating the start and end indices. If DENSE.EQ.2
the output for a sequence of identical vector elements is compressed to a single line.
12.0.84 PRINT vname [ dense ]
Enter HELP VECTOR for more information on vector addressing.
VEC/INPUT V 5*1 2 4*3
If many equal values have to be entered consecutively, one can specify just one value and precede it by a
repetition factor and an asterisk. Example:
VEC/INPUT V(6:10) 1.1 2.22 3.333 4.4444 5.55555
VNAME
VALUES
C \Vector name"
C \Value list" D=' ' Separate Vararg
Enter values into a vector from the terminal. Example:
12.0.83 INPUT vname [ values ]
\Vector list"
\File name" D=' '
\Format" D=' '
\Options" D='OC'
\Matching pattern"
Possible OPT values are:
D=' '
file
file
file
file
is
is
is
is
Opened, read and then Closed (default case)
Opened and then read (left open for further reading)
read (already open, left so for further reading)
read and then Closed (already open)
match a string (starting in column 1)
do not match a string (starting in column 1)
match a string, starting in column n
match a string, starting at any column
38
Enter HELP VECTOR for more information on vector addressing.
/string/
-/string/
/string/(n)
/string/(*)
If the character 'Z' is present in OPT, the vector elements equal to zero after reading are set to the latest
non-zero element value (for example reading 1 2 3 0 0 4 0 5 will give 1 2 3 3 3 4 4 5).
MATCH is used to specify a pattern string, restricting the vector lling only to the records in the le
which verify the pattern. Example of patterns:
'OC'
'O'
' '
'C'
Enter values into vector(s) from a le. A format can be specied, e.g. FORMAT='F10.5,2X,F10.5', or
the free format is used if FORMAT is not supplied.
If vector(s) are not existing they will be created of the size as read from the le.
Vectors in the list VLIST (maximum 30) are separated by a comma and embedded blanks are not allowed.
If subscripts are present in vector names, the smallest one is taken.
OPT is used to select between the following options:
C
' '
O
OC
VLIST
FNAME
FORMAT
OPT
MATCH
C
C
C
C
C
12.0.85 READ vlist fname [ format opt match ]
\Vector list"
\File name" D=' '
\Format" D='(1X,G13.7)'
\Options" D='OC'
Possible CHOPT values are:
file
file
file
file
is
is
is
is
Opened, written and then Closed (default case)
Opened and then written (left open for further writing)
written (already open, left so for further writing)
written and then Closed (already open)
VNAME
ID
39
C \Vector name"
C \Histogram Identier"
Fill the existing histogram ID with vector VNAME (real) . Note that the command VECTOR/PLOT
can automatically book, ll and plot the contents of a vector.
12.0.88 HFILL vname id
VNAME
ID
CHOPT
C \Vector name"
C \Histogram Identier" D='12345'
C \Options" D=' '
Possible CHOPT values are:
' ' Draw an histogram.
C
Draw a smooth curve.
S
Superimpose plot on top of existing picture.
+
Add contents of ID to last plotted histogram.
B
Select Bar chart format.
L
Connect channels contents by a line.
P
Draw the current polymarker at each channel.
*
Draw a * at each channel.
Draw vector VNAME (real) interpreting it as a histogram. Optionally save the contents in histogram
ID.
12.0.87 DRAW vname [ id chopt ]
Enter HELP VECTOR for more information on vector addressing.
'OC'
'O'
' '
'C'
Write to a le the content of vector(s). If FNAME=' ' the content is written to the terminal. A format
can be specied, e.g. FORMAT='F10.5,2X,F10.5', or the default one is used if FORMAT is not supplied.
Vectors in the list VLIST (maximum 30) are separated by a comma and embedded blanks are not allowed.
If subscripts are present in vector names, the smallest one is taken.
CHOPT is used to select between the following options:
C
' '
O
OC
VLIST
FNAME
FORMAT
CHOPT
C
C
C
C
12.0.86 WRITE vlist [ fname format chopt ]
VNAME
ID
CHOPT
40
C \Vector name"
C \Histogram Identier" D='12345'
C \Options" D=' '
Possible CHOPT values are:
' ' Draw an histogram.
C
Draw a smooth curve.
S
Superimpose plot on top of existing picture.
+
Add contents of ID to last plotted histogram.
B
Select Bar chart format.
L
Connect channels contents by a line.
P
Draw the current polymarker at each channel.
*
Draw a * at each channel.
Each element of VNAME (real) is used to ll an histogram which is automatically booked with 100
channels and then plotted. If VNAME has the form VNAME1%VNAME2 then a scatter-plot of vector
VNAME1 versus VNAME2 is plotted. If ID is given dierent of 12345, then a 2-Dim histogram is created
with 40 bins by 40 bins and lled. One can use the command VECTOR/HFILL to ll an already existing
histogram. When option 'S' is used, the limits of the current plot are used to create the 1D histogram.
12.0.89 PLOT vname [ id chopt ]
\Vector of X coordinates"
\Vector of Y coordinates"
\Vector of errors on Y" D='?'
\Function name"
\Character options" D=' '
\Number of parameters" D=0 R=0:20
\Vector of parameters"
\Vector of steps size"
\Vector of lower bounds"
\Vector of upper bounds"
\Vector of errors on parameters"
Possible CHOPT values are:
' ' Do the t, plot the result and print the parameters.
0
Do not plot the result of the t. By default the tted function is drawn unless the option
'N' below is specied.
N
Do not store the result of the t bin by bin with the histogram. By default the function
is calculated at the middle of each bin and the t results stored with the histogram data
structure.
Q
Quiet mode. No print
V
Verbose mode. Results after each iteration are printed By default only nal results are
printed.
B
Some or all parameters are bounded. The vectors STEP,PMIN,PMAX must be specied.
Default is: All parameters vary freely.
L
Use Log Likelihood. Default is chisquare method.
D
The user is assumed to compute derivatives analytically using the routine HDERIV. By
default, derivatives are computed numerically.
W
Sets weights equal to 1. Default weights taken from the square root of the contents or
from HPAKE/HBARX (PUT/ERRORS).
M
The interactive Minuit is invoked.
E
Performs a better Error evaluation (MIGRAD + HESSE + MINOS).
Z
FUNC is the user tting model
Fit a user dened function to the points dened by the two vectors X and Y and the vector of associated
errors EY. See command Histo/Fit for explanation of parameters. Note that if option 'W' is specied or
EY='?' (default), the array EY is ignored. Option 'L' is not available.
41
When option 'Z' is given, FUNC is the user fitting model.
FUNC is a subroutine with the calling sequence:
Subroutine FUNC(N,X,Y,EY,NPAR,IFLAG,NPFITS)
where
- X(N),Y(N),EY(N) are the input vectors,
- NPAR the number of parameters
- NPFITS is an output parameter = Number of points used in the fit
The user must declare the common/HCFITD/FITPAD(24),FITFUN in FUNC
X
Y
EY
FUNC
CHOPT
NP
PAR
STEP
PMIN
PMAX
ERRPAR
C
C
C
C
C
I
C
C
C
C
C
12.0.90 FIT x y ey func [ chopt np par step pmin pmax errpar ]
VNAM1
VNAM2
VNAM3
42
C \First source vector name"
C \Second source vector name"
C \Destination vector name"
VNAM3(I) = VNAM1(I) / VNAM2(I) ( or 0 if VNAM2(I)=0 )
13.0.96 VDIVIDE vnam1 vnam2 vnam3
VNAM1
VNAM2
VNAM3
C \First source vector name"
C \Second source vector name"
C \Destination vector name"
VNAM3(I) = VNAM1(I) - VNAM2(I)
13.0.95 VSUBTRACT vnam1 vnam2 vnam3
VNAM1
VNAM2
VNAM3
C \First source vector name"
C \Second source vector name"
C \Destination vector name"
VNAM3(I) = VNAM1(I) * VNAM2(I)
13.0.94 VMULTIPLY vnam1 vnam2 vnam3
VNAM1
VNAM2
VNAM3
C \First source vector name"
C \Second source vector name"
C \Destination vector name"
VNAM3(I) = VNAM1(I) + VNAM2(I)
13.0.93 VADD vnam1 vnam2 vnam3
VNAM1
SCALE
VNAM2
C \Source vector name"
R \Scale factor"
C \Destination vector name"
VNAM2(I) = SCALE * VNAM1(I)
13.0.92 VSCALE vnam1 scale vnam2
VNAM1
BIAS
VNAM2
C \Source vector name"
R \Bias value"
C \Destination vector name"
VNAM2(I) = BIAS + VNAM1(I)
13.0.91 VBIAS vnam1 bias vnam2
Simple arithmetic operations between vectors. In all the operations only the minimum vector length is
considered, i.e. an operation between a vector A of dimension 10 and a vector B of dimension 5 will
involve the rst 5 elements in both vectors. If the destination vector does not exist, it is created with the
same length as the source vector.
VECTOR/OPERATIONS
Chapter 13
\Logical unit number" R=0:128
\File name"
\Record length in words" D=1024
\Options" D=' '
Possible CHOPT values are:
' ' Existing le is opened (read mode only).
N
A new le is opened.
U
Existing le is opened to be modied.
D
Reset lock.
Open an HBOOK direct access le. If LUN is 0 the next free logical unit will be used. If LRECL is 0
the system will determine the correct record length of an existing le.
43
ID C \Histogram Identier" Loop
Delete histogram/Ntuple ID in Current Directory (memory). If ID=0 delete all histograms and Ntuples.
To delete histograms in disk les use command HIO/HSCRATCH.
14.0.99 DELETE id
CHOPT C \Options" D=' '
Possible CHOPT values are:
' ' List histograms and Ntuples in the current directory.
I
A verbose format is used (HINDEX), (only for //PAWC).
S
List with histograms sorted by increasing IDs.
List histograms and Ntuples in the current directory.
14.0.98 LIST [ chopt ]
LUN
FNAME
LRECL
CHOPT
I
C
I
C
14.0.97 FILE lun fname [ lrecl chopt ]
Manipulation of histograms, Ntuples. Interface to the HBOOK package.
HISTOGRAM
Chapter 14
ID
CHOPT
C \Histogram Identier" Loop Minus
C \Options" D=' ' Minus
Possible CHOPT values are:
' '
Draw the histogram.
C
Draw a smooth curve.
S
Superimpose plot on top of existing picture.
+
Add contents of ID to last plotted histogram. Use option K with previous histogram if
you have several zones.
Substract contents of ID to last plotted histogram. Use option K with previous histogram
if you have several zones.
+Draw the delta with the last plotted histogram. Use option K with previous histogram if
you have several zones.
B
Select Bar chart format.
L
Connect channels contents by a line.
P
Draw the current polymarker at each channel or cell.
*
Draw a * at each channel.
K
Must be given if option 'U' or '+' is given later.
U
Update channels modied since last call.
E
Draw error bars and current marker.
E0
Draw error bars without symbols clipping.
E1
Draw small lines at the end of the error bars.
E2
Draw error rectangles.
E3
Draw a lled area through the end points of the vertical error bars.
E4
Draw a smoothed lled area through the end points of the vertical error bars.
A
Axis labels and tick marks are not drawn.
BOX
Draw 2-Dim with proportional boxes.
COL
Draw 2-Dim with a color table.
Z
Used with COL or SURF, it draws the color map.
SURF
Draw as a surface plot (angles are set via the command angle).
SURF1 Draw as a surface with color levels
SURF2 Same as SURF1 but without cell lines.
SURF3 Same as SURF but with the contour plot (in color) on top.
SURF4 Draw as a surface with Gouraud shading.
LEGO
Draw as a lego plot (angles are set via the command angle).
LEGO1 Draw lego plot with light simulation.
LEGO2 Draw lego plot with color levels.
BB
Suppress the Back Box on 3D plots.
FB
Suppress the Front Box on 3D plots.
CONT
Draw 2-Dim as a contour plot (15 levels).
TEXT
Draw 2-Dim as a table.
CHAR
Draw 2-Dim with characters (a la HBOOK).
HIST
Draw only histogram (no errors or associated function).
44
FUNC
Draw only the associated function (not the histogram).
CYL
Cylindrical coordinates for 3D plots.
POL
Polar coordinates for 3D plots.
SPH
Spherical coordinates for 3D plots.
14.0.100 PLOT [ id chopt ]
\Histogram Identier" Loop Minus
\Options" D=' '
\First channel" D=1
\Last channel" D=9999
Possible CHOPT values are:
' ' Plot the zoomed histogram.
C
Draw a smooth curve.
S
Superimpose plot on top of existing picture.
+
Add contents of ID to last plotted histogram.
B
Select Bar chart format.
L
Connect channels contents by a line.
P
Draw the current polymarker at each channel.
*
Draw a * at each channel.
Plot a single histogram between channels ICMIN and ICMAX. Each plotted histogram will start either
a new picture or a new zone in the current picture. If no parameters are given to the command, then
the system waits for two points using the graphics cursor. To quit ZOOM, click the right button of the
mouse or CRTL/E.
ID1
ID2
TITLE
Fun2 2
Slix 2
H/Copy
H/Copy
x*y 40 0 1 40 0 1 ' '
10 ; H/proj 2
2.slix.3 3
2(0.:.5,-1.:2.) 4
|
|
|
|
45
Create a 2D histogram
Slices on X
Copy the slice 3
Copy with new X and Y scales
C \First histogram Identier"
C \Second histogram Identier" Loop
C \New title" D=' '
Copy a histogram onto another one. Bin denition, contents, errors, etc. are preserved. If TITLE is not
given, ID2 has the same title as ID1.
It is possible to copy a projection of a 2D histogram into a 1D histogram.
Ranges can be specify in the rst histogram identier to reduce or enlarge the X or Y scale.
Example:
14.0.104 COPY id1 id2 [ title ]
ID C \Histogram Identier" Loop
Fill all booked projections of a 2-Dim histogram. Filling is done using the 2-D contents of ID.
14.0.103 PROJECT id
IDLIST C \List of histogram Identiers" Vararg
Plot one or several histograms into the same plot. Plotted histograms are superimposed on the same
zone of the picture.
14.0.102 MANY PLOTS idlist
ID
CHOPT
ICMIN
ICMAX
C
C
I
I
14.0.101 ZOOM [ id chopt icmin icmax ]
46
To do fitting in DOUBLE PRESICION option U should be used. In that case,
the file 'func.f' should look like:
A- The name of a file which contains the user defined
function to be minimized. Function name and file name
must be the same. For example file 'func.f' is:
FUNCTION FUNC(X)
or FUNC(X,Y) for a 2-Dim histogram
COMMON/PAWPAR/PAR(2)
FUNC=PAR(1)*X +PAR(2)*EXP(-X)
END
Ex: His/fit 10 func.for ! 5 par
Fit a user dened (and parameter dependent) function to a histogram ID (1-Dim or 2-Dim) in the
specied range. FUNC may be:
C
C
C
I
C
C
C
C
C
\Histogram Identier"
\Function name" D=' '
\Options" D=' '
\Number of parameters" D=0 R=0:34
\Vector of parameters"
\Vector of steps size"
\Vector of lower bounds"
\Vector of upper bounds"
\Vector of errors on parameters"
Possible CHOPT values are:
' ' Do the t, plot the result and print the parameters.
0
Do not plot the result of the t. By default the tted function is drawn unless the option
'N' below is specied.
N
Do not store the result of the t bin by bin with the histogram. By default the function
is calculated at the middle of each bin and the t results stored with the histogram data
structure.
Q
Quiet mode. No print
V
Verbose mode. Results after each iteration are printed By default only nal results are
printed.
B
Some or all parameters are bounded. The vectors STEP,PMIN,PMAX must be specied.
Default is: All parameters vary freely.
L
Use Log Likelihood. Default is chisquare method.
D
The user is assumed to compute derivatives analytically using the routine HDERIV. By
default, derivatives are computed numerically.
W
Sets weights equal to 1. Default weights taken from the square root of the contents or
from HPAKE/HBARX (PUT/ERRORS). If the L option is given (Log Likelihood), bins
with errors=0 are excluded of the t.
M
The interactive Minuit is invoked. (see Application HMINUIT below).
E
Performs a better Error evaluation (MIGRAD + HESSE + MINOS).
U
User function value is taken from /HCFITD/FITPAD(24),FITFUN. Allows to do tting
in DOUBLE PRECISION.
K
Keep the settings of Application HMINUIT for a subsequent command.
ID
FUNC
CHOPT
NP
PAR
STEP
PMIN
PMAX
ERRPAR
14.0.105 FIT id func [ chopt np par step pmin pmax errpar ]
Macro fit
Application HMINUIT exit
name 1 par_name1
name 2 par_name2
migrad
improve
exit
Histo/fit id fitfun.f M
Return
47
When the Histo/it command is used in a macro, it might be convenient to specify MINUIT directives
in the macro itself via the Application HMINUIT as described in this example:
Ex. Histo/Fit 10(25:56).
For cases A and C, before the execution of this command, the vector PAR must be lled (via Vector/Input) with the initial values. For case B, if NP is set to 0, then the initial values of PAR will be
calculated automatically. After the t, the vector PAR contains the new values of parameters. If the
vector ERRPAR is given, it will contain the errors on the tted parameters. A bin range may be specied
with ID.
C- A combination of the keywords in B with the 2 operators + or *.
Ex: His/Fit 10 p4+g ! 8 par
His/Fit 10 p2*g+g ! 9 par
Note that in this case, the order of parameters in PAR must
correspond to the order of the basic functions.
For example, in the first case above, par(1:5) apply to
the polynomial of degree 4 and par(6:8) to the gaussian while
in the second case par(1:3) apply to the polynomial of degree 2,
par(4:6) to the first gaussian and par(7:9) to the second gaussian.
Blanks are not allowed in the expression.
B- One of the following keywords (1-Dim only):
G : to fit Func=par(1)*exp(-0.5*((x-par(2))/par(3))**2)
E : to fit Func=exp(par(1)+par(2)*x)
Pn: to fit Func=par(1)+par(2)*x+par(3)*x**2......+par(n+1)*x**n
Ex: His/fit 10 g
FUNCTION FUNC(X)
or FUNC(X,Y) for a 2-Dim histogram
DOUBLE PRECISION FITPAD(24),FITFUN
COMMON/HCFITD/FITPAD,FITFUN
FITFUN=FITPAD(1)*X +FITPAD(2)*EXP(-X)
FUNC=FITFUN
END
SET HCOL 2
LEGO 20
LEGO 20 ! ! 1
LEGO 20 ! ! 2
PALETTE 1 3 2 3 4
The colour the histogram is 2 (red)
Display a lego with lines
Display a lego with different lights
Display a lego with colours
Create the palette number 1 with 3
elements: 2,3
The subsequent stack lego plots will use list 1
Plot a stack of lego plots with lines
Plot a stack of lego plots with light
48
- The options 1 and 2 must be used only on selective erase
devices.
Notes: - The commands OPTION BAR, SET BARW and SET BARO act on lego plots
>
>
>
>
>
|
|
|
|
|
|
PAW > SET HCOL 0.1
|
PAW > LEGO 10+20+30
|
PAW > LEGO 10+20+30 ! ! 1 |
PAW
PAW
PAW
PAW
PAW
Examples:
PAW > LEGO ID1+ID2+ID3
| Maximum number of ID's is 10. The colours of
| each IDn is given by the command ATT/PALETTE
\Histogram Identier" Loop
\Angle THETA in degrees" D=30.
\Angle PHI in degrees" D=30.
\Options" D=' '
Possible CHOPT values are:
' ' Hidden line algorithm is used.
1
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 dierent light.
2
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.L where L dene
a palette of colours given by the command ATT/PALETTE.
Draw a lego plot from 2-Dim or 1-Dim histograms. It is also possible to produce stacked lego plots. A
stacked lego plot consists of a superimposition of several histograms, whose identiers are given in the
command LEGO separated by the character '+'.
ID
THETA
PHI
CHOPT
C
R
R
C
15.0.106 LEGO [ id theta phi chopt ]
Plotting of 2-Dim histograms in various formats.
HISTOGRAM/2D PLOT
Chapter 15
>
>
>
>
ATT/PAL 1 3 2 3 4
SET HCOL 0.1
SET NDVZ 4
SURF id 90 0 2
|
|
|
|
Define the palette 1 with 3 elements
Set the list 1 as colours for histograms
Set the number of Z divisions to 4
Draw the contour
\Histogram Identier" Loop
\Number of contour lines" D=10
\Options" D='1'
\Vector of contour levels"
Possible CHOPT values are:
0 Use colour to distinguish contours.
1 Use line style to distinguish contours.
2 Line style and colour are the same for all contours.
3 The contour is drawn with lled colour levels. The levels are equidistant. The color
indices are taken in the current palette (dened with the command PALETTE). If the
number of levels (NLEVEL) is greater than the number of entries in the current palette,
the palette is explore again from the beginning in order to reach NLEVEL.
S Superimpose plot on top of existing picture.
Draw a contour plot from a 2-Dim histogram. If PARAM is not given, contour levels are equidistant. If
given, the vector PARAM may contain up to 50 values.
Example:
49
Note: The non equidistant contours are not implemented with the option '3'.
Fun2 2 x*y 40 0 1 40 0 1 ' '
| Create a 2D histogram
V/Cr PAR(5) R .1 .11 .3 .31 .5 | Define the contours
Contour 2 5 ! PAR
| Draw the non equidistant contours
ID
NLEVEL
CHOPT
PARAM
C
I
C
C
15.0.108 CONTOUR [ id nlevel chopt param ]
Note: - The options 1 to 4 must be used only on selective erase devices.
PAW
PAW
PAW
PAW
\Histogram Identier" Loop
\Angle THETA in degrees" D=30.
\Angle PHI in degrees" D=30.
\Options" D=' '
Possible CHOPT values are:
' ' Hidden line algorithm is used.
1
Hidden surface algorithm is used and each cell is lled 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.L where L dene a palette of colours given by the command
ATT/PALETTE.
2
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.
3
Surface is drawn with a contour plot in color on top. The contour plot is drawn with the
colors dened with the command PALETTE.
4
Surface is drawn with Gouraud shading.
Draw a surface plot from 2-Dim or 1-Dim histograms. With this command it is possible to draw color
contour plots:
ID
THETA
PHI
CHOPT
C
R
R
C
15.0.107 SURFACE [ id theta phi chopt ]
\Histogram Identier"
\Histogram title" D=' '
\Number of channels" D=100
\Low edge in X" D=0.
\Upper edge in X" D=100.
\Low edge in Y" D=-1.E30
\Upper edge in Y" D=1.E30
\Options" D=' '
Possible CHOPT values are:
' ' Error on mean
S
Spread option
Create a prole histogram. Prole histograms accumulate statistical quantities of a variable y in bins of
a variable x. The contents are set to zero.
ID
TITLE
NCX
XBINS
VALMAX
50
C \Histogram Identier"
C \Histogram title" D=' '
I \Number of channels" D=100
C \Vector of NCX+1 low-edges"
R \Maximum bin content" D=0.
Create a histogram with variable size bins. The low-edge of each bin is given in vector XBINS (NCX+1)
values. The contents are set to zero. See 1DHISTO for VALMAX.
16.0.111 BINS id title ncx xbins [ valmax ]
ID
TITLE
NCX
XMIN
XMAX
YMIN
YMAX
CHOPT
C
C
I
R
R
R
R
C
16.0.110 PROFILE id title ncx xmin xmax ymin ymax [ chopt ]
ID
TITLE
NCX
XMIN
XMAX
VALMAX
C \Histogram Identier" Loop
C \Histogram title" D=' '
I \Number of channels" D=100
R \Low edge" D=0.
R \Upper edge" D=100.
R \Maximum bin content" D=0.
Create a one dimensional histogram. The contents are set to zero. If VALMAX=0, then a full word is
allocated per channel, else VALMAX is used as the maximum bin content allowing several channels to
be stored into the same machine word.
16.0.109 1DHISTO id title ncx xmin xmax [ valmax ]
Creation ('booking') of HBOOK objects in memory.
HISTOGRAM/CREATE
Chapter 16
To plot band 1 in X of ID type:
PAW > HI/PLOT ID.BANX.1
ID
YMIN
YMAX
51
C \Histogram (2-Dim) Identier" Loop
R \Low edge in Y"
R \Upper edge in Y"
Create a projection onto the x axis, in a band of y. Several bands can be dened on the one histogram.
The projection may be lled with Histo/Project.
16.0.117 BANX id ymin ymax
To plot slice 2 in Y of ID type:
PAW > HI/PLOT ID.SLIY.2
ID
NSLICES
C \Histogram (2-Dim) Identier" Loop
I \Number of slices"
Create projections onto the y axis, in x-slices. The projection may be lled with Histo/Project.
16.0.116 SLIY id nslices
To plot slice 3 in X of ID type:
PAW > HI/PLOT ID.SLIX.3
ID
NSLICES
C \Histogram (2-Dim) Identier" Loop
I \Number of slices"
Create projections onto the x axis, in y-slices. The projection may be lled with Histo/Project.
16.0.115 SLIX id nslices
To plot projection Y of ID type:
PAW > HI/PLOT ID.PROY
ID C \Histogram (2-Dim) Identier" Loop
Create the projection onto the y axis. The projection may be lled with Histo/Project.
16.0.114 PROY id
To plot projection X of ID type:
PAW > HI/PLOT ID.PROX
ID C \Histogram (2-Dim) Identier" Loop
Create the projection onto the x axis. The projection is not lled until the Histo/Project command is
executed.
16.0.113 PROX id
ID
TITLE
NCX
XMIN
XMAX
NCY
YMIN
YMAX
VALMAX
C \Histogram Identier" Loop
C \Histogram title" D=' '
I \Number of channels in X" D=40
R \Low edge in X" D=0.
R \Upper edge in X" D=40.
I \Number of channels in Y" D=40
R \Low edge in Y" D=0.
R \Upper edge in Y" D=40.
R \Maximum bin content" D=0.
Create a two dimensional histogram. The contents are set to zero. See 1DHISTO for VALMAX.
16.0.112 2DHISTO id title ncx xmin xmax ncy ymin ymax [ valmax ]
CHTITL
CHOPT
52
C \Global title" D=' '
C \Options" D=' '
Possible CHOPT values are:
' ' The global title is plotted at the top of each picture.
U
If the option 'UTIT' is on, a user title is plotted at the bottom of each histogram.
Set the global title. The size and the Y position of the global title may be changed by the commands
SET GSIZ and SET YGTI respectively. The size and the Y position of the user title may be changed by
the commands SET TSIZ and SET YHTI respectively.
16.0.119 TITLE GLOBAL [ chtitl chopt ]
To plot band 1 in Y of ID type:
PAW > HI/PLOT ID.BANY.1
ID
XMIN
XMAX
C \Histogram (2-Dim) Identier" Loop
R \Low edge in X"
R \Upper edge in X"
Create a projection onto the y axis, in a band of x. Several bands can be dened on the one histogram.
The projection may be lled with Histo/Project.
16.0.118 BANY id xmin xmax
>
>
>
>
Histo/File 1 FILE1
Hrin 0
Histo/File 2 FILE2
Hrin 0 ! 99999
ID
FNAME
53
C \Histogram Identier"
C \File name"
Fetch histogram ID from le FNAME. FNAME has been created by the old version of HBOOK3 (Unformatted).
17.0.123 HFETCH id fname
ID C \Histogram Identier" Loop
Delete histogram ID in Current Directory on disk. If ID='0' or '*' delete all histograms. To delete
histograms in memory use command HISTO/DELETE.
17.0.122 HSCRATCH id
ID
CHOPT
C \Histogram Identier" Loop
C \Options" D=' '
Possible CHOPT values are:
' ' Write histo/Ntuple ID from memory to current directory.
T
Writes all histograms in subdirectories as well.
Write histo/Ntuple ID from memory to current directory. Identier may be '0' or '*' (for all histograms).
17.0.121 HROUT id [ chopt ]
PAW
PAW
PAW
PAW
ID
ICYCLE
IOFSET
C \Histogram Identier" Loop
I \Cycle number" D=999
I \Oset" D=0
Read histogram/Ntuple ID from the current directory on direct access le to memory. An identical
histogram is created but with an ID equal to that of the original histogram plus the oset IOFSET.
Identier may be '0' or '*' (for all histograms). If ICYCLE i 1000 and ID=0 read all histograms in all
subdirectories as well. If IOFSET = 99999 then the contents of histogram ID on the disk le are added to
the current histogram in memory if it exists. For example to add all histograms from FILE1 and FILE2
in memory, the sequence of commands can be:
17.0.120 HRIN id [ icycle iofset ]
Input/Output operations of histograms.
HISTOGRAM/HIO
Chapter 17
ID C \Histogram Identier"
Reset histogram ID in the global section.
17.0.129 GRESET id
54
GNAME C \Global section name" D=' '
Map the global section GNAME. The current directory is changed to //GNAME. This command doesn't
work on HPUX.
17.0.128 GLOBAL SECT gname
LUN
FNAME
I \Logical unit number" D=6
C \File name" D=' '
Change the HBOOK 'line printer' le name. If FNAME=' ' then OUTPUT is appended to an already
opened le on unit LUN. If LUN is negative, the le is closed and subsequent output is directed to unit
6.
17.0.127 OUTPUT LP [ lun fname ]
ID C \Histogram Identier" Loop
Dump the histogram ZEBRA data structure on the terminal.
17.0.126 DUMP id
ID
CHOPT
C \Histogram Identier" Loop
C \Options" D=' '
Possible CHOPT values are:
' ' Print histograms.
S
Only statistics (Number of entries, mean, RMS, underow, overow) are printed.
Print histograms (line-printer format) on screen. The command OUTPUT LP may be used to change
the output le.
17.0.125 PRINT id [ chopt ]
ID
FNAME
C \Histogram Identier"
C \File name"
Read histogram ID from le FNAME. FNAME has been created by the old version of HBOOK3 (Formatted).
17.0.124 HREAD id fname
\First histogram Identier"
\Second histogram Identier"
\Result histogram Identier"
\Scale factor for ID1" D=1.
\Scale factor for ID2" D=1.
\Option" D=' '
Possible OPTION values are:
\First histogram Identier"
\Second histogram Identier"
\Result histogram Identier"
\Scale factor for ID1" D=1.
\Scale factor for ID2" D=1.
\Option" D=' '
Possible OPTION values are:
55
Subtract histograms: ID3 = C1*ID1 - C2*ID2. Applicable to 1-Dim and 2-Dim histograms. If option
'E' is set, error bars are calculated for ID3.
E
' '
ID1
ID2
ID3
C1
C2
OPTION
C
C
C
R
R
C
18.0.131 SUBTRACT id1 id2 id3 [ c1 c2 option ]
Add histograms: ID3 = C1*ID1 + C2*ID2. Applicable to 1-Dim and 2-Dim histograms. See command
HRIN to add histograms with same IDS from dierent les. If option 'E' is set, error bars are calculated
for ID3.
E
' '
ID1
ID2
ID3
C1
C2
OPTION
C
C
C
R
R
C
18.0.130 ADD id1 id2 id3 [ c1 c2 option ]
Histogram operations and comparisons.
HISTOGRAM/OPERATIONS
Chapter 18
\First histogram Identier"
\Second histogram Identier"
\Result histogram Identier"
\Scale factor for ID1" D=1.
\Scale factor for ID2" D=1.
\Option" D=' '
Possible OPTION values are:
56
C \Histogram Identier" Loop
C \New title" D=' '
Reset contents and errors of an histogram. Bin denition is not modied.
ID
TITLE
18.0.134 RESET id [ title ]
Divide histograms: ID3 = C1*ID1 / C2*ID2. Applicable to 1-Dim and 2-Dim histograms. If option 'E'
is set, error bars are calculated for ID3.
E
' '
C
C
C
R
R
C
\First histogram Identier"
\Second histogram Identier"
\Result histogram Identier"
\Scale factor for ID1" D=1.
\Scale factor for ID2" D=1.
\Option" D=' '
Possible OPTION values are:
ID1
ID2
ID3
C1
C2
OPTION
18.0.133 DIVIDE id1 id2 id3 [ c1 c2 option ]
Multiply histogram contents: ID3 = C1*ID1 * C2*ID2. Applicable to 1-Dim and 2-Dim histograms. If
option 'E' is set, error bars are calculated for ID3.
E
' '
ID1
ID2
ID3
C1
C2
OPTION
C
C
C
R
R
C
18.0.132 MULTIPLY id1 id2 id3 [ c1 c2 option ]
ID
CHOPT
57
C \Histogram Identier" Loop
C \Options" D='XA'
Possible CHOPT values are:
X X-axis is being treated.
Y Y-axis is being treated.
Z Z-axis is being treated.
A Alphabetically.
E Reverse alphabetical order.
D By increasing channel contents.
V By decreasing channel contents.
Sort the alphanumeric labels of the histogram ID according to the value of CHOPT.
18.0.136 SORT id [ chopt ]
ID1
ID2
CHOPT
C \First Histogram Identier"
C \Second Histogram Identier"
C \Options" D='D'
Possible CHOPT values are:
' ' The comparison is done only on the shape of the two histograms.
N
Include also comparison of the relative normalisation of the two histograms, in addition
to comparing the shapes. PROB is then a combined condence level taking account of
absolute contents.
D
Debug printout, produces a blank line and two lines of information at each call, including
the ID numbers, the number of events in each histogram, the PROB value, and the
maximum Kolmogorov distance between the two histograms. For 2-Dim histograms,
there are two Kolmogorov distances (see below). If 'N' is specied, there is a third line
of output giving the PROB for shape alone, and for normalisation.
O
Overow, requests that overow bins be taken into account.
U
Underow, requests that underow bins be taken into account.
L
Left: include x-underows
R
Right: include x-overows
T
Top: include y-overows
B
Bottom: include y-underows
F1
Histogram 1 has no error (is a function)
F2
Histogram 2 has no error (is a function)
Test of compatibility for two 1-Dim histograms ID1 and ID2. A probability PROB is calculated as a
number between zero and one, where PROB near one indicates very similar histograms, and PROB
near zero means that it is very unlikely that the two arose from the same parent distribution. For two
histograms sampled randomly from the same distribution, PROB will be (approximately) uniformly distributed between 0 and 1. See discussion in HBOOK manual under 'HDIFF- Statistical Considerations'.
By default (if no options are selected with CHOPT) the comparison is done only on the shape of the two
histograms, without consideration of the dierence in numbers of events, and ignoring all underow and
overow bins.
18.0.135 DIFF id1 id2 [ chopt ]
\Histogram or Ntuple Identier" Minus
\Options" D='2M'
\Sensitivity parameter" D=1. R=0.3:3.
\Smoothness parameter" D=1. R=0.3:3.
Possible OPTION values are:
0 Replace original histogram by smoothed.
1 Replace original histogram by smoothed.
2 Store values of smoothed function and its parameters without replacing the original histogram (but see note below) - the smoothed function can be displayed at editing time see HISTOGRAM/PLOT.
M Invoke multiquadric smoothing (see HBOOK routine HQUAD).
Q Invoke the 353QH algorithm (see HBOOK routine HSMOOF).
S Invoke spline smoothing.
V Verbose (default for all except 1-D histogram).
N Do not plot the result of the t.
F Write Fortran77 function to HQUADF.DAT (multiquadric only)
Smooth a histogram or 'simple' ntuple. ('simple' = 1, 2, or 3 variables.)
For multiquadric smoothing, SENSIT controls the sensitivity to statistical uctuations. SMOOTH controls the (radius of) curvature of the multiquadric basis functions.
Notes:
1) The multiquadric basis functions are SQRT(R**2+D**2), where R is the distance from the 'centre',
and D is a scale parameter and also the curvature at the 'centre'. 'Centres' are located at points where
the 2nd dierential or Laplacian of event density is statistically signicant.
2) The data must be statistically independent, i.e. events (weighted or unweighted) drawn randomly
from a parent probability distribution or dierential cross-section.
For spline smoothing, SENSIT and SMOOTH control the no. of knots (= 10 * SENSIT) and degree of
splines (= SMOOTH + 2) (thus if SENSIT and SMOOTH are at their default values a 10-knot cubic
spline is used).
Notes:
1) The spline option ALWAYS replaces the contents of a 2-D histogram. (Also chi-squared is unavailable
in this case.)
2) Use the SPLINE command for more exibility.
C \Histogram Identier"
I \Option ag" D=2
I \Number of knots" D=10
I \Degree of the spline" D=3
Smooth 1-Dim or 2-Dim histogram ID using B-splines. If ID is a 1-Dim histogram then:
58
If ID is a 2-Dim histogram then original contents are replaced.
ISEL = 0,1 replace original histogram by smoothed.
= 2
superimpose as a function when editing.
ID
ISEL
KNOTX
KX
18.0.138 SPLINE id [ isel knotx kx ]
ID
OPTION
SENSIT
SMOOTH
C
C
R
R
18.0.137 SMOOTH id [ option sensit smooth ]
HIS/OP/FUN 110 X**2
H/PL 110
resulting parametric fit superimposed on histogram
no superposition
minimal output: the residual sum of squares is printed
normal output: in addition, the problem characteristics and
options are printed; also the standard deviations and
confidence intervals of the coefficients.
extensive output: the results of each iteration are printed
with the normal output.
weights on histogram contents are already defined via HBARX
or HPAKE. If not they are taken to be equal to the
square-root of the contents.
weights are equal to 1.
monomials will be selected as the elementary functions
Chebyshev polynomials with a definition region: [-1,1]
Legendre polynomials with a definition region: [-1,1]
shifted Chebyshev polynomials with a definition region: [0,1]
Laguerre polynomials with a definition region: [0,+infinite]
Hermite polynomials with a definition region: [-inf,+inf]
PARAM
VALUE
C \Parameter name" D='FEPS'
R \Parameter value" D=0.001
Set various parameters for command PARAM.
18.0.141 HSETPR param value
59
The FORTRAN code of the parameterisation is written onto the le FPARAM.DAT.
1
T = 0
1
2
3
4
5
W = 0
2
S = 1
0
P = 0
1
ID
ISEL
R2MIN
MAXPOW
C \Histogram Identier"
I \Control word" D=11
R \Min correlation coecient" D=1.
I \Max degree of polynomials" D=5 R=1:20
Perform a regression on contents of the 1-Dim histogram ID. Find the best parameterisation in terms of
elementary functions (regressors). See HBOOK guide HPARAM. Control word ISEL=1000*T +100*W
+10*S +P
18.0.140 PARAM id [ isel r2min maxpow ]
ID
UFUNC
C \Histogram Identier"
C \Name of the function"
Associate the function UFUNC with the histogram ID.
Example:
18.0.139 FUNCTION id ufunc
C \Histogram Identier"
C \Vector name"
Get contents of histogram ID into vector VNAME.
ID
VNAME
60
C \Histogram Identier"
C \Vector name"
Get values of center of bins abscissa into vector VNAME.
19.0.145 ABSCISSA id vname
ID
VNAME
C \Histogram Identier"
C \Vector name"
Get function associated to histogram ID into vector VNAME.
19.0.144 FUNCTION id vname
ID
VNAME
C \Histogram Identier"
C \Vector name"
Get errors of histogram ID into vector VNAME.
19.0.143 ERRORS id vname
ID
VNAME
19.0.142 CONTENTS id vname
Fill a vector from values stored in HBOOK objects.
HISTOGRAM/GET VECT
Chapter 19
N.B.:
E.g.:
61
REBIN ID X Y EX EY is a convenient way to return in
one call abscissa, contents and errors for 1-Dim histogram.
In this case the errors in X are equal to 0.5*BINWIDTH.
REBIN 110 X Y EX EY 25 11 85
will group by 3 channels 11 to 85 and return
new abscissa, contents and errors.
Errors in X are equal to 1.5*BINWIDTH.
\Histogram Identier"
\Name of vector X"
\Name of vector Y"
\Name of vector EX"
\Name of vector EY"
\Number of elements to ll" D=100
\First bin" D=1
\Last bin" D=100
\Option" D=' '
Possible CHOPT values are:
N Do not normalize values in Y
The specied channels of the 1-Dim histogram ID are cumulated (rebinned) into new bins. The nal
contents of the new bin is the average of the original bins by default. If the option N is given, the nal
contents of the new bin is the sum of the original bins. Get contents and errors into vectors, grouping
bins. Bin width and centers are also extracted. Allow to combine 2, 3 or more bins into one.
ID
X
Y
EX
EY
N
IFIRST
ILAST
CHOPT
C
C
C
C
C
I
I
I
C
19.0.146 REBIN id x y ex ey [ n irst ilast chopt ]
ID
VNAME
62
C \Histogram Identier"
C \Vector name"
Replace errors of histogram with values of vector VNAME.
20.0.148 ERRORS id vname
ID
VNAME
C \Histogram Identier"
C \Vector name"
Replace contents of histogram with values of vector VNAME.
20.0.147 CONTENTS id vname
Replace histogram contents with values in a vector.
HISTOGRAM/PUT VECT
Chapter 20
MIN id 0 ; MAX id 0
MIN id 0 ; MAX id 0
ID
XSCALE
C \Histogram Identier"
R \Scale factor" D=0
Set the scale factor for histograms (2-Dim).
63
21.0.152 SCALE FACTOR 2D id [ xscale ]
ID
XNORM
C \Histogram Identier"
R \Normalisation factor" D=1
Set the contents/errors normalisation factor. Only valid for histograms (1-Dim). (does not change
contents, only presentation).
21.0.151 NORMALIZE FACTOR id [ xnorm ]
Reset the default scaling.
ID
VMIN
C \Histogram Identier" Loop
R \Minimum value"
Set the minimum value on the Y axis. To select again an automatic scale, just set VMIN equal to the
maximum.
Example:
21.0.150 MINIMUM id vmin
Reset the default scaling.
ID
VMAX
C \Histogram Identier" Loop
R \Maximum value"
Set the maximum value on the Y axis. To select again an automatic scale, just set VMAX equal to the
minimum.
Example:
21.0.149 MAXIMUM id vmax
Set histogram attributes.
HISTOGRAM/SET
Chapter 21
ID
OPTION
C \Histogram Identier"
C \Options"
Possible OPTION values are:
SETD* Set all options to the default values
SHOW
Print all the options currently set
BLAC
1 Dim histogram printed with X characters
CONT* 1 Dim histogram is printed with the contour option
STAR
1 Dim histogram is printed with a * at the Y value
SCAT* Print a 2 Dim histogram as a scatter-plot
TABL
Print a 2 Dim histogram as a table
PROE* Plot errors as the error on mean of bin in Y for prole histograms
PROS
Plot errors as the Spread of each bin in Y for prole histograms
STAT
Mean value and RMS computed at lling time
NSTA* Mean value and RMS computed from bin contents only
ERRO
Errors bars printed as SQRT(contents)
NERR* Do not print print error bars
INTE
Print the values of integrated contents bin by bin
NINT* Do not print integrated contents
LOGY
1 Dim histogram is printed in Log scale in Y
LINY* 1 Dim histogram is printed in linear scale in Y
PCHA* Print channel numbers
NPCH
Do not print channel numbers
PCON* Print bin contents
NPCO
Do not print bin contents
PLOW* Print values of low edge of the bins
NPLO
Do not print the low edge
PERR
Print the values of the errors for each bin
NPER* Do not print the values of the errors
PFUN
Print the values of the associated function bin by bin
NPFU* Do not print the values of the associated function
PHIS* Print the histogram prole
NPHI
Do not print the histogram prole
PSTA* Print the values of statistics (entries,mean,RMS,etc.)
NPST
Do not print values of statistics
ROTA
Print histogram rotated by 90 degrees
NROT* Print histogram vertically
1EVL
Force an integer value for the steps in the Y axis
AEVL* Steps for the Y axis are automatically computed
2PAG
Histogram is printed over two pages
1PAG* Histogram is printed in one single page
AUTO* Automatic scaling
Set options for histogram ID. (* means default).64
21.0.153 IDOPT id option
Operations with Functions. Creation and plotting.
FUNCTION
Chapter 22
65
100 0 10
66
- If the extension ".f77" is used (the le still having the extension ".f") the local fortran compiler is
invoked.
- If the extension ".c" is used the local C compiler is invoked.
PAW > FUN1 10 FTEST.F(X) 100 0 10
FUNCTION FTEST(X)
FTEST=SIN(X)/X
END
Ex:
The file ftest.f contains:
- As a COMIS function in a text le (ftest.f for example)
Ex:
PAW > FUN1
10 SIN(X)/X
\Histogram Identier"
\Name of the function"
\Number of channels" D=100 R=1:
\Low edge" D=0.
\Upper edge" D=100.
\Options" D='C'
Possible CHOPT values are:
' ' Create the histogram (don't draw).
C
Draw a smooth curve.
S
Superimpose plot on top of existing picture.
E
Draw error bars and current marker.
E0
Draw error bars without symbols clipping.
E1
Draw small lines at the end of the error bars.
E2
Draw error rectangles.
E3
Draw a lled area through the end points of the vertical error bars.
E4
Draw a smoothed lled area through the end points of the vertical error bars.
A
Axis labels and tick marks are not drawn.
Create a one dimensional histogram and ll the bins with the values of a (single-valued) function.
The function UFUNC may be given in two ways:
- As an expression of the variable X in case of a simple function.
ID
UFUNC
NCX
XMIN
XMAX
CHOPT
C
C
I
R
R
C
22.0.154 FUN1 id ufunc ncx xmin xmax [ chopt ]
\Histogram (2-Dim) Identier"
\Name of the function"
\Number of channels in X" D=40 R=1:
\Low edge in X" D=0.
\Upper edge in X" D=40.
\Number of channels in Y" D=40 R=1:
\Low edge in Y" D=0.
\Upper edge in Y" D=40.
\Options" D='SURF'
Possible CHOPT values are:
' '
Create the histogram (don't draw).
S
Superimpose plot on top of existing picture.
A
Axis labels and tick marks are not drawn.
BOX
Draw 2-Dim with proportional boxes.
COL
Draw 2-Dim with a color table.
Z
Used with COL or SURF, it draws the color map.
SURF
Draw as a surface plot (angles are set via the command angle).
SURF1 Draw as a surface with color levels
SURF2 Same as SURF1 but without cell lines.
SURF3 Same as SURF but with the contour plot (in color) on top.
SURF4 Draw as a surface with Gouraud shading.
LEGO
Draw as a lego plot (angles are set via the command angle).
LEGO1 Draw lego plot with light simulation.
LEGO2 Draw lego plot with color levels.
BB
Suppress the Back Box on 3D plots.
FB
Suppress the Front Box on 3D plots.
CONT
Draw 2-Dim as a contour plot (15 levels).
TEXT
Draw 2-Dim as a table.
CHAR
Draw 2-Dim with characters (a la HBOOK).
CYL
Cylindrical coordinates for 3D plots.
POL
Polar coordinates for 3D plots.
SPH
Spherical coordinates for 3D plots.
PSD
Pseudo-rapidity/phi coordinates for 3D plots.
Create a two dimensional histogram and ll the bins with the values of a (two-valued) function.
The function UFUNC may be given in two ways:
- As an expression of the variables x and y in case of a simple function.
67
- If the extension ".f77" is used (the le still having the extension ".f") the local fortran compiler is
invoked.
If h
i " "i
d h l lC
il i i k d
PAW > FUN2 10 FTEST.F(X,Y) 40 -2 2 40 -2 2 CONT
FUNCTION FTEST(X,Y)
FTEST=ABS(SIN(X**2+Y**2))
END
Ex:
The file FTEST.F contains:
- As a COMIS function in a text le (ftest.f for example)
Ex:
PAW > FUN2 10 ABS(SIN(X**2+Y**2)) 40 -2 2 40 -2 2 CONT
ID
UFUNC
NCX
XMIN
XMAX
NCY
YMIN
YMAX
CHOPT
C
C
I
R
R
I
R
R
C
22.0.155 FUN2 id ufunc ncx xmin xmax ncy ymin ymax [ chopt ]
FUN/DRAW
FUN/DRAW
FUN/DRAW
FUN/DRAW
X*Y*Z
| equivalent to :
X*Y*Z=0
X**2+Y**2+Z**2=1
X**2+Y**2=1-Z**2
function.
PAW > POINTS 20 20 20
directions
PAW > FUN/DRAW FTEST.FOR
PAW > RANGE -1 1 -1 1 -1 1
the 3
68
| Draw 2 spheres centered on (-0.5,-0.5,-0.5)
and (0.5,0.5,0.5) with the radius SQRT(0.2)
and SQRT(0.1)
directions
| FUN/DRAW will use 20 points in the 3
| Define the range as a cube between -1 1 in
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
Ex:
The file ftest.f contains:
- As a COMIS function in a text le (ftest.f for example)
simple
Ex:
PAW >
PAW >
PAW >
PAW >
UFUNC
CHOPT
C \Name of function"
C \Options" D=' '
Draw the function UFUNC in the current ranges specied by the command: RANGE XLOW XUP YLOW
YUP ZLOW ZUP and with THETHA and PHI angles specied by the command ANGLE THETA PHI.
The number of points 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
22.0.156 DRAW ufunc [ chopt ]
0 10
THETA
PHI
69
R \Angle THETA in degrees" D=30.
R \Angle PHI in degrees" D=30.
Change the angle used by FUN/DRAW and HISTO/PLOT.
22.0.160 ANGLE [ theta phi ]
XLOW
XUP
YLOW
YUP
ZLOW
ZUP
R \X Lower limit" D=-1.
R \X Upper limit" D=1.
R \Y Lower limit" D=-1.
R \Y Upper limit" D=1
R \Z Lower limit" D=-1.
R \Z Upper limit" D=1.
Change the range used by FUN/DRAW.
22.0.159 RANGE [ xlow xup ylow yup zlow zup ]
NPX
NPY
NPZ
I \Number of points on X axis" D=20 R=2:1000
I \Number of points on Y axis" D=20 R=2:1000
I \Number of points on Z axis" D=20 R=2:1000
Change the number of points to be used by FUN/DRAW and FUN/PLOT. Note that the default for
NPX is 20 for 3-Dim plots (FUN/DRAW) but it is 100 for 1-Dim plots (FUN/PLOT).
22.0.158 POINTS [ npx npy npz ]
Then, FUN/PLOT FTEST.F(X) 0 10, will interpret the Fortran code in the le FTEST.FOR and draw
the function for x between 0 and 10.
The number of points to evaluate the function between XLOW and XUP can be changed by the command
/FUN/POINTS. Only 1-Dim functions are supported. For 2-Dim use FUN2.
- If the extension ".f77" is used (the le still having the extension ".f") the local fortran compiler is
invoked.
- If the extension ".c" is used the local C compiler is invoked.
FUNCTION FTEST(X)
FTEST=SIN(X)*EXP(-0.1*X)
END
-UFUNC is the name of a COMIS function in a text le with the name UFUNC.F or UFUNC.FOR
(UNIX, VMS). For example, if the le FTEST.F contains:
Ex: FUN/PLOT
sin(x)/x
\Name of function"
\Lower limit"
\Upper limit"
\Options" D='C'
Possible CHOPT values are:
C Draw a smooth curve.
S Superimpose plot on top of existing picture.
+ Add contents of ID to last plotted histogram.
L Connect channel contents by a line.
P Draw the current polymarker at each channel.
* Draw a * at each channel.
Plot single-valued function UFUNC between XLOW and XUP. The function UFUNC may be given in
two ways:
-An expression of the variable x in case of a simple function.
UFUNC
XLOW
XUP
CHOPT
C
R
R
C
22.0.157 PLOT ufunc xlow xup [ chopt ]
Ntuple creation and related operations.
NTUPLE
Chapter 23
70
Subroutine Newnt
character*8 mother,in1,in2
common/ntupc/mother,in1,in2
common/ntupr/xover
lin=41
lout=42
id=1
open(unit=lin,file='datafile.dat',status='old')
call hropen(lout,'NTUPLE','New_Ntuple.hbook','N',1024,istat)
call hbnt(id,'New Ntuple',' ')
call hbname(id,'ntupr',xover,'XOVER')
call hbnamc(id,'ntupc',mother,'MOTHER:c*8,in1:c*8,in2:c*8')
read(lin,1000,end=20,err=20)xover,mother,in1,in2
\Source Ntuple"
\New Ntuple"
\Buer size" D=-1
\Title of ID2" D='
\Options" D='A'
Possible OPTION values are:
'
72
IDN
71
Macro DUPRWN
Close 0
Hi/File 1 source.hbook
Hi/File 2 new.hbook ! N
Nt/Dup //lun1/30 2
*
Application Comis Quit
Real Function Dup(dum)
Include ?
If (X.gt.0..Or.Y.gt.0.) call hfn(2,X)
dup=1.
end
Quit
*
nt/loop //lun1/30 dup
hrout 2
Note that the statement 'include ?' allows to create automatically the inlude le (comis.inc) corresponding to the ntuple structure. The command UWFUNC is not required in this case.
Example with a Column Wise Ntuple:
M
A
Set the Addresses of variables in common /PAWCR4,etc/.
Create ID2 as a Memory resident Ntuple.
' ' Copy ID1 structure in ID2. Reset addresses of variables.
The structure of Ntuple ID1 is duplicated in a new ntuple ID2. This command is useful when one
wants to create an ntuple with the same variables but only a subset of the events. NEWBUF is the buer
size for ID2. If NEWBUFh0 the buer size of ID1 is taken. If NEWBUF=0 the current buer size is
taken (10000 words for RWNs). NEWBUFi0 will be the new buer size. If TITLE=' ' ID2 has the same
title as ID1. In case of a disk-resident ntuple (default), ID2 is created into the current working directory
which must be open in WRITE mode.
Example with a Row Wise Ntuple:
' '
ID1
ID2
NEWBUF
TITLE
OPTION
C
I
I
C
C
23.0.165 DUPLICATE id1 id2 [ newbuf title option ]
OUTFILE
INFILES
C \Output le name" D=' '
C \Input le names" D=' ' Vararg
Merge HBOOK les containing histograms and/or ntuples. Ntuples are merged and histograms with the
same ID are added. The INFILES are merged into a new le OUTFILE. If OUTFILE already exists, it
is overwritten.
Note that if there is a histogram in PAW memory that has the same identier as a histogram in one of
the les to be merged, then the contents of the histogram in memory are added to those of the histogram
in the le. This can be avoided by deleting the memory histogram (using H/DEL) before issuing the
HMERGE command.
23.0.164 HMERGE outle inles
C \Ntuple Identier"
Print a summary about Ntuple IDN. Number of entries, variables names and limits are listed.
23.0.163 PRINT idn
List all Ntuples in the Current Directory. Note that the command HISTO/LIST lists all histograms and
Ntuples in the Current Directory.
23.0.162 LIST
PAW > call newnt.f
and then call this routine via the CALL command:
20
call hfnt(1)
go to 10
call hrout(id,icycle,' ')
call hrend('NTUPLE')
close (lin)
close (lout)
end
1000 format(e15.7,2x,a,7x,a,7x,a)
10
IDN
TITLE
NVAR
CHRZPA
NPRIME
VARLIST
C \Ntuple Identier"
C \Ntuple title" D=' '
I \Number of variables" D=1 R=1:512
C \RZ path" D=' '
I \Primary allocation" D=1000
C \Names of the NVAR variables" Vararg
Create a Row Wise Ntuple. (See below how to create a Column Wise Ntuple). The Ntuple may be
created either purely in memory or possibly using an automatic overow to an RZ le. Memory allocation
works in the following way. If CHRZPA = ' ', then a bank of NPRIME words is created. When the space
in this bank is exhausted at lling time, a new linear structure of length NPRIME is created and this
process will be repeated should the structure become exhausted. If CHRZPA contains the top directory
name of an already existing RZ le (as declared with HISTO/FILE), then a bank of length NPRIME is
also created, but at lling time, this bank is moved to the RZ le when full, and then it is overwritten by
any new entries. The Ntuple can be lled by calling HFN from an interactively dened subroutine called
by the command NTUPLE/LOOP or by NTUPLE/READ. The number of variables per data point is
given in the parameter NVAR.
To create a Column Wise Ntuple, create a le, eg. newnt.f with:
23.0.161 CREATE idn title nvar chrzpa nprime varlist
\Ntuple Identier"
\User cut function" D='1.'
\Number of events" D=99999999
\First event" D=1
\Options" D=' '
\Names of the NVARS variables to scan"
Possible OPTION values are:
A
S2
S
' '
' '
73
Alphanumeric output of the Ntuple.
Graphical scan (spider plot).
Graphical scan (segments plot).
Used with 'S' it displays the average spider.
IDN
UWFUNC
NEVENT
IFIRST
OPTION
VARLIS
C
C
I
I
C
C
D=' ' Vararg
23.0.167 SCAN idn [ uwfunc nevent irst option varlis ]
IDN I \Ntuple Identier"
To recover Ntuple ID. If the job producing the Ntuple crashed or the header was not stored correctly in
the le with HROUT, RECOVER will scan the Ntuple to rebuild the header table and recompute the
number of entries. The le on which the Ntuple resides must be open in Update mode.
23.0.166 RECOVER idn
Macro DUPCWN
*
Close 0
| Close all the currently opened file
H/file 1 source.hbook
Uwfunc //lun1/1 source.inc | generate source.inc
H/file 2 new.hbook ! N
| Create a new hbook file
Nt/Dup //lun1/1 2
| Duplicate the ntuple 1 in the ntuple 2
*
* Comis routine which Loop on all events of Id1 and select some events
* to be written in the new ntuple Id2.
*
Application COMIS quit
Subroutine ntdup(Id1,Id2)
Include 'source.inc'
Call Hnoent(Id1,Noent)
Do Ievent=1,Noent
Call Hgnt(Id1,Ievent,Ierr)
If (Ierr.ne.0) Goto 20
If (X.Gt.0..Or.Y.Gt.0.) Then
Call Hfnt(Id2)
Endif
Enddo
20 Continue
*
End
Quit
*
Call Ntdup(1,2)
| Execute the routine Ntdup
Hrout 2
| Write Id2 on disk
means
means
means
means
all variables
from variable
from variable
from variable
(default).
var1 to variable var2 included.
var1 to the last.
1 to variable var2
IDN
UWFUNC
NEVENT
IFIRST
74
C \Identier of Ntuple"
C \Selection function or cut identier" D='1.'
I \Number of events" D=99999999
I \First event" D=1
Invoke the selection function UWFUNC for each event starting at event IFIRST. In UWFUNC, the user
can ll one or several histograms previously booked. The loop will be terminated if UWFUNC returns a
negative value. For more information about UWFUNC, see command NTUPLE/PLOT.
The ntuple identier IDN, is an integer in this command. It make no sense to have an expression like
10.x.
Note that IFIRST and NEVENT parameters are not meaningful in case of CHAINs.
23.0.168 LOOP idn uwfunc [ nevent irst ]
Note that IFIRST and NEVENT parameters are not meaningful in case of CHAINs.
PAW > scan 30
PAW > scan 30 option=s
each event is drawn as a spider plot.
PAW > scan 30 option=sa
each event is drawn as a spider plot and the average spider
plot is also drawn.
PAW > set 2BUF 1
PAW > scan 30 option=s2
More...? ( <CR>/N/G ) G
answering 'G' with double buffer on, create a graphical
animation of the ntuple content.
PAW > scan 30 option=s X:Z W
PAW > scan 30 varlis=X:Z W
PAW > scan 30 z>10
PAW > scan 30 z>10 ! ! ! z abs(x) y+z x func.for
where func.for is a COMIS function returning an expression
of the original variables. This function func.for may be
generated automatically by the PAW command:
PAW > uwfunc 30 func.for
For example, if IDN=30 has the 3 variables X,Y,Z,U,V,W one can do:
:
var1:var2
var1:
:var2
Scan the entries of an Ntuple subject to user cuts. Scan the variables for NEVENT events starting
at IFIRST, requiring that the events satisfy cut UWFUNC. In the case of Alphanumeric output Up to
10 variables may be scanned, the default is to scan the rst 10 variables.
When the option S (Spider plot) is specied, each event is presented in a graphical form (R versus
PHI plot) to give a multi dimensional view of the event. Each variable is represented on a separate
axis with a scale ranging from the minimum to the maximum value of the variable. A line joins all the
current points on every axis where each point corresponds to the current value of the variable. When
the HCOL parameter is specied (eg SET HCOL 1002) a ll area is drawn. When the additional option
A is specied, a spider plot of the average value for each variable is also drawn. When the option S2
(Segment plot) is specied, wedges are drawn along each axis instead of the line joining the points.
NB : a minimum of three variables in VARLIS is required for any graphical plot.
VARLIS may contain a list of the original variables, expressions of the original variables or/and ranges
of variables. A range can be given in the following form:
\Cut Identier"
\Ntuple Identier"
\Selection function" D='1.'
\Number of events" D=99999999
\First event" D=1
\Frequency to update histogram" D=100000000
\Options" D=' '
\Identier of histogram to ll" D=1000000
\Workstation identier" D=1
Possible OPTION values are:
IDH
IDN
UWFUNC
NEVENT
IFIRST
75
C \Identier of histogram to ll"
C \Identier of Ntuple"
C \Selection function or cut identier" D='1.'
I \Number of events" D=99999999
I \First event" D=1
Project an Ntuple onto a 1-Dim or 2-Dim histogram, possibly using a selection function or predened
cuts. IDN may be given as IDN or IDN.X , IDN.Y%X (Y%X means variable Y of Ntuple IDN versus
variable X). For more information about UWFUNC, see command NTUPLE/PLOT. The histogram IDH
is not reset before lling. This allows several PROJECTs from dierent Ntuples.
Note that IFIRST and NEVENT parameters are not meaningful in case of CHAINs.
23.0.170 PROJECT idh idn [ uwfunc nevent irst ]
S
C
Draw a smooth curve.
Superimpose plot on top of existing picture.
+
Add contents of IDN to last plotted ntuple.
B
Bar chart format.
L
Connect channels contents by a line.
P
Draw the current polymarker at each channel or cell.
*
Draw a * at each channel.
U
Update channels modied since last call.
E
Compute (HBARX) and draw error bars with current marker.
A
Axis labels and tick marks are not drawn.
' '
Draw the ntuple as an histogram.
PROF
Fill a Prole histogram (mean option).
PROFS Fill a Prole histogram (spread option).
PROFI Fill a Prole histogram (integer spread option).
Dene a graphical cut on a one or two dimensional plot. First Project and plot an Ntuple as a (1-Dim
or 2-Dim) histogram with automatic binning (ID=1000000), possibly using a selection algorithm. See
NTUPLE/PLOT for full details on what expressions can be plotted and which options can be given.
Then the graphical cut is dened using the mouse.
' '
CID
IDN
UWFUNC
NEVENT
IFIRST
NUPD
OPTION
IDH
WKID
C
C
C
I
I
I
C
I
I
23.0.169 GCUT cid idn [ uwfunc nevent irst nupd option idh wkid ]
C
C
I
I
I
C
I
76
\Ntuple Identier"
\Selection function" D='1.'
\Number of events" D=99999999
\First event" D=1
\Frequency to update histogram" D=100000000
\Options" D=' '
\Identier of histogram to ll" D=1000000
Possible OPTION values are:
IDN
UWFUNC
NEVENT
IFIRST
NUPD
OPTION
IDH
23.0.172 PLOT idn [ uwfunc nevent irst nupd option idh ]
In this macro all the lines with a C at the end are not read.
H/del *
Appl Data ntmatch.dat
101. 201. 301.
C
102. 202. 302.
103. 203. 303.
C
104. 204. 304.
C
105. 205. 305.
106. 206. 306.
107. 207. 307.
108. 208. 308.
109. 209. 309.
ntmatch.dat
Nt/Create 4 'Test of Match' 3 ! ! Xmatch Ymatch Zmatch
Nt/Read 4 ntmatch.dat ! ! ! -/C/(*)
Nt/SCAN 4
Example:
/string/
-/string/
/string/(n)
/string/(*)
match a string (starting in column 1)
do not match a string (starting in column 1)
match a string, starting in column n
match a string, starting at any column
C \Ntuple Identier"
C \File name"
C \Format" D='*'
C \Options" D=' '
I \Number of events" D=1000000
C \Matching pattern" D=' '
Read Ntuple values from the alphanumeric le FNAME with the format specications in FORMAT.
This command works for row wise Ntuple only.
Before executing this command, the Ntuple IDN must have been created with the command Ntuple/Create.
MATCH is used to specify a pattern string, restricting the Ntuple lling only to the records in the le
which verify the pattern. The possible patterns are:
IDN
FNAME
FORMAT
OPT
NEVENT
MATCH
23.0.171 READ idn fname [ format opt nevent match ]
Draw a smooth curve (1D plots).
Superimpose plot on top of existing picture.
Add contents of IDN to last plotted ntuple (1D plots).
Bar chart format (1D plots).
Connect channels contents by a line (1D, 2D and 3D plots).
Draw the current polymarker at each channel or cell (1D plots).
Draw a * at each channel (1D plots).
Update channels modied since last call (1D plots).
Compute (HBARX) and draw error bars with current marker.
Axis labels and tick marks are not drawn.
Draw the ntuple as an histogram.
Don't draw anything, but ll the 1D or 2D histogram IDH
Draw a gouraud shaded surface (3D plots).
Fill a Prole histogram (mean option).
Fill a Prole histogram (spread option).
Fill a Prole histogram (integer spread option).
77
UWFUNC may have the following forms:
1- UWFUNC='0' or missing (only IDN given). No selection is applied.
2- UWFUNC is a CUT or combination of valid CUTS created by the
command NTUPLE/CUTS. Ex:
UWFUNC=$1
means use cut $1
UWFUNC=$1.AND.$2
UWFUNC=.NOT.($1.AND.$2)
UWFUNC=($1.OR.$2).AND.$3
3- UWFUNC is a FORTRAN expression
Ex:
X>3.14.AND.(Y<Z+3.15)
Y%X means a scatter-plot Y(I) versus X(I) where I is the event number. In this example, X and Y are
the names of the variables 1 and 2 respectively. Expression 1 is any numerical expression of the Ntuple
variables. It may include a call to a COMIS function. Y%X%Z means a 3D scatter-plot Z(I) versus
Y(I) versus X(I) where I is the event number. If option "G" is given, three Gouraud shaded surfaces
are drawn. The green one is the average. Y%X%Z means a 3D scatter-plot Z(I) versus Y(I) versus X(I)
where I is the event number. T is mapped on the color map.
IDN may be given as IDN.X
IDN.Y%X
IDN.Y%X%Z
IDN.Y%X%Z%T
IDN.expression1
IDN.expression1%expression2
IDN.expression1%expression2%expression3
IDN.expression1%expression2%expression3%expression4
Project and plot an Ntuple as a (1-Dim or 2-Dim) histogram with automatic binning (ID=1000000),
possibly using a selection algorithm. See parameter CHOPT in command HISTO/PLOT to have more
details on the possible OPTION.
PROFI
PROFS
PROF
G
N
' '
A
E
U
*
P
L
B
+
S
C
' '
NT/PLOT 30.X MNAME(4).and.Z<0.4
means all events satisfying bit 4 of MNAME AND Z<0.4
78
The default identier of the histogram being lled is IDH=1000000. At the next invocation of this
command, it will be overwritten. If either NEVENT or IFIRST or NUPD are negative, then the identier
of the histogram being lled will be taken as IDH=-NEVENT or IDH=-IFIRST or IDH=-NUPD. IDH
may have been created with H/CREATE. Before lling IDH, the contents of IDH are reset if IDH
Ex 1: NT/PLOT 30.SIN(X)%SQRT(Y**2+Z**2) Z<0.4
plots a scatter-plot of variable U versus V for all events
satisfying the condition Z<0.4. U and V are defined as being
U=SIN(X) and V=SQRT(X**2+Y**2)
Ex 2: NT/PLOT 30.FUNC.FTN(X)%(SIN(Y)+3.) Z<0.2.and.TEST.FTN>6
plots a scatter-plot of variable U versus V for all events
satisfying the condition (Z<0.2 and the result of the COMIS
function TEST.FTN >6). U and V are defined as being
U=Result of the COMIS function FUNC.FTN, V=SIN(Y)+3.
It is possible to plot expressions of the original variables.
Ex:
A MASK may also be given as input to a selection expression.
Ex: NT/PLOT 30.X Z<0.4>>MNAME(4)
means mark bit 4 in mask MNAME for all events satisfying
the condition Z<0.4
The le SELECT.FOR (VAX), SELECT.FTN (Apollo) or SELECT FORTRAN (IBM) can be edited
from PAW using the command EDIT. Note that if the sux (.FTN, .FORTRAN or .FOR) is omitted,
then COMIS will start from the precompiled version in memory and not from the le. Results of a
selection can be saved in a MASK (See NTUPLE/MASK).
FUNCTION SELECT(X)
DIMENSION X(3)
IF(X(1)**1+X(2)**2.LT.1.5)THEN
SELECT=0.
ELSE
SELECT=1.
ENDIF
END
will process the 10000 events of the Ntuple IDN=30. For each event, the function SELECT is called.
It returns the weight of the event. Example:
NTUPLE/PLOT 30.X SELECT.FOR
The command UWFUNC may be used to generate automatically this function. For example if IDN=30
is an Ntuple with 3 variables per event and 10000 events, then
4- UWFUNC is a variable name or an arithmetic expression
Ex:
NT/PLOT 30.X Y weight of each event is variable Y
NT/PLOT 30.X X**2+Y**2
5- UWFUNC is the name of a selection function in a text file with
the name UWFUNC.FTN, UWFUNC.FOR, UWFUNC FORTRAN (Apollo, VAX, IBM).
79
Note that IFIRST and NEVENT parameters are not meaningful in case of CHAINs.
Examples of chain (Ntuple tree) definition:
CHAIN
Year93 Jan Feb March April May ...
CHAIN
Jan
Week1 Week2 Week3 Week4
CHAIN
Week1
file1.hbook file2.hbook ...
CHAIN
Week2
file3.hbook file4.hbook ...
CD //Jan
NT/PLOT 10.e
; loop over all files in chains Week1, Week2, Week3, ...
CD //Year93
; loop over all files in chains Jan, Feb, March, ...
CHAIN Year93 -P /user/delphi
; all files from chain Year93 downward will
be changed to /user/delphi/file1.hbook,
...
CHAIN Year93>
; print the chain tree Year93
CHAIN -Feb
; delete chain Feb
CHAIN Jan -file3.hbook
; delete file3.hbook from chain Jan
CNAME
ENTRY
C \Chain Name" D=' '
C \Chain Member(s) j -P Path" D=' ' Vararg
Using the chain command one can build logical Ntuples of unlimited size. The chain command creates
an Ntuple chain CNAME and add member(s) ENTRY. If the chain already exists the member is simply
added. More than one member may be specied at a time. A chain can contain three dierent type
of members: les, logical units and other chains. The member type is deduced from the format of the
member. Entries containing the characters . / : ; $ are considered to be les, entries like //LUN4 are
assumed to be logical units and all other type of entries are chains. Chain names must be unique. After a
chain has been dened it can be traversed, by all Ntuple commands (NT/PLOT, NT/PROJ, NT/LOOP),
by changing the current working directory to the chain: CD //CNAME. A member may be deleted from
a chain by preceding it by a - sign. A complete chain can be deleted by preceding the chain name by a
-. All chains can be deleted by giving a - as chain name. Not specifying any parameters results in the
listing of all dened chains. A chain tree will be printed by appending a i character to the chain name.
The path of all chain members, from chain CNAME downwards, can be changed by specifying a chain
path. This is done by giving a chain name followed by the -P option and a path specication. The chain
path will be pre-pended to the member names. Chains down the tree can override a path specied higher
up in the tree.
23.0.173 CHAIN [ cname entry ]
Note that IFIRST and NEVENT parameters are meaningless in case of CHAINs.
already exists. Use NTUPLE/PROJECT to cumulate several passes into IDH. Note that IDH not equal
to 1000000 is a convenient way to force user binning. Every NUPD events, the current status of the
histogram is displayed.
\Cut identier"
\Options" D='P' Minus
\File name" D=' '
\Workstation identier" D=1
Possible OPTION values are:
P Print denition of cut CUTID.
- Reset cut CUTID.
R Read denition of cut CUTID from le FNAME.
W Write denition of cut CUTID on le FNAME (text le).
D Draw cut contour.
Dene the CUTID with the format $nn. nn is an integer between 1 and 99. This cut can then be used
in subsequent commands NTUPLE/PLOT, PROJECT.
CB
All coming NT/PLOT commands will draw a comment
of size CSIZE=0.28cm Left justified.
All coming NT/PLOT commands will draw a comment
of size 0.4 cm Right justified Below the top line.
Draw previous selection mechanism Centered Below
the top zone line.
80
The Global title font (SET GFON) with precision 1 is used to draw the text.
CSEL
CSEL NRB 0.4
CSEL
CHOPT
CSIZE
C \Options" D='N'
R \Comment size" D=0.28
Possible CHOPT values are:
' ' Comment is left adjusted to the current zone
R
Comment is right adjusted to the current zone
C
Comment is centered to the current zone
B
Comment is drawn below the top zone line
N
All subsequent NTUPLE/PLOT commands will print the selection mechanism with the
options specied in CHOPT.
To write selection mechanism as a comment on the picture. By default, the comment is drawn left
justied above the top zone line. Example:
23.0.175 CSELECT [ chopt csize ]
Note that CUTID=$0 means all cuts.
OPTION='expression' allows to define the cut CUTID. For example
the command:
PAW > CUTS $1 X<0.8.and.Y<SQRT(X)
defines the cut $1.
CUTID
OPTION
FNAME
WKID
C
C
C
I
23.0.174 CUTS cutid [ option fname wkid ]
FUNCTION SELECT(XDUMMY)
COMMON/PAWIDN/IDNEVT,VIDN1,VIDN2,VIDN3,X,Y,Z,ETOT,EMISS,etc
SELECT=1.
END
81
In this case (thanks to the statement 'include ?') the include le will be generated automatically with
the name 'comis.inc'.
FUNCTION SELECT(XDUMMY)
include ?
SELECT=1.
IF(X.LE.Y)SELECT=0.
END
Note that the command UWFUNC is not required if the SELECT function has the following form:
FUNCTION SELECT(XDUMMY)
include 'select.inc'
SELECT=1.
IF(X.LE.Y)SELECT=0.
END
NTUPLE/UWFUNC 30 SELECT.INC will generate an include le. This include le may be referenced
in a selection function in the following way:
If NTUPLE/PLOT 30.ETOT SELECT.FOR
VIDN1=ETOT
If NTUPLE/PLOT 30.SQRT(X**2+Y**2)%(ETOT-EMISS)
VIDN1=ETOT-EMISS
VIDN2=SQRT(X**2+Y**2)
If in a subsequent command NTUPLE/PLOT, the selection function SELECT is used, then:
FUNCTION SELECT(XDUMMY)
COMMON/PAWIDN/IDNEVT,VIDN1,VIDN2,VIDN3,X,Y,Z,ETOT,EMISS,etc
IF(X**2+Y**2.GT.Z**2.OR.ETOT.GT.20.)THEN
SELECT=1.
ELSE
SELECT=0.
ENDIF
END
Then using the command EDIT one can modify this le which could then look something like (IDNEVT
is the event number):
IDN
FNAME
CHOPT
C \Ntuple Identier"
C \File name"
C \Options" D=' '
Possible CHOPT values are:
' ' Generate the FORTRAN skeleton of a selection function.
E
Present the selection function in the local editor.
P
Code to print events is generated (not valid for new Ntuples).
T
Names of the Ntuple variables are generated in DATA statements (not valid for new
Ntuples).
To generate the FORTRAN skeleton of a selection function or the INCLUDE le with the columns
declaration.
A FORTRAN function is generated if the FNAME is of the form, xxx.f, xxx.for, xxx.fortran. Otherwise
an INCLUDE le is generated. Example: If Ntuple ID=30 has variable names [X,Y,Z,ETOT,EMISS,etc]
then:
NTUPLE/UWFUNC 30 SELECT.FOR will generate the le SELECT.FOR with:
23.0.176 UWFUNC idn fname [ chopt ]
\Ntuple Identier"
\Options" D=' '
\Number of events" D=99999999
\First event" D=1
\Number of the most signicant variables " D=20 R=0:20
\Names of the NVARS most signicant variables "
Possible CHOPT values are:
N The variables are normalized. This option is useful in the case the ranges of variables are
very dierent
P Print more results about the analysis
Data reduction on Ntuple. The method used is the PRINCIPAL COMPONENTS ANALYSIS. The Principal Components Analysis 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 identication
and dimensionality reduction. This matrix is real positive denite 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
signicant 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 20 rst variables. This command creates a le :
-i XTOXSI.FORTRAN or xtoxsi.for,xtoxsi.ftn. This le contains a Fortran function which computes the
new variables. These new variables can be visualized in PAW with for example:
OPTION
VALUE
C \Option name"
I \Option value"
Set debug options for the Query Processor
82
23.0.180 FLAGS QP [ option value ]
IDN
UWFUNC
NEVENT
IFIRST
FILENAME
SEP1
SEP2
C \Ntuple Identier"
C \Selection function" D='1.'
I \Number of events" D=99999999
I \First event" D=1
C \Output lename" D=' '
C \Value separator" D=','
C \Expression separator (on output)" D='%'
For the selected events the values of the expressions are printed to the screen (by default) or to a specied
le. If the expression is non scalar (e.g. vector) the elements of the vector are sepatated by a ',' (changed
with SEP1). The values of the expressions are separated by a '%' (changed with SEP2). The output of
the DUMP command is meant for consumption by other computer programs, for easy inspection of an
ntuple the NTUPLE/SCAN command might be more suitable.
23.0.179 DUMP idn [ uwfunc nevent irst lename sep1 sep2 ]
MXSIZE I \Maximum size of dynamic memory buer in MBytes" D=-1 R=-2:128
Change or show the size of the dynamic memory buer used to store Ntuple columns during Ntuple
analysis. The default is 10 MB. Giving a value of 0 turns the buer facility o. The upper limit is 128
MB, but be sure you have enough swap space and realize that when the buer is swapped to disk you
loose part of the benet of the buer facility (which is to reduce the number of disk accesses). Omitting
the argument or specifying -1 will show you the current upper limit and used and free space. Giving -2
shows which columns are currently stored in memory.
23.0.178 VMEM [ mxsize ]
PAW > Ntuple/plot id.xtoxsi.ftn(1)
PAW > Ntuple/plot id.xtoxsi.ftn(1)%xtoxsi.ftn(3)
IDN
CHOPT
NEVENT
IFIRST
NVARS
VARLIS
C
C
I
I
I
C
23.0.177 LINTRA idn [ chopt nevent irst nvars varlis ]
MNAME
IBIT
C \Mask name"
I \Number of bit to reset"
Reset on bit in a mask le.
83
D=1 R=1:32
24.0.184 RESET mname ibit
MNAME C \Mask name" D='*'
List the MASK les currently open.
24.0.183 LIST [ mname ]
MNAME C \Mask name"
Close a MASK le.
24.0.182 CLOSE mname
FNAME
CHOPT
C \File name"
C \Options" D='R'
Possible CHOPT values are:
R Existing le is opened (read mode only).
N A new le is opened.
U Existing le is opened to be modied.
Open a MASK le.
24.0.181 FILE fname [ chopt ]
NTUPLE/MASK
Chapter 24
84
Interface to the graphics packages HPLOT and HIGZ.
GRAPHICS
Chapter 25
+-----------------------------------------------------------------------------+
|
HPLSET : Current values in use
|
+------------+---------------+---------------+--------------------------------+
| Parameter | Current value | Default value |
Explanation
|
+------------+---------------+---------------+--------------------------------+
|
XSIZ
|
20.00
|
20.00
| Size along X
|
|
YSIZ
|
20.00
|
20.00
| Size along Y
|
|
XMGL
|
2.00
|
2.00
| X MarGin Left
|
|
XMGR
|
2.00
|
2.00
| X MarGin Right
|
|
XLAB
|
1.40
|
1.40
| distance y axis to LABel
|
|
XVAL
|
.40
|
.40
| distance y axis to axis VALues |
|
XTIC
|
.30
|
.30
| X axis TICk marks length
|
|
YMGL
|
2.00
|
2.00
| Y MarGin Low
|
|
YMGU
|
2.00
|
2.00
| Y MarGin Up
|
|
YLAB
|
.80
|
.80
| distance x axis to LABel
|
|
YVAL
|
.20
|
.20
| distance x axis to axis VALues |
|
YTIC
|
.30
|
.30
| Y axis TICk marks length
|
|
YNPG
|
.60
|
.60
| Y position for Number of PaGe |
|
YGTI
|
1.50
|
1.50
| Y position of Global TItle
|
|
YHTI
|
1.20
|
1.20
| Y position of Histogram TItle |
|
SMGR
|
.00
|
.00
| Stat MarGin Right (%)
|
|
SMGU
|
.00
|
.00
| Stat MarGin Up (%)
|
|
CMMG
|
.30
|
.30
| ColorMap MarGin
|
|
CVAL
|
.20
|
.20
| distance Color map axis VALues |
|
KSIZ
|
.28
|
.28
| Hershey charact. (HPLKEY) SIZe+|
|
GSIZ
|
.28
|
.28
| Global title SIZe
|
|
TSIZ
|
.28
|
.28
| histogram Title SIZe
|
|
ASIZ
|
.28
|
.28
| Axis label SIZe
|
|
CSIZ
|
.28
|
.28
| Comment and stat SIZe
|
|
PSIZ
|
.28
|
.28
| Page number SIZe
|
|
VSIZ
|
.28
|
.28
| axis Values SIZe
|
|
SSIZ
|
.28
|
.28
| aSterisk SIZe (for functions) |
|
2SIZ
|
.28
|
.28
| scatter-plot & table-char. SIZe|
|
XWIN
|
2.00
|
2.00
| X space between WINdows
|
|
YWIN
|
2.00
|
2.00
| Y space between WINdows
|
|
HMAX
|
.90
|
.90
| Histogram MAXimum for scale
|
|
PASS
|
1.00
|
1.00
| number of PASS for characters |
|
CSHI
|
.03
|
.03
| Character SHIft between 2 pass |
|
BARO
|
.25
|
.25
| BAR histogram Offset (%)
|
|
BARW
|
.50
|
.50
| BAR histogram Width (%)
|
|
DASH
|
.15
|
.15
| length of basic DASHed segment |
|
DMOD
|
1
|
1
| Dash MODe (or type) for lines |
|
GRID
|
3
|
3
| GRID line type
|
|
CMAP
|
1
|
1
| Color MAP position
|
|
DATE
|
2
|
2
| DATE position
|
|
FILE
|
1
|
1
| FILE name position
|
|
STAT
|
1111
|
1111
| STAT values to be plotted
|
|
FIT
|
101
|
101
| FIT values to be plotted
|
|
HTYP
|
0
|
0
| Histogram fill area TYPe
|
85
|
BTYP
|
0
|
0
| Box fill area TYPe
|
|
PTYP
|
0
|
0
| Picture fill area TYPe
|
|
FTYP
|
.00
|
.00
| Function fill area TYPe
|
|
HCOL
|
.00
|
1.00
| Histogram fill area COLor
|
|
BCOL
|
1
|
1
| Box fill area and shading COLor|
CHATT
VALUE
C \Attribute name" D='SHOW'
R \Attribute value" D=0
Set a specic HPLOT attribute. If CHATT='SHOW', print defaults and current values for all attributes.
If CHATT='*', restore default values for all attributes. If VALUE=0, the attribute is set to its default
value.
25.0.185 SET [ chatt value ]
+-----------------------------------------------------------------------------+
|
HPLOPT : Option values
|
+-------------+-------------+---------------+---------------------------------+
|
Current
|
Default
| Alternative |
Explanation
|
+-------------+-------------+---------------+---------------------------------+
|
VERT
|
VERT
|
HORI
| VERTical or HORIzontal
|
|
|
|
| orientation of paper
|
|
NEAH
|
NEAH
|
EAH
| Error bars And Histogram are
|
|
|
|
| plotted (if both are present)
|
|
NCHA
|
NCHA
|
CHA
| scatter plots drawn with dots
|
|
|
|
| (NCHA) or 1 char./bin (CHA)
|
|
NAST
|
NAST
|
AST
| functions drawn with (AST)
|
|
|
|
| or without (NAST) asterisks
|
|
SOFT
|
SOFT
|
HARD
| SOFTware or HARDware characters |
|
|
|
| are used
|
|
NSQR
|
NSQR
|
SQR
| size is set to the largest
|
|
|
|
| square (SQR)
|
|
HTIT
|
HTIT
|
UTIT
| HBOOK TITle (HTIT)
|
|
|
|
| or User TITle (UTIT) is printed |
|
TAB
|
TAB
|
NTAB
| table printed as TABles (TAB)
|
|
|
|
| or scatter plots (NTAB)
|
|
BOX
|
BOX
|
NBOX
| a box is (BOX) or is not (NBOX) |
|
|
|
| drawn around picture
|
|
NTIC
|
NTIC
|
TIC
| cross-wires are drawned (TIC)
|
|
|
|
| or not (NTIC) on each plot
|
|
NSTA
|
NSTA
|
STA
| STAtistics are printed (STA)
|
|
|
|
| or not (NSTA) on each plot
|
|
NFIT
|
NFIT
|
FIT
| FIT parameters are printed
|
|
|
|
| or not (NFIT) on each plot
|
|
NZFL
|
NZFL
|
ZFL
| picture is (ZFL) or is not
|
|
|
|
| (NZFL) put in Z data base
|
|
NPTO
|
NPTO
|
PTO
| PTO (Please Turn Over)
|
|
|
|
| (NPTO)
|
|
NBAR
|
NBAR
|
BAR
| BAR charts for histogram
|
|
|
|
| (NBAR)
|
|
DVXR
|
DVXR
|
DVXI
| Integer (DVXI) or Real (DVXR)
|
|
|
|
| divisions for X axis
|
|
DVYR
|
DVYR
|
DVYI
| Integer (DVYI) or Real (DVYR)
|
|
|
|
| divisions for Y axis
|
|
NGRI
|
NGRI
|
GRID
| GRID or not grid (NGRI)
|
|
|
|
| on X and Y axis
|
|
NDAT
|
NDAT
|
DATE
| DATE is printed (DATE)
|
|
|
|
| or not (NDAT) on each plot
|
|
NFIL
|
NFIL
|
FILE
| FILE name is printed (FILE)
|
|
|
|
| or not (NFIL) on each plot
|
|
A4
|
A4
|
A0/6
| page format for the plotter
|
|
|
|
| (A0,A1,A2,A3,A4,A5,A6)
|
|
NOPG
|
NOPG
|
P
| page number is (P
)
|
|
|
|
| or is not (NOPG) printed
|
|
LINY
|
LINY
|
LOGY
| LINear or LOGarithmic scale
|
|
|
|
|
86 | in Y
|
LINX
|
LINX
|
LOGX
| LINear or LOGarithmic scale
|
|
|
|
| in X
|
|
LINZ
|
LINZ
|
LOGZ
| LINear or LOGarithmic scale
|
|
|
|
| in Z (Lego or Surface)
|
|
HNST
|
HNST
|
HSTA
| Filling statistics (HSTA)
|
CHOPTN C \Option name" D='SHOW'
Set general plotting options for HPLOT. If CHOPTN='SHOW' print all current and default options. If
CHOPTN='*', restore all default options.
25.0.186 OPTION [ choptn ]
Appendix E GKS.
HIGZ/PostScript (Portrait).
HIGZ/PostScript (Landscape).
HIGZ/Encapsulated PostScript.
HIGZ/PostScript Color (Portrait).
HIGZ/PostScript Color (Landscape).
HIGZ/LaTex Encapsulated.
HIGZ/LaTex.
-[Format][Nx][Ny][Type]
1:
2:
4:
5:
87
Portrait mode with a small margin at the bottom of the page.
Landscape mode with a small margin at the bottom of the page.
Portrait mode with a large margin at the bottom of the page.
Landscape mode with a large margin at the bottom of the page.
The large margin is useful for some PostScript printers (very
often for the colour printers) as they need more space to grip
the paper for mechanical reasons. Note that some PostScript
[Type] Can be equal to:
Nx and Ny are integers between 1 and 9.
[Nx, Ny] Specify respectively the number of zones on the x and y axis.
paper. For example if Format=3 the paper is in the standard
A3 format. Format=4 and Format=0 are the same and
define an A4 page.
The A0 format is selected by Format=99.
The US format Letter is selected by Format=100.
The US format Legal is selected by Format=200.
The US format Ledger is selected by Format=300.
[Format] Is an integer between 0 and 99 which denes the format of the
Where:
The PostScript metale types have the following format:
METAFL=
4
METAFL=-111
METAFL=-112
METAFL=-113
METAFL=-114
METAFL=-115
METAFL=-777
METAFL=-778
Use the command FORTRAN/FILE to open a new le, FORTRAN/CLOSE to close it. Note that
PAW opens the le PAW.METAFILE on the unit 10 at initialisation time.
LUN =-10 output only on metafile opened on unit 10;
LUN = 0 output only on screen;
LUN = 10 output on both screen and metafile opened on unit 10;
LUN
METAFL
CHMETA
I \Logical unit number" D=0
I \Metale ID" D=0
C \Metale name" D=' '
Set the metale logical unit and metale type. This command controls the destination of the subsequent graphics output. Example:
25.0.187 METAFILE [ lun meta chmeta ]
must be specified by the user via the SIZE command. Therefore
the workstation type for Encapsulated PostScript is -113. For
example if the name of an encapsulated PostScript file is
example.eps, the inclusion of this file into a LaTeX file will
be possible via (in the LaTeX file):
\begin{figure}
\epsffile{example.eps}
\caption{Example of Encapsulated PostScript in LaTeX.}
\label{EXAMPLE}
\end{figure}
88
The rst picture will be drawn in the area 1. After each clear the screen, the graphics output will
appear in the next area in the order dened above. If a page is lled, a new page is used with the same
grid. Note that empty pages are not printed in order to save paper. Ignoring formats smaller than A12,
the total number of possible dierent PostScript workstation types is: 4x9x9x13+1 = 4213 ! Note: this
command open a metale on the workstation identier number 2.
+-------+-------+-------+
|
1
|
2
|
3
|
+-------+-------+-------+
|
4
|
5
|
6
|
+-------+-------+-------+
With Type=1,2,4 and 5 the pictures are centered on the page, and the usable area on paper is
proportional to the dimensions of A4 format. Examples: -111 or -4111 denes an A4 page not divided.
-6322 dene an A6 landscape page divided in 3 columns and 2 rows.
picture
colour printers can also use the so called 'special A4' format
permitting the full usage of the A4 area; in this case larger
margins are not necessary and {\tt Type}=1 or 2 can be used.
3: Encapsulated PostScript. This Type permits the generation of
files which can be included in other documents, for example
in LaTeX files. Note that with this Type, Nx and Ny must always
be equal to 1, and Format has no meaning. The size of the
IWKID < 0
IWKID = 0
IWKID > 0
Do the action specified by CHOPT on the
workstation identified by IWKID.
Do the action specified by CHOPT on all
workstations.
Do the action specified by CHOPT on the
workstation identified by -IWKID and the
complementary action on all the others.
89
Note: IWKID should not be equal to 2 if a metale is actived because the command METAFILE use it
already.
IWKID
CHOPT
IWTYP
I \Workstation ID" D=1 Loop
C \Options" D='OA'
I \Workstation type" D=1
Possible CHOPT values are:
O Open a new workstation
C Close a workstation
A Activate a workstation
D Deactivate a workstation
L Give the list of open workstations
To create/delete workstations or change status.
25.0.188 WORKSTATION iwkid [ chopt iwtyp ]
90
invoke when the mouse cursor enter the window.
Note: With the Motif version of PAW the locator is automatically
NTPRI
CHOPT
WKID
C \Transformation with highest priority" D='-1'
C \Options" D='R'
I \Workstation identier" D=1
Possible CHOPT values are:
R Request mode is used to locate the points (default)
S Sample mode is used to locate the points
I Integrate an histogram between 2 bins
+ Use the tracking cross (default is cross-hair)
T The output is done on the terminal.
Locate points on the screen using the graphics cursor and output coordinates on terminal. Control is
returned when the BREAK (right) mouse button is clicked (or CRTL/E) or when 20 points are located.
The optional parameter NTPRI may be specied to locate a point in the specic transformation number
NTPRI. NTPRI=-1 (default) means that all the histogram transformation numbers (10, 20, etc.) have
priority on transformation number 1. WKID allows to dene in which window the locator is performed.
26.0.191 LOCATE [ ntpri chopt wkid ]
Clear the screen.
26.0.190 CLR
Clear the screen. Initialize a new HIGZ picture if option ZFL or ZFL1 has been selected. Select the
Normalisation Transformation number 1 (cm).
26.0.189 NEXT
Miscellaneous HPLOT functions.
GRAPHICS/MISC
Chapter 26
\Vector for coordinates X"
\Vector for coordinates Y"
\Options" D=' ' Minus
\Transformation with highest priority" D=-1
\Workstation identier" D=1
Possible CHOPT values are:
' ' Use the cross-hair
+
Use the tracking cross
Use the rubber line
L
Connect points by a polyline
P
Draw the current polymarker at each point
*
Draw a * at each point
S
Sample mode is used. Allows to see the coordinates of point before clicking
Locate a set of points using the graphics cursor. Return corresponding coordinates in vectors X and Y.
If vectors X or Y do not exist, they are automatically created. Control is returned when the point is
outside picture limits or when the BREAK (right) mouse button is clicked (or CRTL/E). The optional
parameter NTPRI may be specied to locate a point in the specic transformation number NTPRI (see
LOCATE). WKID allows to dene in which window the locator is performed.
91
Change the contents of a histogram channel using the cursor. Position the cursor to the channel to be
changed, trigger graphics input, position the cursor to the new channel value (a rubber band box is used
to visualize the change), trigger graphics input to x the new value.
26.0.193 HMOVE
VECX
VECY
CHOPT
NTPRI
WKID
C
C
C
I
I
26.0.192 VLOCATE vecx vecy [ chopt ntpri wkid ]
\Number of divisions along X"
\Number of divisions along Y"
\First division number" D=1
\Option" D=' '
Possible CHOPT values are:
D=1
D=1
NT
X1
X2
Y1
Y2
92
I \Normalisation transformation number"
R \Low X of viewport in NDC" D=0 R=0:1
R \High X of viewport in NDC" D=1 R=0:1
R \Low Y of viewport in NDC" D=0 R=0:1
R \High Y of viewport in NDC" D=1 R=0:1
Set the viewport of the normalisation transformation NT in the Normalized Device Coordinates (NDC).
Note that the command SELNT should be invoke in order to validate the viewport parameters.
This command, and also SWN, should not be used for a common PAW usage (H/PLOT, GRAPH etc
...). Commands like ZONE and SIZE should be used.
27.0.196 SVP nt x1 x2 y1 y2
XSIZE
YSIZE
R \Size along X" D=20.
R \Size along Y" D=20.
Set the size of the picture. On the terminal, the pictures will have the ratio YSIZE/XSIZE, and, if a
metale is produced, pictures will be YSIZE by XSIZE cm. This command sets the parameters for the
normalisation transformation number 1 to [0-XSIZE], [0-YSIZE].
27.0.195 SIZE [ xsize ysize ]
' '
S
Redene zones on current picture
Dene the zones for all subsequent pictures.
Subdivide the picture into NX by NY zones, starting at zone IFIRST (count along X rst).
Note that the command ZONE doesn't dene the normalisation transformations (see SWN, SVP and
SELNT). They are dene only when commands like H/PLOT, NULL etc .. are performed.
' '
NX
NY
IFIRST
CHOPT
I
I
I
C
27.0.194 ZONE [ nx ny irst chopt ]
To dene Normalisation transformations. Either automatically (ZONE and SIZE) or 'by hand' (SVP,
SWN and SELNT).
GRAPHICS/VIEWING
Chapter 27
Nul 0 1 -1 1
Line 0 0 1 1
Swn 10 0 10 0 10
Selnt 10
Line 0 0 1 1
|
|
|
|
|
Draw an empty frame (0,1)x(-1,1)
Draw a line in (0,1)x(-1,1)
Change the coordinates to (0,10)x(0,10)
Activate the coordinates (0,10)x(0,10)
Draw a line in (0,10)x(0,10)
Zone 1 2
Nul 0 1 -1
Nul 0 1 -1
Line 0 0 1
Selnt 10
Line 0 0 1
Example:
1
1
1
1
|
|
|
|
|
|
If ZONE 1 1 is active, then:
+-----------------------------+
|
|
| +-----------------------+ |
| |
| |
| |
| |
| |
| |
| |
| |
| |
NT=10
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| +-----------------------+ |
|
NT=1
|
+-----------------------------+
93
Define 2 zones.
Draw an empty frame in the first zone
Draw an empty frame in the second zone
Draw a line in second zone
select the first zone
Draw a line in the first zone
If ZONE 2 2 is active , then:
+------------------------------+
|
|
| +----------+
+---------+ |
| |
|
|
| |
| |
NT=10 |
| NT=20 | |
| |
|
|
| |
| +----------+
+---------+ |
|
|
| +----------+
+---------+ |
| |
|
|
| |
| |
NT=30 |
| NT=40 | |
| |
|
|
| |
| +----------+
+---------+ |
|
|
|
NT=1
|
+------------------------------+
NT I \Normalisation transformation number"
Select a normalisation transformation number.
27.0.198 SELNT nt
This command, and also SVP, should not be used for a common PAW usage (H/PLOT, GRAPH etc ...).
Commands like ZONE and SIZE should be used.
NT
X1
X2
Y1
Y2
I \Normalize transformation number"
R \Low X of window in WC" D=0
R \High X of window in WC" D=20
R \Low Y of window in WC" D=0
R \High Y of window in WC" D=20
Set the window of the normalisation transformation NT in World Coordinates (WC). Note that the
command SELNT should be invoke in order to validate the window parameters.
Example:
27.0.197 SWN nt x1 x2 y1 y2
SET * ; OPT *
|
NUL -1 1 0 1
|
* Create vector X and Y (cf
SIGMA X=ARRAY(100,-1#1)
SIGMA Y=X*X
SET PLCI 4
|
SET LWID 6
|
SET LTYP 2
|
PLINE 100 X Y
|
The line color is blue
The line width is 6
The line type is dashed
Draw a 100 points line
Reset the defaults
Draw a frame (cf HELP NULL)
HELP SIGMA)
X1
Y1
X2
Y2
SET * ; OPT *
NUL 0 5 0 5
SET PLCI 2
SET LWID 6
SET LTYP 3
LINE 0 0 5 5
|
|
|
|
|
|
94
Reset the defaults
Draw a frame (cf HELP NULL)
The line color is red
The line width is 6
The line type is dotted
Draw a line
R \X rst coordinate"
R \Y rst coordinate"
R \X second coordinate"
R \Y second coordinate"
Draw a line connecting points (X1,Y1) and (X2,Y2) in the current Normalisation transformation. This
command is kept for backward compatibility. It has a reverse calling sequence compare to BOX or
ARROW and it doesn't take LOG scales into account. It is recommended to use DLINE instead. The
LINE attributes can be changed with the command SET.
Example:
28.0.200 LINE x1 y1 x2 y2
This command doesn't take into account OPTIONS LOGY or LOGX, use GRAPH instead.
N
X
Y
I \Number of points"
C \Vector name for X coordinates"
C \Vector name for Y coordinates"
Draw a polyline of N points X,Y in the current Normalisation transformation. The PLINE attributes
can be changed with the command SET.
Example:
28.0.199 PLINE n x y
Call HIGZ drawing primitives
GRAPHICS/PRIMITIVES
Chapter 28
SET * ; OPT *
OPTION LOGY
NUL 0 5 1 100
SET PLCI 2
SET LWID 6
SET LTYP 1
DLINE 0 5 1 10
|
|
|
|
|
|
|
Reset the defaults
Log scale on the Y axis.
Draw a frame (cf HELP NULL)
The line color is red
The line width is 6
The line type is solid
Draw a line
SET * ; OPT *
| Reset the defaults
NUL -1.1 1.1 -1.1 1.1 | Draw a frame (cf HELP NULL)
* Create vector X and Y (cf HELP SIGMA)
SIGMA X=ARRAY(100,-3.14#3.14)
SIGMA Y=SIN(X)*COS(X)
SIGMA X=COS(X)
SET FACI 2
| The fill area color is red
SET FAIS 1
| The fill area interior style is solid
FAREA 100 X Y
| Draw a 100 points line
SET FACI 1
| The fill area color is black
SET FAIS 0
| The fill area interior style is hollow
FAREA 100 X Y
| Draw a 100 points line
SET FAIS 3
| The fill area interior style is hatched
SET FASI 245
| Defines the type of hatches
FAREA 100 X Y
| Draw a 100 points line
95
This command doesn't take into account OPTIONS LOGY or LOGX, use GRAPH instead.
N
X
Y
I \Number of points"
C \Vector name for X coordinates"
C \Vector name for Y coordinates"
Fill the area dened by the N points X,Y in the current Normalisation transformation. The FAREA
attributes can be changed with the command SET.
Example:
28.0.202 FAREA n x y
X1
X2
Y1
Y2
R \X rst coordinate"
R \X second coordinate"
R \Y rst coordinate"
R \Y second coordinate"
Draw a line connecting points (X1,Y1) and (X2,Y2) in the current Normalisation transformation taking
care of logarithmic scales. The DLINE attributes can be changed with the command SET.
Example:
28.0.201 DLINE x1 x2 y1 y2
SET * ; OPT *
| Reset the defaults
NUL -3.2 3.2 -1 1
| Draw a frame (cf HELP NULL)
* Create vector X and Y (cf HELP SIGMA)
SIGMA X=ARRAY(100,-3.14#3.14)
SIGMA Y=SIN(X)*COS(X)
SET PMCI 6
| The marker color is magenta
SET MTYP 3
| The marker type is *
SET MSCF 2
| The marker size is 2
PMARKER 100 X Y
| Draw a 100 points polymarker
SET * ; OPT *
NULL 0 10 0 10
SET FAIS 0
BOX 1 3 1 3
SET FAIS 1
BOX 1 3 3 5
SET FAIS 3
SET FASI 245
BOX 1 3 5 7
SET FASI 3
BOX 3 5 5 7
SET BORD 1
SET PLCI 2
SET FASI 4
BOX 5 7 5 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
96
Reset the defaults
Draw a frame (cf HELP NULL)
Fill area interior style hollow
Draw a box
Fill area interior style solid
Draw a box
Fill area interior style hatched
Changes the type of hatches
Draw a box
Changes the type of hatches
Draw a box
The border is requested
Line color is red
Changes the type of hatches
Draw a box
R \X coordinate of rst corner"
R \X coordinate of second corner"
R \Y coordinate of rst corner"
R \Y coordinate of second corner"
Draw and ll a box with the current ll area and line attributes. Use the current Normalisation transformation. The BOX attributes can be changed with the command SET.
Example:
X1
X2
Y1
Y2
28.0.204 BOX x1 x2 y1 y2
This command doesn't take into account OPTIONS LOGY or LOGX, use GRAPH instead.
N
X
Y
I \Number of points"
C \Vector name for X coordinates"
C \Vector name for Y coordinates"
Draw polymarkers at the N points X,Y in the current Normalisation transformation. The PMARKER
attributes can be changed with the command SET.
Example:
28.0.203 PMARKER n x y
SET * ; OPT *
OPT LOGY ; OPT LOGX
NULL 0 10 0 10
SET FAIS 0
DBOX 1 3 1 3
|
|
|
|
|
Reset the defaults
Use log scale
Draw a frame (cf HELP NULL)
Fill area interior style hollow
Draw a box
X1
X2
Y1
Y2
X3
X4
Y3
Y4
SET * ; OPT *
NULL 0 10 0 10
SET FAIS 3
SET FASI 3
SET FACI 2
SET PLCI 4
SET LWID 8
SET BORD 1
FBOX 1 9 1 9 3 7 3 7
|
|
|
|
|
|
|
|
|
97
Reset the defaults
Draw a frame (cf HELP NULL)
Fill area interior style hatched
Changes the type of hatches
Fill are color is red
Line color is blue
The line width is 8
The border is requested
Draw a frame box
R \X coord of rst corner of ext box"
R \X coord of second corner of ext box"
R \Y coord of rst corner of ext box"
R \Y coord of second corner of ext box"
R \X coord of rst corner of int box"
R \X coord of second corner of int box"
R \Y coord of rst corner of int box"
R \Y coord of second corner of int box"
Draw and ll a frame (2 nested boxes) with the current ll area and line attributes. Use the current
Normalisation transformation. The FBOX attributes can be changed with the command SET.
Example:
28.0.206 FBOX x1 x2 y1 y2 x3 x4 y3 y4
X1
X2
Y1
Y2
R \X rst coordinate"
R \X second coordinate"
R \Y rst coordinate"
R \Y second coordinate"
Draw and ll a box with the current ll area and line attributes. Use the current Normalisation transformation taking care of logarithmic scales. The BOX attributes can be changed with the command
SET.
Example:
28.0.205 DBOX x1 x2 y1 y2
|
|
|
|
|
|
|
|
|
|
|
Reset the defaults
Draw a frame (cf HELP NULL)
Draw a simple arrow (left to right)
Draw a simple arrow (right to left)
Draw a double arrow
Arrow color is red
Draw a double arrow
Arrow line width is 8
Draw a double arrow
Arrow line type is dotted
Draw a double arrow
X1
Y1
X2
Y2
R
WI
PHI
SET * ; OPT *
NUL 0 10 0 10 'AB'
HELIX 1 1 3 3 ! 10 !
SET LWID 8
HELIX 3 3 7 7 1 5 !
SET PLCI 2
SET LTYP 2
HELIX 7 7 10 10 .2 5 10
|
|
|
|
|
|
|
|
98
Reset the defaults
Draw a frame (cf HELP NULL)
Draw an helix
Helix line width is 8
Draw an helix
Arrow color is red
Helix line type is dashed
Draw an helix
R \X coordinate of the begin of helix" D=0.
R \Y coordinate of the begin of helix" D=0.
R \X coordinate of the end of helix" D=10.
R \Y coordinate of the end of helix" D=10.
R \Radius of helix" D=.3
R \Number of turns " D=1.
R \Projection angle " D=15.
Draw an helix with the current line attributes. Use the current Normalisation transformation. Feynman
graph: gluon phi = 30, photon phi = 0.
Example:
6 -.8
5 -.8
4 -.8
*
7
1 .2
2 .4
3 -.8
28.0.208 HELIX [ x1 y1 x2 y2 r wi phi ]
SET * ; OPT
NULL 0 10 0
ARROW 1 9 1
ARROW 9 1 2
ARROW 1 9 3
SET PLCI 2
ARROW 1 9 4
SET LWID 8
ARROW 1 9 5
SET LTYP 3
ARROW 1 9 6
Example:
(X1,Y1) ----> (X2,Y2) if SIZE>0.
(X1,Y1) <---> (X2,Y2) if SIZE<0.
R \X coordinate of start point"
R \X coordinate of end point"
R \Y coordinate of start point"
R \Y coordinate of end point"
R \Arrow size" D=0.4
Draw an arrow Use the current Normalisation transformation. The ARROW attributes can be changed
with the command SET. ARROW and LINE attributes are the same.
X1
X2
Y1
Y2
SIZE
28.0.207 ARROW x1 x2 y1 y2 [ size ]
SET * ; OPT *
NUL 0 10 0 10 'AB'
ARCHELIX 1 1 3 3 ! 9 ! 1
SET LWID 8
ARCHELIX 3 3 7 7 ! 9 ! 1
SET PLCI 2
SET LTYP 2
ARCHELIX 7 7 10 10 ! 9 ! 3
|
|
|
|
|
|
|
|
Reset the defaults
Draw a frame (cf HELP NULL)
Draw an helix
Helix line width is 8
Draw an helix
Arrow color is red
Helix line type is dashed
Draw an helix
X1
Y1
X2
Y2
H
SET * ; OPT *
NULL 0 10 0 6
ARLINE 1 1 9 1
ARLINE 9 2 1 2
SET PLCI 2
SET FAIS 1
ARLINE 9 3 1 3
SET LWID 8
SET FACI 4
ARLINE 9 4 1 4
SET LTYP 3
ARLINE 9 5 1 5
.4
.4
.4
.2
.4
|
|
|
|
|
|
|
|
|
|
|
|
99
Reset the defaults
Draw a frame (cf HELP NULL)
Draw a arrow line (left to right)
Draw a arrow line (right to left)
Arrow color is red
Fill area interior style solid
Draw a arrow line (right to left)
Arrow line width is 8
The fill area color is blue
Draw a arrow line (right to left)
Arrow line type is dotted
Draw a arrow line (right to left)
R \X coordinate of the begin" D=0.
R \Y coordinate of the begin" D=0.
R \X coordinate of the end" D=10.
R \Y coordinate of the end" D=10.
R \arrow size" D=.5
Draw a line with arrow in middle (fermion line) with the current line and ll area attributes. Use the
current Normalisation transformation.
Example:
28.0.210 ARLINE [ x1 y1 x2 y2 h ]
X1
Y1
X2
Y2
R
WI
PHI
RL
R \X coordinate of the begin of helix" D=0.
R \Y coordinate of the begin of helix" D=0.
R \X coordinate of the end of helix" D=10.
R \Y coordinate of the end of helix" D=10.
R \Radius of helix" D=.3
R \Number of turns " D=1.
R \Projection angle " D=30.
R \Radius of loop " D=15.
Draw an archelix with the current line attributes. Use the current Normalisation transformation. Feynman graph: gluon phi = 30, photon phi = 0.
Example:
28.0.209 ARCHELIX [ x1 y1 x2 y2 r wi phi rl ]
SET * ; OPT *
NULL 0 10 0 10
SET FAIS 1
FPOINT 5 1 .1
FPOINT 5 3 .2
FPOINT 5 5 .3
SET FACI 4
FPOINT 5 7 .4
FPOINT 5 9 .5
|
|
|
|
|
|
|
|
|
Reset the defaults
Draw a frame (cf HELP NULL)
Fill area interior style solid
Draw a filled point
Draw a filled point
Draw a filled point
The fill area color is blue
Draw a filled point
Draw a filled point
R
R
R
R
R
R
I
C
\X axis origin in WC"
\X end axis in WC"
\Y axis origin in WC"
\Y end axis in WC"
\Lowest value for labels"
\Highest value for labels"
\Number of divisions" D=510
\Options" D=' ' Minus
Possible CHOPT values are:
X0
X1
Y0
Y1
WMIN
WMAX
NDIV
CHOPT
100
28.0.212 AXIS x0 x1 y0 y1 wmin wmax ndiv [ chopt ]
X
Y
R
R \X " D=0.
R \Y " D=0.
R \Radius " D=.5
Draw a lled point (vertex) with the current ll area attributes. Use the current Normalisation transformation.
Example:
28.0.211 FPOINT [ x y r ]
101
NDIV=N1 + 100*N2 + 10000*N3
N1, N2, N3 = Number of 1st, 2nd, 3rd divisions respectively, eg:.
NDIV=0 --> no tick marks.
NDIV=2 --> 2 divisions, one tick mark in the middle
of the axis.
Orientation of tick marks on axis: Tick marks are normally drawn
on the positive side of the axis.However, if X0=X1, then Negative .
CHOPT='+': tick marks are drawn on Positive side. (default)
CHOPT='-': tick marks are drawn on the negative side.
i.e: '+-' --> tick marks are drawn on both sides of the axis.
Position of labels on axis: Labels are normally drawn on side
opposite to tick marks.However:
CHOPT= '='
on Equal side
Orientation of labels on axis: Labels are normally drawn
parallel to the axis. However if X0=X1, then Orthogonal
if Y0=Y1, then Parallel
CHOPT= 'P' : Parallel to the axis
CHOPT= 'O' : Orthogonal to the axis (Top to Down).
CHOPT= '0' : Orthogonal to the axis (Down to Top).
Position of labels on tick marks: Labels are centered on
tick marks. However , if X0=X1, then they are right adjusted.
CHOPT='R': labels are Right adjusted on tick mark.
Draw an axis with default values.
Logarithmic scale, default is linear.
B
Blank axis. Useful to superpose axis.
U
Unlabeled axis, default is labeled.
+
Tick marks are drawn on Positive side. (default)
Tick marks are drawn on the negative side.
=
Tick marks are drawn on Equal side
P
Labels are drawn Parallel to the axis
O
Labels are drawn Orthogonal to the axis (Top to Down).
0
Labels are drawn Orthogonal to the axis (Down to Top).
R
labels are Right adjusted on tick mark.
L
labels are Left adjusted on tick mark.
C
labels are Centered on tick mark.
M
In the Middle of the divisions.
Y
Direction of labels DOWN . Default is RIGHT
.
Dot obligatory
T
Alphanumeric labels .
S
Tick marks Size
H
Labels Height
D
Distance labels-axis
N
No bining optimisation
I
Integer labeling
Draw an axis in the current Normalisation transformation.
G
' '
Reset the defaults
Draw a frame (cf HELP NULL)
Axis with arrow
LOG axis
define alphanumeric labels
alphanumeric labeling
| Double side tick marks
| exponent is required
|
|
|
|
|
|
102
Note that the command TIC provides a simpler interface to redraw axis on the current plot. Moreover
it use the NDVX, NDVY etc .. attributes.
SET * ; OPT *
NUL 0 12 0 12 'A'
AXIS 1 11 1 1 0 100 510 'A'
AXIS 1 11 3 3 1 10000 510 'G'
LABEL 1 11 a b c d e f g h i j k
AXIS 1 11 5 5 0 12 11 'NATY'
AXIS 1 11 6 6 -100 0 510 'A'
AXIS 11 1 7 7 -100 0 810 'A+-'
AXIS 1 11 8 11 0 1234567 615 'A'
Example:
(default is centered)
CHOPT='L': labels are Left adjusted on tick mark.
CHOPT='C': labels are Centered on tick mark.
CHOPT='M': In the Middle of the divisions.
Direction of labels: Default is RIGHT
CHOPT='Y':
Down
Format of labels: Blank characters are stripped, and then the
label is correctly aligned. The dot,if last character of the
string, is also stripped, unless
CHOPT='.'
Dot obligatory
In the following, we have some parameters, like
tick marks length and characters height (in percentage
of the length of the axis).The default values are as follows:
Primary tick marks: 3.0 %
Secondary tick marks: 1.5 %
Third order tick marks: .75 %
Characters height for labels: 2%
Characters spacing (related to height): 40%
Labels offset: 4.0 %
Type of labels: Labels are normally numeric . However, alphanumeric
labels can be drawn (see command LABEL).
CHOPT='T':
Alphanumeric labels .
Intrinsic parameters: These values can be changed with the command
SET. The default value is used unless the corresponding option is
selected by CHOPT:
CHOPT='D' The distance between the labels and the axis
(the offset) is given by the preceding command
SET with the parameter LAOF.
CHOPT='H' The size (height) of the labels is given by the
preceding command SET with the parameter LASI.
CHOPT='S' The size of the tick marks is given by the preceding
command SET with the parameter TMSI.
Axis bining optimisation: By default the axis bining is optimized .
CHOPT='N': No bining optimisation
CHOPT='I': Integer labeling
4 30 !
4 ! !
4 ! !
4 30 260
*
20 'AB'
|
|
|
|
|
|
|
|
|
|
|
Reset the defaults
Draw a frame (cf HELP NULL)
Line color is red
Line width is 6
Draw an circle
Draw an arc of circle
Fill area with hatches
Type of hatches
Draw an arc
Border is requested
Draw an arc
SET * ; OPT *
NULL 0 10 0 10 'AB'
SET PLCI 2
SET LWID 6
SET BORD 1
SET FAIS 1
SET FACI 3
ELLIPSE 5 5 3 5
XC
YC
RX
RY
PHIMIN
PHIMAX
THETA
|
|
|
|
|
|
|
103
Reset the defaults
Draw a frame (cf HELP NULL)
Line color is red
Line width is 6
Border on
Filled area
Filled area are green
R \X coord of centre"
R \Y coord of centre"
R \X radius of ellipse"
R \Y radius of ellipse" D=0.
R \Minimum angle (degrees)" D=0.
R \Maximum angle (degrees)" D=360.
R \Rotation of axes of (degrees)" D=0.
Draws an ellipse in the current normalization transformation. The parameter THETA rotates the ellipse
major and minor axes (RX and RY) relative to the coordinates by the given angle. The a lled area is
used, so the ellipse may be lled by changing the appropriate SET parameters.
Example:
28.0.214 ELLIPSE xc yc rx [ ry phimin phimax theta ]
SET * ; OPT
NULL 0 20 0
SET PLCI 2
SET LWID 6
ARC 5 5 4
ARC 5 15 4
SET FAIS 3
SET FASI 3
ARC 15 15 1
SET BORD 1
ARC 15 5 1
X1
Y1
R1
R2
PHIMIN
PHIMAX
R \X coordinate of centre"
R \Y coordinate of centre"
R \Inner radius"
R \Outer radius" D=-1.
R \Minimum angle" D=0.
R \Maximum angle" D=360.
Draw an arc of circle with the current ll area and line attributes. Use the current Normalisation
transformation. If R1 is not equal to R2 the area between the two arcs of radius R1 and R2 is lled
according to the current ll area attributes. The border is never drawn unless the interior style is hollow
or the command SET BORD 1 has been called. If R1 is equal to R2 a polyline is drawn.
Example:
28.0.213 ARC x1 y1 r1 [ r2 phimin phimax ]
104
SET * ; OPT *
NULL 0 20 0 20 'AB'
LABEL 1 5 'Lab1' 'Lab2' 'Lab3' 'Lab4' 'Lab5'
* Initialize vectors
V/CRE VWS(5) R 28.3 18.6 16.9 13.5 22.7
V/CRE OFFSET(5) R 2*0. 2*20. 0.
V/CRE COLOUR(5) R 2 3 4 5 6
SET FAIS 1
SET BORD 1
PIE 10. 10. 7. 5 VWS 'L' OFFSET ! COLOUR
| Fill solid
| Draw the border
| Draw the pie chart
| Reset the defaults
| Draw a frame
| define labels
\X coordinate of centre of the pie"
\Y coordinate of centre of the pie"
\Radius of the pie chart"
\Number of values"
\Vector name for N values"
\Options" D=' '
\Name of vector with osets" D=' '
\Name of vector with styles" D=' '
\Name of vector with colors" D=' '
Possible CHOPT values are:
' ' Draw a Pie Chart with default values.
C
Colours array is present.
L
Alphanumeric labels are required.
O
Oset array is present.
N
The label of each slice will be the corresponding numeric value in array VALUES.
P
The label of each slice will be in expressed in percentage.
S
Style array is present.
H
Force the labels size to be the current character height. Without this option the labels
size is computed automatically.
R
Draw the labels aligned on the radius of each slice.
Draw a pie chart in the current Normalisation transformation.
Example:
X0
Y0
RADIUS
N
VALUES
CHOPT
IAO
IAS
IAC
R
R
R
I
C
C
C
C
C
28.0.215 PIE x0 y0 radius n values [ chopt iao ias iac ]
105
SET * ; OPT *
NULL 0 10 0 10
TEXT 5 1 'Left justified' .5 0. L
TEXT 5 2 'Centered' .5 0. C
TEXT 5 3 'Right justified' .5 0. R
TEXT 5 4 '-- 30 degrees' .5 30. L
TEXT 5 4 '-- 60 degrees' .5 60. L
TEXT 5 4 '-- 90 degrees' .5 90. L
TEXT 5 4 '-- 120 degrees' .5 120. L
TEXT 5 4 '-- 150 degrees' .5 150. L
TEXT 5 8 'Some Greek ... [a, b, c, d]' .5 0. C
Set PASS 7
TEXT 5 9 'Bold TEXT' .5 0. C
| Number of passes
| Reset the defaults
| Draw a frame
\X coordinate"
\Y coordinate"
\Text to be drawn"
\Text size" D=0.3
\Comment angle" D=0
\Justication option" D='L'
Possible CHOPT values are:
L Text is Left justied.
C Text is Centered.
R Text is Right justied.
Draw text at position X,Y in the current normalisation transformation using the software font IGTEXT.
SIZE is always given in centimeters. A boldface eect can be obtained using the parameters PASS and
CSHI of the command SET. The text color can be changed by SET TXCI.
Example:
X
Y
TEXT
SIZE
ANGLE
CHOPT
R
R
C
R
R
C
28.0.216 TEXT x y text size [ angle chopt ]
Reset the defaults
Draw a frame
Times bold
Text size 0.5 cm
Horizontal align. Left
| Default align.
| Angle 30 degrees
| Vertical align. Middle
| Vertical align. Top
| Horizontal align. Right
| Horizontal align. Center
|
|
|
|
|
|
|
|
|
|
|
|
Define
3 div,
Draw a
3 div,
Draw a
3 div,
Draw a
labels
lab id 1, 5=center on bin
frame
lab id 1, 1=center on tick
frame
lab id 1, 8=bottom -> up
frame
| Reset the defaults
106
A full description of the possible alignments is given in the PAW manual (see NDVX in the index).
SET * ; OPT *
ZONE 1 3
LABEL 1 3 AAAAA BBBBB CCCCC
SET NDVX 3.15
NULL 0 10 0 1
SET NDVX 3.11
NULL 0 10 0 1
SET NDVX 3.18
NULL 0 10 0 1
LABNUM
NLABS
CHLABS
I \Label identier" D=1 R=1:9
I \Number of labels" D=0 R=0:50
C \List of labels" D=' ' Vararg
Dene a list of alphanumeric labels to be used by subsequent commands such as PIE and AXIS. The
position of the labels on the axis may be changed with SET NDVX (NDVY).
Example:
SET * ; OPT *
NULL 0 10 0 6
SET TXFP -20
SET CHHE .5
SET TXAL 10
ITX 5 1 'Left justified'
SET TXAL 20
ITX 5 2 'Centered'
SET TXAL 30
ITX 5 3 'Right justified'
SET TXAL 12
ITX .2 4 'Top justified'
SET TXAL 13
ITX .2 5 'Middle justified'
SET TXAL 0
SET TANG 30
ITX 5 4 '-- 30 degrees --'
28.0.218 LABELS labnum nlabs chlabs
X
Y
TEXT
R \X coordinate"
R \Y coordinate"
C \Text to be drawn"
Draw text at position X,Y in the current Normalisation transformation, using the current font parameters.
The font and the precision can be changed by SET TXFP. The character size can be changed by SET
CHHE. The text color can be changed by SET TXCI. The text orientation can be changed with SET
TXAL. The text angle can be changed by SET TANG.
Example:
28.0.217 ITX x y text
SET * ; OPT *
NULL 0 10 0 10
PAVE 1 4 1 4 !
PAVE 5 9 1 4 !
PAVE 1 4 5 9 !
PAVE 5 9 5 9 !
! 1001 CHOPT=TRS
! 1001 CHOPT=BLS
!
3 CHOPT=TR
!
3 CHOPT=BL
107
| Reset the defaults
| Draw a frame
\X bottom left corner of box"
\X top right corner of box"
\Y bottom left corner of box"
\Y top right corner of box"
\Box width" D=0.4
\Box style" D=0
\Frame style" D=5
\Option" D='TR'
Possible CHOPT values are:
TR Top and Right frame are drawn
TL Top and Left frame
BR Bottom and Right frame
BL Bottom and Left frame
L
Left frame only
R
Right frame only
T- Top frame only pointing left
B- Bottom frame only pointing left
S
Shadow mode
K
Key mode
Draw a paving-block (box with 3D eect). ISBOX (ISFRAM) may be 1000+ICOLOR where ICOLOR
is the color index of the box (frame), otherwise the style index. If ISBOX (ISFRAM) = 0, only the box
contour is drawn with the current polyline attributes.
Example:
X1
X2
Y1
Y2
DZ
ISBOX
ISFRAM
CHOPT
R
R
R
R
R
I
I
C
28.0.219 PAVE x1 x2 y1 y2 [ dz isbox isfram chopt ]
\Number of values"
\Vector name for X coordinates"
\Vector name for Y coordinates"
\Options" D='AHW'
Possible CHOPT values are:
A X and Y axes are drawn (default).
H An histogram is drawn as a contour (default).
W The Window/Viewport parameters are automatically computed from the X and Y values
(default).
R The histogram is Rotated, i.e. the values in X are used for the ordinate and the values in
Y for the abscissa (default is the contrary). If option R is selected (and option 'N' is not
selected), the user must give: 2 values for Y (Y(1)=YMIN and Y(2)=YMAX) N values
for X, one for each bin. Otherwise the user must give: N values for Y, one for each bin.
2 values for X (X(1)=XMIN and X(2)=XMAX) If option 'N' is selected see below.
N Non equidistant bins (default is equidistant). The arrays X and Y must be dimensioned
as follows: If option R is not selected (default) then give: (N+1) values for X (limits of
bins). N values for Y, one for each bin. Otherwise give: (N+1) values for Y (limits of
bins). N values for X, one for each bin.
F The area delimited by the histogram is lled according to the ll area interior style and
the ll area style index or colour index. Contour is not drawn unless CHOPT='H' is also
selected.
C A Smooth curve is drawn across points at the centre of each bin of the histogram.
L A straight Line is drawn across points at the centre of each bin of the histogram.
* A star is plotted at the center of each bin of the histogram.
P Idem as '*' but with the current marker.
B A Bar chart with equidistant bins is drawn as ll areas. (Contours are drawn). The bar
origin and the bar width can be controlled by the routine SET using the options BARO
and BARW respectively.
Draw an histogram dened by arrays X and Y. The number of components needed in vectors X and/or
in Y may be dependent upon the value of CHOPT (see options 'R' and 'N'). By default if the option 'N'
is not given, X(1) contains the X minimum value and X(2) the X maximum value (the others are ignored
as the example show it). To set Log scales in X and/or Y, use OPT LOGX/LOGY. Note that when an
option is specied, it is also necessary to specify the options 'W' or 'HW' in order to start a new zone
or/and draw the axes.
Example
108
SET * ; OPT *
| Reset the defaults
Zone 1 2
* This command needs vectors
V/CREATE Y(10) r 1 2 3 4 5 5 4 3 2 1
V/CREATE X(11) r 1 2 4 6 8 10 15 16 20 21 30
HIST 10 X Y 'WH'
| Equidistant bins
HIST 10 X Y 'HWN'
| Non Equidistant bins
N
X
Y
CHOPT
I
C
C
C
28.0.220 HIST n x y [ chopt ]
\Number of values"
\Vector name for X coordinates"
\Vector name for Y coordinates"
\Options" D='ALW'
Possible CHOPT values are:
A X and Y axes are drawn (default).
L Every point is connected with a straight line. (default)
W The Window/Viewport parameters are automatically computed from the X and Y values
(default).
C The values in Y are plotted in the form of a smooth curve. A Spline approximation
algorithm is used.
F A ll area is drawn. If the option 'CF' is used the contour of the ll area is smooth. The
border of the ll area is drawn if the command SET BORD 1 has been typed. The ll
area type may be changed via the SET parameters FASI and FASI
R The graph is Rotated, i.e. the values in X are used for the ordinate and the values in Y
for the abscissa (default is the contrary).
B A Bar chart with equidistant bins is drawn as ll areas. (Contours are drawn). The bar
origin and the bar width can be controlled by the routine SET using the options BARO
and BARW respectively.
* A star is plotted at every point.
P A marker is plotted at every point, according to current marker type and polymarker
colour index.
Draw a curve through a set of points. X and Y are real vectors. To set Log scales in X and/or Y, use
OPT LOGX/LOGY. Note that when an option is specied, it is also necessary to specify the options
'AW' or 'ALW' in order to start a new zone or/and draw the axes.
Example
109
SET * ; OPT *
| Reset the defaults
ZONE 1 2
* This command needs vectors
V/CREATE Y(10) r 1 2 3 4 5 5 4 3 2 1
V/CREATE X(11) r 1 2 4 6 8 10 15 16 20 21
GRAPH 10 X Y 'WC*L'
| Draw an 'open' graph
SET FAIS 3
| Interior style: hatched
SET FASI 245
| Define hatches type
SET BORD 1
| Border requested
NULL 0 22 0 6
| define new scales
GRAPH 10 X Y 'CF*'
| Draw an 'closed' graph
N
X
Y
CHOPT
I
C
C
C
28.0.221 GRAPH n x y [ chopt ]
ICOL
RED
GREEN
BLUE
110
I \Color Index" D=1
R \Weight of red" D=0. R=0.:1.
R \Weight of green" D=0. R=0.:1.
R \Weight of blue" D=0. R=0.:1.
Dene the color ICOL.
29.0.222 COLOR TABLE icol [ red green blue ]
Change HIGZ attributes.
GRAPHICS/ATTRIBUTES
Chapter 29
111
b) If NCOL is greater than 8, the palette is filled
with colours varying continuously from blue to red. This is
called a 'geographical palette'.
Examples:
PAW > SET NCOL 16
| Define the number of colours
PAW > PALETTE 1
| Fill palette 1 with 8 elements
| (8,9,10,11,12,13,14,15) varying
| continuously from blue to red
Note that after the command SET NCOL, the color indices from
8 to NCOL are set with gray levels. The command PALETTE 1
reset the same indices with a 'geographical palette' varying
continuously from blue to red.
a) If NCOL is smaller or equal to 8, the palette is filled with a
subset of the 8 basic colours.
Examples:
PAW > SET NCOL 8
| Define the number of colours
PAW > PALETTE 1
| The palette 1 is filled with
| 8 elements: 0,5,7,3,6,2,4,1
PAW > SET NCOL 4
| Define the number of colours
PAW > PALETTE 1
| The palette 1 is filled with
| 4 elements: 0,5,7,3
PALNB
NEL
LIST
I \Palette number" D=0 R=0:9
I \Number of elements in the palette" D=0 R=0:50
I \List of the palette elements" D=0
Dene a palette of attributes. The palette number is used in the command SET. The command SET
HCOL 0.1 denes the palette number 1 as colour indices used by the command LEGO in case of stacked
lego plots and plotting of SURFACE with options 1 or 2, LEGO with option 2 and CONTOUR with
option 3.
By default the palettes are initialized with 6 elements: 2,3,4,5,6,7.
If the number of elements (NEL) is equal to 0 (default), the palette is lled automatically according to
the number of colours dened with the command SET NCOL:
29.0.223 PALETTE palnb [ nel list ]
X
Y
N
ISYMB
SSIZE
112
C \Vector of X coordinates"
C \Vector of Y coordinates"
I \Number of points" D=1
I \Symbol number" D=24
R \Symbol size" D=0.28
Draw the same symbol at several points x,y in the current normalisation transformation.
30.0.224 SYMBOLS x y n [ isymb ssize ]
Draw various HPLOT objects (symbols, errors, key, etc.).
GRAPHICS/HPLOT
Chapter 30
113
\Vector of X coordinates"
\Vector of Y coordinates"
\Vector of X error bars"
\Vector of Y error bars"
\Number of points" D=1
\Symbol number" D=24
\Symbol size" D=0.28
\Options" D=' '
Possible CHOPT values are:
' ' Coordinates are expressed in histogram coordinates (of the last drawn histogram). Error
bars are drawn.
C
Coordinates are expressed in centimeters.
W
A new window is dened and axis are drawn.
1
Draw small lines at the end of the error bars.
2
Draw error rectangles.
3
Draw a lled area through the end points of the vertical error bars.
4
Draw a smoothed lled area through the end points of the vertical error bars.
0
Turn o the symbols clipping.
Draw (according to the CHOPT value) a series of points using a symbol and error bars in horizontal and
vertical direction in the current normalisation transformation.
By default, the symbols are not drawn if they are on the edges of the plot: the option '0' allows to turn
o this symbols clipping.
With Option 1, the size of the tick marks at the end of the error bars is equal to the marker size and can
be changed with SET KSIZ.
If ISYMB = 0 or SSIZE = 0. no symbol is drawn.
Note that the options can be cumulated.
X
Y
EX
EY
N
ISYMB
SSIZE
CHOPT
C
C
C
C
I
I
R
C
30.0.225 ERRORS x y ex ey n [ isymb ssize chopt ]
114
\Vector of X coordinates"
\Vector of Y coordinates"
\Vector of X error bars (Low)"
\Vector of X error bars (Up)"
\Vector of Y error bars (Low)"
\Vector of Y error bars (Up)"
\Number of points" D=1
\Symbol number" D=24
\Symbol size" D=0.28
\Options" D=' '
Possible CHOPT values are:
' ' Coordinates are expressed in histogram coordinates (of the last drawn histogram). Error
bars are drawn.
C
Coordinates are expressed in centimeters.
W
A new window is dened and axis are drawn.
1
Draw small lines at the end of the error bars.
2
Draw error rectangles.
3
Draw a lled area through the end points of the vertical error bars.
4
Draw a smoothed lled area through the end points of the vertical error bars.
0
Turn o the symbols clipping.
Draw (according to the CHOPT value) a series of points using a symbol and asymmetric error bars in
horizontal and vertical direction in the current normalisation transformation.
By default, the symbols are not drawn if they are on the edges of the plot: the option '0' allows to turn
o this symbols clipping.
With Option 1, the size of the tick marks at the end of the error bars is equal to the marker size and can
be changed with SET KSIZ.
If ISYMB = 0 or SSIZE = 0. no symbol is drawn.
Note that the options can be cumulated.
X
Y
EXL
EXU
EYL
EYU
N
ISYMB
SSIZE
CHOPT
C
C
C
C
C
C
I
I
R
C
30.0.226 AERRORS x y exl exu eyl eyu n [ isymb ssize chopt ]
SET
NUL
KEY
KEY
SET
key
key
SET
SET
KEY
Example
* ; OPT *
0 10 0 8 A
5 2 ! 'Key
5 3 2 'Key
FACI 3
5 4 2 'Key
5 5 2 'Key
PLCI 4
CSIZ .4
5 6 8 'Key
5' 1.5 W
3' 2 H
4' ! L
1'
2' ! F
115
|
|
|
|
|
|
|
|
|
|
Reset the defaults
Draw a frame
Key with marker
Key with filled box
Change color for next key
Key with hatches. DX is modified
Key with line type
Change color for next key
Change key size
Key with line width
- A marker type (default)
- A filled box (CHOPT=F), in this case IATT is a color
and DX is the width of the box.
- A hatched box (CHOPT=H), in this case IATT is a hatches type
and DX is the width of the box.
- A line (CHOPT=L), in this case IATT is a line type
and DX is the length of the line.
- A line (CHOPT=W), in this case IATT is a line width
and DX is the length of the line.
\X coordinate of comment"
\Y coordinate of comment"
\Attribute value" D=24
\Legend" D=' '
\Box width" D=1.
\Options" D=' '
Possible CHOPT values are:
' ' IATT is a marker type
F
IATT is a ll area color index
H
IATT is a hatches type
L
IATT is a line type
W
IATT is a line width
Draw one legend and its explanation at a point x,y in the current normalisation transformation.
The legend can be:
X
Y
IATT
TEXT
DX
CHOPT
R
R
I
C
R
C
30.0.227 KEY x y [ iatt text dx chopt ]
SET
Nul
Set
Nul
Tic
* ; OPT *
0 1 0 1
ndvy 5
0 10 0 10 ABS
XR 5 !
116
|
|
|
|
|
Reset the defaults
draw an empty frame with axis
Change number of Y divisions
Redefine the scales
Axis in the new coordinates
The values of XVAL are always histogram coordinates.
The tick marks will be drawn on both side of the cross wire, unless the cross-wires are requested on the
boundary of the box surrounding the histogram (i.e. at the extreme limits of the drawn histogram). In
this case tick marks will only be drawn inside the box.
The options 'A' and 'B' (for Above and Below) refer only to the cross-wire perpendicular to the Y axis.
In each case only one cross-wire will be drawn.
Similarly 'L' and 'R' (Left and Right) refer only to the cross-wires perpendicular to the X-axis.
It is possible to redene the length of tick marks on the X or Y axis with SET XTIC or SET YTIC.
The position of the axis values may be changed with SET XVAL or SET YVAL.
The Number of divisions can be cahnged with SET NDVX and SET NDVY.
This command combines with the command NUL is a easy way to redraw axis on the current plot.
Example
XVAL intersection on the X-axis
YVAL intersection on the Y-axis
CHOPT
XVAL
YVAL
C \Options" D=' '
R \X position" D=1.E30
R \Y position" D=1.E30
Possible CHOPT values are:
' ' Tick marks are drawn on the edges of the picture
X
Cross-wire drawn perpendicular to the X-axis
Y
Cross-wire drawn perpendicular to the Y-axis
A
Value drawn Above cross-wire
B
Value drawn Below cross-wire
L
Value drawn Left of cross-wire
R
Value drawn Right of cross-wire
Draw 'cross-wires' on a picture, optionally with tick marks and values. Cross-wires are lines perpendicular
to the X and/or Y axis.
30.0.228 TICKS [ chopt xval yval ]
\X Axis title" D=' '
\Y Axis title" D=' '
\Z Axis title" D=' '
\Axis titles alignment" D=0
\Options" D=' '
Possible CHOPT values are:
' ' Axis title are drawn on the left and on the bottom of the plot.
R
Y axis title is drawn on the right of the plot.
T
X axis title is drawn on the top of the plot.
Draw axis titles on the axes of the present plot zone. The parameter IALGN dened where the title is
aligned i.e: on the beginning, the middle or at the end of the axis. The alignment parameter has 3 digits
(one for each axis): xyz where x, y and z may have independently the following values:
117
\Low range in X" D=0.
\High range in X" D=1.
\Low range in Y" D=0.
\High range in Y" D=1.
\Options" D=' '
Possible CHOPT values are:
' ' Draw a frame box only.
S
Redene the scale for the current zone.
A
Axis labels and tick marks are not drawn.
B
The box is not drawn.
Draw a frame box. If XMIN, XMAX, etc. are given, draw a frame box with the window coordinates set
to XMIN, XMAX, YMIN, YMAX. Axis labels and tick marks are drawn by default.
XMIN
XMAX
YMIN
YMAX
CHOPT
R
R
R
R
C
30.0.231 NULL [ xmin xmax ymin ymax chopt ]
Draw a grid in cm.
30.0.230 GRID
NUL 0 10 0 10
NUL 0 100 0 100 S
ATITLE 'End of axis' 'Middle of axis on the right' ! 320 R
ATITLE 'Beginning of axis' 'End of axis' ! 130
ATITLE 'Middle of axis on the top' 'Beginning of axis' ! 210 T
Example:
1: Begining of the axis
2: Middle of the axis
3: End of the axis (0 is equivalent to 3)
XTIT
YTIT
ZTIT
IALGN
CHOPT
C
C
C
I
C
30.0.229 ATITLE [ xtit ytit ztit ialgn chopt ]
\Logical unit number" R=1:128
\File name"
\Record length in words" D=1024
\Options" D=' '
Possible CHOPT values are:
' ' Existing le is opened.
N
A new le is opened.
U
Existing le is modied.
A
Automatic saving.
Open a HIGZ direct access picture le. If CHOPT='AU' or 'AN', pictures will be automatically saved
on the direct access le. This automatic saving facility can be switched o using SET AURZ 0.
118
PNAME C \Picture name" D=' ' Loop
Plot the picture PNAME. PNAME=' ' means the current picture. PNAME='*' means all pictures.
31.0.237 PLOT [ pname ]
PNAME
ICYCLE
C \Picture name" D=' ' Loop
I \Cycle number " D=9999
Delete the picture PNAME from current directory on disk.
31.0.236 SCRATCH pname [ icycle ]
PNAME C \Picture name" D=' ' Loop
Delete the picture PNAME from memory. PNAME='*' means all pictures.
31.0.235 DELETE pname
PNAME C \Picture name" Loop
Create a new picture, named PNAME, in memory. Note that all commands which start a new picture
(clear workstation) automatically create pictures named PICT1, PICT2, etc. if the command OPTION
ZFL or OPTION ZFL1 has been executed.
31.0.234 CREATE pname
List all the HIGZ pictures currently stored in memory.
31.0.233 LIST
LUN
FNAME
LRECL
CHOPT
I
C
I
C
31.0.232 FILE lun fname [ lrecl chopt ]
Creation and manipulation of HIGZ pictures.
PICTURE
Chapter 31
\Picture name"
\X coordinates (NDC) where to draw PNAME"
\Y coordinates (NDC) where to draw PNAME"
\Scale factor" D=1.
\Options" D=' '
Possible CHOPT values are:
' ' Merge the picture PNAME with the current picture.
D
Picture PNAME is displayed during merging.
Add the picture PNAME to the current picture.
Loop
PNAME1
PNAME2
C \Old picture name"
C \New picture name"
Rename a picture.
119
31.0.241 RENAME pname1 pname2
PNAME1
PNAME2
C \Picture name"
C \New picture name"
Copy a picture.
31.0.240 COPY pname1 pname2
PNAME
X
Y
SCALE
CHOPT
C
R
R
R
C
31.0.239 MERGE pname [ x y scale chopt ]
PNAME
CHOPT
D=0
D=0
C \Picture name" D=' '
C \Options" D=' '
Possible CHOPT values are:
S Software characters are used for the text in menus.
A The option shadow is used.
Edit the picture PNAME. PNAME=' ' means the current picture. This command is only available on
workstations.
31.0.238 MODIFY [ pname chopt ]
A PostScript file is generated (-111)
A Encapsulated PostScript file
is generated (-113)
A LaTex file is generated (-778)
A gif file is generated
PNAME
ICYCLE
120
C \Picture name" Loop
I \Cycle number " D=9999
Read picture into memory from a direct access picture le. (see command PICTURE/FILE). PNAME='*'
means all pictures.
31.0.245 IZIN pname [ icycle ]
PNAME C \Picture name" D=' ' Loop
Write the picture PNAME to a direct access picture le (see command PICTURE/FILE). PNAME=' '
means the current picture. PNAME='*' means all pictures.
31.0.244 IZOUT [ pname ]
X
Y
FILE
WKID
R \X position" D=0.
R \Y position" D=0.
C \File name" D=' '
I \Workstation identier" D=1
Load the picture named FILE at the position X,Y in the current normalisation transformation. X,Y is
the top left corner of the picture (like in X11). FILE should be a GIF le.
31.0.243 LOAD x y le [ wkid ]
Note that if the environment variable HIGZPRINTER is not dened the le paw.ps is created but not
printed.
On UNIX sytems:
setenv HIGZPRINTER 'lp -dprinter_name paw.ps'
or
export HIGZPRINTER='lp -dprinter_name paw.ps'
On VAX/VMS sytems:
HIGZPRINTER == 'XPRINT paw.ps /PRINTER=printer_name'
On CERNVM:
setenv HIGZPRINTER 'XPRINT PAW PS (PR printer_name'
Do HELP META for details about the metale types. Note that a new picture is automatically created
for each new plot if the OPTION ZFL1 is on.
For gif les, the picture in memory is not used. The gif le is a direct "hardcopy" of the window number
1 content.
If FILE=HIGZPRINTER or FILE=' ' the PostScript le paw.ps (-111) is generated and the operating
system command dened by the environment variable HIGZPRINTER is executed.
The environment variable HIGZPRINTER should be dened as follow:
FILE = filename.tex
FILE = filename.gif
FILE = filename.ps
FILE = filename.eps
FILE C \File name" D=' '
Print the current picture. The current picture is transformed into a printable le. The le type is dened
according to the extension of the le name i.e.
31.0.242 PRINT [ le ]
121
CHOPT C \Options" D='G'
Possible CHOPT values are:
G graphics output only.
Z Graphics primitives stored in ZEBRA memory only.
Set the graphics switch to control plotting output to terminal (G) and/or picture in memory (Z).
31.0.247 SWITCH [ chopt ]
P
F
The First picture in memory becomes the current picture.
Print the picture data structure. Useful to debug programs.
C Set Current picture. All calls to HIGZ graphic functions are stored in the current structure
according to the option selected be IGZSET.
Perform various operations on a picture. PNAME=' ' means the current picture. PNAME='*' means
all pictures.
PNAME
CHOPT
C \Picture name"
C \Options" D='M'
Possible CHOPT values are:
M Make a new picture in memory with name PNAME. An empty structure is created in
memory and becomes the current picture. If PNAME = ' ', the picture is automatically
named as PICTnnn, where the starting value of nnn is either 0 (default), or the value
assigned by SET to the parameter PICT.
D Display the picture PNAME in memory.
S Scratch the picture PNAME from memory. If PNAME = ' ' the current picture is
scratched.
N The picture following the current picture in memory becomes the current picture. If the
current picture is the last one in memory, the rst picture in memory becomes the current
picture.
L Give the list of the pictures in memory, following the sequence of their storage in memory.
31.0.246 IZPICT pname [ chopt ]
122
+-----------------------------------------------------------------------------+
|
IGSET : Current values in use
|
+-------------+---------------+---------------+-------------------------------+
| Parameter | Current value | Default value |
Explanation
|
+-------------+---------------+---------------+-------------------------------+
|
FAIS
|
0
|
0
| Fill area interior style
|
|
FASI
|
1
|
1
| Fill area style index
|
|
LTYP
|
1
|
1
| Line type
|
|
BASL
|
.150
|
.010 | Basic segment length (NDC)
|
|
LWID
|
1.000
|
1.000 | Line width
|
|
MTYP
|
1
|
1
| Marker type
|
|
MSCF
|
1.000
|
1.000 | Marker scale factor
|
|
PLCI
|
1
|
1
| Polyline color index
|
|
PMCI
|
1
|
1
| Polymarker color index
|
|
FACI
|
1
|
1
| Fill area color index
|
|
TXCI
|
1
|
1
| Text color index
|
|
TXAL
|
0 0
|
0 0
| Text alignment
|
|
CHHE
|
.280
|
.280 | Character height
|
|
TANG
|
.000
|
.000 | Text angle
|
|
TXFP
|
0 2
|
0 2
| Text font and precision
|
|
PICT
|
1
|
1
| Current automatic number
|
|
BORD
|
0
|
0
| Border flag
|
|
PASS
|
1
|
1
| Number of pass in IGTEXT
|
|
CSHI
|
.030
|
.020 | IGTEXT shift
|
|
LASI
|
.018
|
.018 | Label axis size
|
|
LAOF
|
.013
|
.013 | Label axis offset
|
|
TMSI
|
.019
|
.019 | Tick marks size
|
|
AWLN
|
.000
|
.000 | Axis wire lenght
|
|
BARO
|
.250
|
.250 | Offset of IGHIST (IGRAPH) bars|
|
BARW
|
.500
|
.500 | Width of IGHIST (IGRAPH) bars |
|
NCOL
|
8
|
8
| Number of COLors
|
|
CLIP
|
1
|
1
| Clipping mode
|
|
NLIN
|
40
|
40
| Number of line for 3D shapes |
|
AURZ
|
0
|
0
| Automatic saving flag
|
|
DIME
|
2
|
2
| Dimension used (2D or 3D)
|
|
ZBUF
|
0
|
0
| Z-Buffer (1=on or 0=off)
|
+-------------+---------------+---------------+-------------------------------+
CHATT
VALUE
C \Attribute name" D='SHOW'
R \Attribute value" D=0.
Set a HIGZ attribute. If CHATT='SHOW' print default and current values for all attributes. If
CHATT='*' restore default values for all attributes.
31.0.248 IGSET [ chatt value ]
ZEBRA/RZ package: direct access Input/Output.
Interfaces to the ZEBRA RZ, FZ and DZ packages.
123
ZEBRA/RZ
ZEBRA
\Logical unit number" R=1:128
\File name"
\Record length in WORDS" D=1024
\Options" D=' '
Possible CHOPT values are:
' ' Read only mode.
U
Update mode.
Open an existing direct access le.
\Logical unit number" R=1:128
\File name"
\Record length in WORDS" D=1024
\Number of records" D=1000
\Number of words per Key" D=1
\Key format" D='I'
\List of Tags" D='HBOOK-ID'
Possible CHFORM values are:
124
CHDIR C \Directory name"
Delete the directory CHDIR from the current directory.
33.0.252 DDIR chdir
CHDIR
NWKEY
CHFORM
CHTAGS
C \Directory name"
I \Number of words per Key" D=1
C \CHFORM" D='I'
C \List of Tags" D='HBOOK-ID'
Create a new RZ directory below the current directory.
33.0.251 MDIR chdir [ nwkey chform chtags ]
Open a new direct access le.
H
A
B
I
LUN
FNAME
LRECL
NREC
NWKEY
CHFORM
CHTAGS
I
C
I
I
I
C
C
33.0.250 MAKE lun fname [ lrecl nrec nwkey chform chtags ]
LUN
FNAME
LRECL
CHOPT
I
C
I
C
33.0.249 FILE lun fname [ lrecl chopt ]
Chapter 33
Chapter 32
D='RZFILE'
D='RZFILE'
CHPATH
C \Name of top directory"
Print space statistics for an RZ le.
33.0.258 STAT chpath
CHLOCK C \Lock identier"
Free an RZ directory.
33.0.257 FREE [ chlock ]
CHLOCK C \Lock identier"
Lock an RZ directory.
33.0.256 LOCK [ chlock ]
KEEP I \Number of cycles to be kept"
Purge an RZ directory.
125
D=1
CD dir1
; make DIR1 the new CWD
CD //file1/dir2 ; make //FILE1/DIR2 the new CWD
CD
; print the name of the CWD
33.0.255 PURGE [ keep ]
Ex.
CHPATH
CHOPT
C \Path name" D=' '
C \Options" D=' '
Change the current working directory (CWD). IF CHPATH is given make it the new CWD. Otherwise,
print the pathname of the CWD.
33.0.254 CDIR [ chpath chopt ]
CHPATH
CHOPT
C \Path name" D=' '
C \Options" D=' '
Possible CHOPT values are:
' ' List contents of a directory.
A
List all the Ntuple extensions.
T
List a directory Tree.
List contents of a directory (memory or disk). To list all RZ les currently opened, type 'LD //'. Note
that if the Current Directory is //PAWC, this command uses the same format as HISTO/LIST.
33.0.253 LDIR [ chpath chopt ]
R=1:128
126
FNAME C \Name of the FZ text le"
Copy the FZ alphanumeric le into the current directory.
34.0.263 FRALPHA fname
FNAME C \Name of the FZ text le"
Copy the current directory tree onto a FZ le. An alphanumeric format is used. The le FNAME can
be exchanged between dierent machines.
34.0.262 TOALPHA fname
LUN
CHOPT
I \Logical unit number of FZ le"
C \Options" D=' '
Copy the FZ le into the current directory tree.
34.0.261 FRFZ lun [ chopt ]
LUN
CHOPT
I \Logical unit number of FZ le"
C \Options" D=' '
Copy the current directory tree onto an FZ le.
34.0.260 TOFZ lun [ chopt ]
R=1:128
\Logical unit number" R=1:128
\File name"
\Record length in words" D=900
\Options" D='IX'
Possible CHOPT values are:
I Input le.
O Output le.
X Binary exchange mode.
A Alphanumeric exchange mode.
Open an FZ sequential formatted or unformatted le.
LUN
FNAME
LRECL
CHOPT
I
C
I
C
34.0.259 FILE lun fname [ lrecl chopt ]
ZEBRA/FZ package: sequential access Input/Output.
ZEBRA/FZ
Chapter 34
NAME
NUMBER
127
C \Bank name"
I \Bank number" D=1
Print a survey of the structure identied by NAME, NUMBER.
35.0.265 SURV name [ number ]
NAME
NUMBER
CHOPT
C \Bank name"
I \Bank number" D=1
C \Options" D='BSV'
Possible CHOPT values are:
B Print the bank.
S Print the bank contents from left to right Sideways with up to ten elements per line.
V Print the vertical (down) structure.
D Print the bank contents from top to bottom Downwards with ve elements per line.
L Print the linear structure.
Z Print the data part of each bank in hexadecimal format
Display the contents of a bank or a data structure identied by its NAME and NUMBER. The output
format of the data part is controlled by the internal or external I/O characteristic.
35.0.264 SHOW name [ number chopt ]
ZEBRA/DZ package: debugging.
ZEBRA/DZ
Chapter 35
128
IXSTOR I \Store number" D=0 R=0:24
Display the structure of the ZEBRA store IXSTOR. Output the parameters characterizing the store,
followed by a list of all divisions and all link areas associated with the store in question.
35.0.268 STORE [ ixstor ]
IDIV
CHOPT
I \Division number " D=0 R=0:24
C \Options" D='CLSU'
Possible CHOPT values are:
C Check chaining of banks only
L Check validity of the structural links (implies 'C')
S Check the store parameters
U Check the validity of the up and origin (implies 'C')
F Errors are considered fatal and generate a call to ZFATAL
Check the structure of one or more ZEBRA divisions. The verication detail depends on the settings in
CHOPT.
35.0.267 VERIFY [ idiv chopt ]
IDIV
CHOPT
I \Division number " D=2 R=0:24
C \Options" D='M'
Possible CHOPT values are:
M Print Map entry for each bank
E Extend map entry to dump all links of each bank (otherwise only as many links as will
t on a line)
F Full. Dump all active banks, links and data
K Kill. Dropped banks to be treated as active (dropped banks are not normally dumped
under D or F option)
L Dump all Link areas associated with the store
W Dump the Working space, links and data
Z Dump the information in hexadecimal.
Provides a snapshot of one or more divisions in a ZEBRA store. The kind of information provided is
controlled by CHOPT.
35.0.266 SNAP [ idiv chopt ]
Application HMINUIT EXIT
SET EPS 1.E-14
MIGRAD
SET PRIN 2
MINOS
EXIT
Histo/fit 10 g m
129
To input commands for Interactive MINUIT in a macro. Example:
36.0.269 HMINUIT
Interface to MINUIT, COMIS, SIGMA and FORTRAN Input/Output.
FORTRAN
Chapter 36
130
Vector/Create Y(10) r 1 2 3 4 5 6 7 8 9 10
*
* In the following COMIS code, the statement 'Vector Y' declares
* to COMIS an existing KUIP vector. KUIP dimension is assumed.
* The statement 'Vector X(10)' creates a new KUIP vector.
* (Note that SUBROUTINEs must be declared before the MAIN program)
* (KUIP vectors cannot be created into the MAIN program)
*
APPLIcation COMIS QUIT
SUBROUTINE DEMO
Vector Y
Vector X(10)
do 10 i=1,10
XX=i
X(i)=Y(i)*sqrt(XX)*10.
10 CONTINUE
END
CALL DEMO
END
QUIT
Vector/print X
| Print KUIP vector created by COMIS
COMIS code may be inserted into a macro. Example:
PAW > Comis
CS >
do 10 i=1,10
MND>
x=sqrt(i)*10.
MND>
print *,i,x
MND> 10 continue
MND>
END
CS > quit
PAW >
Invoke the COMIS FORTRAN interpreter. COMIS allows to execute FORTRAN routines without recompiling and relinking. It communicates with PAW commands through vectors and functions. COMIS
has its PAW-independent command structure. Example in command mode:
36.0.270 COMIS
From HBOOK:
HBOOK1,HBOOK2,HBOOKN,HFILL,HF1,HF1E,HPRINT,HDELET,HRESET
HFITGA,HFITPO,HFITEX,HPROJ1,HPROJ2,HFN,HGFIT,HRENID
HROPEN,PAOPEN,PACLOS,PAREAD,PAWRIT,HCDIR,HGIVEN,HKIND
HTITLE,HBFUN1,HBFUN2,HRNDM1,HRNDM2,HBARX,HBARY,HDIFFB
HPAK,HPAKE,HUNPAK,HGIVE,HGN,HGNF,HGNPAR,HF2,HFF1,HFF2
HRIN,HROUT,HI,HIE,HIX,HXE,HIJ,HIF,HIDALL,HNOENT,HX,HXY
HTITLE,HCOPY,HSTATI,HBPROF,HOPERA,HIDOPT,HDERIV,HBAR2
HMAXIM,HMINIM,HMAX,HMIN,HSUM,HNORMA,HMCINI,HMCMLL
HEXIST,HREND,HRGET,HRPUT,HSCR,HFIND,HCX,HCXY,HLABEL
HBPROX,HBPROY,HBANDX,HBANDY,HBSLIX,HBSLIY,HPROF2,HRDIR
HBOOKB,HBSTAT,HDIFF,HUNPKE,HREBIN,HERROR,HGNTB,HSTAF
HOUTPU,HERMES,HISTDO,HFUNC,HXI,HIJXY,HXYIJ,HLPOS,HFC1
HSPLI1,HSPLI2,HMDIR,HLDIR,HLOCAT,HFITH,HFITV,HFINAM
HBNT,HBNAME,HBNAMC,HFNT,HFNTB,HGNT,HGNTF,HGNTV,HBSET
HRENAME,HNTDUP,HFITHN,HIJE
From HPLOT:
HPLOT,HPLSYM,HPLERR,HPLEGO,HPLNT,HPLSUR,HPLSOF,HPLFRA
HPLABL,HPLSET,HPLGIV,HPLOC,HPLTOC,HPLNEW,HPLOPT
From ZEBRA:
MZSTOR,MZDIV,MZLINK,MZWORK,MZBOOK,MZDROP,MZPUSH
MZWIPE,MZGARB,MZFORM,LZFIND,LZFID,DZSHOW,DZVERI
FZIN,FZOUT,FZFILE,FZENDI,FZENDO
RZCDIR,RZLDIR,RZFILE,RZEND,RZIN,RZOUT,RZVIN,RZVOUT
RZOPEN,RZIODO,RZCLOS,RZQUOT
From KUIP:
KUGETV,KUDPAR,KUVECT,KILEXP,KUTIME,KUEXEL,KUPROS
KUNWG,KUCMD,KUGUID,KUNDPV,KUPAR,KUPVAL,KUACT
131
From HIGZ:
IPL,IPM,IFA,IGTEXT,IGBOX,IGAXIS,IGPIE,IGRAPH,IGHIST
IGARC,IGLBL,IGRNG,IGMETA,IGSA,IGSET,IRQLC,IRQST,ISCR
ISELNT,ISFAIS,ISFASI,ISLN,ISMK,ISVP,ISWN,ITX,ICLRWK
IGPAVE,IGTERM,IPL3,IPM3,IFA3,ISMKSC,ISPMCI,ISFACI
The following routines from the CERN Program Library can be called:
FUNCTION FUN(X)
FUN=X**2
END
with le fun.f containing
$CALL('fun.f(1.5)')
Then one can type CALL UROUT.FOR(10). The routine UROUT may also contain references to the
library routines mentioned below.
The functions $CALL, $ICALL, and $DCALL allow to call REAL, INTEGER, and DOUBLE PRECISION functions, respectively. The function call must be enclosed in quotes, for example:
SUBROUTINE UROUT(N)
SUM=0.
DO 10 I=1,N
SUM=SUM+I
10 CONTINUE
PRINT *,SUM
END
UROUT C \User routine"
Execute the routine UROUT. UROUT may be a routine compiled and linked with PAW. For example :
CALL HPRINT(10).
UROUT may also be the name of a le which can be edited interactively with the command EDIT. For
example if le UROUT.FOR contains:
36.0.271 CALL urout
R=1:128
the APPLication command. Example:
APPLication SIGMA
> x=array(10,1#10)
> y=sqrt(x)
> exit
Graph 10 x y
3- Using
PAW >
SIGMA
SIGMA
SIGMA
PAW >
132
the SIGMA command. Example:
sigma x=array(10,1#10)
sigma y=sqrt(x)
Graph 10 x y
2- Using
PAW >
PAW >
PAW >
1- Using the KUIP $SIGMA function. Example:
PAW > Vector/Create x(10) r 1 2 3 4 5 6 7 8 9 10
PAW > Graph 10 x $sigma(sqrt(x))
EXPR C \Expression" D=' '
Invoke the SIGMA package. SIGMA is an array manipulation package using its own vector-oriented
language, outside the PAW command conventions. SIGMA may be invoked in one of the three following
ways:
36.0.276 SIGMA [ expr ]
LUN I \Logical unit number"
Rewind the le on unit LUN.
36.0.275 REWIND lun
LUN I \Logical unit number" R=0:128
Close the le on unit LUN. If the le has been opened with HISTO/FILE, PICTURE/FILE, etc, then
before closing the unit, PAW will close correctly the le with CALL HREND or FZENDI(O), ICLWK,
etc. Giving 0 as unit will close all open les.
36.0.274 CLOSE lun
LUN
FNAME
STATUS
I \Logical unit number"
C \File name"
C \File status" D='DONTKNOW'
Possible STATUS values are:
OLD
Open existing le for reading.
APPEND
Open existing le and position at EOF.
NEW
Create new le; error if already existing.
UNKNOWN
Open existing or create new le.
DONTKNOW Like UNKNOWN except on VMS opens highest cycle.
Open a FORTRAN formatted text le. UNKNOWN opens a le for write access without agging an
error if the le already exists. On VMS a new cycle is created. DONTKNOW is the same as UNKNOWN
except on VMS where the highest cycle is opened. This option should be used if it is not yet known
whether the le will be read or written.
36.0.273 FILE lun fname [ status ]
NTIMES
UROUT
I \Number of calls" D=1
C \User routine"
The routine UROUT is called NTIMES times. See command CALL for explanation of UROUT.
36.0.272 LOOP ntimes urout
133
PAW > CONNECT piaf cerncs2b
PAW > CONNECT piaf f-cerncs2-f
| Ethernet node
| FDDI node
SOURCE
TARGET
OPTION
134
C \Source le identier"
C \Target le name" D=' '
C \Options" D=' '
Possible OPTION values are:
N NoWait. Submit the request to the staging system and return immediately.
Stage an Ntuple le on the Piaf server. The source le identier can be the name of a local le on the
client system, a Fatmen path, or a tape identier. If the target le name is not specied it is constructed
from the source identier.
Unless the option N is used the STAGE command waits until the staging is completed and the le is
ready to be used.
38.0.280 STAGE source [ target option ]
SERVER
NODE
C \Server name" D='piaf'
C \Front-end node"
Establish a connection to the Piaf server. Subsequent HISTO/FILE commands can refer to les on the
server using path names '//piaf/le.hbook'.
Example:
38.0.279 CONNECT server node
In order to use the Piaf server the PAW client must have been compiled with the communications
option CZ using TCP/IP as transport protocol.
A locally running PAW session (client) connected to the Piaf server can access Hbook RZ les stored
on the server side in a transparent way. Commands with high CPU or I/O requirements, e.g. NT/PLOT
and NT/PROJECT are processed by the server and only the resulting histograms etc. are sent back to
the client.
MESSAGE C \Message to remote host" D=' '
Send MESSAGE to current remote host. Note that the Current Directory must be //HOST (see
RLOGIN). Some PAW commands (Histo/Plot, Histo/List) can communicate directly with HOST.
37.0.278 RSHELL message
To establish and control the connection to the Piaf server. The Parallel Interactive Analysis Facility
(Piaf) is a cluster of 5 high-performance HP workstations.
NETWORK/PIAF
Chapter 38
HOST C \Host name" D=' '
Start a communication with a remote machine HOST. Current Directory will be changed to //HOST.
37.0.277 RLOGIN host
To access les on remote computers. To send messages to a remote process (ZEBRA server)
NETWORK
Chapter 37
\Remote le name"
\Local le name" D=' '
\Text or binary" D='RZ'
\Record length in bytes" D=0 R=0:
Possible FORMAT values are:
T
Text le.
RZ
Zebra RZ le in exchange format.
BIN Binary le with record length given by RECL.
Copy a le from the Piaf server to the client system. If not specied the local le name will be same as
the remote le name. RECL needs to be specied only for BIN format. For IBM only: A text le with
RECL=0 is written in V-format. Otherwise it is written in F-format with the given LRECL.
'
DIR C \Directory name"
Create a new directory on Piaf.
38.0.289 MKDIR dir
Show current Piaf working directory.
38.0.288 PWD
FROM
TO
C \Old le name"
C \New le name"
Copy a Piaf le to a new le.
38.0.287 CP from to
FROM
TO
C \Old le name"
C \New le name"
Rename a Piaf le.
38.0.286 MV from to
FILE C \File name"
Delete a Piaf le.
38.0.285 RM le
FILE C \File name"
Print a Piaf le on the terminal.
38.0.284 CAT le
FILES C \File pattern" D='
List les stored on the Piaf server.
38.0.283 LS [ les ]
LOCAL
REMOTE
FORMAT
135
C \Local le name"
C \Remote le name" D=' '
C \Text or binary" D='RZ'
Possible FORMAT values are:
T
Text le.
RZ
Zebra RZ le in exchange format.
BIN Binary le.
Copy a le from the client system to the Piaf server. If not specied the remote le name will be same as
the local le name. Note for VMS: Avoid text les with variable record length. Use Stream LF format
instead.
38.0.282 PUT local [ remote format ]
REMOTE
LOCAL
FORMAT
RECL
C
C
C
I
38.0.281 GET remote [ local format recl ]
Close the connection to the Piaf server.
38.0.295 DISCONNECT
136
LEVEL I \Log level" D=0
Set the level of diagnostic output from the Piaf server.
38.0.294 LOGLEVEL level
OPTION C \Processing mode" D='?'
Possible OPTION values are:
?
Inquire the current mode.
SEQ Set sequential processing mode.
PAR Set parallel processing mode.
Inquire or change the processing mode of the Piaf server. In parallel mode the Piaf server uses slave
servers to process Ntuple requests on all available machines in parallel.
With certain types of COMIS selection functions, e.g. when reading from an external le for each event,
parallel processing is not possible. The Piaf server should be switched to sequential mode, i.e. the master
server alone processes the Ntuple request.
38.0.293 MODE [ option ]
Inquire the status of the Piaf server.
38.0.292 STATUS
MESS C \Message"
Send a message to Piaf.
38.0.291 MESSAGE mess
DIR C \Directory name"
Delete a directory on Piaf.
38.0.290 RMDIR dir
Open a MASK file.
Close a MASK file.
List the MASK files currently open.
Reset on bit in a mask file.
137
MASK/FILE mask_name N
NT/LOOP idn selection>>mask_name(i)
NT/LOOP idn selection>>mask_name(j)
NT/LOOP idn selection>>mask_name(k)
etc ...
Note that the mask les generated by this (now obsolete) command are incompatible with the new Ntuple
commands. Just generate again the mask les once:
MASK/FILE
MASK/CLOSE
MASK/LIST
MASK/RESET
Obsolete command use the commands:
138
40.0.297 MERGE
Obsolete commands
Obsolete command use HMERGE.
OBSOLETE/NTUPLE
OBSOLETE
39.0.296 MASK
Chapter 40
Chapter 39
139
OBSOLETE/GRAPHICS/ATTRIBUT
OBSOLETE/GRAPHICS
IFONT
IPREC
140
I \Font number" D=0
I \Font precision" D=2
Set text font and precision. Obsolete command use SET TXFP.
42.0.306 STXFP [ ifont iprec ]
ITXCI I \Text color index" D=1
Set the text color index. Obsolete command use SET TXCI.
42.0.305 STXCI [ itxci ]
IPMCI I \Polymarker color index" D=1
Set the polymarker color index. Obsolete command use SET PMCI.
42.0.304 SPMCI [ ipmci ]
IPLCI I \Polyline color index" D=1
Set the polyline color index. Obsolete command use SET PLCI.
42.0.303 SPLCI [ iplci ]
IFACI I \Fill area color index" D=1
Set the ll area color index. Obsolete command use SET FACI.
42.0.302 SFACI [ ifaci ]
STYLI I \Fill area style index" D=1
Set the ll area style index. Obsolete command use SET FASI.
42.0.301 SFASI [ styli ]
INTS I \Fill area interior style" D=0 R=0:3
Set the ll area interior style. Obsolete command use SET FAIS.
42.0.300 SFAIS [ ints ]
ILN I \Line style" D=1 R=1:
Set the line style. Obsolete command use SET LTYP.
42.0.299 SLN [ iln ]
MKT I \Marker type" D=1
Set the marker type. Obsolete command use SET MTYP
42.0.298 SMK [ mkt ]
Chapter 42
Chapter 41
141
LW R \Line width" D=1 R=1:
Set the line width scale factor. Obsolete command use SET LWID.
42.0.308 SLWSC [ lw ]
CHH R \Character height" D=0.28
Set the character height. Obsolete command use SET CHHE.
42.0.307 SCHH [ chh ]
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement