Jarnac

Category Cross-Omics>Pathway Analysis/Tools

Abstract Jarnac is an interactive and interpretive language for describing and manipulating cellular system models and can be used to describe metabolic, signal transduction and gene networks, or in fact any physical system which can be described in terms of a network and associated flows.

Jarnac is basically version 2 of SCAMP (SCAMP is a general purpose simulator of metabolic and chemical networks. It is based around a simple metabolic language).

Within the Systems Biology Workbench (SBW) framework Jarnac acts as both a 'script engine' for model building, simulation, and analysis, and a simulation engine for Systems Biology Markup Language (SBML) files.

Jarnac is able to perform 'continuous and stochastic' simulations.

Jarnac is based on a simple control language, similar to the Basic language and supports many of the constructs one would expect, for loops, conditionals, while/do and repeat/until.

It supports at least 7 different data types, including integers, floats, Booleans, strings, vectors, matrices and lists. Jarnac also supports user defined functions and external modules.

There is built-in computational support for:

1) Dynamic simulation [using LSODA (The LSODA solver was written in Fortran by Alan Hindmarsh and Linda Petzhold of Lawrence Livermore National Labs and is part of the ODEPACK collection of solvers) or CVODE integrator (CVODE is a package written in C for solving initial value problems for ordinary differential equations)];

2) Steady state analysis using the NLEQ solver;

3) Simple stability analysis [eigenvalues, using the IMSL library - (The IMSL Libraries are a comprehensive set of mathematical and statistical functions that programmers can embed into their software applications)];

4) Matrix arithmetic (All the main operators including functions like transpose, det, etc, using the IMSL library);

5) Metabolic Control Analysis (All steady state control coefficients and elasticities);

6) Metabolic structural analysis (Null space and conservation relation analysis with others to follow...); and

7) Stochastic Simulation (using the standard Gillespie method - a computational method for the exact stochastic simulation of coupled ordinary differential equations).

Network Models -- The main reason for developing Jarnac is to support the construction, manipulation and analysis of biological cellular models, including metabolic, signal transduction and gene pathways. This facility is enabled by the network objects (metabolic models).

The purpose of Jarnac is to help people model and study the internal networks and dynamics of living cells or more ambitiously to model interacting multi-cellular systems.

It does this by enabling a user to describe the many and varied chemical processes and interactions that go on in cells using syntax familiar to the average biologist or chemist.

Thus Jarnac allows a researcher to describe cells in terms of metabolites, enzymes, effector molecules and so on and avoids the user having to write down 'differential equations' or work out whether there are conservation relations or Not.

The mathematical and technical side is all done in the background which enables a researcher to concentrate on scientific questions rather than technical details.

To support the ability to model cellular systems, Jarnac implements a rich scripting language to control, build and manipulate models. In addition to controlling cellular models, Jarnac can also manipulate a variety of data types, from simple integers, to floating point numbers, to vectors, matrices and so on.

The Jarnac scripting language supports the usual language constructs, such as looping, conditionals, user functions and modules. Modules and user functions are an advanced feature that allows users to extend Jarnac's capability.

Jarnac is also an interactive environment, thus a user issues commands or executes scripts at a console window with the results being immediately returned to the user for inspection.

This rapid feedback of results enables a user to quickly learn how to use Jarnac and helps them get `closer' to the biological problem.

For distributed access, Jarnac supports two (2) modes for external access --

1) Sockets Jarna - exposes a standard Berkeley Software Distribution (BSD) socket which has a direct link to the Jarnac parse engine.

This makes it simple to send scripts to a copy of Jarnac running on a remote machine. The socket interface provides a simple 'authentication mechanism' to prevent obvious abuse.

2) SBW Jarnac- implements a SBW interface to it's core simulation engine and scripting interface. This allows Jarnac to be controlled from many other languages including C/C++, Java, Python and Perl.

Note: SBW is the recommended mode for external access.

Mode of Operation -- Jarnac can work in three (3) modes:

1) Interactive Mode - In interactive mode, a user types commands at the console and Jarnac executes the commands immediately.

2) Batch Mode - In batch mode a user creates a file containing a list of commands, a so-called script file. Script files can be generated either using an external editor or more conveniently by using the built-in Jarnac editor.

3) Socket Batch Mode - The socket batch mode is similar to the batch mode, however instead of a script being read from a file, the script is accepted form a standard BSD socket.

This allows Jarnac to be run from remote machines or be controlled from other languages, e.g. Java, VB or Python.

SBW Mode -- SBW Mode requires the installation of the Systems Biology Workbench. SBW is a broker system which allows applications to communicate with each other and carry out remote procedure calls. Jarnac can act as a service provider for SBW.

Two (2) examples where Jarnac is used in this mode include JDesigner and CellDesigner (see G6G Abstract Number 20159).

Summary of Jarnac Features/Capabilities --

1) Includes a General Purpose Scripting Language - a) Rich variety of data types, Floats, Complex, Matrices, Lists, etc; b) Conditional Statements, if/then/else; c) Loop constructs, repeat, while and for; d) User Functions; e) Exception Handling; f) File Input/Output, Graphical Output; and g) Modules for building libraries of functionality.

2) Support for Metabolic Modeling -

System Requirements

Jarnac is currently only supported on Windows.

Manufacturer

Manufacturer Web Site Jarnac

Price Contact manufacturer.

G6G Abstract Number 20297

G6G Manufacturer Number 102862