Plugin approach

OpenCOR is a plugin-based application. This means that if no plugins are selected, then OpenCOR can do next to nothing.

As can be seen by opening the Plugins dialog box (by selecting the Tools | Plugins... menu) and by unselecting Show only selectable plugins (if necessary), OpenCOR supports different types of plugins (Organisation, Editing, Simulation, Miscellaneous, API and Third-party; see below):

Plugins window

You can select which plugins you want to use. However, plugins which are needed by other plugins (e.g. the Core plugin is needed by the CellML model repository plugin) cannot be directly selected. Instead, they will be automatically selected if and only if they are needed by at least one other plugin.

Most of the selectable plugins come with some kind of a GUI:

Organisation

Organisation plugins are used to search, open, organise, etc. your files:

  • CellMLModelRepository: a plugin to access the CellML model repository.
  • FileBrowser: a plugin to access your local files.
  • FileOrganiser: a plugin to virtually organise your files.

Editing

Editing plugins are used to edit part or all of your files using one of several possible views:

  • CellMLAnnotationView: a plugin to annotate CellML files.

There are also some non-selectable Editing plugins:

  • CoreEditing: the core editing plugin.
  • CoreCellMLEditing: the core CellML editing plugin.

Simulation

Simulation plugins are used to simulate your files:

  • CVODESolver: a plugin which uses CVODE to solve ODEs.
  • ForwardEulerSolver: a plugin which implements the Forward Euler method to solve ODEs.
  • FourthOrderRungeKuttaSolver: a plugin which implements the fourth-order Runge-Kutta method to solve ODEs.
  • HeunSolver: a plugin which implements the Heun method to solve ODEs.
  • MidpointSolver: a plugin which implements the Midpoint method to solve ODEs.
  • IDASolver: a plugin which uses IDA to solve DAEs.
  • KINSOLSolver: a plugin which uses KINSOL to solve non-linear algebraic systems.
  • SecondOrderRungeKuttaSolver: a plugin which implements the second-order Runge-Kutta method to solve ODEs.
  • SingleCellView: a plugin to run single cell simulations.

There is also a non-selectable Simulation plugin:

  • CoreSolver: the core solver plugin.

Miscellaneous

Miscellaneous plugins are used for various purposes:

  • Help: a plugin to provide help.

There are also some non-selectable Miscellaneous plugins:

  • Core: the core plugin.
  • Compiler: a plugin to support code compilation.
  • CellMLSupport: a plugin to support CellML.
  • CellMLTools: a plugin to access various CellML-related tools.

API

(Non-selectable) API plugins are used to provide access to external APIs:

Third-party

(Non-selectable) third-party plugins are used to provide access to third-party libraries:

  • LLVM: a plugin to access LLVM (as well as Clang).
  • SUNDIALS: a plugin to access CVODE, IDA and KINSOL from the SUNDIALS library.
  • Qwt: a plugin to access Qwt.

Table Of Contents

Previous topic

Supported platforms

Next topic

MAP Client

This Page