BNGManual:Anatomy of a BNGL File

From BioNetWiki

Jump to: navigation, search

1. Introduction | 2. Downloading and Installation | 3. Anatomy of a BNGL File | 4. Examples | References | Notes | Models | Tables | Figures | Table of Contents

3.1. Parameters | 3.2. Molecule Types | 3.3. Seed Species | 3.4. Observables | 3.5. Functions | 3.6. Reaction Rules | 3.7. Actions

Next: 3.1. Parameters | Prev: 2. Downloading and Installation | Up: Table of Contents

We will illustrate the method of constructing a rule-based model by stepping through the BioNetGen input file shown in Model 1, which specifies a simplified version of a model for early events in EGFR signaling (Blinov2006b). Additional examples can be found in the Models2 directory of the BioNetGen distribution available from, or on the Web at A BioNetGen input file contains the information required to specify a model, including definitions of molecules, rules for molecular interactions, and model outputs, which we call "observables." An input file may also contain commands called "actions" that act on the model specification, such as generating the network of species and reactions implied by rules, performing simulations, and translating the model into other formats. The syntax of actions is borrowed from the Perl programming language. Model elements are specified in blocks delimited by "begin" and "end" tags as indicated in Model 1.

The six block types are "parameters," "molecule types," "seed species," "observables," "functions," and "reaction rules." The blocks may appear in any order. Actions to be performed on the model are controlled using commands that follow the model specification. All text following a "#" character on a line is treated as a comment, and comments may appear anywhere in an input file. Parsing of the input is line-based, and a continuation character, "\", is required to extend a statement over multiple lines. There is no limit on line length. Any BioNetGen input line may begin with an integer index followed by space, which is ignored during input processing but may be useful for reference purposes. For example, .net files produced by BioNetGen automatically index elements of each input block.

The following is a list of the general steps involved in constructing a BioNetGen model with the relevant section of the BNGL input file shown in parenthesis:

  1. (parameters) Define the parameters that govern the dynamics of the system (rate constants, the values for initial concentrations of species in the biological system) (see BNGManual:Parameters).
  2. (molecule types) Define molecules, including components and allowed component states (see BNGManual:Molecule Types).
  3. (seed species) Define the initial state of system (initial species and their concentrations) (see BNGManual:Seed Species).
  4. (observables) Define model outputs, which are functions of concentrations of species having particular attributes (see BNGManual:Observables).
  5. (functions) Define global and/or local functions of observables for use in rate laws (see BNGManual:Functions).
  6. (reaction rules) Define rules that describe how molecules interact (see BNGManual:Reaction Rules).
  7. (actions) Pick method(s) for generating and simulating the network (see BNGManual:Actions).

Steps 1-6 may be done in any order and the entire protocol is likely to undergo multiple iterations during the process of model development and refinement. BNGManual:Parameters--BNGManual:Actions describe the sections of the BNGL input file with specific reference to the model presented in BNGManual:Model 1. BNGManual:Examples then presents additional models that illustrate the use of more advanced language features.

3.1. Parameters

3.2. Molecule Types

3.3. Seed Species

3.4. Observables

3.5. Functions

3.6. Reaction Rules

3.6.1. Add a Bond
3.6.2. Delete a Bond
3.6.3. Change a Component State Label
3.6.4. Add a Molecule
3.6.5. Delete a Molecule
3.6.6. Encoding Conventional Reactions
3.6.7. Commands for Modifying Rule Application

3.7. Actions

3.7.1. Generating a Network
3.7.2. Simulating a Network
3.7.3. Viewing the Simulation Results
3.7.4. Simulating a Previously-Generated Network

Model 1

Next: 3.1. Parameters | Prev: 2. Downloading and Installation | Up: Table of Contents

Personal tools