This page will look better in a graphical browser that supports web standards, but is accessible to any browser or internet device.

Served by Samwise.

Using JSim with the Systems Biology Workbench (SBW)

This page is for the older JSim version 1.6. Click here for the latest JSim 2.0 version.


SBW is a software framework for passing systems biology models and data between various software applications. Of special interest here is the ability of SBW to pass SBML models created in various application (e.g. Copasi, CellDesigner, QTAntimony) directly into JSim. JSim versions 1.6.93 and above provide this ability, which is described in this document. The converse ability to pass JSim models to other applications via SBW, along with other JSim/SBW functionality, is under development, but not yet available.


Getting Started

Here's an overview of how things work. The user loads or develops a model in some source application (e.g. Copasi). The user then directs the source application (typically via an SBW menu) to send an SBML version of its model to JSim, or some other application. The source application generates SBML code, passes that code to the SBW broker (a process running in the background), which passes the code onto JSim (starting a new JSim process, if necessary). JSim reads the SBML code and translates it into MML. The user can then use JSim to run and explore the model.

  1. Install SBW on your computer (Windows, MacIntosh and Linux are supported).
  2. Start the SBW broker. The broker runs in the background passing messages between SBW-enabled applications. Only one instance can be running for a given user on a given computer.
  3. Register JSim with the broker. This may be done via the Project tab SBW menu, or by typing
    jsim -sbwregister
    at the command prompt. Registration information is stored in the .sbw sub-directory of your user home directory, and normally needs to be done only once. (You should also reregister whenever you install a new version of JSim.)
  4. Download and install JSim and one or more of the tested source applications below and register these with the broker. Follow instruction as provided by each application's documentation. Often this can be done by typing the command
    ApplicationName -sbwregister
  5. Start one of the tested source applications, and create or load a model into it. Use the application's SBW menu to send the model to JSim. After a moment or two, a JSim project window should appear containing the model code. For hints on operating the various applications, see the section below.

SBW Source Applications So Far Tested

Biomodels Importer : Tested sucessfully on Windows.

CellDesigner: The SBW menu is active when the SBW broker is running. Version 4.0.1 tested successfully on Windows, MacIntosh and Linux (Redhat EL5).

Copasi: The SBW sub-menu appears in the Tools menu when the SBW broker is running. Version 4.5(Build 30) tested successfully on Windows, MacIntosh and Linux (Redhat EL5).

Jarnac : Tested sucessfully on Windows.

JarnacLite: Tested sucessfully on Windows and MacIntosh.

JacobianViewer : Tested sucessfully on Windows and MacIntosh.

JDesigner : Tested sucessfully on Windows.

QTAntimony: The SBW menu appears when the SBW broker is running. Custom (unreleased) version tested successfully on Windows, MacIntosh and Linux (Redhat EL5), however please note the limitations below.

RoadRunner: Tested sucessfully on Windows and MacIntosh.

SimDriver: Tested sucessfully on MacIntosh.

Connecting SBW to a running JSim application

In some circumstances you may desire to connect a running JSim application to SBW, rather than to have SBW launch it. For example, you may have a complex existing project file you want to augment with an SBW-provided model. A JSim application that listens to the SBW broker is called an SBW module. When the broker launches JSim, it automatically becomes an SBW module. If you launch JSim yourself, you may make it an SBW module either by selecting "Enable module" from the project tab SBW menu, or by including the following switch when starting JSim from the command line:


Understanding JSim's SBW target model

A running JSim application may consist of several project windows, each of which may contain one or more model tabs. SBW has no concept of projects or multiple models, so it is up to the JSim user to control which project and model tab an SBW-transmitted model will be placed. This model tab is called the SBW target model. When the SBW broker starts a JSim application, a single project is created containing a single model tab. This tab is designated the SBW target model, and will remain so until it is deleted, or the user selects another model tab as the SBW target (via the SBW menu's "Set target model..." item). When you launch JSim separate from the broker (and enable SBW module functionality as described above) the SBW target is initially not set, but may be set by the user. If JSim receives a model from SBW when the SBW target is not set, JSim creates a new model tab, and designates it as the SBW target.


JSim currently can process only SBML code that can be translated to SBML level 2 version 1. For example, QTAntimony models sometimes generate initialAssignment tags, which are incompatible with level 2 version 1. JSim support for more recent SBML versions is under development, but not yet available.

Several other roles that JSim might play in the SBW world are being considered for the future, but are not yet implemented. These abilities include:

[This page was last modified 02Feb11, 3:22 pm.]

Model development and archiving support at provided by the following grants: NIH U01HL122199 Analyzing the Cardiac Power Grid, 09/15/2015 - 05/31/2020, NIH/NIBIB BE08407 Software Integration, JSim and SBW 6/1/09-5/31/13; NIH/NHLBI T15 HL88516-01 Modeling for Heart, Lung and Blood: From Cell to Organ, 4/1/07-3/31/11; NSF BES-0506477 Adaptive Multi-Scale Model Simulation, 8/15/05-7/31/08; NIH/NHLBI R01 HL073598 Core 3: 3D Imaging and Computer Modeling of the Respiratory Tract, 9/1/04-8/31/09; as well as prior support from NIH/NCRR P41 RR01243 Simulation Resource in Circulatory Mass Transport and Exchange, 12/1/1980-11/30/01 and NIH/NIBIB R01 EB001973 JSim: A Simulation Analysis Platform, 3/1/02-2/28/07.