download:whatsnew
This is an old revision of the document!
What's New
Morpheus 2 is a major release that improves modeling flexibility, usability, and allowing extensibility.
Open source
- Morpheus 2 is now open source.
- Source code is available in the Git repository.
- Released under a permissive BSD license
- Morpheus 2 is an extensible framework
- Modeling and analysis tools can be customized or added as plugins
- A stable C++ API has been developed for plugin development
- Simple integration of XML and implementation
- Automated symbol dependency tracking and scheduling
Simulator
Modeling
- Expressions everywhere
- In addition to numerical values, plugin can now take mathematical expressions as inputs
- Greatly improves modeling flexibility by coupling of submodels
- MembraneProperties
- Variables with spatial resolution, mapped to cell membrane
- Uses circular (2D) or spherical (3D) approximation of cell shape
- Allows spatially resolved registration of (neighboring) cell properties
- Enables reaction-diffusion of properties on membrane
- Reporters
- All
Reporters
, plugins that generate statistics and mappings, have been revised and generalized. NeighborhoodReporter
provides statistics (e.g.sum, mean) on properties of the cell's directly adjacent microenvironmentCellReporter
provides statistics on properties of the cellular environment such as including the concentration ofMembraneProperties
andFields
.
- A number of new plugins introduce new modeling features, including
AddCell
: add CPM cells during simulation based on a condition and a location specified by a probability density function.ChangeCelltype
: change the cell type of a cell based on a condition.Protrusion
: actin-inspired feedback model that control shape and motility of CPM cells, as proposed by Niculescu et al., 2015.
Performance
- Performance optimization
- Automatic scheduling has been revised to optimize computational performance.
- Performance measurements and plugin profiling
- Information on execution time (wall time, CPU time) and peak memory usage
- Execution times (wall time) are listed per plugin
Analysis
- TIFFPlotter

Morpheus' TIFFPlotter exports time-lapse multichannel TIFF stacks with OME-TIFF header can be easily visualized with external tools such as BioView3D.
- Logger
- The completely revised
Logger
plugin provides generic tool for data export. - Data export: Periodically writes any combination of variables (Globals, Properties, Fields, etc.) to file in CSV or Matrix format.
- Plotting: Logger also provides a versatile interface for generating data visualizations including time plots, phase diagrams, cell trajectory plot, spacetime plot, profile plots, surface plots etc.
MorpheusML
- Scoping
- Lexical scoping was introduced: symbols are only valid on the scope in which they are declared.
- Improves intuitive character and consistency of model description language
- Allows multiple usages of symbols, setting global defaults, etc.
- Globals
- New Globals section for global constants, variables and
Fields
- Scalar field previously PDE/Layer are moved into Globals/Fields
- MorpheusML 2.0
- Restructured MorpheusML markup language
- Allows better future integration with other formats such as SBML
- Fixboard can partially convert Morpheus 1.x models into new format.
GUI
- Documentation
- Doxygen-generated in-app docs appear in HTML (using QtWebKit)
- Docs are both context-sensitive and can be searched (using QtHelp framework)
- Docs can include latex-based maths (displayed using MathJax)
- Panel with addable plugins
- New context-sensitive overview of addable plugins shows what plugins can be added
- Generate symbol graph
- Shows interdependencies between symbols and scopes
- Generate movies
- Images can be generatedfrom image sequences within GUI
- Also generates multiple movies from
ParamSweep
- ImageTable
- Generate visual tables of
ParamSweep
results including images or movies (viewable in HTML5-enabled web browsers)
Version 1.2.1
Changes
- SBML support is built-in for Ubuntu 14.04+ as libSBML was removed from repositories.
- Fixed rare GUI crashes on Mac OSX when moving model elements.
Version 1.2
The changes in this version focus on improving modeling flexibility, but also include several improvements in automatic scheduling as well as a new preview panel in the user interface. Download version 1.2 here.
Major changes
- New preview panel in GUI in the result browser for images and plain text files.
- New
ChildID
option forProliferation
. This supports the representation of asymmetric cell divisions by providing a symbolic handle to treat daughter cells differently after cell division.- See new example Crypt.xml
- New
ChangeCellType
plugin to conditionally change the cell type of a cell. By default, cell properties are copied, but may be overridden usingTriggers
.- See new example Crypt.xml
- New
VectorRule
to manipulatePropertyVector
, either in x,y,z or phi,theta,radius (spherical coordinates). This facilitates vector computations to e.g. control directed cell motility.- See new example RunAndTumble.xml
- New
FlipCells
plugin to represent cell motility in CA-like models. This plugin enables the conditional switching of positions with a random neighboring site.- See new example ParticleAggregation.xml
- New
PopulationReporter
to collect population-level statistics on cellProperties
. This allows individual cell behavior to depend on population-level properties, or to collect population statistics to log and plot.- See new examples ParticleAggregation.xml and Crypt.xml
- New
StopCondition
to terminate a simulation upon aCondition
before reachingStopTime
. This can significantly improve efficiency in e.g. parameter explorations or sensitivity analysis.- See new example ParticleAggregation.xml
- New
trigger
option forEvent
. This provides a choice to trigger events (1) whenever the condition changes from false to true (as in SBML) or (2) whenever the condition is true.
- Several fixes and many improvements to automatic scheduling.
- Analysis tools are now scheduled according to input symbols if
interval=0
Minor changes
- New
InitCA
plugin to populate CA-like models.
- Fix
InitRectangle
onhexagonal
lattices.
- Support for $\alpha$-synchronous simulation.
- Fixed issue with
Delay
properties.
HistogramLogger
now supports logarithmic binning and plotting
Acknowledgments
Many of these new features are the result of requests from users. In particular, we thank Maria Herberg (Medical Faculty, TU Dresden), Angelo Torelli (Mannheim University of Applied Sciences) and Ovidiu Pârvu (Brunel University) for useful suggestions.
Version 1.1.1
Minor changes
- Fix issue in Windows with SBML import feature.
- Fix issue in GUI with displaying newly created elements.
- Updated version for math expression parser (muparser).
Version 1.1
Major changes
- Added SBML Import feature that converts SBML-based models into equivalent intracellular models of differential equations in Morpheus description language. An example model is added.
- Added
DelayProperty
that returns assigned values after a specified time lag which enables the simulation of delay differential equations. An example model is added.
- A distinction is made between
Equation
s andRule
s whereby the latter are equations within aSystem
. UnlikeEquation
s,Rule
s may have recurrency and be part algebraic loops.
Event
s are now triggered whenever the condition change from false to true, for SBML compatibility.
- Sequential processes are now scheduled only as often as their input symbol can change. This avoids redundant processing and optimizes computational performance.
Minor changes
- Fixed issues with file dialogs and output folder button under Windows.
- Fixed libfreetype problems with Gnuplot.app under Mac OSX.
- Reduced verbosity in standard output (
model.xml.out
). - Moved Examples menu to toolbar menu.
- Various minor fixes.
download/whatsnew.1456825124.txt.gz · Last modified: 10:38 01.03.2016 by Walter