AMIGOS (Fig. 4.1) is a problem independent simulation system which can handle a wide range of nonlinear partial differential equation systems in time and space in either one, two or three dimension(s). It is designed to automatically generate optimized numerical models from a simple mathematical input language, so that no significant speed loss in comparison to `hand coded' standard simulation tools occurs.

In difference to similar algorithms based on the so called `operator on demand' concept [Yer95], AMIGOS is completely independent of the kind of discretization since the model developer can formulate any discretization of choice. There are no restrictions whether using scalar, field or tensor quantities within a model, and, if desired, any derived field quantity can be calculated, too. Furthermore, the user can influence the numerical behavior of the differential equation system by complete control of the residual vector and its derivative (e.g. punishing terms, damping terms, etc.). Even interpolation and grid-adaptation formulations can be used within a developed model and can thus be very well fitted to a special problem.

AMIGOS is equipped with three layers of access to serve the needs of the variety of users (Fig. 4.2).

*user-mode:*these users, who are just interested in simulating a special process step (e.g. oxidation, diffusion, etc.), can select a model appropriate for the necessary calculation and can modify several process parameters (e.g. duration, temperature, material characteristics, etc.) as well as the boundary and grid definitions using the Input & Control Interface.*model developer-mode:*these users, who are interested in developing new models or extending existing ones with new physical characteristics, have access to all models via the developed Analytical Model Interface (AMI). They may modify existing equations by simply adding parameters, mathematical terms or equations or even develop a complete new model.*platform developer:*these users, are interested in developing new features for AMIGOS itself concerning e.g. special damping paradigms, using other solver libraries, time integration algorithms or just supporting a wider range of input grid formats than the tool does at the moment, but no physical modeling need to be done in this low level layer.

In contrast with previous generations of software just the
*platform developer* requires access to and modification of the source
code. Even during model development the analytical user input will be
interpreted, optimized, transformed and solved on any complex
simulation domain at once without the necessity of time consuming
recompilations (*one-pass concept*) supporting a variety of several
testing and debugging features. After finishing the test and
calibration phase the user can switch to the *two-pass* concept where
all modifications are translated to C-code and are linked to a model
library for high performance calculations on large simulation domains
in the standard user-mode.

1998-12-11