DESL


DESL Home | Website Outline | Commands | Examples | Download | Contacts

( BR) Details concerning the DESL pubplot command.


(See example(s) of the use of the pubplot command.)
[Jump to the list of available options.]
General description of the pubplot command :

The DESL "pp" function allows the user to generate a PostScript file containing one or more frames of publication-qual graphic output.

Please review the anatomy of a plot for an overview of the main parts of a typical DESL plot.

A complete PostScript plot file can contain an unlimited number of frames. A "frame" is one page. Each frame can contain an unlimited number of plots. A "plot" is a display of information for up to 20 curves. A "curve" is a sequence of information which, in general, will be displayed together, represented by a certain symbol and/or line.
.

(Begin modifications on 052102)

All curves for a particular plot can contain a maximum of 50000 points.

(End modifications on 052102)

The time at which this total of points is established is AFTER

  1. global conditions
  2. file-specific conditions
  3. restrictions based on the "pseq" state eliminations
  4. data averaging has been applied but BEFORE (a) tolerance checks, (b) "voidval" checks, and data clipping occurs.
Plotting progresses from plot to plot until the time when a request for a new frame is implied (by "plotf"). After an advance to a new frame, (page), plotting can continue.

A "blank" box, filled or unfilled, is drawn before a key. A key is drawn before all "text" strings.

All LOCATION arguments which can be specified for "pp" options are in INCHES, unless otherwise stated. The default size of a plot is 10 inches by 10 inches. This size can be affected in many ways.

The "pp" function is unique among DESL functions in that the processing of specified options/argument lists is NOT totally order independent. Except where noted within the definition of specific options, the entry of option/argument lists IS order independent UP TO THE POINT of issuance of the "plot" or "plotf" option. At that time a plot is generated. After a plot is generated the user-specified sequence of options/argument lists is once again referenced until "plot" or "plotf" is encountered. This cycle repeats until the end of the user specifications is reached. Careful attention should always be paid to the current state of the definable plotting parameters.


The list of currently available options for the pubplot command is the following.

Any blinking names enclosed in brackets are required or are in a set of options, one of which must be specified. Any non-blinking names enclosed in brackets are optional or are in a set of options, only one of which can be specified.

In cases where the option name is one of a set each different set number is indicated by a red numeric set number superscript trailing the respectiveright bracket :

[absorigin] [allfrom] [altvars] [annmag] [aorigin] [arrowhead] [auto] [autox] [autoy] [autoz] [avg] [axiscolor] [axisrot] [axlwt] [backward] [blank] [border] [bottominc] [cangle] [cdec] [cdetail] [cfiles] [cfrom] [cfreq] [ckmag] [charalign] [clab] [cldist] [clevels] [clip] [clist] [clwt] [cmax] [cmin] [cntld] [colorkey] [colors] [contour] [copy] [corder] [cpaths] [cports] [crvlwt] [cset] [cside] [csize] [cthresh] [ctol] [curvefile] [curves] [destin] [dfreq] [dorigin] [elsek] [emptyplot] [encaps] [endifk] [endimport] [endloop] [enrich] [eqtol] [errorbarcap] [errorbarlwt] [errorshade] [fglwt] [fgpattern] [figure] [files] [finegrid] [flagmag] [font] [from] [glwt] [grid] [griddelay] [hzero] [ifk] [import] [impascii] [insideout] [integer] [key] [keydrop] [keyfill] [keyframe] [keyjustify] [keylines] [keymarks] [keyscale] [keyshadow] [keysymbsize] [ksqueeze] [keytextcolors] [labfile] [labmag] [land] [landscape] [layout] [limits] [limitx] [limity] [lines] [linescale] [lpattern] [list] [loop] [lwt] [maglevels] [mesh] [mirror] [newkeylines] [newkeysymbols] [nolines] [noop] [nosymbols] [notify] [numclevels] [oldlimits] [oldlimitsx] [oldlimitsy] [origin] [palette] [paper] [pathfile] [paths] [pdump] [plot] [plotf] [plotfile] [plusmag] [polaroff] [polarrot] [prestore] [psave] [pseq] [psort] [ptag] [pubnum] [quick] [reassociate] [reset] [rfigure] [rimport] [rotations] [scale] [screen] [setvoid] [shade] [spsymbols] [splines] [subsfile] [surface] [symbfigs] [symbolfill] [symbols] [symboff] [symbsize] [tabs] [text] [textframe] [textsleep] [translate] [tvspace] [type] [vfile] [vfilen] [voidval] [vzero] [x] [xan] [xaninc] [xaxdec] [xaxis] [xclip] [xcomp] [xdelta] [xexp] [xfactor] [xftic] [xlabel] [xlabinc] [xlen] [xlist] [xloglab] [xmax] [xmin] [xoff] [xoffset] [xtic] [xtol] [xtrapts] [y] [yan] [yaninc] [yaxdec] [yaxis] [yclip] [ycomp] [ydelta] [yexp] [yfactor] [yftic] [ylabel] [ylabinc] [ylaboff] [ylabrot] [ylen] [ylist] [yloglab] [ymax] [ymin] [yoff] [yoffset] [ytic] [ytol] [z] [zaxis] [zcomp] [zdelta] [zlen] [zlist] [zmax] [zmin]

[Top][Bottom][Option list]

( BRabsorigin) (Command :pubplot) Details for the absorigin option.

[General syntax rules for this keyword.]

If this option is specified, ALL x/y locations which would normally reference the CURRENT origin will, instead, reference the lower left corner of the page; ie, the ORIGINAL plot origin.

Example : absorigin

[Top][Bottom][Option list]

( BRallfrom) (Command :pubplot) Details for the allfrom option.

[General syntax rules for this keyword.]

Indicates the default form of the files being read. The default form is "sif".

[Top][Bottom][Option list]

( BRaltvars) (Command :pubplot) Details for the altvars option.

[General syntax rules for this keyword.]

The presence of this option indicates that IF there is an active composite alternate SIF variable name file (as established via the "variables" DESL command) then this composite file will be used to attempt to assign an alternate SIF variable name if a SIF variable would otherwise not be found on the file(s) being processed.

[Top][Bottom][Option list]

( BRannmag) (Command :pubplot) Details for the annmag option.

[General syntax rules for this keyword.]

The numeric argument following "annmag" represents the magnification factor to be applied to any axis tic labels which are to be drawn. If the numeric argument following "annmag" is negative the absolute value of the number is the desired actual point size at which any axis tic annotation will be drawn, regardless of the current plot scaling and "pubnum" settings; ie, the effective annmag value is reset. The default magnification value is 1.

Example : annmag 1.2

[Top][Bottom][Option list]

( BRaorigin) (Command :pubplot) Details for the aorigin option.

[General syntax rules for this keyword.]

If this option is specified, the following two values are the desired angle, in degrees measured counterclockwise from the positive X axis, and distance out on that line from the current plot origin. A new plot origin is established at this new implied position.

Example : aorigin 40 .75

[Top][Bottom][Option list]

( BRarrowhead) (Command :pubplot) Details for the arrowhead option.

[General syntax rules for this keyword.]

If specified, the following value is the relative size of the arrowhead. A value of 1.0 is the default size value.

Example : arrowhead 1.5

[Top][Bottom][Option list]

( BRauto) (Command :pubplot) Details for the auto option.

[General syntax rules for this keyword.]

If specified, indicates that auto scaling should be done for BOTH the x and y axes; ie, is as if both "autox" and "autoy" had been specified. Could also imply a shift of the specified scale limits and possibly a change in the specified "x/ydelta" value. See "autox"/"autoy".

[Top][Bottom][Option list]

( BRautox) (Command :pubplot) Details for the autox option.

[General syntax rules for this keyword.]

If specified, indicates that autoscaling should be done for the x axis. Autoscaling, in this application, means the automatic determination of x-axis minimum and maximum values. Normally, "auto" or "autox" would be specified when NONE of the options "xmin", "xmax", and "xdelta" have been specified; ie, when no other scaling information has been specified. If, however, "auto" or "autox" is specified along with "xmin" and/or "xmax" AND "xdelta" then an automatic shift of the specified "xmin" and "xmax" values and/or a change of the specified value of "xdelta" can occur if the data to be plotted would fall OUTSIDE of the SPECIFIED scale limits. If shifting occurs, the shift increment is the value of "xdelta". Shifting is done BEFORE a change in the specified "xdelta" value is made.

If "autox" or "auto" is specified, the scale extremes WILL be calculated and will override any which could also have been specified via "xmax" and/or "xmin". If the calculated "xmax" and "xmin" values are equal the plot is skipped.

[Top][Bottom][Option list]

( BRautoy) (Command :pubplot) Details for the autoy option.

[General syntax rules for this keyword.]

If specified, indicates that autoscaling should be done for the y axis. Autoscaling, in this application, means the automatic determination of y-axis minimum and maximum values. Normally, "auto" or "autoy" would be specified when NONE of the options "ymin", "ymax", and "ydelta" have been specified; ie, when no other scaling information has been specified. If, however, "auto" or "autoy" is specified along with "ymin" and/or "ymax" AND "ydelta" then an automatic shift of the specified "ymin" and "ymax" values and/or a change of the specified value of "ydelta" can occur if the data to be plotted would fall OUTSIDE of the SPECIFIED scale limits. If shifting occurs, the shift increment is the value of "ydelta". Shifting is done BEFORE a change in the specified "ydelta" value is made.

