ModellingTechniques

From ASCEND

Jump to: navigation, search

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

Personal tools