Next: 1.3 Free format
Up: 1 General
Prev: 1.1 Introduction
Index
Contents
The MODULEF software package consists of a set successive layers (figure 1.1). In the same manner in which Fortran is a higher level language than machine language, MODULEF consists of four layers which are situated on top of that of Fortran (also illustrated in [MODULEF User Guide - 1], section 2.2). The layers situated at the highest levels are the easiest to employ, however, for certain problems it is necessary to return to the layers at the lower level.
Figure 1.1: Utilization levels
In this manner, the user can place him/herself in any of the following situations, listed in the order of increasing difficulty (from highest to lowest levels):
These four situations are described below.
The aim of the black boxes is to hide certain MODULEF details. They often treat very specific problems and, for this reason, do not form part of the standard MODULEF version. We note, nevertheless, two exceptions:
This is the level most often used in MODULEF. It consists of activating one processor after the other ( chaining processors).
In practice, activating a processor corresponds to executing a program in two steps: in the first step the data is generated interactively; in the second step the computation is performed, without intervention by the user.
Each processor performs one well-determined task, for example, mesh construction, specification of boundary conditions, finding the solution to a system of linear equations, etc.
If certain functions are not available, it is up to the user to modify an existing processor him/herself, or even create a new processor, which consists of calling some modules (section below).
For a user who wishes to call some modules, MODULEF resembles a classic library of Fortran subroutines. For example, module THELAS is called as follows:
CALL THELAS(M, M, M, NFMAIL, NIMAIL, NFCOOR, NICOOR, ...)
Certain parameters of these subroutines play very important roles:
A module is a subroutine written according to the standards and conventions stipulated in this user guide (section 1.7). In particular, a module calls:
At any of the above levels it is important that the user must be able to enter the data in a simple fashion, hence the notion free format described below.