If "autoy" or "auto" is specified, the scale extremes WILL be calculated and will override any which could also have been specified via "ymax" and/or "ymin". If the calculated "ymax" and "ymin" values are equal the plot is skipped.

[Top][Bottom][Option list]

( BRautoz) (Command :pubplot) Details for the autoz option.

[General syntax rules for this keyword.]

If specified, and the plot is a surface plot, indicates that autoscaling should be done for the z axis. Autoscaling, in this application, means the automatic determination of z-axis minimum and maximum values. Normally, "autoz" would be specified when NONE of the options "zmin", "zmax", and "zdelta" have been specified; ie, when no other scaling information has been specified. If, however, "autoz" is specified along with "zmin" and/or "zmax" AND "zdelta" then an automatic shift of the specified "zmin" and "zmax" values and/or a change of the specified value of "zdelta" can occur if the data to be plotted would fall OUTSIDE of the SPECIFIED scale limits. If shifting occurs, the shift increment is the value of "zdelta". Shifting is done BEFORE a change in the specified "zdelta" value is made.

If "autoz" is specified, the scale extremes WILL be calculated and will override any which could also have been specified via "zmax" and/or "zmin". If the calculated "zmax" and "zmin" values are equal the plot is skipped.

[Top][Bottom][Option list]

( BRavg) (Command :pubplot) Details for the avg option.

[General syntax rules for this keyword.]

In a 1:1 correspondence with the curves to be plotted, indicates the number of consecutive points to average before proceeding. The default number of points to average per curve is one; ie, no average done.

Example : avg 1 1 4 2

[Top][Bottom][Option list]

( BRaxiscolor) (Command :pubplot) Details for the axiscolor option.

[General syntax rules for this keyword.]

Specifies the palette color number to be used when drawing any associated axis lines, tic marks, grid lines, and/or axis labels. The default color for these plot attributes is black. The curves' line and symbol colors are not affected by the axiscolor setting. The axis label colors can be independently set via the inline "$K" construct. (See "text".)

Example : axiscolor 3

[Top][Bottom][Option list]

( BRaxisrot) (Command :pubplot) Details for the axisrot option.

[General syntax rules for this keyword.]

If the current plot is of type = "force/pressure" if specified, the following value is the rotation angle in degrees to be applied to the current plot. The angle is measured about the plot's origin and is positive counterclockwise The default "axisrot" angle is 0 : along the positive "x" axis. If the current plot is of type = "polar", AND if the axis code ends in an 8 or 9, the annotation will be rotated by the amount (between -90 and 90 degrees) specified by the following value. If it is desired that axis annotation, axis labels, and the key remain at their unrotated attitudes, the "charalign" option should also be specified.

Example : axisrot 27.3

[Top][Bottom][Option list]

( BRaxlwt) (Command :pubplot) Details for the axlwt option.

[General syntax rules for this keyword.]

If specified, the following value is the "linewidth" in "points" to be used for drawing the axes lines. The default "axlwt" linewidth is 1.

Example : axlwt .65

[Top][Bottom][Option list]

( BRbackward) (Command :pubplot) Details for the backward option.

[General syntax rules for this keyword.]

Indicates that any searching for SIF variables will be done from back to front in the SIF records. The default condition is to search from front to back.

[Top][Bottom][Option list]

( BRblank) (Command :pubplot) Details for the blank option.

[General syntax rules for this keyword.]

If specified, followed by up to 6 values, will draw a filled rectangle on the current page. The first four values are the two x/y location pairs of the lower left corner and upper right corner of the rectangle, respectively. The optional fifth value is the shading factor to be used to fill the rectangle described. This value is used for shading ONLY if a sixth value specifying the color is NOT also specified. A shading factor of 1 is the default and will produce a white-filled box. A shading factor of 0 will produce a black-filled box. A value between 1 and 0 will produce some degree of gray shading. If an optional sixth value is specified it is the palette color number (see "palette") to use to fill the defined rectangle. If this sixth value is specified the fifth shading factor value is ignored for its effect on the degree of shading but is still used to determine whether a frame is to be drawn or not.

A fifth value of 0 to 1 will produce a shaded rectangle without a frame. If the 0-->1 value has had 10 added to it, a black frame will also be drawn at the rectangle's perimeter. Up to 10 blank rectangles can be drawn per plot.

Example : blank 1 1 5 6 .85

[Top][Bottom][Option list]

( BRborder) (Command :pubplot) Details for the border option.

[General syntax rules for this keyword.]

If specified, followed by up to 6 values, will draw a rectangle of desired lineweight on the current page. The first four values are the two x/y location pairs of the lower left corner and upper right corner of the rectangle, respectively. The optional fifth value is the relative line weight of the border line. A value of 1 is the default. A value larger than 1 will produce a bolder border line. The default border line is black. If an optional sixth value is specified it is the palette color number (see "palette") to use when drawing the border line.

Example : border 1 1 5 6 2 12

[Top][Bottom][Option list]

( BRbottominc) (Command :pubplot) Details for the bottominc option.

[General syntax rules for this keyword.]

If specified, the following value is a vertical offset to be applied to text "bottomX" location(s), where "X" is any valid "bottom" suffix. Normally, multi-line "bottomX" text can scroll off the bottom of the page. The value following "bottominc" is an increment, in inches, to be added to whatever the "bottomX" vertical position has been determined to be.

Example : bottominc .5

[Top][Bottom][Option list]

( BRcangle) (Command :pubplot) Details for the cangle option.

[General syntax rules for this keyword.]

If specified for a contour plot, the following value is an angle of curvature, in degrees, beyond which if a contour curve is turning a label will be delayed. The delay will last until the angle of curvature has decreased below the "cangle" angle. The default "cangle" is 10 degrees.

Example : cangle 5

[Top][Bottom][Option list]

( BRcdec) (Command :pubplot) Details for the cdec option.

[General syntax rules for this keyword.]

If specified, the following value indicates the desired maximum number of decimal places to display on contour lines. The default number of decimal places is 3

Example : cdec 4

[Top][Bottom][Option list]

( BRcdetail) (Command :pubplot) Details for the cdetail option.

[General syntax rules for this keyword.]

If specified, the original data to be contoured is enhanced my interpolating for one intermediate point between each of the original points. This usually results in a contour plot which has less of a chance of having crossing contour lines if the order is greater than 1. The default state is to NOT do a detailed contour plot.

[Top][Bottom][Option list]

( BRcfiles) (Command :pubplot) Details for the cfiles option.

[General syntax rules for this keyword.]

Indicates the adjunct SIF or FFSIF files to be used as effective EXTENSIONS to the files named or implied by the "files" option and argument list. There is a 1:1 correspondence between "cfiles" arguments and expressed or implied "files" arguments.

The primary intent of the capability provided via "cfiles" is to allow the inclusion of information which is considered to be CONSTANT; ie, information which would normally be the SAME in ALL SIF DATA records read. An example of this type of data would be pressure port location information.

If specified, and an adjunct file is found and is of a type consistent with the "cfrom" specified or default file type specifier, the contents of the NAMEs record and the FIRST DATA record on the named "cfiles" file is effectively merged into the NAMEs and DATA records, respectively, to result in read SIF records which are as if they had contained the adjunct information originally. Up to 1000 SIF items can be added from an adjunct file.

Example : cfiles add1 add2 Indicates the adjunct files to be used - one per curve, for ADDITIONAL data extraction during plotting. There is a 1:1 correspondence between curves and "cfiles" file names. The primary intent of the capability provided via the "cfiles" is to allow the inclusion of information, along with the read SIF data, which is considered to be CONSTANT; ie, information which would normally be the SAME in ALL SIF records read. An example of this type of data would be pressure port location information.

If specified, and an adjunct file is found and is of a type consistent with the "cfrom" specified or default file type specifier, the contents of the NAMEs record and the FIRST DATA record on the named "cfiles" file is merged into the NAMEs and DATA records, respectively, to result in effective NEW records which are as if they had contained the adjunct information originally. Up to 1000 SIF items can be added from an adjunct file.

Example : cfiles add1 add2

[Top][Bottom][Option list]

( BRcfreq) (Command :pubplot) Details for the cfreq option.

[General syntax rules for this keyword.]

If specified, the following value indicates the type of contour labeling desired. The choices are the following :


cfreq > 0 : labeling IN-LINE if possible OR at END cfreq < 0 : labeling IN-LINE ONCE if possible OR not at all cfreq = 0 : labeling at alternating ENDS of line ONLY

If a positive value follows "cfreq", this value IS the minimum distance, in inches, between contour in-line labels. The actual distance between labels may vary, depending on other label positioning parameters.

The default value of cfreq = 1.

Example : cfreq 0

[Top][Bottom][Option list]

( BRcfrom) (Command :pubplot) Details for the cfrom option.

[General syntax rules for this keyword.]

Indicates, in a 1:1 correspondence with the expressed or implied "files" arguments; ie, in correspondence with the curves, the types of files in the "cfiles" argument list. Allowable types are "sif" and "ffsif". Up to 20 "cfrom" file types can be specified. Strings beginning with "null" are essentially not reset from the default. The default type of file is "sif".

Example : cfrom ffsif sif rep 3 ffsif

[Top][Bottom][Option list]

( BRcharalign) (Command :pubplot) Details for the charalign option.

