ModellingTechniques
From ASCEND
I thought it would be of great value to someone coming into this field from the broader engineering/physics/mathematics field to know about some of the mathematical techniques, algorithms and theory that back up the field of modelling and simulation for tools such as ASCEND. This needs a lot of expansion and re-ordering but it's a start.
A good general introduction is available in Art Westerberg's book, Process Modelling which focusses on process engineering applications but covers much of the underlying mathematics, at least in the case of steady-state simulation.
Contents |
[edit] Roots of nonlinear equations
- Newton's method
- Bracketing
- Brent algorithm
[edit] Newton's method for systems of nonlinear equations
This is pretty well summarised in the Numerical Recipes in C book that is available online.
Specialisations include Trust Region and Dog-leg methods. See the documentation of the open-source NNES package (netlib) for some information on these.
[edit] Differential-Algebraic Equations
There is a good paper by Pantelides that describes how one can determine a system for solving 'high index' systems of equations.
[edit] Solution of linear systems of equations
- QR and LU decomposition
- Preordering
- Matrix 'band width'
[edit] Blocking and Tearing
Try reading some of Art Westerbergs papers from 1970s-1980s. Also try Kirk Abbot's these on TEARDROP.
[edit] Graph Theory
Shortest path techniques can be used to solve the 'assignment' problem which is part of the Blocking/Tearing problem.
[edit] Autodiff
This is a algorithmc process used to break down expressions and differentiate them automatically. It's somewhat different from symbolic differentiation.
See the GiNaC documentation for some discussion. Also ADIFOR and CppAD and some other tools.
[edit] Numerical integration
- Simpson's rule
- Euler
See the 'models/bvp.a4l' file for some examples
[edit] Integration of systems of ODEs
See DASSL and CVODES code.
contributions welcome

