Data1.txt


/* Data for ParamBSpline2, a REXX program by Doug Rickman, GHCC/MSFC/NASA

 /* Example input file.
 /* Compute a smoothing bspline with a smooth factor of 0.1.  The range
 /*    given by the variable MyU.  Input points are weighted using the variable
 /*    W.  Output points are created using a do loop.

 /* Anything after the first "/*" on a line is ignored.
 /* Thus a line starting with "/* is a comment.
 /* There is no variable typing, i.e. 1 = 1.0 = 1e+0

 /* Blank lines are ignored.


 /* Input Data    - - - - - - - - - - - - - - - - - - - - - -  - - - -

 All Variables = SomeVar AnotherVar MyU W
              /* List all variable names, space delimited and CASE SENSITIVE.
              /* Example, if using 3 variables and weight factors you could
              /* enter "height width depth w".  There must be one column in the
              /* data table for each variable name.  There is no practical limit
              /* to the number of variables, i.e. columns.

 Use Variables = SomeVar AnotherVar
              /* List in order the names of variables to use.  The maximum
              /*   number of variables, i.e. dimensions, must be less than 11.
              /*   It must also be no more than the total number of all variables.
              /*   The order listed need not match the order of appearance in the
              /*   All Variables list.



 /* BSpline Controls  - - - - - - - - - - - - - - - - - - - -  - - - -

 Mode    = 0
              /* -1  - weighted least squares spline (Knots must be specified).
              /*  0  - smoothing spline.

 Knots   = 7
              /* Number of internal knots to use.  This is used when Mode = -1.
              /* Knots will be evenly spaced between start and stop of data.
              /* Knots <= (Number of data points) - Degree - 1

 Degree  = 3
              /* degree of spline.  1<= Degree <=5.
              /* "It is recommended to use cubic splines (Degree=3).
              /* The user is strongly dissuaded from choosing Degree even, together
              /* with a small s-value."

 Smooth  =  0.1
              /* Smoothing.  Smooth>=0.  Start "big" and work your way down.  If
              /* blank Smooth will be set to the number of points.
              /* A value of 0 will create an interpolating spline, i.e. it will
              /* go through the input data points in all cases.

 uParam  =    MyU
              /* The name of the variable to use as the "u" parameter.  If this
              /* means nothing to you perhaps you should read the documentation.
              /* As a hint, this is why this program is called Parametric BSpline.
              /* If no value is provided the scaled distance in n dimensions
              /* between subsequent points will be used with the total distance
              /* scaled to 1.
              /* A variable used as the uParam can not also be present in Use Variables
              /*
              /* WARNING - The numeric values of this variable MUST INCREASE
              /* each subsequent point.  In other words  u(i-1) < u(i) < u(i+1).

 Weights =   W
              /* The name of the variable to use as the weighting factor.
              /* If left blank a default weight of 1 is assigned to each point.
              /* Weights must be greater than 0.


 /* Output Data   - - - - - - - - - - - - - - - - - - - - - -  - - - -

 OutputMode    = DoLoop i = .1 to 1 by .33
              /* Must be of the form
              /*     Interpolate  n,
              /*     Resample     n,
              /*     Fixed        n,
              /*     Specified    n1 n2 n3 n4 n5 ...,
              /*     DoLoop i = n to m by p
              /*
              /*  "Interpolate n" will output values for each input point and
              /*    create an additional n points in between each pair of
              /*     adjacent input points.
              /*  "Resample n"  will create n points between the first
              /*    and last data points.
              /*  "Fixed n" will output points at uniform sample spacing.
              /*     Points will be at integer multiple of n.  The units for
              /*     this are the same as the units of the DistanceParam. Points
              /*     for the start and stop of the data will also be output.
              /*  "Specified n1 n2 n3 n4 n5 ..." will output estimates for each
              /*     point, n1, n2, n3 ....  specified.
              /*  "DoLoop i = m to n by p" will output values starting with m and
              /*     going toward n in p sized steps.  You MUST replace m, n AND
              /*     p with values appropriate for your needs. Warning, this option
              /*     allows you to obtain output outside the range of input data!

 OutputFile    = Data1.out
              /* If this file already exists it will be appended.


 /* Data          - - - - - - - - - - - - - - - - - - - - - -  - - - -
 Data  =      /* Flag which indicates the data table follows. Do not change this line.

 /* Data follows in filled columns, i.e. no missing values.  1 row per point
 /* in n dimensional space.  1 column per dimension.  Columns are space or tab
 /* delimited.  Currently precision is set to 9 significant digits.  The number
 /* of columns must match the number of variables in the list of All Variables.


    5.600    3.353E-2       0           .95
    6.502    1.542E-1       3.4783E-01  .90
    7.202    1.547E-1       6.1538E-01  0.0010
    8.102    1.552E-1       9.5937E-01   1
    9.101    9.578E-2       1.3419       .98
    1.000E+1    1.264E-1    1.6857       .97
    1.130E+1    1.873E-1    2.1831       .97
    1.280E+1    1.582E-1    2.7565       .99
    1.390E+1    1.288E-1    3.1771       1
    1.520E+1    6.957E-2    3.6745       1
    1.630E+1    1.904E-1    4.0975       1
    1.760E+1    3.413E-1    4.5977       1
    1.821E+1    5.219E-1    4.8408       1
    1.841E+1    9.124E-1    5.0085        1
    1.911E+1    1.273       5.3095       1
    1.982E+1    1.604       5.6089       1.0
    2.032E+1    1.845       5.8211       1
    2.092E+1    2.115       6.0725       1
    2.113E+1    2.506       6.2422       1
    2.123E+1    2.716       6.3311       1
    2.133E+1    2.836       6.3908       1
    2.193E+1    2.746       6.6227       1
    2.243E+1    2.537       6.8298       1
    2.252E+1    2.356       6.9071       1
    2.322E+1    2.117       7.1898       1
    2.392E+1    1.877       7.4726       1
    2.452E+1    1.727       7.7090       1
    2.482E+1    1.547       7.8427       1
    2.561E+1    1.367       8.1524       1
    2.641E+1    1.188       8.4657       1
    2.691E+1    1.158       8.6572       1
    2.741E+1    1.308       8.8567       1
    2.742E+1    1.849       9.0635       1
    2.762E+1    2.300       9.2521       1
    2.753E+1    2.750       9.4275       1
    2.783E+1    3.321       9.6740       1
    2.784E+1    3.741       9.8346       1
    2.794E+1    4.162      10.0000       1


Forward
     Backward     Return to Home Page