Number of visits: 46804        Start of counting: 03-11-2006        Last modification: 17-02-2014
© 2000 - 2013   Jiri Stary        Česky  English

Parallel iterative solver TERMO

Download the parallel solver TERMO 1a (TAR.GZ), a part of the finite element system GEM. The solver TERMO is free software distributed under the terms of the GNU General Public License as published by the Free Software Foundation.

Description

The code TERMO serves for the solution of the discrete form of nonstationary heat equations in 3D. The initial-boundary value problem is discretized by finite elements in space and finite differences in time. The corresponding linear system of algebraic equations in each time step is solved by the conjugate gradient method with the preconditioning based on the additive overlapping Schwarz methods.

The specific feature of the code TERMO is the using of regular structured grids which, simply speaking, are the grids arising as a result of deformation of some regular rectangular grid (the pattern grig). The discretization is given by the decomposition of the domain into eight-node bricks and consequently into tetrahedral finite elements. Hence the corresponding matrices have all nonzero entries within a 27 node regular stencil. Supposing the symmetry of the matrix, we can additionally store only the upper triangular part of the matrix. It can be done row-by-row by using regular 14 element stencil for the storage of the nonzero matrix entries.

We assume that material is anisotropic and heterogeneous and is not dependent on temperature changes. The heat radiation is not included. The heat source is assumed to descent exponentially in time (special case is a constant heat source). The time is measured in years. More detailed information about the program can be found in the documentation (PDF).

The whole program is written in Fortran 95, when OpenMP paradigm is used for parallelization. The code was tested on the symmetric multiprocessor Natan.