Next: Memory requirements
Up: Listing of programs
Previous: Listing of programs
The programs discussed in this manual were all written in FORTRAN 77, and use no special statements that are machine specific. The programs themselves are straightforward computational algorithms. In fact, these programs could quite easily be translated into another language, or used by someone who had no previous knowledge of FORTRAN, just by learning the meaning of a few statements that are analogous to those in C, for example. All programs should be run in double precision (8 bytes or 64 bits per real variable). Running the finite difference routines in single precision may give reasonable answers, but double precision is more trustworthy. Running the finite element routines in single precision will not work, except perhaps for very small systems, on the order of 103 = 1000 nodes.
In the finite element programs, all the main arrays are passed to subroutines via simple
common statements. Small variables and parameters are passed in the
subroutine calls. In
contrast to this, in the finite difference programs, all variables,
including the main arrays, are
passed via subroutine call parameter lists. There are no common blocks
used. In the finite
element
programs, the dimensions of the system can be easily changed by doing a
global replace on
the dimensions shown in the array declarations in the main program, since the dimensions
of the main arrays in the subroutines must be changed as well. The
values of nx, ny, and nz are then changed to match. The
dimensions of the main arrays
in the finite difference programs only need to be changed in the main program.
There is no reason why the system studied has to be a cube. All the programs will
handle a
rectangular parallelipiped with
nx
ny
nz .
There are no input files
except that for the system digital image. If the user desires to have the various phase
conductivities, elastic moduli, etc. given in input files, that is easy to
introduce into the programs.
The programs discussed in this manual may be downloaded at /pub/bfrl/garbocz/FDFEMANUAL, at the site ftp.nist.gov.
Postscript and pdf versions of this manual may be downloaded as well (printed manual has a non-working ftp site). The manual may also be requested from the author in paper form: edward.garboczi@nist.gov