# Using Fortran 90 and CTT

The document IMSL Computational Technology Toolkit contains an overview of CTT and information on its use that should be read prior to reading this document. The discussion below assumes that you have configured your UNIX account as described in that document.

Fortran 90 is designed for scientific
programming projects. In contrast to
Fortran 77, Fortran 90 includes new
functions such as *matrix intrinsic
functions*, low-level functions
which formerly needed to be included in
older IMSL Fortran 77 subprogram
libraries.

The CTT *modules* for Fortran 90
evolved from the older IMSL
subroutines. A single module
accommodates all numerical precisions,
includes parameter-type checking, and
is therefore more versatile and easier
to use. These module extensions are
invoked via a Fortran 90 *use*
statement. Unfortunately, VNI Inc. has
not yet converted all of the earlier
IMSL routines into Fortran 90 modules.
So, it sometimes necessary to use the
older subroutines, which now form the
Fortran Numerical Library (FNL).

When starting a new project, you should first examine the CTT example program directory, $CTT_EXAMPLES/f90/manual, to see if you can find an appropriate Fortran 90 MP module to use. If that fails, you should look at the FNL choices. The documents Fortran 90 MP Example and Fortran 90 FNL Example give an annotated example of the use of a Fortran 90 CTT module and an FNL routine.