[General syntax rules for this keyword.]

If specified and the value of plot rotation as specified by the option "axisrot" is non-zero, some of the plot attributes will be affected. Normally, the rotation of the entire plot caused by a non-zero value of axis rotation also encompasses the plot axis label(s), the tic annotation, and the key . If it is desired that all of these attributes NOT be rotated along with the rest of the plot, ie, moved as a result of the rotation but kept at their original horizontal or vertical orientation, then the option "charalign" should be specified. If these attributes are drawn in their original angular attitude with a rotated plot axis, the locations of some of these drawn attributes may need to be slightly corrected for desired aesthetics. (See "xaninc", "yaninc", "xlabinc" and "ylabinc".)

Example : charalign

[Top][Bottom][Option list]

( BRckmag) (Command :pubplot) Details for the ckmag option.

[General syntax rules for this keyword.]

The numeric argument following "ckmag" represents the magnification factor to be applied to any annotation on a "colorkey" color bar which is to be drawn. If the numeric argument following "ckmag" is negative the absolute value of the number is the desired actual point size at which any colorkey annotation will be drawn, regardless of the current plot scaling and "pubnum" settings; ie, the effective ckmag value is reset. The default magnification value is 1.

Example : ckmag 1.2

[Top][Bottom][Option list]

( BRclab) (Command :pubplot) Details for the clab option.

[General syntax rules for this keyword.]

If specified the value following "clab" is the frequency of contour level lines to be labeled. The following indicates the possible values for "clab", where "#" represents an integral value :


# ....... label only the #th contour level lines #+100 ... like # but also label FIRST contour level line #+200 ... like # but also label LAST contour level line #+300 ... like # but also label FIRST and LAST contour level lines

The default value of "clab" is 1, meaning to label ALL contour level lines.

Example : clab 202

[Top][Bottom][Option list]

( BRcldist) (Command :pubplot) Details for the cldist option.

[General syntax rules for this keyword.]

If specified, the following value is the minimum distance in inches a contour label must be away from all other contour labels. Only the first 200 contour labels are checked. The default value for "cldist" is 0.

Example : cldist 1.5

[Top][Bottom][Option list]

( BRclevels) (Command :pubplot) Details for the clevels option.

[General syntax rules for this keyword.]

If specified, the following up to 20 values are the desired contour values for which to draw contour lines.

Example : clevels .4 .6 .8 .85 .9 .95

[Top][Bottom][Option list]

( BRclip) (Command :pubplot) Details for the clip option.

[General syntax rules for this keyword.]

If this option is specified the following "on" or "off" string indicates that data clipping for BOTH x and y is to occur if the data to be plotted falls outside of the scale limits specified. If "notify" is "on" and if one or more data point is clipped from the plot, a "c" surrounded by a circle will appear just outside the current plot"s origin. The default state is "clip on". Data which is clipped is treated as though it were never to be plotted; ie, it may NOT be apparent, if "notify" is "off", that any data has been clipped.

Example : clip off

[Top][Bottom][Option list]

( BRclist) (Command :pubplot) Details for the clist option.

[General syntax rules for this keyword.]

Used for specification of contour variables. Indicates expressly or implicitly the contour SIF variables to plot per curve. If values are specified, these ARE the variable values to use in plotting; ie, no respective values will be extracted from a SIF file. Up to 20 sets of variables can be specified via the value of the "curve-id" set number.

.

(Begin modifications on 052102)

All specified "clist" sets combined must have no more than 50000 elements.

(End modifications on 052102)

There must be equal numbers of "xlist" and "ylist" and "clist" members for each respective curve-id specified.

The list of contour names/values which follow the curve-id number can include one or more of four special forms of implicit expansion methods : "curve", "thru", "at", and "to/by". If "curve" is used, a "curvefile" MUST be active. (See "curvefile" option.)



Examples:

clist 5 cp11 curve curve1 cp36 clist 3 p101 p104 thru p122 p133 clist 1 13 at 1.22 4 at 1.445 clist 2 1 to 10 by 1 clist 6 2 at 6 11 to 4 by -1 curve c1 cp12 thru cp18

[Top][Bottom][Option list]

( BRclwt) (Command :pubplot) Details for the clwt option.

[General syntax rules for this keyword.]

If specified, the following value is the PostScript "linewidth" in "points" to be used for drawing the contour lines. The default "clwt" linewidth is 0, which implies to the PostScript hardware "the minimum width line which can be drawn".

Example : clwt .75

[Top][Bottom][Option list]

( BRcmax) (Command :pubplot) Details for the cmax option.

[General syntax rules for this keyword.]

If specified and the plot is a contour plot and the contour levels are being generated automatically, the following value represents the maximum DIFFERENCE between the generated contour levels.

Example : cmax .75

[Top][Bottom][Option list]

( BRcmin) (Command :pubplot) Details for the cmin option.

[General syntax rules for this keyword.]

If specified and the plot is a contour plot and the contour levels are being generated automatically, the following value represents the minimum DIFFERENCE between the generated contour levels.

Example : cmin .75

[Top][Bottom][Option list]

( BRcntld) (Command :pubplot) Details for the cntld option.

[General syntax rules for this keyword.]

If specified, a cntl-D character will be inserted as the top line in the PostScript file being produced. This option should be specified BEFORE the first "plot"/"plotf". Some PostScript printers can be left, by the previous job, in a state in which the next job is erroneously handled. The cntl-D will reset these printers. However, the cntl-D will sometimes be unacceptable to a screen previewer.

[Top][Bottom][Option list]

( BRcolorkey) (Command :pubplot) Details for the colorkey option.

[General syntax rules for this keyword.]

If specified, the following arguments control (1) the type of surface plot to be drawn : shading as a function of orientation of the surface facets with respect to the viewpoint (at the user) - type 1, or shading as a function of the local value of the "z" axis variable - type 2, and, if the surface plot is shaded as a function of the local "z" axis variable values, (2) aspects of this type of plot. A surface shaded as a function of orientation will have no color key bar drawn. The color key bar is a rectangular legend which can be used to provide the correspondence between a specific shade and a value of the dependent Z variable.

If the type of surface plot is type 1 (see above) the color of the "inside" facets of the figure will be some shade (depending on facet orientation) of palette color number 1. (See the "palette" option.) The color of the"outside" facets of the surface will be a shade of palette color number 2.

If the type of surface plot is type 2 (see above) the color of the "inside" facets of the figure will be some shade (depending on facet orientation) of palette color number 1. (See the "palette" option.) The color of the "outside" facets of the surface will be a color which is determined by the correspondence between the local facet average value of the "z" dependent variable and the "z" values defined in the "colorkey" z_value-to-color pairing as discussed below.

In general, the syntax for the "colorkey" argument list is the following :



ckcode x y w h ( z c )1 ... ( z c )10

where,

"ckcode"..up to 5-digit code number representing user desires for key style, etc. See below for more discussion.

"x","y"...x and y location values (inches) from current origin to top left corner of color key bar

"w","h"...width and height of color key bar

"z/c".....pairs of z_value - to - color_number values : where, "z" is a dependent variable value and "c" is a "palette" color number. Up to 10 pairs of z_value - to - color pairs can be specified. The values of "z" can be implicit as specified by the use of "min" or "max" instead of an expressed value. Facets to be shaded which have associated "z" values which lie outside the limits of the first and last z_value specified will be shaded but will be shaded with the color which corresponds to the limit which that facet's z_value exceeded. When the range of facet "z" values exceeds the range of "z" values as defined for the color key bar, the color key bar will be drawn with an "R" with a circle around it at the appropriate end(s) in which the value was inadequate to contain the actual data range.

In reference to the "colorkey" argument list general syntax shown above, the definition of the "ckcode" parameters are the following :

ckcode = a 5-digit code : VWXYZ, where each of the single digits V, W, X, Y, and Z is defined as follows :

V .... Schematic 3-D axis display code :

0 ...... Do not display 3-D axis 1 ...... Display 3-D axis

W .... Type of surface plot to draw :

0 ...... Color of surface : f(facet orientation) 1 ...... Color of surface : f(facet "z" values)

Note : The "inside" surface of a surface plot is ALWAYS drawn with the shading as a function of the surface orientation.

X .... Z-axis color key bar annotation display code :

0 ...... no color key bar drawn; no Z-axis 1 ...... color key bar drawn without Z-axis 2 ...... color key bar drawn with Z-axis on bottom/left 3 ...... color key bar drawn with Z-axis on top/right

The "Z-axis" is an annotated line, with tic marks, which indicates the z_value-to-color correspondence.

Y .... color key bar border type code :

0 ...... no border # (1->9) ==> black border; # multiplies .1 for linewidth

Z .... color key bar orientation code :

0 ...... horizontally-oriented color key bar 1 ...... vertically-oriented color key bar

A schematic example of a drawn color key bar follows.
. Horizontally ...

. <-------- w ---------> . color . key origin __ # # # # # # # # . \|__|__|__|__|__|__|__| <-- Z-axis (on top) . o_____________________ . ^ | | . h | | . v |____________________| . < ------- ---------> . \ / . V . color gradation = f(z,r,g,b) [see "z/c" above]

. Vertically ...

. color <- w -> . key origin __ . \ . o_____ __ # . ^ | | | ^ . | | | |_ # | . | | | | | . | | |_ # . h | | | color gradation = f(z,r,g,b) . | | |_ # [see "z/c" above] . | | | | . | | | |_ # | . | | | | | . v |_____| |__ # v . . ^ . | . . Z-axis (on right)

