FUZZEKS [to Index]
FDF inputfile format
This page describes the form of the input data file
(the Fuzzy Data File) by an example.
Here is the
example data file in extracts
(only some lines of the table have been skipped):
region
0 0
1800 0
0 1800
cuts
1 0.75 0.5 0.25 0
parameters
Cl_Concentration
Clay_Content
Hydraulic_conductivity (log10)
Water_table_depth
table
X Y Water_table_depth Hydraulic_conductivity Clay_content Cl_concentration
165 1630 3.9 0.000003000 12 20
460 1690 4.0 0.000001000 13 30
435 1500 4.5 0.000000600 17 40
105 1265 4.5 0.000001000 15 40
300 1080 5.0 0.000000400 17 75
560 1240 5.4/0:4.4-6.4 0.7e-7/0:0.7e-8-0.7e-6 22/0:17-27 80/0:50-130
1010 1600 3.8 0.000000100 14 65
...
end
The sections of an FDF inputfile
- region
region
0 0
1800 0
0 1800
This part describes the region the user wants to obtain kriged values for.
It consists of three coordinates, which must describe a rectangle
(the rectangles' borders need not be parallel to the axes):
- the bottom left corner
- the bottom right corner
- the top left corner
The same coordinate system is used as in the table.
Optionally an area may follow. This is a list of coordinates which will
be used as polygon in order to clip the region outside this polygon when
displaying kriging results. (There is no difference in the calculations, but
only on the display.)
This list follows immediately after the first three coordinates.
- cuts
cuts
1 0.75 0.5 0.25 0
This part describes the resolution of the fuzziness. It must start with 1 and
end with 0. The smaller the steps are, the finer is the resolution.
In FUZZEKS fuzzy numbers are represented by so-called level-cuts
(for FUZZEKS intervals of values where the membership
function value is greater the level
(or equal the level if the level is 1)).
If you like an impression of the effects of the level-cuts list, have a
look at 0D spatial viewing (view at point).
For the level-cuts list above
the level-cuts for levels from the set {1, 0.75, 0.5, 0.25, 0} are
available in the result.
- parameters
parameters
Cl_Concentration
Clay_Content
Hydraulic_conductivity (log10)
Water_table_depth
This part lists the names of the parameters.
If your data needs a logarithmic transformation, additionally the
information should be given that some parameters are to be transformed
(by the expression "(log10)") before calculations are done,
which implies that
values are back-transformed before they are displayed or written to
an ASCII-file.
Also a default fuzziness can be given by adding e.g. "(+/-2)", which
means that all the entries in the table that look like a crisp number are
taken as the triangular fuzzy number with possibilities from the
given number -2 to the given number +2 (this is referred to as 0-cut).
"(+1/-2)" e.g. allows asymetrical membership functions.
- Example:
... cuts 1 0.5 0 ... parameters z (+/-2) ... table x y z ... 0 0 10
is the same as
... cuts 1 0.5 0 ... parameters z ... table x y z ... 0 0 10/0.5:9-11/0:8-12
The parameters for X- and Y-coordinate are implicitly defined to be "X"
and "Y".
The parameter list may be left empty (no table follows then). That makes it
possible to define a new region only.
- table
table
X Y Water_table_depth Hydraulic_conductivity Clay_content Cl_concentration
165 1630 3.9 0.000003000 12 20
460 1690 4.0 0.000001000 13 30
435 1500 4.5 0.000000600 17 40
105 1265 4.5 0.000001000 15 40
300 1080 5.0 0.000000400 17 75
560 1240 5.4/0:4.4-6.4 0.7e-7/0:0.7e-8-0.7e-6 22/0:17-27 80/0:50-130
1010 1600 3.8 0.000000100 14 65
...
The main part are the tables. In this example only one is used.
Coordinates - written as pairs of X and Y entries - must appear
in every line and have to be crisp (usual real numbers).
All other parameters may contain fuzzy numbers.
Entries of the form "5.4 / 0: 4.4 - 6.4" are
fuzzy numbers.
The meaning of this expression would be:
- The most possible value is 5.4.
This is being referred to as 1-cut.
- Possible values are in the range [4.4, 6.4].
This is being referred to as 0-cut.
- The level-cuts (for levels in the range (0,1) ) are linear interpolated from
the given level-cuts, so this is a triangular fuzzy number, because no
other level-cuts are specified.
For a detailed description of the way to write down fuzzy numbers, see
The grammar of FDF-inputdata-files
(see "fvalue" there).
Remark: The entries like "5.0" are crisp numbers.
The level-cut (for levels in the range [0,1) ) would be [5.0, 5.0] if
considered as fuzzy number (crisp nubers are a special case
of fuzzy numbers). Of course this holds only if no default fuzziness
has been specified in the "parameters"-section.
A DECISEPCHARACTER-statement may appear just before all above sections, e.g.:
decisepcharacter is ,
means that the real number "one and a half" is written
"1,5" instead of "1.5" ("." is default).
Additionally an UNDEFSTRING- and a DELIMITERSTRING-statement may appear
just before the table section, e.g.:
undefstring is $
delimiterstring is !
allows to write this table-section
table
X !Y ! a ! b ! c
0 !0 ! 1 ! $ ! 2.5
1 !0 ! $ ! 6 ! 7/6-10
instead of the "normal" one
("undef" and (nothing) are default):
table
X Y a b c
0 0 1 undef 2.5
1 0 undef 6 7/6-10