The Fortran UIO package is a collection of Fortran90 modules and programs described in Table 8.
The file uio_base_module.f90
contains the basic set of modules
(see Table 9).
|
The files uio_mac*_module.f90
(Tab. 8)
contain machine dependent
routines collected in the module uio_mac_module
(see Tab. 10).
It comes in various flavors.
The machine-independent version is
uio_mac_module.f90
which can be used for first tests but does not provide all possible features.
Therefore, it should be discarded afterwards and replaced by a version more
suitable for the platform in use.
The file
uio_mac_ieee_module.f90
is appropriate for all machines with IEEE big_endian
binary format.
Additionally there exist files containing calls of machine library routines
uio_mac_crayts_module.f90
,
uio_mac_crayxmp_module.f90
,
uio_mac_sun_module.f90
.
These make it possible to write information about the platform in use into the
file header. The CRAY versions allow unformatted I/O in the CRAY specific
format and additionally (via the FFIO ASSIGN logic) in IEEE format.
The file
uio_mac_intel_module.f90
is appropriate for all machines with IEEE little_endian
binary format (and no mechanism for automatic conversion).
The main set of routines is contained in uio_bulk_module.f90
in the
module uio_bulk_module.
The three files uio_base_module.f90
, uio_mac_module.f90
, and
uio_bulk_module.f90
comprise the standard set of UIO routines.
Additionally there exists a file uio_table_module.f90
with the single
module uio_table_module
which permits the I/O and manipulation of a certain table format (see the
example in section 4.2).
The latest extension comes within the modules
uio_var_module.f90
and uio_varfile_module.f90
.
The module uio_var_module.f90
contains a type definition for a variable
(``uio flexible variable'')
of general type (i.e. it may be a scalar integer value or a 1D character
array or a 3D real array...) together with some routines for the
basic handling of the variables
(I/O in UIO format, construction and modification of variables...).
The module uio_varfile_module.f90
contains a type definition for
a file built of UIO flexible variables together with routines for the handling
of these files.