Example : colorkey 11240 2 10 6 3 0 3 8 4

[Top][Bottom][Option list]

( BRcolors) (Command :pubplot) Details for the colors option.

[General syntax rules for this keyword.]

In a 1:1 correspondence with the curves to be plotted, indicates the palette color number to use (see "palette") when drawing the respective curve's line and/or symbols or the lines in a contour plot. Color numbers can range from 1 to 50, corresponding to the defined palette colors. Color number 0 corresponds to black. Referenced palette color numbers which are not defined correspond to black. The default colors for lines and symbols are black.

Example : colors 1 32 2 18

[Top][Bottom][Option list]

( BRcontour) (Command :pubplot) Details for the contour option.

[General syntax rules for this keyword.]

If specified this option indicates that the data is to be displayed as a contour plot. This plot display mode requires the "xlist" / "ylist" / "clist" options. The plot "type" can be other than the default type of "force / pressure". If the plot type is "polar", "log", "log-log", "log-normal", or "normal-log" the appropriate conversion of the data will occur before the contour is attempted. The lines drawn in a contour plot at the desired contour levels are of styles which correspond to the line types specified via "lines"; ie, contour level 3 will be drawn with a line style which corresponds to that specified in the third position after "lines".

[Top][Bottom][Option list]

( BRcopy) (Command :pubplot) Details for the copy option.

[General syntax rules for this keyword.]

If specified, the following number is the repeat count for the number of times the "destin" command/script will be executed. The default repeat count is 1.

Example : copy 2

[Top][Bottom][Option list]

( BRcorder) (Command :pubplot) Details for the corder option.

[General syntax rules for this keyword.]

If specified, the following value is the desired order to be used in fitting the contour line data. The allowable values are 1, 2, and 3, implying, respectively, first, second, and third order fitting. The default value of corder = 1.

Example : corder 2

[Top][Bottom][Option list]

( BRcpaths) (Command :pubplot) Details for the cpaths option.

[General syntax rules for this keyword.]

Indicates, in a 1:1 correspondence with the list of files specified, directory locations for the specified "cfiles". These locations supersede the current directory. If a "cfiles" location thus specified is not empty ("null...") a search for the respective file will be made at the indicated location before a search is made at any other alternate locations which have been made effective via a previous execution of the "path" command. By default, all path names are blank. Up to 20 path names can be specified.

Example : cpaths ..\ ..\Main\ sub1\

[Top][Bottom][Option list]

( BRcports) (Command :pubplot) Details for the cports option.

[General syntax rules for this keyword.]

If specified, the following value is the symbol number to be used to mark the positions of the data values used to calculate the contour lines. The default NASA standard symbol sequence is used. (See the "symbols" option.) The default symbol number is 0, meaning no symbol.

Example : cports 22

[Top][Bottom][Option list]

( BRcrvlwt) (Command :pubplot) Details for the crvlwt option.

[General syntax rules for this keyword.]

If specified, in a 1:1 correspondence with the curves to be plotted, the following arguments are the line widths in points. The default line width is the width set by the "lwt" option. If a curve also has an associated symbol the symbol will also be drawn with the specified line width. Up to 20 values of "crvlwt" line widths can be specified.

Example : crvlwt 1 1 5

[Top][Bottom][Option list]

( BRcset) (Command :pubplot) Details for the cset option.

[General syntax rules for this keyword.]

This option is used to specify "file-specific" conditions which, IN ADDITION to any other GLOBAL conditions which ALSO may have been specified, are to be applied to each SIF record processed from the respective SIF file. Just like global conditions, file-specific conditions act to limit the applicability of the DESL function being executed by requiring that ALL applicable "and" conditions be TRUE simultaneously or that at least ONE "or" condition be TRUE.

The item immediately following "cset" is the file sequence number in the "files" list for which the following up-to-20 conditions will be applicable.

Each file-specific 3-item condition, like its global 3-item condition counterpart, is made up of (1) a SIF variable name, (2) a 2-character logical conjunction, and (3) a second SIF variable name or a constant.

Example : cset 3 alpha gt phi mach lt 1.2

Here, the user has indicated that, along with whatever other GLOBAL conditions may have been specified, the pertinent DESL function, for the THIRD file specified or implied by the "files" list, will have its application ALSO limited to records which satisfy BOTH of the two conditions :

"ALPHA gt PHI" "MACH lt 1.2".

All file-specific conditions are implicitly joined by an "and" conjunction; ie, by default, all file-specific conditions would have to be true SIMULTANEOUSLY for the applicable record to be retained.

If one or more file-specific conditions following the file sequence number is to be connected to other file-specific conditions for the same file number by an "or" conjunction, then the 2-character item "or" must immediately follow the file number.

Example : cset 2 or alpha lt 0 alpha gt 4

Here, the user has indicated that, along with whatever other GLOBAL conditions may have been specified, the pertinent DESL function, for the SECOND file specified or implied by the "files" list, will have its application ALSO limited to records in which the value of the SIF variable "alpha" satisfies at least ONE of the conditions :

"ALPHA lt 0" "ALPHA gt 4".

Additionally, if the file number following the "cset" option is negative, the absolute value of this negative file number is used for the actual file number and the associated "and" or "or" condition(s) are NOT used in the traditional sense of filtering the records read but are ONLY used to indicate when READING of the associated file is to STOP. This ability is useful in preventing the reading of a long file when it is known that the data required is relatively near the beginning of the file.

Example : cset -1 or run eq 3 alpha gt 24

Here, the user has indicated that when a record is encountered for which either or both of the two conditions

"RUN = 3" "ALPHA gt 24"

is/are TRUE, reading of the current SIF file should end.

[Top][Bottom][Option list]

( BRcside) (Command :pubplot) Details for the cside option.

[General syntax rules for this keyword.]

If specified, the following value is the "side" of the "rectangular" set of data to be contoured on which to begin the search for contour lines which are NOT completely interior to the data set's physical distribution. The data set to be contoured can be thought of as having "rows" and "columns". These rows and columns are what make up the "rectangular" data set. "cside" values of from 1 to 4 refer to the side of this rectangle. Values of 1, 2, 3, and 4 refer to the top, right, bottom, and left sides. The default value of "cside" is 1.

Example : cside 3

[Top][Bottom][Option list]

( BRcsize) (Command :pubplot) Details for the csize option.

[General syntax rules for this keyword.]

If specified, the following value is the magnification factor to be applied to contour line labels. A value of 0 will cause NO LABELS to be drawn. The default value of "csize" is 1.

Example : csize .4

[Top][Bottom][Option list]

( BRcthresh) (Command :pubplot) Details for the cthresh option.

[General syntax rules for this keyword.]

If specified, the following value is the minimum number of points which will be considered a "contour line". Contour lines with less than this number of points are NOT plotted. The default "cthresh" value is 0.

Example : cthresh 3

[Top][Bottom][Option list]

( BRctol) (Command :pubplot) Details for the ctol option.

[General syntax rules for this keyword.]

If specified, the following value is the TOLERANCE to be checked among successive spline data if drawing spline curve(s) in a non-contour plot OR, if doing a contour plot, is a DISTANCE along a contour line between successive data points. If the value associated with "ctol" is positive, the tolerance is absolute. If the value associated with "ctol" is negative, the tolerance is a percent value. In either case, the magnitude of the value, if it is implied to be a distance, is considered to be positive. If the pertinent data point being plotted is within the tolerance/distan from the preceding data point just plotted, the current data point is NOT plotted.

Example : ctol -5

[Top][Bottom][Option list]

( BRcurvefile) (Command :pubplot) Details for the curvefile option.

[General syntax rules for this keyword.]

If specified names the file in which information is given to adequately define one or more "curves" of pressure or contour data. The "xlist" / "ylist" / "clist" options/argument lists can reference sequences of names/values, not located in the respective argument list proper, via a "curve" name.

If a curvefile is to be used it MUST be specified BEFORE any "xlist" / "ylist" / "clist" which references it. This is an exception to the normal DESL input rule; normally, the order of specification of a particular function's input options and arguments is not important.

Example : ... xlist 1 cp1 cp2 curve cpxx cp19 ...

In the above example, "xlist" information is expected to be in existence ON THE CURRENT "curvefile" in a section contained in the file for "curve cpxx". (See "xlist" / "ylist" / "clist".)

An example of a curvefile is the following :



curve cpxx ylist y101 y103 y112 45.6 y118 thru y124 xlist x101 thru x111 curve pflap1 xlist 1 1.5 1.75 2.01 2.04 2.09 2.13 ylist cp119 thru cp113

Each "curve segment" in the curve file begins with the word "curve" followed by the name of the curve whose x and y (and c, if a contour) information will follow, on separate lines. Following a curve segment's initial line must come sections of lines, each beginning with "xlist" or "ylist"( or "clist"), each on a line by itself. On lines following "xlist" and "ylist" (and "clist") the appropriate names and or values should exist.
.

(Begin modifications on 052102)

Each of these sections can be of any number of lines as long as the maximum of 50000 accumulated data names/values is not exceeded.

(End modifications on 052102)

A curve segment extends until the next "curve" line is encountered.

