All numbers are treated as double precision real numbers. Any operation can be interrupted at any time by typing CTRL-C. There are four basic types of PHYSICA instructions: Comments - input that starts with ! Operating system instructions - input that starts with $ Assignments - input of the form: variable=expression Evaluations - input of the form: =expression Commands - all other input
The general syntax for a PHYSICA command line is: command\qual...\qual p1\qual p2\qual ... p29\qual The parameter fields in a command line are separated by commas or blanks. If a field starts with a quote, `, or an opening parenthesis, (, then commas and blanks are considered to be a part of that field, up to the end quote, ', or end parenthesis, ). Character strings are fields enclosed in quotes. For example, the command line: command\qualifier p1 `a, test line' p3 consists of four fields: (1) command\qualifier (2) p1 (3) a, test line (4) p3
Command qualifiers are attached to the command, no blanks are allowed, and separated from the command, or a preceding qualifier, by a backslash, \. A qualifier can be negated, if that makes sense, by preceding the qualifier with a minus sign, or the keyword NO. For example, \COLOUR can be negated by \-COLOUR or by \NOCOLOUR. Some commands also allow qualifiers on parameters.
An assignment stores the value(s) of an expression into a PHYSICA variable. An assignment has the form: variable = expression where expression is some combination of constants, variables, functions, and operators. For example: Y=A*COSD(X/10)+3.5*SIND(X/12)+C*EXP(-X) The type of variable generated by an assignment is determined by the expression. Input is limited to 255 characters, so to have expressions that are longer, use text variables to store it's pieces. For example: F1 = `2.5*COS(X/10)+3.5*SIN(X/12)+63.7*EXP(X/45)' F2 = `1.234567*MOD(X,100)+SIN(X/1000)*EXP(X/200)' F3 = `3.56789*X^2-2.34567*X+23.456' Y = F1+F2+F3
Additional Information on:
An element of a array text variable is a character string, for example, T is an array text variable with 3 elements: T[1] = `This is line one' T[2] = `This is line two' T[3] = `This is line three' Array text variables can be defined with the READ command by entering more than one line number to read, for example: READ\TEXT FILE.DAT\[1:5] T creates array text variable T with 5 elements, or with a text assignment, as above. To specify the character elements of an array element of a array text variable, use another set of brackets. For example, if T[3]=`abcdefghijkl' then T[3][1:10:2] specifies characters 1, 3, 5, 7, 9 of array element 3 of the array text variable T, which is `acegi'. There is no maximum number of array elements for a text variable. There is no maximum character length for an array element.
Enter =variable to display the value of a variable. Use the EXPAND function to display the full expansion of a text variable.
PHYSICA supports many types of functions, both numeric and character. The basic numeric type of function operates on a single number at a time, in other words, it performs its calculations on an element by element basis. These include the trigonometric functions and the basic arithmetic functions. The resultant variable type of one of these element by element functions will be the same as the variable type of its argument. PHYSICA also supports array functions, which operate on variables in their entirety. Some of these functions have a different resultant variable type than their arguments. There are also functions that operate on character strings, and functions that have numeric arguments but result in character strings.
Additional Information on:
( ) - Parentheses | ^ - Exponentiation * - Multiplication | / - Division + - Addition | - - Subtraction >< - outer product | <> - inner product <- - matrix transpose | >- - matrix reflect /| - vector union | /& - vector intersection -------------------------------------+---------------------------------- // - append vectors or append character strings -------------------------------------+---------------------------------- | "OR" - or | || "XOR" - exclusive or & "AND" - and | ~ "NOT" - not = "EQ" - equal to | ~= "NE" - not equal to > "GT" - greater than | < "LT" - less than >= "GE" - greater than or equal to | <= "LE" - less than or equal to The Boolean operators return a value of 0 when false and 1 when true, and all come in two forms. The double quotes are necessary when using the character form of the operator.
Syntax: 3DPLOT x y z ipen { colr } The 3DPLOT command graphs the three vectors x, y, and z in 3d space, displayed in 2 dimensions using a perspective projection. The vectors x, y, and z should contain the (x,y,z) coordinates of the points. The ipen vector contains the codes for deciding what to draw at each coordinate. The colr vector contains the colour codes. The vectors must all be the same length. This command is strictly interactive, it cannot be entered from batch mode. Note that if the graph seems to be a complete mess, try increasing the "eye to object distance" using the E key.
Additional Information on:
Syntax: ALIAS { newcommand command_string } Examples: ALIAS RED COLOUR RED ALIAS APPEND WRITE\APPEND ALIAS CURVE GRAPH\NOAXES ALIAS AXES GRAPH\AXES ALIAS ACLEAR CLEAR\ALPHANUMERIC The ALIAS command allows the user to create new commands by equating a keyword to a command string. The command string must begin with a valid command, for example, it cannot be a file name that is to be used with other commands. If the ALIAS command is entered with no parameters, then the current aliases will be displayed. Everything after the newcommand is taken for the command_string, i.e., no quotes should be used. Use the DEALIAS command to eliminate alias that were created with the ALIAS command.
Syntax: ASSIGN name logical_name Example: ASSIGN LASER_211 HP$LASER This command only applies to VMS, and is equivalent to the DCL command: $ ASSIGN name logical_name The logical assignment takes effect immediately, and remains in effect after PHYSICA is unloaded. The ASSIGN command is useful for assigning new logical names to the output devices, that is, the logical name for a bitmap device or a plotter.
Syntax: BANNER { PHYSICA | DEFAULT | character_string } Qualifiers: \XTERM, \DECTERM Defaults: \DECTERM Examples: BANNER PHYSICA ! banner contains username, node, hardcopy info BANNER\XTERM DEFAULT ! banner = `XTERM' BANNER DEFAULT ! banner = `DECTERM' BANNER `This is a banner' ! banner = user defined string BANNER `start of string '//T//' end of string' BANNER T[3:20] The BANNER command allows the user to change the banner and icon strings when using an X Window System monitor. The initial default is \DECTERM. Use the \XTERM qualifier if you are in an XTERM window instead of DECTERM. The default becomes the last specified \XTERM or \DECTERM qualifier. The command parameter may be: the PHYSICA keyword; the DEFAULT keyword; or a user defined string. The keyword PHYSICA is the default, if no parameter is entered. When neither of the recognized keywords is used, the string itself will be used for the banner and the icon titles.
Additional Information on:
Syntax: BELL { n } Defaults: n = 1 Examples: BELL BELL 3 The BELL command causes the terminal bell to ring. The bell will ring n times. If n is not present in the parameter list it defaults to 1. When executing a command macro file, the BELL command can be useful for notifying the user that some action should be taken or that some procedure is finished.
Syntax: BESTFIT pmin pmax penalty error parm pout BESTFIT\WEIGHTS w pmin pmax penalty error parm pout BESTFIT\CYCLES n pmin pmax penalty error parm pout BESTFIT\WEIGHTS\CYCLES w n pmin pmax penalty error parm pout Qualifiers: \WEIGHTS, \CYCLES Defaults: \NOWEIGHTS, \NOCYCLES This command calculates parameters for a least-squares fit to an error vector using adjustable parameters. The parameter ranges, as well as the penalty function, must be vectors, with lengths equal to the number of parameters for the fit, M. The error array must be a vector with length equal to the number of locations, N. The influence function must be a matrix with N rows and M columns.
Additional Information on:
Syntax: BIN x xbin xcount BIN\NBINS x xbin xcount n { xmin xmax } Qualifiers: \WEIGHTS, \EDGES, \NBINS, \DISCARD, \EMPTY, \AVERAGE, \LAGRANGE Defaults: \-WEIGHTS, \-EDGES, \-NBINS, \-DISCARD, \-EMPTY, \-AVERAGE, \-LAGRANGE, xmin = min(x), xmax = max(x) This command sorts an input vector, x, into a grid of bins and accumulates the counts per bin into an output vector, xcount. Elements are never counted as being in more than one bin. By default, the bins are defined by their centres, given in vector xbin, which must be strictly monotonically increasing. If n=len(xbin), define the bin ranges, r[i] r[1] = xbin[1]-(xbin[2]-xbin[1])/2 r[i] = xbin[i]-(xbin[i]-xbin[i-1])/2 for i=2,3,...,n r[n+1] = xbin[n]+(xbin[n]-xbin[n-1])/2 For each i=1,2,...,len(x) if r[j] <= x[i] < r[j+1] for some j=1,2,...,n then xcount[j] is incremented by 1, or by the weight, w[i]. By default, events below r[1] will be placed in the first bin, and events above r[n+1] will be placed in the last bin. If the \DISCARD qualifier is used, events outside this range will be discarded.
Additional Information on:
Syntax: BIN2D x y xbin ybin mc nx ny { xmin xmax ymin ymax } BIN2D\MATRIX mdata mx my mout Qualifiers: \WEIGHTS, \EMPTY, \MATRIX, \XDISCARD, \YDISCARD, \DISCARD Defaults: \-WEIGHTS, \-MATRIX, \-EMPTY, \-DISCARD xmin = min(x), xmax = max(x), ymin = min(y), ymax = max(y) The BIN2D command forms a matrix of bins of data by sorting the vectors x and y into grids of bins the centres of which are returned in vectors xbin and ybin. The accumulated matrix of total counts per bin is returned in matrix mc. If the numbers xmin and xmax are not entered, they default to the minimum and maximum of x. If the numbers ymin and ymax are not entered, they default to the minimum and maximum of y. xbin[i] = xmin+(i-0.5)*(xmax-xmin)/|nx| for i=1,2,...,|nx| ybin[j] = ymin+(j-0.5)*(ymax-ymin)/|ny| for j=1,2,...,|ny| The (x[i],y[i]) point will be accumulated in mc[i,j] where: row: i = int( (y[i]-ymin)/(ymax-ymin)*|ny| ) + 1 column: j = int( (x[i]-xmin)/(xmax-xmin)*|nx| ) + 1
Additional Information on:
Syntax: BUFFER { n } BUFFER\READ filename BUFFER\WRITE filename Qualifiers: \READ, \WRITE, \DYNAMIC, \STATIC, \KEYPAD Defaults: n = 20, \DYNAMIC Examples: BUFFER 35 BUFFER\KEYPAD\READ FILE.DAT The BUFFER command controls the input line recall buffers: the dynamic buffer, the static buffer, and the keypad buffer. See the RESTORE\PHYSICA command for information on restoring these buffers from previously saved sessions.
Additional Information on:
Syntax: CALL { SUBn } arg1 { arg2 ... arg15 } Examples: CALL SUB1 X Y CALL X Y If one of the keyword parameters SUB1, SUB2, ..., SUB8 is used, then this command calls one of the eight subroutines which were loaded via the shareable image. If none of these keyword parameters is used, then the subroutine object module that was loaded at run-time with the LOAD will be called. The appropriate arguments, which may be constants, scalars, vectors, matrices, character strings, or text variables, must be used. If the arguments do not agree in variable type and number, an addressing error will occur.
Additional Information on:
Syntax: CLEAR Qualifiers: \ALPHANUMERIC, \CIT467, \REPLOTONLY, \NOREPLOT Defaults: clears graphics and replot option The CLEAR command, with no qualifiers, clears the graphics. It also clears the replot buffers, that is, if REPLOT is entered after a CLEAR command is entered, there will be nothing to replot until GRAPH is entered again. Any hardcopies must be asked for before entering the CLEAR command.
Additional Information on:
Syntax: COLOUR colourname COLOUR n Defaults: default colour is white Examples: COLOUR COLOUR RED COLOUR R\SCALAR COLOUR 2 The COLOUR command sets the monitor colour and the associated graphics hardcopy colour number, for subsequent graphics. The colour number may, for example, be a plotter pen number or a colour number for the HP PaintJet.
Additional Information on:
Syntax: CONTOUR { x y } v nctr { min { incr }} CONTOUR\SPECIFIC { x y } v lvls Qualifiers: \SPECIFIC, \INTERPSIZE, \POLAR, \LEGEND, \COLOURS, \PARTIAL, \RESET, \BORDER, \AXES, \COORDINATES, \AREAS, \VOLUMES, \CONTINUE Defaults: x = [1;2;3;...], y = [1;2;3;...], \NOSPECIFIC, \NOINTERPSIZE, \NOPOLAR, \NOLEGEND, \NOCOLOURS, \RESET, \NOAREAS, \NOVOLUMES, \BORDER, \NOCOORDINATES, \AXES, \NOCONTINUE Examples: CONTOUR X Y Z 10 CONTOUR M 10 MINVAL CONTOUR\SPECIFIC\INTERPSIZE 10 X Y M LEVELS This command draws contour lines for either a regular matrix or scattered points. If v is a vector, x and y are assumed to represent a scattered set of points, where v is the altitude corresponding to the location (x,y). If v is a matrix, and two vectors, x and y, are entered, the length of x must be equal to the number of columns of v and the length of y must be equal to the number of rows of v.
Additional Information on:
Syntax: COPY xin1 { xin2 ... } xout1 { xout2 ... } { IFF expression } Qualifiers: \APPEND, \INDEX Defaults: \NOAPPEND, \NOINDEX Examples: COPY X Y Z XX YY ZZ COPY\APPEND X XX COPY X[1:10] X[20:11:-1] COPY\INDEX X Y Z XX YY ZZ IFF (X>2) The COPY command copies a subset of vector, xinI, into another vector, xoutI. By default, if xoutI already exists, the COPY command overlays the new data onto the old. Multiple input vectors can be entered, but there must be an output vector for each input vector.
Additional Information on:
Syntax: DCL The DCL command enters DCL mode by spawning a subprocess. To return to the program, type the DCL command RESUME. When in DCL mode, any VAX/VMS command may be entered, for example, edit a file, run a program. The first time the DCL command is entered, a subprocess is spawned, which can take some time. If the word RESUME is typed, the subprocess is not destroyed and a subsequent DCL command will attach to this subprocess. Attaching to a subprocess is very fast. If the word LOGOFF is typed, the subprocess is destroyed, so that a subsequent DCL command will have to spawn a new subprocess.
Syntax: DEALIAS ALL DEALIAS aliascommand The DEALIAS command allows the user to eliminate aliases that were created with the ALIAS command. If the keyword ALL is entered, all aliases will be eliminated. To display all aliases, enter the ALIAS command with no parameters.
Syntax: DEFAULTS Qualifiers: \INITIALIZE, \WINDOWS Defaults: initialization file not executed, windows reset Examples: DEFAULTS DEFAULTS\INIT The DEFAULTS command resets the original PHYSICA defaults.
Additional Information on:
Syntax: DENSITY { x y } v Qualifiers: \POLAR, \PARTIAL, \DERIV, \PROFILES, \XPROFILE, \YPROFILE, \BORDER, \AXES, \LOG Defaults: \-POLAR, \-PARTIAL, \-DERIV, \-PROFILE, \BORDER, \AXES, \-LOG density plot types qualifier ------------------------------------------------------------- solid filled regions in colour no qualifiers (default) random points \RANDOM dithering with points (grey scales) \POINTS diffusion with points (grey scales) \DIFFUSION scaled rectangles \BOXES If the \LOG qualifier is used, the base 10 logarithm of the data is used for the plot.
Additional Information on:
Syntax: DESTROY v1 { v2 ... } { IFF expression } Qualifier: \EXPAND Default: \-EXPAND Examples: DESTROY * DESTROY X Y Z DESTROY *V M1 M2 *T DESTROY X Y Z IFF (X>=2)&(X<=4) DESTROY X[1:10] Y Z[2:20:2] T[A:B] This command eliminates subsets of vectors or character variables, and it completely eliminates scalars or matrices. Up to 29 variable names may be entered. By default, variable names are not re-constructed or expanded.
Additional Information on:
Syntax: DEVICE keyword Default: initial graphics hardcopy device: HP LaserJet @ 150 dpi Examples: DEVICE HPLASERJET 300 DEVICE OFF DEVICE ON DEVICE HPPLOTTER DEVICE\COLOUR POSTSCRIPT C The DEVICE command is used to select a graphics hardcopy output device. If a device type is chosen, as opposed to entering OFF or ON, then the graphics will be cleared. The initial default is the HPLaserJet @ 150 dpi. The graphics hardcopy device determines the world coordinates. The device should be chosen before opening an EDGR file. The device can be chosen by name or by code number.
Additional Information on:
Syntax: DIGITIZE { xout yout { codes } } Examples: DIGITIZE DIG X Y DIG X Y C The DIGITIZE command digitizes points off of a graph that is attached to a digitizing pad. To make use of the digitizer, simply secure the graph to the pad, enter the DIGITIZE command, and follow the directions. If the two optional variable names, xout and yout, are entered, then they will be created and any recorded points will be saved in these two vectors, with the horizontal axis values stored in xout and the vertical axis values stored in yout.
Additional Information on:
Syntax: DISABLE keyword The DISABLE command allows you to disable certain features denoted by keyword. The ENABLE command re-enables those features.
Additional Information on:
Syntax: DISPLAY character_string DISPLAY keyword This command either displays a message on the monitor screen, or interprets the command parameter as a keyword and draws a corresponding table or displays a corresponding list.
Additional Information on:
DO loops can only be used in command macro files. DO loops in PHYSICA are similar to FORTRAN do loops, but must be terminated with ENDDO. The range of the DO loop can be any expression resulting in a vector. The loop will execute a number of times equal to the length of the loop range vector, with the loop variable taking on the values of each element of the loop range vector. Nested loops are allowed. The maximum number of DO loops allowed in a file is 50. The looping variable is created as a scalar variable. For example, the variable j below will be made into a scalar: ... ! DO j = x ! x must be a vector, the loop will execute len(x) times with ... ! j successively taking on the value of each element of x ENDDO ! ... !
Additional Information on:
Syntax: EDGR keyword This command invokes the graphical editor, EDGR. keywords action --------------------------------------------------- OPEN open a drawing file EDIT edit an open drawing file FRAME open a new frame in an open drawing file CLOSE close an open drawing file
Additional Information on:
Syntax: ELLIPSE a b xc yc angle ELLIPSE\FIT xin yin Qualifiers: \FIT, \NPTS, \XYOUT, \REPLOT Defaults: \-FIT, \-NPTS, \-XYOUT, \REPLOT This command uniformly populates the perimeter of an ellipse in two ways: 1) given the major axis radius, minor axis radius, centre and angle; or 2) fit an ellipse so a fraction of the data points are within the ellipse
Additional Information on:
Syntax: ENABLE keyword The ENABLE command allows you to enable certain features denoted by keyword. The DISABLE command disables those features.
Additional Information on:
Syntax: ERASEWINDOW { n } Defaults: n = current window number Examples: ERASEWINDOW ERASEWINDOW 5 The ERASEWINDOW command erases the graphics within a pre-defined window. It will erase the graphics within a window on the monitor screen, as well as bitmap and PostScript hardcopy output. This does not apply to other graphics hardcopy output or to EDGR drawings, that is, any erased graphics will still appear on that hardcopy and will still be in an EDGR drawing. If n is not entered, it defaults to the current window number. If n is entered, it must refer to a window that is already defined.
Syntax: EXECUTE filename { p1 p2 ... } @filename { p1 p2 ... } Examples: EXECUTE FILE.PCOM @FILE 1.2 `Text string' X Y This command causes program input to come from a file, instead of from the keyboard. When the end of file is reached, input will again be expected to be entered from the keyboard, or from a calling executable file. You may have up to 20 nested executable files. The `at' sign, @, is equivalent to `EXECUTE '. Within command macro files, it is possible to have labels, GOTO statements, IF...THEN statements, and DO loops.
Additional Information on:
Syntax: EXIT Qualifiers: \CLEAR Examples: EXIT EXIT\CLEAR This command stops the PHYSICA program but does not unload the program. After entering EXIT, you can re-enter PHYSICA without re-running the program, by entering the DCL command CONTINUE, as long as you have only entered DCL commands that are performed within the command interpreter, such as, ALLOCATE, ASSIGN, DEFINE, SHOW QUOTA, SPAWN, etc. See also the QUIT command. If the \CLEAR qualifier is appended to the EXIT command, the graphics is cleared before the program is exited.
Syntax: EXTENSION { `ext' } Default: default file extension is PCM Examples: EXTENSION `PCOM' EXTENSION `OPD' This command is used to redefine the default file extension for executable command macro files. The original PHYSICA default file extension is PCM. The default file extension applies to the EXECUTE command only. If you give the file name without a file extension, the default extension is automatically appended to the file name. If the EXTENSION command is entered without a parameter, the current default extension is displayed.
Additional Information on:
Syntax: FIGURE BOX { lowx lowy hix hiy } FIGURE POLYGON nvert { cx cy sx sy } FIGURE CIRCLE radius { cx cy } FIGURE ARC { cx cy sx sy ex ey } FIGURE WEDGE { cx cy sx sy ex ey } FIGURE ELLIPSE a b { cx cy } angle FIGURE ARROW { sx sy ex ey } Qualifiers: \CONFIRM, \GRAPH, \PERCENT, \WORLD Defaults: \NOCONFIRM, \PERCENT This command is used to draw geometric figures. The numeric parameters may be in one of three types of units, which are chosen by command qualifier.
Additional Information on:
Syntax: FILTER\MEDIAN xin xout npt FILTER\MEAN xin xout npt FILTER\NONRECURSIVE xin xout c FILTER\RECURSIVE xin xout c d Qualifiers: \MEDIAN, \MEAN, \NONRECURSIVE, \RECURSIVE Default: \MEDIAN Examples: FILTER X XF 5 FILTER\MEAN X XOUT 5 FILTER\RECURSIVE X XOUT {.3584,1.2832,.3584,0,0} {0,1} A digital filter is a linear combination of the input data and possibly the output data. The input data is assumed to have unit spacing, so a scale value may have to be used to produce the correctly scaled output data.
Additional Information on:
Syntax: FIT y = { expression } FIT\UPDATE yout Qualifiers: \NORMAL, \POISSON, \UPDATE, \ITMAX, \WEIGHTS, \TOLERANCE \ZEROS, \CHISQ, \VARNAMES, \CORRMAT, \COVMAT, \E1, \E2 \FREE, \RESET, \MESSAGES Defaults: \NORMAL, \-ITMAX, \-WEIGHTS, \-TOLERANCE, \ZEROS, \-CHISQ \-CL, \-VARNAMES, \-CORRMAT, \-COVMAT, \-E1, \-E2, \-RESET \-FREE, \MESSAGES Examples: FIT Y=A*X+B FIT\CHISQ\CL\ITMAX\WEIGHTS\TOLERANCE W 3 .001 Y =A*EXP(-B*X)+C FIT\UPDATE YF By default, or if the \NORMAL qualifier is used, it is assumed that the data has normally distributed errors. If the \POISSON qualifier is used, the data errors are assumed to be distributed as a Poisson distribution. The expression to be fitted must result in a vector with the same length as the data variable, y. If the expression is not entered, it defaults to the last expression entered in a FIT command that was equated to the same y variable.
Additional Information on:
Syntax: FMIN x y xlo yhi expression Qualifier: \MESSAGES Default: \MESSAGES Example: FMIN\-MESSAGES X Y -10 10 2*X^2-10*X+5 This command returns the location and value of the local minimum of the expression, in the range xlo to xhi. The expression must be a function of the independent variable x. The variable x should be a scalar whose value is the initial location guess. If x<xlo or x>xhi, then the initial guess will be (xlo+xhi)/2. On output, x will contain the location of the local minimum, and y will contain the value of this minimum. The expression must contain the variable x, and may contain other scalars, but must not contain any other non-scalar variables.
Additional Information on:
Syntax: FZERO x expression Qualifier: \MESSAGES Default: \MESSAGES Example: FZERO\-MESSAGES X SIN(X)/X This command returns the zeros, or roots, of the expression, which must be a function of the dummy vector x. If the length of x is N, a maximum of N roots of the function will be returned in an updated vector x. If no roots are found, or any error occurs, x will be destroyed. The expression must contain x, and may contain scalars, but must not contain any non-scalar variables other than x. The values contained in the x vector will be used as the starting values for the root search.
Additional Information on:
Syntax: GENERATE x min inc ,, npts GENERATE x min inc max GENERATE x min ,, max npts GENERATE\RANDOM x min max npts Qualifier: \RANDOM Default: \-RANDOM The GENERATE command makes a new vector, x. By default, x will be generated according to the formula: x[i] = min + (i-1)*inc for 1 <= i <= npts The minimum value must be given. Two other values are also required: the increment and the number of points, or the maximum and the number of points, or the increment and the maximum value.
Additional Information on:
Syntax: GET { keyword { variable } } Examples: GET %XLAXIS XLX GET GET NSXINC The GET command gets the values of the GPLOT plot characteristic keywords and the PHYSICA specific keywords. Use the SET command to change the values of these keywords. If the command is entered with no parameters, more than one keyword value can be obtained without re-entering the GET command. Other keywords will be requested until a blank line is entered, at which time the user is put back into command line entry mode. If the command is used in this way in a macro command file, the blank line is necessary to indicate that the GET command is finished. If a keyword is entered with the command, only that keyword's value can be obtained. If the output variable is not entered after the keyword, the current value is displayed on the monitor screen. If an output variable is entered, the variable is assigned the current value of that keyword. All keywords have numeric values, except for the FONT, CUNITS, UNITS, VERSION, and VERSIONDATE keywords, which are character valued.
Additional Information on:
Syntax: GLOBALS This command only works under VAX/VMS. This command displays the names of global sections to which you have access. Use in conjunction with the MAP\FIOWA or MAP\FIOWABIG commands.
GOTO can only be used in a command macro file. Use a GOTO to branch to a label. A label is a character string that ends with a colon, :. A label must be on a line by itself, and it must have NO embedded blanks. Do not include the colon with the label after a GOTO.
Additional Information on:
Syntax: GRAPH { `legendtext' } x y { ye1 { xe1 { ye2 { xe2 }}}} Qualifiers: \AXESONLY, \NOAXES, \POLAR, \REPLOT, \HISTOGRAM Defaults: axes drawn, \REPLOT, \NOHISTOGRAM, legendtext ignored Examples: GRAPH X Y GRAPH `legend entry' X Y YERR XERR GRAPH\NOAXES X Y The GRAPH command draws: 1) data with axes -- GRAPH 2) just the data -- GRAPH\NOAXES 3) just the axes -- GRAPH\AXESONLY The data curve may be a histogram. The parameters must be vectors, but can be vectors of length one. The minimum length of all of the input variables will be used.
Additional Information on:
Syntax: GRID x y z m GRID\PATTERN x y z m GRID\INDICES x y z m Qualifiers: \INTERPOLATE, \PATTERN, \INDICES, \SIZE, \XYOUT, \BOUNDS, \POLAR, \CHECKDUP Defaults: \INTERPOLATE, \NOINDICES, \NOSIZE, \NOXYOUT, \NOBOUNDS, \NOPOLAR, \NOCHECKDUP This command creates a regular matrix from scattered data points. The vectors x, y and z are assumed to represent scattered points, where z is the data value at location (x,y). By default, a square matrix, m, is interpolated, with row and column dimensions equal to 5*sqrt(min(len(x),len(y),len(z))).
Additional Information on:
Syntax: HARDCOPY keyword { queue } HARDCOPY keyword { file } This command is used for obtaining graphics hardcopies. The first keyword refers to the action of printing or saving the graphics. This depends on which graphics hardcopy device is currently active. Use the DEVICE command to choose a graphics hardcopy device. The initial default is HPLaserJet.
Additional Information on:
Syntax: HELP { string ... } HELP\LIBRARY libname { string ... } Qualifiers: \PAGE, \LIBRARY Defaults: \NOPAGE, \NOLIBRARY The HELP command invokes the on-line help facility. To get information about a specific command, include it as the string with the HELP command. By default, output to the screen is not paged, that is, output to the screen continues until the information ends.
Additional Information on:
IF...THEN statements can only be used in command macro files. The general form of an IF...THEN statement is: IF (boolean) THEN The boolean can take any form, but must be either a simple function or it must be enclosed in parentheses, and it must have a scalar result. A result of 1 is true, while anything else is false. An IF...THEN statement can precede a single command. An IF...THEN statement can begin a block of commands, but it must be closed off with an ENDIF statement. Nested IF...THEN statements are allowed. The maximum number of IF...THEN blocks allowed within a file is 50.
Additional Information on:
Syntax: INPUT x1 { x2 ... x8 } INPUT\MATRIX m nr nc Qualifiers: \MATRIX Defaults: create vectors The INPUT command is used to interactively enter data, from the terminal keyboard, into vector(s) or into a matrix. The default is to create vectors. If the INPUT command is used in a command macro file, input will still be expected from the terminal keyboard.
Additional Information on:
Syntax: INQUIRE `prompt string' v1 { v2 ... } Defaults: if vI does not exist, it is assumed to be a scalar Examples: INQUIRE `Enter value >>' AVALUE INQUIRE `Enter YES or NO >>' TXT This command is intended for use in command macro files. The prompt string is written to the monitor screen. The correct number and type of values corresponding to the variable names following the prompt string are expected to be entered from the keyboard. If just a carriage return is typed without other response to the inquire prompt, the variables are left unchanged.
Additional Information on:
Syntax: JOURNAL filename Qualifiers: \APPEND, \MACRO Defaults: \NOAPPEND, \-MACRO, initial journal file = PHYSICA.JOURNAL A journal file is a record of all user input to PHYSICA, as well as all non- graphics output, such as error messages, from PHYSICA. The initial state is to have journaling on, journaling of macro commands off, and the initial journal file is PHYSICA.JOURNAL Journaling can be disabled by entering DISABLE JOURNAL. This closes the file. Entering DISABLE JOURNAL\MACRO only disables journaling of macro commands. If you enter ENABLE JOURNAL, the last journal file that was open will be reopened, and subsequent entries will be appended to the last open journal file. To open a new journal file, use the JOURNAL command. To open with append, use the \APPEND qualifier. To also journal macro commands, use the \MACRO qualifier. To find out whether a journal file is currently open, and if so, to display the name of the current journal file, enter the STATUS command. If JOURNAL is enabled, the DISPLAY string command will write the string to the journal file the same way it is written to the monitor screen. If JOURNAL\MACRO is enabled, the DISPLAY command itself will ALSO be written to the journal file.
Syntax: KEYWORD This command enters an interactive mode, where you type a keyword and the online help locations of that keyword are displayed. The help locations are seperated by blanks, while vertical bars, |, seperate the levels within each location. For example, typing the keyword SHELL, displays the help locations DISABLE|SHELL ENABLE|SHELL. You could find information on SHELL by typing HELP DISABLE SHELL or HELP ENABLE SHELL. The wildcard is *, an initial wildcard and/or a final wildcard are allowed. For example, *inc* displays "inch inches nlxinc nlyinc nsxinc nsyinc" which are valid keywords; while inc* displays "inch inches". Typing a TAB, CTRL-I, is similar to using a final wildcard, in that all matching keywords are displayed, unless there is a unique keyword, and then the keyword is completed for you.
Syntax: LABEL { `text' } Qualifiers: \XAXIS, \YAXIS Defaults: no x-axis label, no y-axis label Examples: LABEL\XAXIS TXTVAR[5][1:10] LABEL\XAXIS LABEL\YAXIS `This'//CHAR(39)//`s a label with a single quote' LABEL\YAXIS `<alpha,beta,^>10' This command sets the automatic x- or y-axis text label. Use \XAXIS to set the x-axis label and use \YAXIS to set the y-axis label. Entering the command without a parameter indicates that no automatic x- or y-axis text label is to be drawn. The axis labels are drawn only when the axes are drawn. The character string may contain format commands. Change fonts with the SET FONT command; change the sizes of the text labels with SET XLABSZ or %XLABSZ, SET YLABSZ or %YLABSZ. The x-axis text label is drawn, centred, below the x-axis. The y-axis text label is drawn, centred, to the left of the y-axis.
Syntax: LEGEND ON | OFF LEGEND FRAME ON | OFF | { xlo ylo xhi yhi } LEGEND TRANSPARENCY ON | OFF LEGEND AUTOHEIGHT ON | OFF LEGEND NSYMBOLS n LEGEND TITLE { `title string' } LEGEND STATUS Defaults: legend off, frame on, transparency on, autoheight on, units = %, (xlo,ylo) = (55,22.5), (xup,yup) = (78,45) nsymbols = 1, no title If LEGEND is ON, a short line segment, with plotting symbols, is drawn along with a character string, when the GRAPH command is entered. The line segment is drawn with the same line type and plotting symbols as the data curve. If LEGEND is ON, a character string is expected as the first parameter of the GRAPH command. This character string may contain formatting commands, see the PLOTTEXT command for more information.
Additional Information on:
Syntax: LINE LINE\XYOUT x y { pen_code { line_type { colour { line_thickness }}}} LINE x y { pen_code { line_type { colour { line_thickness }}}} Qualifiers: \GRAPH, \PERCENT, \WORLD, \XYOUT Defaults: \PERCENT, interactive drawing This command draws line segments. If no parameters are entered with the LINE command, the graphics crosshair is used to draw interactively. If the \XYOUT qualifier is used, the graphics crosshair is used to draw the line segments, and the parameters are assumed to be output vectors in which to store the line segment coordinates and other attributes. If the \XYOUT qualifier is not used, and vectors are entered as parameters, then the input vectors are assumed to contain coordinates and other attributes for the line segments, and the graphics crosshair is not used.
Additional Information on:
Syntax: LIST x1 { x2 ... x5 } { n1 { n2 { n3 }}} LIST\MATRIX matrix LIST\MATRIX\FORMAT matrix (format) Qualifiers: \MATRIX, \FORMAT, \PAGE, \COUNTER Defaults: \-MATRIX, n1 = 1, n3 = 1, not paged, \COUNTER, format=1PD13.4 Examples: LIST X Y Z 1 10 2 LIST\PAGE X[10:#] Y Z LIST\MATRIX M[1:NR,1:#] LIST\MATRIX\FORMAT M (6(F10.3,2X)) By default, this command displays a listing of the specified vectors, xI, from index n1 to index n2 by increments of n3. n1 defaults to 1 and n3 defaults to 1 if either are not entered. If n2 is not entered, all the elements of each vector are listed.
Additional Information on:
Syntax: LOAD filename{,libraries} Examples: LOAD MYFILE LOAD MYFILE,LIB1/LIB,LIB2/LIB This command dynamically loads and links a user written object module of a user written subroutine or a user written REAL*8 function. Only one object module can be loaded at a time. A subsequent LOAD command will simply replace the old module with the new. If a function is loaded, it is used in expressions via the name USERN. If a subroutine is loaded, it is used via the CALL command. For examples of user written routines, see the source code: PHYSICA$DIR:PHYSICA_USER_FUNCTIONS.FOR
Additional Information on:
Syntax: MAP\FIOWA name MAP\FIOWABIG name MAP\NOVA MAP\YBOS MAP\HBOOK name This command is used to map onto shared memory, under unix, or a global section, under VMS. The FIOWA, FIOWABIG, and NOVA options are only available under VMS. The YBOS option is only available under DEC AXP OSF/1. The HBOOK option is available everywhere except for HP-UX.
Additional Information on:
Syntax: MATRIX m1 { m2 ... } nr nc Examples: MATRIX M 10 20 MATRIX M1 M2 M3 10 20 This command defines m1 to be a matrix with nr rows and nc columns. Other variable names, mI, may be included, and they will also be defined to be matrices with the same dimensions. If mI exists and is a matrix, then it will be either trimmed down to the specified dimensions or zero filled to expand it. If mI is not already a matrix, it will be created and zero filled. If mI is a vector or a scalar, it will be destroyed first.
Syntax: MIRROR This command reverses the horizontal dimension, which is useful for drawing on a transparency in mirror image. This might be done for overhead projectors because one can display the plot and write or erase on the transparency without disturbing the drawing on the other side. The MIRROR command should be entered before opening an EDGR file. This command acts like a toggle switch. If MIRROR is currently on (off) then it will be turned off (on) when the command is entered. The default is off.
Syntax: MONITOR { keyword } This command is used to select a terminal monitor graphics output device. Selecting a monitor type necessitates clearing the graphics. The MONITOR command should be entered before opening an EDGR file. keyword | keyword -----------------------------------+---------------------------- ON - enable graphics output | TK4107 - Tektronix 4107 OFF - disable graphics output | PT100G - Plessey PT-100G VT640 - Digital VT640 | GR1105 - Seiko GR-1105 VT241 - Digital VT241 | GENERIC - generic terminal CIT467 - Citoh CIT-467 | X - X Window System TK4010 - Tektronix 4010/12 |
Additional Information on:
Syntax: NEWS This command displays the latest information about changes and/or new features pertaining to the PHYSICA program.
Syntax: ORIENTATION keyword Defaults: initial orientation = landscape This command sets the graphics orientation. This requires that the graphics be cleared, which is done automatically. There are two basic graphics orientations available in PHYSICA. keyword meaning ---------------------------------------------------------------------------- LANDSCAPE the world coordinate system is oriented so the large dimension is horizontal PORTRAIT the world coordinate system is oriented so the large dimension is vertical
Syntax: PEAK xout yout PEAK\PNUM xout yout num Qualifiers: \PNUM Defaults: \NOPNUM, num = number of last drawn data curve This command brings up the graphics cursor, and interacts with the user through a keystroke menu, to find the minima or maxima of the current data curve drawn on the screen. The coordinates of the peaks so found are stored in the specified variables xout and yout. By default, the data curve referenced is the last one drawn. When the graphics cursor is brought up, the program is waiting for input of a one or two character keycode.
Additional Information on:
Syntax: PICK { xout yout { y1 { n1 } y2 { n2 } ... }} Qualifiers: \NPTS, \POLYGON, \MATRIX, \COUNTS, \MIN, \MAX, \DISPLAY Defaults: nI = I, \NONPTS, \NOPOLYGON, \NOMATRIX, \NOCOUNTS, \NOMIN, \NOMAX The default action for this command is to pick points off a graph which is currently displayed on the monitor screen, and to optionally save the values in output vectors, xout and yout. It is assumed that a graph is present on the screen and none of the plot characteristics have been changed after the plot was done. The graphics cursor is used, and various actions depend on which key is typed from the keyboard.
Additional Information on:
Syntax: PIEGRAPH w e f c o r { cx cy { a }} Qualifiers: \GRAPH, \PERCENT, \WORLD Defaults: \PERCENT, a = 0 This command draws pie charts. The first five parameters are vectors which define each wedge of the pie. The radius of the pie chart is r. The scalars cx and cy are the x and y coordinates of the centre of the pie. If either cx or cy is not entered, the graphics cursor will be used to choose that coordinate. The starting angle, in degrees, for the first wedge is specified by the scalar a, which defaults to zero.
Additional Information on:
Syntax: PLOTTEXT filename This command draws lines of formatted text that are read from a file. Text formatting commands and special characters, bracketed by the command delimiters, can be interspersed in the lines of text.
Additional Information on:
Syntax: POLYGON xpoly ypoly xdata ydata key Qualifiers: \INSIDE Defaults: \INSIDE This command creates a vector, key, which will have the same length as vectors xdata and ydata. If \INSIDE is used, or if no qualifier is used, key[i] = 1 if the point (xdata[i],ydata[i]) is inside the polygon given by vectors xpoly and ypoly, otherwise key[i] = 0. If \NOINSIDE is used, key[i] = 0 if the point (xdata[i],ydata[i]) is inside the polygon given by vectors xpoly and ypoly, otherwise key[i] = 1.
Additional Information on:
Syntax: QUIT Qualifiers: \CLEAR Examples: QUIT QUIT\CLEAR The QUIT command is the cleanest way to stop the program. This does a complete FORTRAN STOP. You cannot re-enter PHYSICA after quitting, without re-running the program. See also the EXIT command. If the \CLEAR qualifier is appended to the QUIT command, the graphics is cleared before the program is stopped.
Syntax: READ file{\line_range} x1{\c1} { x2{\c2} ... } READ\FORMAT file{\line_range} (frmt) x1 { x2 ... } READ\UNFORMATTED file{\line_range} (frmt) x1 { x2 ... } READ\SCALARS file{\n} s1{\c1} { s2{\c2} ... } READ\SCALARS\FORMAT file{\n} (frmt) s1 { s2 ... } READ\SCALARS\UNFORMATTED file{\n} (frmt) s1 { s2 ... } READ\MATRIX file{\n} matrix nrows { ncols } READ\MATRIX\-FLIPPED file{\n} matrix ncols { nrows } READ\MATRIX\FORMAT file{\n} (frmt) matrix nrows { ncols } READ\MATRIX\UNFORMATTED file{\n} (frmt) matrix nrows { ncols } READ\TEXT file{\line_range} txtvar READ\TEXT\FORMAT file{\line_range} (frmt) txtvar READ\TEXT\UNFORMATTED file{\line_range} (frmt) txtvar
Additional Information on:
Syntax: REBIN v vout n REBIN m mout nr nc Examples: REBIN X XRB 2 ! X is a vector REBIN M M2 3 5 ! M is a matrix This command rebins the data in either: the vector v by the compression value n; or the matrix m by the row compression value nr and the column value nc.
Additional Information on:
Syntax: REFRESH This command redraws the X Window System graphics window, and the zoom window, if it exists.
Syntax: RENAME oldname newname RENAME old* new* RENAME *old *new This command renames variables. The simplest case is to rename one variable. For example: RENAME XOLD XX renames the variable XOLD to XX. If the wildcard * is the last character in the old name, all variables beginning with the preceding characters will be renamed. For example: RENAME X1* XX* ! renames X1 to XX, X1X to XXX, and X1Y to XXY. If the wildcard is the first character in the old name, all variables that end with the succeeding characters will be renamed. For example: RENAME *X *Y2 ! renames X to Y2, AX to AY2, XX to XY2.
Syntax: REPLOT { nw } REPLOT\ALLWINDOWS Qualifiers: \AXES, \ALLWINDOWS, \TEXT Defaults: \AXES, nw = current window number, \TEXT By default, information pertaining to curves produced by GRAPH and ELLIPSE are saved in replot buffers. If all of the data does not appear within the axis boundaries, you can use the REPLOT command to redraw and have all of the data appear on a single graph. The window number, nw, defaults to the current window number. If nw is entered, nw becomes the current window. Only the data drawn into window nw will be replotted. If the REPLOT command is entered without a window number and without the \ALLWINDOWS qualifier, the graphics will be automatically cleared. If using a window number or \ALLWINDOWS, make sure that the appropriate windows are cleared before entering the REPLOT command.
Additional Information on:
Syntax: RESTORE filename Qualifiers: \PHYSICA, \FIOWA, \XFIOWA, \MUD, \MSR, \IMSR, \CHAOS, \YBOS, \HBOOK, \NOVA Default: \PHYSICA This command restores data sets, either previously saved PHYSICA sessions, FIOWA type data sets, muSR MUD, MSR, or IMSR type data sets, CHAOS type data sets, YBOS type data sets, or HBOOK type data sets.
Additional Information on:
Syntax: RETURN This command is to be used in conjunction with command macro files. If the RETURN command is encountered in a command file, control passes back to the calling macro, if there is one, or to the keyboard, if that macro was the top level macro. You can also type RETURN from the keyboard after a TERMINAL command to abort that macro.
Syntax: SAVE filename The SAVE command saves all the variable names, contents, and histories associated with the current run. This includes all scalars, vectors, matrices, and text variables. The information is written in a special binary format into the specified file. The run may be resumed later by means of the RESTORE command. The plot information necessary for a replot is saved. The window definitions are saved, as well as the colour, the default filename extension for executable files, the stack file, autoscaling type, and any aliases that have been defined. The hardcopy device as chosen with the DEVICE command is saved, as well as the graphics orientation. User defined function information is not saved, but must be regenerated explicitly in the restored session.
Syntax: SCALAR s1 { s2 ... } Qualifiers: \DUMMY, \VARY Examples: SCALAR A SCALAR\DUMMY A B C SCALAR\VARY S1 S2 This command defines s1 to be a scalar. Other variable names, s2 ..., may be included, and they will also be defined to be scalars. If sI already is a scalar, its value will be unchanged. If sI is an existing variable, but not a scalar, it will be destroyed first. If sI does not exist, it will be created and initialized to 1.
Additional Information on:
Syntax: SCALES minx maxx nlxinc miny maxy nlyinc SCALES minx maxx miny maxy Qualifiers: \COMMENSURATE Defaults: nlxinc=0 & nlyinc=0 if not entered, non-commensurate axes This command turns off the axis autoscaling feature and sets the graph scales for subsequent graphs as follows: minx - minimum value to display on the x-axis maxx - maximum value to display on the x-axis nlxinc - number of large (numbered) tic marks on the x-axis miny - minimum value to display on the y-axis maxy - maximum value to display on the y-axis nlyinc - number of large (numbered) tic marks on the y-axis If no parameters are entered, the scales are frozen at the current values. The current values of minx, maxx, nlxinc, miny, maxy, and nlyinc will be displayed. If 4 parameters are entered, nlxinc and nlyinc default to zero.
Additional Information on:
Syntax: SET { keyword { value }} SET { keyword = value } Examples: SET %XLAXIS 20 SET %XLAXIS=XLX The SET command sets the values of the GPLOT plot characteristic keywords and the PHYSICA specific keywords. Use the GET command to get these values. If the command is entered with no parameters, more than one keyword value can be set without re-entering the SET command. Other keywords will be requested until a blank line is entered, at which time the user is put back into command line entry mode. If the command is used in this way in a macro command file, the blank line is necessary to indicate that the SET command is finished. If a keyword is entered with the command, only that keyword's value can be changed. If the input value is not entered after the keyword, the current value is displayed on the monitor screen, and you can then enter a new value. If a value is entered, the keyword is assigned the new value. All keywords have numeric values, except for the FONT, CUNITS, and UNITS keywords, which are character valued. The VERSION and VERSIONDATE keywords are also character valued, but they cannot be altered.
Additional Information on:
Syntax: SHOW v1 { v2 ... } Qualifiers: \VECTORS, \SCALARS, \MATRICES, \TEXT, \VARY, \FIXED, \DUMMY Defaults: all variables displayed Examples: SHOW SHOW X* SHOW\VECTORS\SCALARS *ABC* SHOW\SCALARS\-FIXED\-DUMMY This command displays: the current vectors, their lengths and histories; the current scalars, their values and histories; the current matrices, their dimensions and histories; and the current text variables, their lengths and contents. If a variable name is entered, only the information about that variable is listed. Valid wildcard usages are (where x represents one or more characters): *x --> all variables that end with x x* --> all variables that start with x *x* --> all variables that contain x
Additional Information on:
Syntax: SLICES n x y z { angle } Defaults: angle = 30 degrees Examples: SLICES 5 X Y Z SL 10 X Y Z 45 This command bins the x, y, and z vectors into n slices, and produces a graphical representation of this binned data. The x, y and z vectors are assumed to represent scattered data points (x[i],y[i]) with altitude z[i]. By default, the z-axis is drawn at an angle of 30 degrees. This angle can be specified by including the angle parameter. This command is open for suggestions.
Syntax: SORT x { x1 x2 ... } Qualifiers: \UP, \DOWN Defaults: \UP Examples: SORT X Y SORT\DOWN X Y Z SORT\UP X Y Z This command sorts vectors into ascending or descending order. By default, the vector x is sorted into ascending order. Ascending order means that element 1 will be the smallest element. To sort vector x into descending order, use the \DOWN qualifier. Descending order means that element 1 will be the largest. Vector x will be altered. If other vectors, xI, are entered, then they will not be sorted, but they will be re-arranged in the same way that x is re-arranged. For example, if element x[i] becomes x[j] because of sorting, then xI[i] will become xI[j].
Additional Information on:
Syntax: STACK filename Qualifiers: \APPEND, \EXECUTE Defaults: \NOAPPEND, \EXECUTE A stack file will contain all the subsequently entered commands. The STACK command is a way of interactively creating a macro command file, and is meant to be used in conjunction with the EXECUTE command. Commands that are being stacked in a file can be executed later. To turn off the stacking feature, use the DISABLE STACK command, after which commands will no longer be written to the previously named stack file. To re-enable the same stack file, use the command ENABLE STACK, after which subsequent commands will be appended to that file.
Additional Information on:
Syntax: STATISTICS x { s1\keyword { s2\keyword ... }} STATISTICS\MOMENT w x n { sout } STATISTICS\PEARSON x y rcof prob Command qualifiers: \MESSAGES, \WEIGHTS, \MOMENT, \PEARSON Parameter qualifiers: \MIN, \IMIN, \JMIN, \MAX, \IMAX, \IMIN, \JMIN, \MEAN, \GMEAN, \MEDIAN, \SDEV, \ADEV, \VARIANCE, \RMS, \KURTOSIS, \SKEWNESS, \SUM Defaults: \MESSAGES, \NOWEIGHTS Examples: STATISTICS X STATISTICS\NOMESSAGES X XMED\MEDIAN XMEAN\MEAN STATISTICS\WEIGHTS W X XVAR\VARIANCE XSUM\SUM This command calculates statistics for the input variable, x, a vector or a matrix. Specific statistics are chosen with parameter qualifiers.
Additional Information on:
Syntax: STATUS This command displays the PHYSICA version number and date, as well as most of the internal flags and settings.
Syntax: SURFACE matrix { xangle { zangle { vsf { psf }}}} Qualifiers: \COLOUR, \NORMAL, \HISTOGRAM, \XZLINES, \XLINES, \ZLINES Defaults: \NOCOLOUR, \NORMAL, \XZLINES, xangle= -45 degrees, zangle= -45 degrees, vsf= 1, psf= 0 Examples: SURFACE M SURFACE\COLOUR M SURFACE\HIST M -30 -60 SURFACE\NORMAL\ZLINES M -45 -45 2 This command displays a matrix in the form of a 3-d figure which can be rotated in space. The appearance of the figure is controlled by qualifiers and optional parameters. Unlike most other PHYSICA commands, once one of the optional parameters has been changed to a new value, that value becomes the default.
Additional Information on:
Syntax: TERMINAL { `string' } Default: `string' = `type <RETURN> to continue' Examples: TERMINAL TERMINAL `display this message' If this command is encountered in a command macro file that is being executed, control is passed back to the terminal keyboard. Commands can then be entered interactively. To continue execution of the command macro file, type the <RETURN> key without entering anything. The command macro file will then continue execution with the command immediately following the TERMINAL command. By default, the message `type <RETURN> to continue' will be displayed. You can specify the message by entering a character string with the command.
Syntax: TEXT { `textstring' } Qualifiers: \GRAPH, \ERASE, \CONFIRM Defaults: \CONFIRM, \NOGRAPH, \NOERASE Examples: TEXT\NOCONFIRM `This is a text string' TEXT `The value of A is '//RCHAR(A)//` and B = '//RCHAR(B) TEXT `<alpha,^>2<_,gamma>=<Phi>' TEXT TIME//DATE TEXT\ERASE\NOCONFIRM By default, this command draws character strings. The `textstring' defaults to the last character string that was entered with the TEXT command. Users should familiarize themselves with the Low Level Graphics and Graph Plotting manual, particularly the text drawing subsection. Use the SET FONT command to set the font (default: TSAN).
Additional Information on:
Syntax: TILE filename This command is used for drawing complicated bar graphs. The numbers which define the rectangular bars are read from a file. Character strings may also be drawn. Comment lines in the file are ignored, where a comment line is any line that begins with a !.
Additional Information on:
Syntax: TLEN txt lenout This command returns lenout, the number of string elements of the array text variable txt. For example, suppose T[1]=`string 1'; T[2]=`string 2'; T[3]=`string 3' then TLEN T L would return the scalar L = 3.
Syntax: TRANSFORM x p f(x,p) xout Example: TRANSFORM X P EXP(-P*X*X) TX This command performs integral transforms of the function f(x,p). The function is integrated over the entire range of definition as defined by the independent variable x. The integral is evaluated for each value of the parameter array p, with the result stored in the transform array xout. The function f(x,p), which forms the integrand of the transform integral, may contain other scalars, or other vectors dimensioned identically to x. Such vectors are considered, and integrated, as functions of the independent variable x. Vectors of mismatched size will generate an error. This command can be used to perform standard transforms such as Laplace or Hankel transforms. Fourier transforms should be done using the FFT function, as this is much faster.
Syntax: UNIQUE x y xout yout UNIQUE\INDICES x y idx { (index_expression) } Qualifiers: \MESSAGES, \INDICES Defaults: \MESSAGES, \NOINDICES This command finds adjacent duplicate points in the vectors x and y. A duplicate point means that x[i] = x[i+1] and y[i] = y[i+1]. By default, the vectors xout and yout are created, and will contain no adjacent duplicate points. If none are found, xout = x and yout = y.
Additional Information on:
Syntax: USE filename This command causes program input to come from a file, instead of from the keyboard. When the end of file is reached, input will again be expected to be entered from the keyboard. Nesting is not allowed. Within USE files, labels, GOTO statements, IF...THEN statements, and DO loops are not allowed. This command should be useful to enter blocks of commands when the TERMINAL command has been encountered while executing a macro script file, since it is not allowed to execute another script from that mode.
Additional Information on:
All numeric literals in PHYSICA are stored internally as double precision real numbers. Numeric valued variables are stored internally as double precision real numbers, but PHYSICA also allows string valued variables. A SCALAR is a single number. A VECTOR is a one dimensional list of numbers. A MATRIX is a two dimensional array of numbers. A STRING is a character string. A STRING ARRAY is an array of strings. Except for some variables which are created automatically by various commands, each variable is named by the user.
Additional Information on:
Indices can be used on any numeric variable, except scalars, and on any string variable. A string variable is a string, and can have only one index, which is interpreted as a character index. A string array variable is an array of strings, and can have either one or two indices. If one index is used, it is assumed to be an array index. If two sets of indices are used, the first is assumed to an array index and the second is assumed to be a character index. Indices can also be used on functions, and on expressions. An index can be a simple numeric literal or a complicated expression. Indices can also be nested.
Additional Information on:
Syntax: VECTOR x1 { x2 ... } n Example: VECTOR X Y Z 10 This command defines xI to be a vector with length n. If xI exists and is a vector, then it will be either trimmed down to the specified length or zero filled to expand it. If xI is not already a vector, it will be created and zero filled. If xI is a matrix or a scalar, it will be destroyed first.
Syntax: VOLUME x y z { volm } VOLUME\MATRIX { x y } m { volm } Qualifiers: \MATRIX, \POLAR Defaults: \NOPOLAR, x=[1;2;...], y=[1;2;...] By default, this command calculates the volume under the scattered points given by vectors x, y and z=f(x,y). The output is an optional scalar, volm. If volm is not entered, the volume is simply displayed. The region given by x and y is first triangulated, using a Thiessen triangulation, then the integral is approximated by integrating the piecewise linear interpolants of the data values. If the \POLAR qualifier is used, x is assumed to be the radial components and y the angular components, in degrees.
Additional Information on:
Syntax: WAIT n This command causes a delay of n seconds. This is included for use when EXECUTing a command macro file. Suppose some message is displayed on the monitor screen, via the DISPLAY command, and the user is expected to interactively enter some information. One could ring the bell, using the BELL command, display the message, and then cause a wait of a few seconds before clearing the screen. The user would then have a better opportunity to read the message and then act on it.
Syntax: WINDOW { n { lowx lowy { upx upy }}} WINDOW\TILE nx ny nstart Qualifiers: \TILE, \MESSAGES Defaults: \NOMESSAGES, nstart = 1 This command chooses a subset of the graphics page or world. The default window is the entire page, that is, window number zero. Windows are an easy way to subdivide the graphics output page into rectangular regions, allowing multiple graphs and/or multiple figures and/or multiple text regions. A window, other than window 0, has a smaller plotting unit range than the full page. Commensurateness is not lost in a sub-window. Windows are transparent to EDGR. If no parameters are entered, a listing of the currently defined windows will be displayed along with their corner coordinates.
Additional Information on:
Syntax: WORLD vxin vyin { vxout vyout } Qualifiers: \PERCENT Defaults: absolute coordinates returned Examples: WORLD 10 20 WORLD AX AY AXW AYW WORLD\PERCENT X Y XW YW This command converts graph coordinates into world coordinates, or into percentages if the \PERCENT qualifier is used. The world coordinates are either centimeters or inches depending on the units chosen with the SET UNITS command. The default is centimeters. The variables vxin and vyin may be scalars or vectors, but they must both be the same type. The resultant values are displayed on the monitor screen, and if output variables vxout and vyout are present, then the values are stored there. The type of variable created depends on the type of vxin and vyin.
Syntax: WRITE file x1 { x2 ... } WRITE\SCALAR file s1 { s2 ... } WRITE\MATRIX file matrix WRITE\TEXT file txtvar Qualifiers: \SCALAR, \MATRIX, \TEXT, \FORMAT, \APPEND This is a general purpose writing command for vectors, scalars, matrices, or character strings. The variable type that will be written depends on the qualifier appended to the command. The parameters that are expected also depend on this qualifier. By default, the WRITE command writes vectors to a file. If the \APPEND qualifier is used, and if the output file already exists, the data will be appended onto the end of the file. Columns of data will be written to the file, where the I_th column will be vector xI. The number of lines that are written to the file will be the minimum length of the vectors. A maximum of 29 vectors can be written with one WRITE command.
Additional Information on:
Syntax: ZEROLINES Qualifiers: \HORIZONTAL, \VERTICAL Default: both horizontal and vertical lines drawn This command draws horizontal and/or vertical lines on a graph through (0,0). ZEROLINES\HORIZONTAL -- draw line through (0,0), parallel to the x-axis, from the left edge, XMIN, to the right edge, XMAX ZEROLINES\VERTICAL -- draw line through (0,0), parallel to the y-axis, from the bottom edge, YMIN to the top edge, YMAX ZEROLINES -- both lines are drawn The line(s) will have the current line type, as set with the SET LINTYP command (default: LINTYP=1).