
DESL Home |
Website Outline |
Commands |
Examples |
Download |
Contacts
(
BI) Details concerning the DESL
merge command.
(See
example(s)
of the use of the
merge
command.)
[Jump to the list of available options.]
General description of the
merge
command :
The DESL "merge" command provides the capability
to produce one new file per "group" of specified SIF files;
ie, each new file will contain SIF variables which have been
been extracted from respective files in each group of files.
If "extend" is NOT specified, each of the files to be merged
should have the same number of records OR should be able to
be fit to achieve this state.
If two or more files to be combined have an unequal number of
records a "fit" of the required file(s) can be performed before
the merge actually takes place.
The list of currently available options
for the merge command is the following. 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 :
[align]1
[altvars]
[backward]
[cset]
[curve]
[delta]
[elsek]
[endifk]
[eqtol]
[extend]
[]
[fit]
[fitmethod]
[group]1
[ifk]
[names]
[]
[newfiles]
[newfilex]
[nobias]
[noop]
[order]
[pathfile]
[paths]
[setval]
[sum]
[tol]
[values]
[vfiles]
[Top][Bottom][Option list]
(
BIalign)
(Command :merge) Details for the align option.
[General syntax rules for this keyword.]
The presence of this option indicates that the user
wishes to (1) have the files merged in groups of 2 and
(2) imply the specification of "extend" during the
combination of pairs of files, the first of which
contains the desired values of an alignment variable
and the second of which is to be merged according to
its alignment variable's value.
| . |
(Begin modifications on 020303)
This option name is followed by one or more pairs of
alignment variable names, in a 1:1 correspondence with the
list of file name pairs.
(End modifications on 020303) |
An exact match of
the alignment variables must occur to have the information
from the second file of the pair become part of the
merged result. If no exact match is found, values
of the merge variables from the second file of the
pair will be set to the "setval" value.
There is an implicit assumption that both of the files
in each pair of files is ALREADY ordered in an INCREASING
manner with respect to the values of each of the two
alignment variables. If either one is NOT so ordered
the merge will still occur but the results will most
likely be NOT what the user desired. No "fit" can be
expressed or implied when "align" is specified because
"align" implies "extend" and extend precludes a fit.
Example : align point pt
[Top][Bottom][Option list]
(
BIaltvars)
(Command :merge) 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]
(
BIbackward)
(Command :merge) Details for the backward option.
[General syntax rules for this keyword.]
Indicates that 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]
(
BIcset)
(Command :merge) 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.
The file-specific (or global) conditions which are specified
are NOT used in determining the values of the independent
variables from another file, if a fit is to be done.
[Top][Bottom][Option list]
(
BIcurve)
(Command :merge) Details for the curve option.
[General syntax rules for this keyword.]
Indicates the type of curve fit desired. The item
following "curve" should be either "poly", indicating a
piecewise-polyno fit, or "lsq", indicating a least-
squares fit. The default curve type is "poly". If "curve"
is specified a fit is implied.
Example : curve lsq
[Top][Bottom][Option list]
(
BIdelta)
(Command :merge) Details for the delta option.
[General syntax rules for this keyword.]
Indicates up to 200 variables to define as a function of
the difference of pairs of two other specified variables.
Following the "delta" option should be collections of
3-item sets of variable names. Each set of names
represents (1) the new variable being defined, (2) the
name of the variable from the FIRST file of a pair of
files being merged and (3) the name of the variable
from the SECOND file of a pair of files being merged.
Up to 200 sets of these three-item names can be specified.
The second and third names are the names as they
exist in the respective files before any renaming
would occur via the use "nameset" options.
The "merge" command can deal with more than 2 files but
the "delta" option will ONLY be applied to situations
in which "merge" is dealing with 2 files or groups of
2 files at a time.
The new variable, after any desired alignment via fitting
may be applied, is created from each pair of existing
variables by the following :
new_variable = exist_var#1 - exist_var#2.
The new file(s) produced by merge will contain one
new variable for each set of "delta" names specified.
Example : delta dalpha alpha alpha
[Top][Bottom][Option list]
(
BIeqtol)
(Command :merge) 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]
(
BIextend)
(Command :merge) Details for the extend option.
[General syntax rules for this keyword.]
If any of files 2-->n of a "group" of files does NOT
contain enough data records to match 1:1 with those of
the first file of the group and fitting is NOT also
being done, then the 2nd through the nth file can be
"extended", by inclusion of this option, to achieve this
required 1:1 correspondence: ie, the LAST record read from
a file with an inadequate number of records will effectively
be replicated the required number of times.
[Top][Bottom][Option list]
(
BIfiles)
(Command :merge) Details for the files option.
[General syntax rules for this keyword.]
Indicates one or more group's worth of file(s) to be merged
into one new file per "group" according to the other option
and arguments specified. If the "values" and/or "vfiles"
options are not specified, then the first existing file in
each "group" of files in this list will determine (1) the
set of independent variable values to use for any required
fit calculations for the rest of the files in the group,
OR (2) the NUMBER of records to be contained in each new
merged file if NO FIT is being done. (See "extend".)
The set of independent variable values determined in the
process of fitting is NOT subject to any limitation(s)
based any conditions which may have been specified.
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 run1 [Top][Bottom][Option list]
(
BIfit)
(Command :merge) Details for the fit option.
[General syntax rules for this keyword.]
Indicates that a fit is to be attempted before the merge
takes place. If two or more of the files to be merged
have different numbers of records a fit MUST be performed
OR the "extend" option must also be specified.
If no "values" are specified, the values of the independent
variables (as indicated via "names") will be extracted from
the first file of each group and used for the fit of the
remainder of the files in that same group.
If no independent variable values are specified via the
"values" argument list it is implied that these values
will be obtained from the FIRST file in each group of
files being merged; in effect, the "vfiles" file name(s)
will be set, per group, to the FIRST file per group,
unless explicit "vfiles" file names are also specified.
In any case, if "vfiles" file names are specified or implied
and if one or more global and/or file-specific conditions are
specified the conditions will NOT be used during this process
of determining the independent variable values.
[Top][Bottom][Option list]
(
BIfitmethod)
(Command :merge) Details for the fitmethod option.
[General syntax rules for this keyword.]
The value following this option indicates which previous
polynomial fitting method to use. The default method is
the latest method. Method 1 was employed from the
inception of DESL until approximately 1/25/99. This
method involved, for the determination of the coefficients
of a second or third order fit, the solution of two
second or third order equations, respectively, and one
or two lower order equations which governed the slopes
of the piecewise line through the points in question.
The latest method involves the solution of three or four
second or third order equations without any governance
of the slopes.
Example : fitmethod 1
[Top][Bottom][Option list]
(
BIgroup)
(Command :merge) Details for the group option.
[General syntax rules for this keyword.]
If "group" is specified then the following values indicate
which specified files are to be considered to be contained
in up to 100 groups being established. One new file is
produced for each group defined. The default condition is
for all files to be considered to exist in one group. The
total number of files in all groups cannot be greater than
200.
Example : group 4 2 3
[Top][Bottom][Option list]
(
BInames)
(Command :merge) Details for the names option.
[General syntax rules for this keyword.]
Indicates the list of independent variable names to be
used if a fit is specified or implied. There should be
one variable name specified for each file of a group; ie,
the number of independent variables must be the same as
number of files in the longest "group" specified. If
at least one but not enough such names are specified,
the required names are set by extending the last
specified independent variable name to complete the list.
At least one independent variable must be specified if
a fit is to be done.
Example names alpha alpha alpha
[Top][Bottom][Option list]
(
BInameset)
(Command :merge) Details for the nameset option.
[General syntax rules for this keyword.]
Indicates the variables to extract from a SIF file and
carry into a file being produced in the current merge
operation. The numeric "id" which must follow the "nameset"
option indicates WHICH file in a "group" the associated
"nameset" variable names are to apply to. The "id" value
should not exceed the number of files specified and must
never exceed the maximum allowable number of files, 200.
The total number of variables specified or implied in all
"nameset" argument list(s) cannot exceed 1000. The
special name "all" can be included if it is desired that ALL
variables from a particular group's SIF file should be
included in the new file being produced.
In the case where a fit is NOT to be done also the number
of variables on the file(s) which are to have "all" of their
variables moved into the new file(s) does count toward the
allowable maximum number of names, 1000.
If the special name "all" is specified AND a fit is to be
done the implication is that the user wishes as
many SIF variables as possible, up to the 200-name limit
and including the name of the independent variable as
specified via "names" to be included in the list of dependent
variables. The "nameset" expansion via the use of "all"
is done ONCE per GROUP of files being merged; the list
of dependent variable names built via "all" is built from
the names in the beginning of the FIRST file in each group
of files being processed.
Variables can be renamed as they are moved into the new
file(s) being produced :
The nameset form "... name2 = name3 ..." indicates that the
the variable "name3" is to be pulled out of a file being
merged and have the name "name2" in the new file being
produced.
Example : nameset 1 alpha1 = alpha cl1 = cl
[Top][Bottom][Option list]
(
BInewfiles)
(Command :merge) Details for the newfiles option.
[General syntax rules for this keyword.]
Indicates the desired names for new files being produced.
There is an understood 1:1 correspondence between the
number of groups and files in the "newfiles" list; one
new file is created for each "group" of files specified.
A new file name prefixed with the 4-character string
"null" can be used as a place holder in the "newfiles"
file names list. This type of name is converted to a
blank string before it is used; ie, using a "null"
prefixed name is equivalent to having not specified
that name at all. By default, all files explicitly
named via this "newfiles" list will be flagged as a
file "to be RETAINED" at cleanup. (See the "cleanup"
command.) The default file name generated for a new
file not explicitly named via "newfiles" or "newfilex"
is the 3-character string "gen" followed by a unique
numeric suffix. Up to 200 new files can be specified.
The list of the names of the new files actually produced
can be saved via the use of the ">list"- or ">>list"-
type argument, which can appear among the specified
new file names. 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 names
contained therein. Up to 200 new file names can be
saved in any one list. 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.
In all but a few noted cases, it is acceptable to use
the ">list" or ">>list"-type argument without specifying
a full complement of actual new file names. Any new
file produced whose NAME is GENERATED by DESL is ALWAYS
marked as a file to "PURGE at cleanup".
A suffix which may be in effect as established via
the filesuffix DESL
command will be added to any expressed or implied
new file name.
New 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 new file list is accomplished,
up to the maximum number of new 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
new file name. Including more than one such construct
will result in unpredictable results.
An example of this type of new 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 new file name, whether it includes the {...} or
not can be a maximum of 256 characters long.
If a newfile name is more than 16 characters long
it must be enclosed in question marks (?).
(End modifications on 052102) |
Example : newfiles >mlist file1 thru file4
[Top][Bottom][Option list]
(
BInewfilex)
(Command :merge) Details for the newfilex option.
[General syntax rules for this keyword.]
This option has exactly the same function as the
option "newfiles" except that all new files created
via a "newfilex" name are flagged as files to "PURGE
at cleanup". (See "newfiles" option. See
"cleanup" command.) Up to 200 new files can be
specified.
Example : newfilex file1 thru file4
[Top][Bottom][Option list]
(
BInobias)
(Command :merge) Details for the nobias option.
[General syntax rules for this keyword.]
Normally, to try to account for circumstances in which
the magnitude of the implied or expressed independent
variable values is large, the independent variable
values are "biased" by their mean value before the
arithmetic is done to compute the fitted curves'
coefficients. The accuracy of the resulting fitted
values of dependent variable(s) is improved by biasing.
If it is desired that no biasing be done in the process
of determining the new values of dependent variable(s)
the "nobias" option can be specified.
[Top][Bottom][Option list]
(
BInoop)
(Command :merge) Details for the noop option.
[General syntax rules for this keyword.]
A dummy option which allows one or more GLOBAL conditions
to follow. This option has NO OTHER FUNCTION.
[Top][Bottom][Option list]
(
BIorder)
(Command :merge) Details for the order option.
[General syntax rules for this keyword.]
Indicates the highest order of curve fit allowed.
The maximum order of fit when "curve" = "poly" is 3.
The maximum order of fit when "curve" = "lsq" is 7.
In some cases, when the situation regarding the number of
existing data points in a file dictates it, this order
may be temporarily reduced. The default order is one
(linear). During extrapolation, the order is always
one. If "order" is specified, a fit is IMPLIED.
Example : order 1
[Top][Bottom][Option list]
(
BIpathfile)
(Command :merge) Details for the pathfile option.
[General syntax rules for this keyword.]
If specified, any up-to-16-charact string specified
via the "paths" option and argument list can be
translated to an up-to-64-charact string. If
a specified "paths" string matches a string in the
left column in the path file, then the (potentially
longer) string in the right column in the same line
in the path file is substituted for the original
string. The rules
for the syntax of a path file are the following :
- all lines are ASCII
- any line beginning with "* " is a comment and
is ignored (asterisk + one or more blanks)
- blank lines are ignored
- only 2 items per line per translation : the first
up to 16 characters and the second up to 64
characters. Any string longer than 16 characters MUST
be enclosed in question-mark (?) delimiters.
- free-field interpretation, therefore
embedded blanks require the "?" delimiters
- first item is name to be translated; must
match VERBATIM with path name specified or implied
via "paths" argument list
- second item is the corresponding path name translation
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
[Top][Bottom][Option list]
(
BIpaths)
(Command :merge) Details for the paths option.
[General syntax rules for this keyword.]
Indicates, in a 1:1 correspondence with the list of
files specified, directory locations for the specified
files. These locations supersede the current directory.
If a file 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 200 path
names can be specified.
Example : paths ..\ ..\Main\ sub1\
[Top][Bottom][Option list]
(
BIsetval)
(Command :merge) Details for the setval option.
[General syntax rules for this keyword.]
Indicates the value to use as the value for all variables
in each MISSING record in the file(s) being "aligned".
Example : setval 8888
[Top][Bottom][Option list]
(
BIsum)
(Command :merge) Details for the sum option.
[General syntax rules for this keyword.]
The presence of this option indicates that the user
wishes that the "delta" option, also specified, will
cause the two pertinent data sets to
be added together rather than subtracted .
[Top][Bottom][Option list]
(
BItol)
(Command :merge) Details for the tol option.
[General syntax rules for this keyword.]
Sets the allowable tolerance between adjacent independent
variable values in each set of such variable values
being used for the curve fit. Successive values of the
independent variable are not used to determine the curve
fit if they fall within the specified tolerance of the
most previous retained independent variable value.
If the specified tolerance value is negative, it is
assumed to be a tolerance in percent, and the tolerance
percent value is the absolute magnitude of the number
specified. The default tolerance is 1 percent.
The "set" of independent variable values is reordered
to be monotonically increasing after it is produced.
Example : tol 2
[Top][Bottom][Option list]
(
BIvalues)
(Command :merge) Details for the values option.
[General syntax rules for this keyword.]
Indicates the set of independent variable values to use
for each file being fit. The default set of independent
variable values is that which is extracted from the first
existing file of each "group" of files in the "files" list
or the respective file named in the "vfiles" argument list
per group of files. If both "values" AND "vfiles" are
specified, "values" has precedence. Up to 2500 values
can be specified.
The independent variable values enter via "values" are
NOT subject to limitation(s) based on any conditions which
may have been specified.
Example : values 3.7 4.2 6.7 10 to 20 by 1
[Top][Bottom][Option list]
(
BIvfiles)
(Command :merge) Details for the vfiles option.
[General syntax rules for this keyword.]
Indicates, per "group" of files, the file(s) to access to
attempt to extract values of the independent variable for
each file being fit.
If one or more global and/or file-specific conditions are
specified they will NOT be used during this process of
determining the independent variable values.
Example : vfiles set1 set2
[Top][Bottom][Option list]
DESL Home |
Website Outline |
Commands |
Examples |
Download |
Contacts


ViGYAN, Inc.
DESL Manager at ViGYAN, Inc.
30 Research Drive
Hampton, VA 23666
Voice: (757) 865-1400
Toll Free: (800) 288-3998
FAX: (757) 865-8177
© 1998 ViGYAN, Inc.