Note that the structure of the "xlist", "ylist", and "clist" lines in a curve file is slightly DIFFERENT than when the "xlist", "ylist", and "clist" options are encountered in the normal stream of plotting input.

Example : curvefile pcurvs

[Top][Bottom][Option list]

( BRcurves) (Command :pubplot) Details for the curves option.

[General syntax rules for this keyword.]

Indicates the number of curves which is to be plotted or referenced in the current plot. Up to 20 curves can be specified for a plot. If NOT specified, the number of files specified in the "files" argument list IS the number of curves in the current plot.
.

(Begin modifications on 052102)

For ALL curves to be plotted in a single plot, a limit of 50000 plotted points is imposed.

(End modifications on 052102)

Whether the number of curves is set EXPLICITLY by this "curves" option or set IMPLICITLY by the number of "files" specified, the established number of curves remains in effect until EXPLICITLY changed; ie, changed via a new "curves" specification. The number of curves WILL NOT be implicitly changed via "reset *files".

Example : curves 4

[Top][Bottom][Option list]

( BRdestin) (Command :pubplot) Details for the destin option.

[General syntax rules for this keyword.]

If a script is to be executed after the plot function has produced its PostScript file but before the user has once again gotten control via the "DESL>" prompt, then the string following "destin" should contain the name of that script OR, simply, a command to execute.

The string following "destin" must be no longer than 32 characters. If the destin string is longer than 16 characters, the question mark delimiters must be used.

Example : destin ?lpr -Plw PF?

[Top][Bottom][Option list]

( BRdfreq) (Command :pubplot) Details for the dfreq option.

[General syntax rules for this keyword.]

Indicates, per curve, the desired frequency of data record retention from the group of DATA records which would normally have been processed from each SIF file being accessed. For example, if "dfreq" is 4, then ONLY every fourth data record will be processed from those DATA records which passed successfully through any filter(s) and voiding which could have also been imposed.

Example : dfreq 4 1 1 6

[Top][Bottom][Option list]

( BRdorigin) (Command :pubplot) Details for the dorigin option.

[General syntax rules for this keyword.]

If this option is specified, the following two values are the desired x and y origin shifts, respectively, from the current plot origin. A new plot origin is established at this shifted position.

Example : dorigin 1 -.3

[Top][Bottom][Option list]

( BRemptyplot) (Command :pubplot) Details for the emptyplot option.

[General syntax rules for this keyword.]

The "emptyplot" option, followed by "on" or "off", will cause setting or unsetting of the flag to cause a plot to be made even if there is no data which can be plotted. Normally, with "emptyplot" set to "off, if no data can be plotted, no plot is made and an informative message to that effect is issued. If "emptyplot" is "on", however, a plot will be made. The primary purpose of allowing a plot with no data is to establish a "form" or "template" which can be "imported" into a future plot as a starting point, to alleviate spending the required time replotting the axes, grid, etc. The default state of "emptyplot" is "off" : no plot will be made if there is no data to be plotted.

Example : emptyplot on

[Top][Bottom][Option list]

( BRencaps) (Command :pubplot) Details for the encaps option.

[General syntax rules for this keyword.]

If this option is specified and the "screen" option has NOT also been specified the PostScript file which is to be produced will be an Encapsulated PostScript file. If the "screen" option has also been specified the file will NOT be an Encapsulated PostScript file.

Example : encaps

[Top][Bottom][Option list]

( BRendimport) (Command :pubplot) Details for the endimport option.

[General syntax rules for this keyword.]

For existing PostScript files being imported into the current plot, the string following this option is the string which, upon being encountered, will end the import. The special string "eof" will force importing to continue until the EOF is reached. The default string is "showpage". This is the string which should be used if an import of a DESL-gene PostScript file is being done. Care should be exercised when importing through one or more "showpage"s; pagination will occur - possibly at an undesirable time.

Example : endimport eof

[Top][Bottom][Option list]

( BRendloop) (Command :pubplot) Details for the endloop option.

[General syntax rules for this keyword.]

The purpose of this option is to serve as a terminator of the current loop block.

[Top][Bottom][Option list]

( BRenrich) (Command :pubplot) Details for the enrich option.

[General syntax rules for this keyword.]

If specified the following value is the enrichment number to be used for spline interpolation. "Enrichment", here, means how many additional points are to be interpolated for BETWEEN each pair of original points. The higher the enrichment number the smoother the curve but the longer it takes to do the plot. Since there is a limit on the absolute number of spline points in any ONE spline of 500, the maximum value of the enrichment number is a function of the number of existing points in the curve. If an enrichment number is specified which cannot be accommodated, the enrichment number will be reduced until it can be accommodated. The default enrichment number is 5. See "splines". If a contour plot is being attempted, the current enrichment value is used to determine the contour curves.

Example : enrich 15

[Top][Bottom][Option list]

( BReqtol) (Command :pubplot) Details for the eqtol option.

[General syntax rules for this keyword.]

Indicates the tolerance to be applied to any global or file-specific "eq" condition(s) which may have been specified. If the tolerance value specified is positive the value is in the units of the variable being used in the respective condition(s). If the tolerance value is negative the absolute value of the value is a PERCENT difference. The default value of tolerance is 0.

Example : eqtol .5

[Top][Bottom][Option list]

( BRerrorbarcap) (Command :pubplot) Details for the errorbarcap option.

[General syntax rules for this keyword.]

If specified the following value is the length in points of the perpendicular line segment which is added to the end of the error bar lines. (See the "symbols" option discussion.) The default error bar cap length is 0.

Example : errorbarcap 3

[Top][Bottom][Option list]

( BRerrorbarlwt) (Command :pubplot) Details for the errorbarlwt option.

[General syntax rules for this keyword.]

If specified the following value is the width in points of the error bar lines. (See the "symbols" option discussion.) The default error bar line weight is .75.

Example : errorbarlwt 1.2

[Top][Bottom][Option list]

( BRerrorshade) (Command :pubplot) Details for the errorshade option.

[General syntax rules for this keyword.]

If specified the following value is the shading value to be used if a error bar shaded band type curve is drawn. This value should be from 0 to 1, with 0 being black, and 1 being white. The default value is 1.

Example : errorshade .85

[Top][Bottom][Option list]

( BRfglwt) (Command :pubplot) Details for the fglwt option.

[General syntax rules for this keyword.]

If specified, the following value is the "linewidth" in "points" to be used for drawing the fine grid lines. The default "fglwt" linewidth is 0. A line width of "0" means "the minimum" to the PostScript processor.

Example : fglwt .55

[Top][Bottom][Option list]

( BRfgpattern) (Command :pubplot) Details for the fgpattern option.

[General syntax rules for this keyword.]

If specified, one or two values must follow. If only one value is specified the second is assumed to be 0. These two numbers represent the number of "on" and "off" pixels to be repeated as the line pattern for any fine grid lines which may be drawn. If the second value is 0, the number of "off" pixels is 0; ie, the line will be solid. If the number of "on" pixels is 0, a minimum size line (dot) will still be drawn. (This is hardware- and software-depende however.) A recommended pair of arguments is 1 2, especially for higher resolution fine grid density.

Example : fgpattern 1 2

[Top][Bottom][Option list]

( BRfigure) (Command :pubplot) Details for the figure option.

[General syntax rules for this keyword.]

If specified, the following two items are the x and y locations, relative to the absolute origin of the page, of the lower left corner of the figure to be drawn on top of the current plot. The third and fourth items are the names of the "figure file" and figure, respectively, from which to obtain drawing instructions. A figure drawn via "figure" will NOT be affected by any scaling which may already be in effect. Following the name of the figure file to read for drawing commands is an optional scale factor. A value of less than 1 will cause a reduction in size of the drawn figure(s) and figure origin movement relative to the lower left corner of the page.

Following the optional scale factor which can be specified there can be three other values specified. The first is a figure rotation angle, the next is the x center of rotation, and the third is the y center of rotation. The rotation angle is in degrees, positive being in the counterclockwise direction, and the x and y rotation center position is in inches, relative to the lower left corner of the page. If a figure is to be rotated, ONLY explicit x/y pairs should be specified in the figure; ie, no implicit curve-drawing figure specifications ("arc", etc) should be specified. The default rotation angle is 0. The default center of rotation is a x=0., y=0.

All "(r)imports" are done BEFORE all "(r)figures".



****** WARNING ****** If a landscaped plot is imported into a plot which is, itself, landscaped, the imported plot will, in effect, be landscaped again and appear in an upside-down portrait mode. Up to 20 figures can be drawn. *********************

A figure file contains directives which instruct the plotting software as to what and how to draw desired lines and shapes. It is helpful to have PostScript documentation available when setting up a figure file as the primitives are referenced with respect to correct directive syntax. Basically, a figure file :

  1. defines points which are later to be connected by a solid or dashed, visible or invisible line,
  2. defines complete curves via the use of a curve-drawing directive, or
  3. fills closed shapes.

All lengths and positions defined in a figure file are in inches. (See "rfigure" for exception.) All angles are in degrees.

