ASCEND capabilities: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
The following is a summary of current ASCEND capabilities. It is intended to be a complete list. If you want a more general/introductory overview, see the [[ASCEND overview]]. The main page for accessing greater detail on these topics is our [[:Category:Documentation|documentation]] index. | |||
== Language features == | |||
* Equation-based language | |||
* Hierarchical [[MODEL]]s allowing modular system models built from reused components | |||
* Procedural initialisation of models and solver parameters using [[METHOD]]s | |||
* [[WHEN]] syntax for [[conditional modelling]] also known as 'variable-structure modelling'. | |||
* Differential as well as algebraic equations can be expressed | |||
* Constants are declared separately from variables | |||
* Multi-modal models with [[SWITCH]] statement (switching based on values assigned to constants). | |||
* Externally-defined equations ('[[external relations]]') can be added to models via shared libries and the [[IMPORT]] statement | |||
* Can run arbitrary Python code in [[METHOD]]s via [[ExtPy]] linkage, useful for custom plotting, reporting, and model initialisation. | |||
== Solver features == | |||
* Detection of singular and non-square equation systems | |||
* Steady-state [[QRSlv]] solver with block decomposition | |||
* Optimisation solver [[IPOPT]] as well as linking to commercial [[CONOPT]] solver | |||
* ODE and DAE solvers: [[IDA]], [[RADAU5]], [[LSODE]] | |||
* Some preliminary support for dynamic switching models with boundaries | |||
* Solver parameters can be set from within the model code (see [[SOLVER]] and [[OPTION]] statements) | |||
== GUI features == | |||
* View all aspects of a model in a hierarchical tree view | |||
* [[FIX]] and [[FREE]] variables interactively, set their values, and quickly re-solve the model. | |||
* Interactive exploration of the numerical/convergence behaviour of the model | |||
* Capture the state of selected variables for export/plotting via [[Observer]] functionality | |||
* View incidence matrix showing block-decomposed structure of steady-state systems | |||
* Diagnose blocks in the model which have been giving numerical problems | |||
* View dependency graph for solution process | |||
* Plot the time-varying values from the solution of dynamic problems | |||
* Alpha-quality [[canvas-based modeller for ASCEND]] allows 'wiring up' of graphical 'blocks' to construct complex flowsheets | |||
[[Category:Documentation]] | [[Category:Documentation]] | ||
Revision as of 01:31, 3 April 2013
The following is a summary of current ASCEND capabilities. It is intended to be a complete list. If you want a more general/introductory overview, see the ASCEND overview. The main page for accessing greater detail on these topics is our documentation index.
Language features
- Equation-based language
- Hierarchical MODELs allowing modular system models built from reused components
- Procedural initialisation of models and solver parameters using METHODs
- WHEN syntax for conditional modelling also known as 'variable-structure modelling'.
- Differential as well as algebraic equations can be expressed
- Constants are declared separately from variables
- Multi-modal models with SWITCH statement (switching based on values assigned to constants).
- Externally-defined equations ('external relations') can be added to models via shared libries and the IMPORT statement
- Can run arbitrary Python code in METHODs via ExtPy linkage, useful for custom plotting, reporting, and model initialisation.
Solver features
- Detection of singular and non-square equation systems
- Steady-state QRSlv solver with block decomposition
- Optimisation solver IPOPT as well as linking to commercial CONOPT solver
- ODE and DAE solvers: IDA, RADAU5, LSODE
- Some preliminary support for dynamic switching models with boundaries
- Solver parameters can be set from within the model code (see SOLVER and OPTION statements)
GUI features
- View all aspects of a model in a hierarchical tree view
- FIX and FREE variables interactively, set their values, and quickly re-solve the model.
- Interactive exploration of the numerical/convergence behaviour of the model
- Capture the state of selected variables for export/plotting via Observer functionality
- View incidence matrix showing block-decomposed structure of steady-state systems
- Diagnose blocks in the model which have been giving numerical problems
- View dependency graph for solution process
- Plot the time-varying values from the solution of dynamic problems
- Alpha-quality canvas-based modeller for ASCEND allows 'wiring up' of graphical 'blocks' to construct complex flowsheets