CB) Details concerning the DESL
spawn command.The DESL "spawn" function allows the user to split each of one or more SIF files into new files based on changing values of a named SIF variable. Additionally, the names of the new files produced can be constructed based upon the values of specified SIF variables contained therein.
Any 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 :
CBaltvars)
(Command :spawn) Details for the altvars option.
CBat)
(Command :spawn) Details for the at option.If the tolerance value is specified as a negative number, the absolute magnitude of the value is in percent. If the value of the specified variable, from record to record as each file is read, changes by more than the tolerance value, in parameter units or percent, a new file is spawned and the creation of another new file begins. If the "at" option is NOT specified all files being processed will NOT be subdivided. The absence of "at" is most useful when executing "spawn" ONLY in order to sort the records of the files being processed.
Example : at run 1
CBbackward)
(Command :spawn) Details for the backward option.Example : backward
CBcset)
(Command :spawn) Details for the cset option.
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 :
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 :
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
is/are TRUE, reading of the current SIF file should end.
CBeqtol)
(Command :spawn) Details for the eqtol option.Example : eqtol .5
CBfiles)
(Command :spawn) Details for the files option.
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) |
Up to 200 files can be explicitly or implicitly specified.
Example : files c19 thru c12 <flist1 c15
CBnames)
(Command :spawn) Details for the names option.Example : names alpha beta cl cd
CBnewforms)
(Command :spawn) Details for the newforms option.
newforms ( [ "string" ] / [SIF_name (digits) ] )1 ()2 ...
By default new files named via this "newforms" list
will be flagged as files "to be RETAINED" at cleanup.
(See the "cleanup" command.) The default file names
generated for the new files not able to overstore
existing files by the same name is the 3-character
string "gen" followed by a unique numeric suffix.
If a "string" is specified, via enclosing a string in
double quotation marks, then the literal string, without
the quotation marks, will be made a part of the new file
name(s). If a SIF variable name is specified (string
NOT enclosed in double quotation marks) then the value
which that variable had in the LAST record of the new
file being spawned is encoded in the respective new
file name. The number of digits which are extracted
from the SIF variable's value is governed by the value
which can follow the SIF name. If no value is specified,
the number of digits is +8.
If the number of digits is positive, then
this number represents the MAXIMUM number of digits of
the integral part of the value which will be encoded
in the new file name. If LESS than the allowable number
of digits are required to contain the value, less digits
will be used. If MORE than the allowable number of
digits are required to contain the value, the value is
truncated ON THE LEFT SIDE to produce a new value which
can be encoded in the allowable number of digits.
If the maximum number of characters which the new file
name can be, 256, is reached before one or more desired
values has been encoded in the file name, the last value
which partially fits will be truncated, also on the left
end, and encoded in the new file name. No additional
strings or values will be encoded.
If the number of digits is negative, the same
rules governing file name value/string encoding apply
except that the absolute value of the number of digits
specified will be the EXACT number of digits used to
encode a respective value. In this manner, sections
of new file names can be composed of numbers with leading
zeros. Example : run034
(Begin modifications on 052102)
Up to 20 strings and/or SIF names and number-of-digits
specifications can follow "newforms". Up to 256
characters will be encoded into any one new file name.
(End modifications on 052102)
The name of the new files actually produced can be
saved via the use of the ">list"- or ">>list"-type
argument, which can appear along with the specified
new file name components. If a ">list"- or ">>list"-type
argument is specified, where "list" is the specified file
name list, the names of the new files which DESL actually
produces during the execution of the current command
will be saved in the specified file name list.
This file name list can later be referenced by the
"files"/"xfiles" options to imply the file name
contained therein. If the ">list" argument is
specified the named list will be created if it does not
already exist, or will overwrite a like-named list if
one exists. If the ">>list" argument is specified the
named list will be appended to if it exists or will be
created if it does not exist. All file name lists
are in existence for the current DESL session only.
Each "list" name can be up to 15 characters long.
Example : newforms "T" test 4 "R" run -4
.
CBnewformx)
(Command :spawn) Details for the newformx option.Example : newformx "T" test 4 "R" run -4
CBnoop)
(Command :spawn) Details for the noop option.
CBpathfile)
(Command :spawn) Details for the pathfile option.
An example of such a file is the following :
* * Example path file for test xxx * * item 1 = path to be translated : MUST * match VERBATIM with name given * specified/implied via "paths" * * item 2 = resulting name translation * data56 ? \usr\home2\ people\test56\ ? up ?..\? way-up ? ..\..\..\ Temp46\?
Example : pathfile pathA
CBpaths)
(Command :spawn) Details for the paths option.Example : paths ..\ ..\Main\ sub1\
CBsortnames)
(Command :spawn) Details for the sortnames option.It may be desired that, after a file has been reordered based on the primary sort variable, it should be further reordered based on the values of a secondary sort variable. This would normally be done for sorted files which contain groups of records which correspond to constant values of the primary sort variable. If a secondary sort variable is to be used, its name should follow the "incr" or "decr" primary sort variable direction argument. If the secondary sorting is to cause pertinent records to be reordered in a decreasing order, the "decr" argument should follow the secondary sort variable name. Otherwise, the secondary sort will be incrementing. Only the first 10,000 DATA records in each file will be read when sorting. If "sortnames" is specified a limit of 3500-element SIF records is (still) imposed. (The limit of 100000 elements is suspended in this case only.)
Example : sortnames run incr alpha decr
DESL Manager at ViGYAN, Inc.
30 Research Drive
Hampton, VA 23666
Voice: (757) 865-1400
Toll Free: (800) 288-3998
FAX: (757) 865-8177