The structure of a figure file must adhere to the following rules :

  1. Blank lines should NOT be included in a figure file.
  2. Any line beginning with an asterisk followed by at least one blank space is considered a comment and is ignored.
  3. All non-comment lines which DO NOT begin with a name are assumed to be lines which define a line by individual x-y pairs, in inches. Lines thus defined are at some future time drawn. Implicit x-y locations can also be specified. Implicit x-y locations are locations derived by extraction of a particular x-y pair from a specific curve being potted. An implicit x-y location is specified via the parenthetical construct :

    ( curve_id point_num offset_dis ) ,

    where "curve_id" is the plot's curve number, "point_num" is the particular plotted data point's sequence number in the list of all data points which are plotted for the curve in question, and "offset_dis" is an optional offset distance. This offset distance is a distance from the implicit x-y location, in the direction of the next x-y location, at which to actually begin drawing the line whose points are currently being defined. The default offset distance is 0. The "point_num" parameter can be specified as a numeric item or symbolicly. The possible symbolic specifications which can be used are : last, middle, last+#, middle+#, last-#, and middle-#. Both "last" and "middle" imply the last and middle plotted point in the specified curve, respectively. The +# and -# suffixes, where "#" represents an integer value, serve to add and subtract, respectively, the specified value (#) to whatever point sequence number was actually implied by the "last" or "middle" symbolic base word. Example : If the curve in question has 19 data points plotted, "last-2" implies the 17th point.

  4. All non-comment lines which DO begin with a name are assumed to be directive lines. Directive lines can ONLY contain one directive per line. A directive is a item followed, possibly, by arguments.

Some of the directives which can be contained in a figure file closely resemble the PostScript primitives they either mimic or match:



  1. figure

    Purpose : To name the figure being defined

    Syntax : figure fig_name where "fig_name" is the name of the figure to be defined immediately below. The definition of the figure continues until another "figure" directive is encountered or the file's EOF is reached.

  2. lw,lineweight

    Purpose : To assign a weight to lines which can be drawn (the default lineweight is .75)

    Syntax : lw lw_value where "lw_value" is the desired lineweight value

  3. arc

    Purpose : To define a circular arc to be drawn NOW with the current line type and weight

    Syntax : arc xcenter ycenter radius ang1 ang2 where the arguments "xcenter,...,ang2" correspond to the 5 arguments which preceed the "arc" PostScript primitive. Gets rewritten in PostScript output file as "xcenter ycenter radius ang1 ang2 arc". See the PostScript documentation for more discussion.

  4. arcto

    Purpose : To define a circular arc to be drawn NOW with the current line type and weight

    Syntax : arcto x0 y0 x1 y1 x2 y2 radius where the arguments "x1,...,radius" correspond to the 5 arguments which precede the "arcto" PostScript primitive. Gets rewritten in PostScript output file as "x0 y0 moveto x1 y1 x2 y2 radius arcto" See the PostScript documentation for more discussion.

  5. curveto

    Purpose : To define a Bessier curve to be drawn NOW with the current line type and weight

    Syntax : curveto x1 y1 x2 y2 x3 y3 where the arguments x1,...,y3 correspond to the 6 arguments which precede the "curveto" PostScript primitive. Gets rewritten in PostScript output file as "x1 y1 x2 y2 x3 y3 curveto". See the PostScript documentation for more discussion. "curveto" should be preceded by at least one point defined by an x-y pair. This point is referred to as "x0 y0" in the PostScript documentation.

  6. ah,arrowhead

    Purpose : To indicate that at the beginning or at the end of the next line to be drawn an arrowhead is to be drawn. If the "ah" comes BEFORE a line is begun the arrowhead will be drawn on the line's beginning. If the "ah" comes AFTER a line is begun the arrowhead will be drawn on the line's end. If a value follows "arrorhead" or "ah" then this value is a scaling factor which temporarily overrides the arrorhead scaling factor which is already in effect.

    Syntax : ah ( # )

  7. fill

    Purpose : To close the current "path" (ie, connect the current point to the first point in the current line), and fill the closed shape with the desired shade of gray or color. The shape's border will be drawn invisibly. The current line is ended when a "fill" is done.

    Syntax : fill shade_factor where "shade_factor" is a value from 0 to 1, 0 corresponding to black and 1 to white. If, however, a color has been specified via the "color" directive, the fill is the desired color, regardless of the specified fill shading factor.

  8. linefill

    Purpose : To close the current "path" (ie, connect the current point to the first point in the current line), and fill the closed shape with the desired shade of gray or color. The shape's border will be visible and drawn with the current lineweight and type. The current line is ended when a "linefill" is done.

    Syntax : linefill shade_factor where "shade_factor" is a value from 0 to 1, 0 corresponding to black and 1 to white. If, however, a color has been specified via the "color" directive, the fill is the desired color, regardless of the specified fill shading factor.

  9. line Purpose : To draw the current "path" with the current lineweight and type. The current line is ended when a "line" is done.

    Syntax : line

  10. dash

    Purpose : To define the desired dash pattern for visible lines which can be drawn. A dash pattern is established by defining a pattern of black then white line segments.

    Syntax : dash num_on (num_off) where "num_on" is a value representing the desired number of pixels to be turned on (ie, black) and the optional argument "num_off" is a value representing the desired number of pixels to be turned off (ie, white).

  11. solid

    Purpose : To make the current line's definition a solid line (rather than possibly a dashed line).

    Syntax : solid

  12. color

    Purpose : To specify the desired red/green/blue color values for drawing and filling. Once a non-black color is specified, the "fill", "linefill", and "line" directives will cause a color line/fill instead of a gray-scale line/fill. If the three color values are 0, black is implied and the gray-scale actions by "fill", "linefill" and "line" are once again used.

    Syntax : color red_value green_value blue_value

  13. text

    Purpose : To draw a particular text string which has been specified via "text" with a positive value for the fifth optional numeric item - as the "text id" value - at the current location with or without increments in x or y distances. The current location is the last specified x/y location specified in the current figure being processed.

    Syntax : text text_id x-dis y-dis where "text_id" is a value associated with the desired text string, x-dis is an optional horizontal offset, and y-dis is an optional vertical offset. The default values for both x-dis and y-dis are 0. (See the "text" option.)

  14. ftext

    Purpose : To draw a particular text string at offsets from the current location as defined in the current figure file.

    Syntax : ftext delta-x delta-y mag text_box rotation ?Text ...? where "delta-x" and "delta-y" are the X and Y offsets, respectively, from the current location, "mag" is the desired text magnification (see "text" option description of magnification), "text_box" is the text border/background code (see "text" option description of text box), "rotation" is the text cc-wise rotation angle (see "text" option description of rotation), "Text ..." is an up to 200-character string.

*** It is important to note that if the x-y pairs are to be *** used as data, as opposed to inches, "rfigure" MUST be *** specified (vs "figure") and specified WITHOUT the X and *** Y first and second positioning parameters.

An example of a figure file is given below


* begin definition of a figure figure fig1 * set the desired dash pattern to 20 black * pixels/10 white pixels dash 20 10 * set the desired line weight to .2 lw .2 * want arrowhead at beginning of next line ah * begin the definition of a line by defining x-y * pairs 1 1 1 3 3 3 * want arrowhead at end of current line ah * draw current line NOW line * define circular line as current line arc 4 5 6 45 90 * draw current line NOW line * ------------------------------------ * begin definition of a new figure figure fig2 * want arrowhead at beginning of next line ah * begin the definition of a line by defining x-y * pairs 2 2 2 8 7 7 * want arrowhead at end of current line ah * draw current line NOW line * define circular line as current line arcto 0 9 0 5 5 5 2.5 * using current line, close figure and fill linefill .90 * ------------------------------------ * begin definition of a new figure figure fig3 * set the desired line weight to .2 lw .2 * begin the definition of a line by defining x-y * pairs - note, one point is implicit 6.6 6.6 ( 1 8 ) 8.6 8.6 * using current line, close figure and fill linefill .7 * begin the definition of a line by defining x-y * pair in inches 3 5 * define curved line as current line curveto 6 10 1 8 6 6 * draw current line NOW line

Example : figure 2 8.4 figfile fig1 .75

[Top][Bottom][Option list]

( BRfiles) (Command :pubplot) Details for the files option.

[General syntax rules for this keyword.]

Indicates the files to be used - one per curve, for data extraction during plotting. If "curves" is NOT also given, the number of files specified IS the number of curves to be plotted in the current plot. If "curves" IS specified, the number of files specified via "files" can be LESS than the number of curves desired. In this case, the list of files is EXTENDED, replicating the last file given, to a number equal to the number of curves to be plotted.

This list of files can be implicitly extended via use of the <list argument which can appear among the specified file names. If one or more of the <list-type arguments are specified, where "list" is a currently defined file name list, the file names contained in the indicated file name list(s) will be included, at their respective point(s) of encounter, in the current file list. The referenced list(s) must have been produced by the "newfiles" and/or "newfilex" argument lists associated with one or more previously executed DESL commands. Each "list" name can be up to 15 characters long. File names can also include the {...} construct. This type specification within a file name implies that the list name given between the curly brackets ( {} ), is to be used to have each of its elements substituted in turn for the { ... }, inclusively, such that an implicit lengthening of the file list is accomplished, up to the maximum number of files allowed. Any time such a {...} usage occurs, all lists mentioned must exist; i.e., must have been previously defined in the current DESL session. Only one {...} construct can be included in a file name. Including more than one such construct will result in unpredictable results.

An example of this type of file name specification is the following :

t43r{runs}.sif

Here, the list "runs" will have its elements used, in turn, in place of the {runs} substring.

.

(Begin modifications on 052102)

Each file name, whether it includes the {...} or not, can be a maximum of 256 characters long. If a file name is more than 16 characters long it must be enclosed in question marks (?) .

(End modifications on 052102)

Example : files run1 thru run7 <flist48

[Top][Bottom][Option list]

( BRfinegrid) (Command :pubplot) Details for the finegrid option.

[General syntax rules for this keyword.]

If this option is specified, a finegrid will be drawn at the minor tic marks. The finegrid line weight is governed by the "fglwt" option.

[Top][Bottom][Option list]

( BRflagmag) (Command :pubplot) Details for the flagmag option.

[General syntax rules for this keyword.]

If specified indicates the magnification factors to be applied to the line segment(s) of the "flags" which can be drawn on symbols. Each flag has one and sometimes two parts. (See "symbols".) The first value following "flagmag" is required and governs the first line segment of the flag, which intersects the figure perimeter. Values greater than 1.0 will increase the length of this first first segment. If the flag has a second segment, joining the first segment at its end and at a right angle, its length is governed by the second optional value following "flagmag". The default second value is 1.0.

Example : flagmag 1 1.5

[Top][Bottom][Option list]

( BRfont) (Command :pubplot) Details for the font option.

[General syntax rules for this keyword.]

If specified, the following value is the default font number to use. The legitimate values for the 2-digit font numbers are the following, where XY is a 2-digit font code, in which X = font, Y = style :



X :
1 ... Times-Roman
2 ... Helvetica
3 ... Helvetica-Narrow
4 ... Symbol  (Style code = 1 or 2 ONLY!  See below.)
5 ... Courier ("Monaco")  (characters "equally" spaced)
6 ... AvantGarde
7 ... Bookman
8 ... Palatino
9 ... NewCenturySchlbk

Y : 1 ... Normal 2 ... Oblique / Italic 3 ... Bold 4 ... Bold-Oblique / Bold-Italic

The default font = Times-Roman (11). After any string is drawn, the current font ALWAYS reverts back to the default font.

Example : font 63

[Top][Bottom][Option list]

( BRfrom) (Command :pubplot) Details for the from option.

[General syntax rules for this keyword.]

Indicates, in a 1:1 correspondence with the expressed or implied "files" arguments; ie, in correspondence with the curves, the types of files in the "files" argument list. Allowable types are "sif" and "ffsif". Up to 20 "from" file types can be specified. Strings beginning with "null" are essentially not reset from the default. The default type of file is "sif".

Example : from ffsif sif rep 3 ffsif

[Top][Bottom][Option list]

( BRglwt) (Command :pubplot) Details for the glwt option.

[General syntax rules for this keyword.]

If specified, the following value is the "linewidth" in "points" to be used for drawing the (coarse) grid lines. The default "glwt" linewidth is .5.

Example : glwt .5

[Top][Bottom][Option list]

( BRgrid) (Command :pubplot) Details for the grid option.

[General syntax rules for this keyword.]

If this option is specified, a grid will be drawn at the major tic marks. The grid line weight is governed by the "glwt" option.

[Top][Bottom][Option list]

( BRgriddelay) (Command :pubplot) Details for the griddelay option.

[General syntax rules for this keyword.]

If this option is specified, the actual drawing of any axes and grid in association with a SURFACE plot in which there are NO rotations can be delayed until after the surface itself is drawn. The default condition is to draw the axes and grid FIRST. A filled surface plot would therefore, in the default case, obscure the axes and grid lines.

Example : griddelay

[Top][Bottom][Option list]

( BRhzero) (Command :pubplot) Details for the hzero option.

[General syntax rules for this keyword.]

If specified, for a non-"polar" type plot, the following value is the y-axis value at which to draw a "heavy" horizontal line which will have the same extent as the x-axis. The default line width for this heavy line is 1 (NOT heavy.) Following the value indicating the y-axis value, a second optional value can be specified indicating the desired line width to be used for the heavy line.

Following the line weight value can be a third item specifying the line type horizontal line to be drawn. The default line type is a solid line (type 1). The possible line types are as indicated in the "lines" documentation.

.

(Begin modifications on 052102)

Following the line type value can be a fourth item specifying the horizontal line color to be drawn. The value specified is a valid palette color number.

(End modifications on 052102)

For a "polar" type plot the implication of "hzero" is dependent on the value of the xaxis or yaxis code specified. A summary of the actions taken for different values of "xaxis" and "yaxis" is as follows, where "NUM1" and "NUM2" are the two values which can follow "hzero" :



"xaxis" specified

heavy radial at angle = NUM1 degrees, weight factor of line is NUM2

"yaxis" specified

heavy circle at NUM1, weight factor of line is NUM2

Example : hzero 0 3

[Top][Bottom][Option list]

( BRimpascii) (Command :pubplot) Details for the impascii option.

[General syntax rules for this keyword.]

If this option is specified the following up to 4 values indicate, for any (r)imported file which is an "ascii" file, the desired default font number, font magnification factor, horizontal expansion value, and vertical expansion value. The default values for these parameters are, respectively, the current font value, the current font magnification factor, 1.0 and 1.0. See "font" for the allowable font numbers. A font magnification value of less than 1 will yield a smaller font. Horizontal and vertical expansion values of less than 1 will compress the display, possibly to the point of overlapping text strings. These last two parameter values will depend on the font being used.

There are additional text formatting control sequences which can be embedded in the ascii text file; see "import".

Example : impascii 22 .5 0.9 1.2

[Top][Bottom][Option list]

( BRimport) (Command :pubplot) Details for the import option.

[General syntax rules for this keyword.]

If specified, the following two items are the x and y locations, relative to the absolute origin of the page, of the lower left corner of the PostScript file to be brought into the current plot. The next item could be the optional string "before", meaning that this import is to be done BEFORE any other part of the plot is drawn.
.

(Begin modifications on 082704)

The next item is the the name of the PostScript or ascii of EPSF (Encapsulated Postscript) file which is to be imported. Only the FIRST "page" of a potentially multi-paged PostScript file should be imported; ie, there should be NO "showpage" in the imported PostScript file.

Following the name of the PostScript file to import is the optional word "ascii" or "epsf", implying that the file being imported is really a regular ascii (text) file or Encapsulated Posatscript file, respectively, and should be converted to a PostScript file or properly included in the Poscript file being generated. Following this optionl argument can be one or two other optional arguments: a scale factor and a rotation angle in degrees counterclockwise If only one value is specified it is assumed to be the scale factor. Since an import is done relative to the lower left cornet of the current page the scaling and roation are also relative to that point.

If an EPSF file is being imported it will always be imported in the "before" mode, whether or not the "before" argument is specified or not. Caution should be used when importing EPSF files, as is the case with regular PostScript files as well, in that if more than one file is being imported the "background" of a later import may obscure some or all of an earlier import; whatever is contained in the EPSF file will be literally overlaid on the existing drawing.

UP to 10 files can be imported.

(End modifications on 082704)

If the file is an ascii file, it will be converted to a PostScript file before being included in the plotted PostScript file being created.

The imported image can be thought of as a transparent sheet overlaid on the current plot. For ascii text files, the text will typically be located at the upper left hand corner of the transparent sheet.

A file imported via "import" will NOT be affected by any scaling which may already be in effect.

The contents of the text fields in an "acsii" file is like that which can be contained in text associated with the "text" option; ie, all of the "dollar-sign-ass type constructs are legal. However, some of these dollar-sign-asso constructs depend on definitions of tabs, etc which should have occurred outside of the ascii file itself.

There are several additional formatting constructs which can be embedded within the ascii file itself. These formatting controls affect the interpretation and display of the ascii text itself as it is ultimately included in the plotting PostScript file being created.

The formatting controls are of the form :

backslash + one or more strings and/or numbers
In particular, the valid forms and their meanings are :

(1) \ verbatim

Individual strings - a string being a blank-delimited sequence of characters - will be positioned in the generated PostScript file at x-y locations as close to the original relative positions which they occupied in the ascii file as possible in order that the overall appearance of the imported ascii file(s) will very similar to their original appearance.



(2) \ normal


Whole lines in the specified ascii file will have their starting locations positioned in the generated PostScript file at x-y locations as close to the original relative positions which they occupied in the ascii file as possible in order that the overall appearance of the imported ascii file(s) will be very similar to their original appearance. "normal" is the default state.

(3) \ font font_value

By default the text in the ascii file will be printed in the PostScript file in the font which is currently active. As has been mentioned previously the dollar-sign type constructs can be used locally (per string) to affect the appearance of the text. However, to affect the default font the "\ font font_value" has to be used, where "font_value" is a legitimate font number. See "font" documentation.

(4) \ oldfont

To change the default font back to what it was before the most previous "\ font font_value" was issued.

(5) \ mag mag_value

By default the text in the ascii file will be printed in the PostScript file in the default font size. As has been mentioned previously the dollar-sign type constructs can be used locally (per string) to affect the appearance of the text. However, to affect the default font size the "\ mag mag_value" has to be used, where "mag_value" is the desired font magnification factor. Values less than 1.0 will reduce the size of the font.

(6) \ oldmag

To change the default font size back to what it was before the most previous "\ mag mag_value" was issued.

Following the name of the PostScript file to be imported is an optional scale factor. A value of less than 1 will cause a reduction in size of the imported image. Following the optional scale factor is an optional rotation angle at which the imported PostScript file will be drawn. This angles is in degrees and a positive angle rotates the figure counterclockwise The rotation axis is always the current plot's origin. All "(r)imports" are done BEFORE all "(r)figures".



****************** WARNING *******************

If a landscaped plot is imported into a plot which is, itself, landscaped, the imported plot will, in effect, be landscaped again and appear in an upside-down portrait mode.

*****************************************************

Example : import 2 8.4 sketch.ps 1.2

[Top][Bottom][Option list]

( BRinsideout) (Command :pubplot) Details for the insideout option.

[General syntax rules for this keyword.]

If specified, and the plot is a "surface" plot, then surface facet "out" and "in" sense are reversed. One side of the surface is defined to be the outside surface and one the inside surface. The side defined to be the outside surface is drawn with potentially multicolored facets whereas the inside surface is is drawn in shades of a single color and always shaded as a function of surface orientation. The original order of data specification for each curve determines, via vector operations, which side is the "outside" side.

Example : insideout

[Top][Bottom][Option list]

( BRinteger) (Command :pubplot) Details for the integer option.

[General syntax rules for this keyword.]

Toggles the ability to convert from real format without decimal places to an equivalent integer format. Following "integer", "on" or "off" must appear. If the "integer" state is "on", it is desired that all values, in key columns and in text lines, be displayed as integers if their associated formats had NO decimal places specified. For example, a value which would have been printed in "f6.0" format, if "integer" has been specified, will be printed, effectively, with an "i6" format.



*************************************************
The "integer" option as of approximately 12/14/94 had
no further meaning.  Whether a value in a key or text
string is displayed in some form of E, F, or G real
format or is displayed in an I format is now controlled
by the ability to now use the "I#" type integer format
specification.
*************************************************

Example : integer on

[Top][Bottom][Option list]

( BRkey) (Command :pubplot) Details for the key option.

[General syntax rules for this keyword.]

Indicates the desire to draw a figure key based on information corresponding to the current plot or the current plot and previous plot(s). The key can be drawn for the current plot or can be delayed until a later time, within the same plotting session. Following the option "key" there must be specified an up to 5-digit key code value which contains information implying exactly how and when to draw the key. (See "kcode definition" below.) Following the key code value, there must be specified an "x" and "y" location, in inches relative to the current origin, for the placement of the "upper left corner" of the key.

Delayed keys must be dealt with within input to pubplot with a knowledge of HOW these keys are treated within the program. A delayed key defines a set of information which is to be plotted at some FUTURE time. Each set of information which could ultimately be included in a drawn key is created as being tied to a certain particular identification (id) number. Up to 1000 sets of delayed key information can be defined in one pubplot session. Delayed key information is saved on a scratch file and is referenced by its id number. Delayed key information sets are stored in the order that they are encountered.

There is nothing to prevent duplicate delayed key id numbers from being defined. This situation could easily arise when using the "loop"/"endloop" construct. Delayed key id numbers are always stored, for reference purposes, as the absolute value of the actual number specified. Therefore, when a delayed key information set is being DEFINED, it does not matter what sign the delayed key id number is; it will be stored as a positive number. However, when a key is to be DRAWN including one or more delayed keys, the sign of each delayed key information set is important. The absolute magnitude of the specified id numbers will be used for attempts at matches with previously-defin delayed key information sets.

The SIGN of each of the specified delayed key id numbers controls the DIRECTION of the search on the scratch file for a delayed key id match. Since delayed keys are stored IN THE ORDER THEY ARE ENCOUNTERED - ie, in chronological order, it is important to make sure that the search for delayed key id matches is conducted in the proper direction. A positive delayed key id number implies a FORWARD chronological search and a negative number implies a backward chronological search.

The next several items are numeric and are key-code dependent. If the key is to be delayed or should be drawn at the current time and include one or more delayed keys, then these items MUST be present. After these key-delay values, the actual desired key variables, whose values (or their string counterparts from a substitution file) are to be included in the column(s) of the key, must be specified. Key column headings are the same as these variable names unless they are translated via the use of a label file. A key can have up to 10 columns and 20 rows BEFORE recombination with delayed keys, and up to 20 columns and 30 rows AFTER recombination with delayed keys.

Color and line type attributes associated with a delayed key are actually assigned at the time when a delayed key is drawn; ie, when it is combined with other keys. The user has the ability to redefine both line patterns per line types and the color palette. If either or both of these are redefined between the time when a key is delayed and the time when a delayed key is drawn the key may not reflect the originally-speci respective attribute(s).

If an "unset" key variable is not found on the SIF file, the string *NF* will show up in the key in place of a value. Also, if "notify" is on, the user will be notified of the fact that the variable was not found.

Following each variable name a real (F, G, or E) or integer (I) format specification can be included. This format will override the default format of g10.3 for the particular variable it follows.

Following this optional real format specification the values which would have been established from SIF file data extraction for a particular key variable or strings which could have been defined via a substitution file can be defined.

If the word "set", followed by one or more values, is encountered the values assigned to the respective variable will be those following the "set" and will be, from that point on, treated as if they had come from the SIF file(s), whether or not the variable was found on the SIF file(s).

If a position in a list of "set" arguments needs to be skipped (ie, NOT explicitly set to a value) then the string "empty" can be used to effectively skip key entries which are NOT being reset.

If the word "setk" is encountered it must be followed by a number indicating how many key rows worth of values or strings are being set. Then, following that number, a sequence of the values and/or up-to-64-charact strings which are to be assigned to the named key variable should be specified.

If a value is specified in the sequence of values and/or strings, that value is assigned to the respective variable and will be, from that point on, treated as if it had come the SIF file, whether or not the variable was actually on the SIF file.

If a string is specified in the sequence of values and/or strings, that string is assigned to the respective variable and will be, from that point on, treated as if it had been defined as a result of a translation via the use of a substitution file. A string specified in a list of "setk" values/strings can be up to 64 characters long. If the string is to contain embedded blanks or be longer than 16 characters the question mark delimiters MUST be used.

If a position in a list of "setk" arguments needs to be skipped (ie, NOT explicitly set to a value or string) then the string "empty" can be used to effectively skip key entries which are NOT being reset.

In general, the syntax for the "key" argument list is the following :

kcode x y (#1 (#2->#11)) { name (fmt)(set V#1 --> V#N) }1 ... { }10 -or- kcode x y (#1 (#2->#11)) { name (fmt)(setk snum V#1/Str#1 --> V#snum/Str#snum ) }1 ... { }10

where,

  1. kcode : 5-digit code value representing user desires for key style, delay items, substitution (see "kcode" definition below)

  2. x/y : x and y location values (inches) from current origin to top left of "key box"

  3. #1, #2,: context-specific delay values (see "kcode" definition below)

  4. name : SIF variable name. Can be blank, as would be specified by "? ?" . Will be the key column heading unless changed via a label file. If all key column headings are blank the vertical space allowed for key headings will be eliminated.

  5. fmt : E, F, or G real format for variable value display

  6. set : delimiter indicating next "N" items are defined values to be put into the respective rows for this particular column. "empty" is allowed, implying no value is being set. A value, represented here as V#1, etc, like its SIF-derived counterpart, can be changed into a string via a substitution file's use. Values set in this way do NOT have to be associated with an EXISTING SIF variable; ie, the variable specified in "name" does NOT have to be on the respective SIF file. Values assigned via "set" will overstore values derived from SIF files.

  7. setk : delimiter indicating next "snum" items are defined values or strings to be put into the respective rows for this particular column. "empty" is allowed, implying no value/string is being set. A string, represented here as Str#1, etc, is analogous to its substitution file-derived counterpart.

  8. V#1,V#2, : Values to assign to a key variable per curve

  9. Str#1, Str#2, : Strings to assign to a key variable per curve

In reference to the key argument list general syntax shown above, the definition of the kcode parameters are the following : kcode = a 5-digit code : VWXYZ, where each of the single digits V, W, X, Y, and Z is defined as follows :

  1. V : key col justification code :

    • 0 : Key column header/body centered

    • 1 : Key column header/body left justified

    • 2 : Key column header/body right justified

    • 3 : Key column header centered, body left justified

    • 4 : Key column header centered, body right justified

  2. W : key recombination code :

Key DELAY INFORMATION as a f(W,Y) (see above) :

W=0, Y=0 : (key NOT being delayed or recombined) W=0, Y=1 : #1 = id value of THIS key; this key to be delayed W=1, Y=2 : #1 = number of delayed keys to MERGE . #2->#n = the key id values to MERGE; CURRENT . key's id value = 0 W=2, Y=2 : #1 = number of delayed keys to STACK . #2->#n = the key id values to STACK; CURRENT . key's id value = 0

An schematic example of a drawn key follows :

------------------------------------------- | hdr1 hdr2 hdrN | | | | (symb1) (line1) ### ### ### | | (symb2) (line2) str str | | (symb3) (line3) ### str ### | | . | | . ... | | . | | (symbM) (lineM) ### ### ### | -------------------------------------------

where ...

hdr : either (1) a SIF variable name or (2) the corresponding translation from the use of a specified "label" file, or (3) a blank, having been specified by ? ?. If all key column headings are blank the vertical space allowed for key headings will be eliminated.

symb : optionally, the desired curve's symbol type

line : optionally, the desired curve's line style

### : a value from the SIF OR a "set"/"setk"-ind hardwired value

str : is a string which has been substituted for a value via the use of a substitution file or has been "setk"-induced