MCell Home
DReAMM
Tutorials
About MCell
Download
Documentation
Publications
MCell & NPACI
Useful Links
Contact Us
CNL Home
MCell: A Monte Carlo Simulator of Cellular Microphysiology

Getting Started

What You Need to Run MCell

To start using MCell, two things are required:

  1. First you should have the MCell simulator installed on your computer. You could download the MCell binary file from the MCell homepage;

    The MCell simulator is available for a variety of platforms. The user can run it on a single processor machine, a cluster, or a parallel computer. The MCell team supports the following platforms:

    • AIX IBM Power
    • ALPHA
    • FREEBSD i686
    • LINUX i686
    • Mac OSX G4/5
    • SGI
    • SPARC
    • WIN32
  2. Second, you should create a simulation input file. The input file is written in the MCell Model Description Language. It should include all the information for the simulator to complete a given simulation, such as the description of the simulation object, the distribution of the molecules, the chemical reaction mechanisms, as well as the output specifications.

How to Run MCell

After installing the correct MCell binary file for your machine, and creating a simulation input file, file.mdl, using the MCell Model Description Language, the user can initiate a MCell simulation by simply typing:

mcell [options] file.mdl

in the command line.

A list of the available [options] and their functions are given in the table below:

Options

[-help] print help message
[-info] print MCell info message
[-seed n] choose random sequence number (default: 1), n is an integer between 1 and 3000
[-iteration n] override iterations in the MDL file (file.mdl)
[-logfile log_file_name] send the output log to file (default:stderr)
[-logfreq n] output log frequency (default:100)

By default, the output of the simulation will go to your screen directly. Alternatively, you can redirect the output of the simulation by running the simulation in the background and defining the output log file. If you have a long simulation or large number of simulations, the best approach is to create a script file to manage the simulation(s) and the output.

The simulator will parse the simulation input file in a top-down order. It will need to initialize the simulation before the actual start of the simulation iteration. Therefore, the content of the input MDL file for a simulation should follow a specific order, the annatomy of the MDL file will be given in the next section.

The basic steps for creating a MCell simulation is given in the following flow chart.


What is the MCell Model Description Language (MDL)

A MDL file is a MCell Model Description Language(MDL) format file. The MCell Model Description Language is a high level, biology-oriented computer language designed particularly for the MCell simulator. It is easy for biological researchers and scientists to understand and grasp. All MDL commands, keywords and functions are written in upper case, so it is easy to distinguish them from the user-defined variables.

Since the MDL file is order-dependent, it is important to keep your MDL file in the right order. Most of the MDL keywords and functions are optional, defined only as needed to complete a particular simulation; However, two MDL commands are required by the simulator: the temporal length of each simulation iteration (TIME_STEP) and the total number of iterations (ITERATION_NUMBER)of the simulation. The general anatomy of a MDL file is given in the following list. For detailed instructions on creating MDL files, please refer to the User Manual.

Anatomy of the MCell Model Description Language

Include other MDL files into the current MDL file. INCLUDE_FILE = "file.name"
Necessary parameters for the MCell simulation
Simulation time step TIME_STEP = c
Total number of iterations of the simulation ITERATION_NUMBER = n
Parameters needed for initializing a MCell simulation
Number of divisions along the radial directions in the unit length RADIAL_SUBDIVISIONS = n
Number of radial directions in a single octant of an unit sphere RADIAL_DIRECTIONS = n
Number of effector grids over an unit surface area EFFECTOR_GRID_DENSITY = n
Spatial partitioning of the simulation object
  • PARTITION_X = [ coordinates of the partitioning points along the x direction]
  • PARTITION_Y = [ coordinates of the partitioning points along the y direction]
  • PARTITION_Z = [ coordinates of the partitioning points along the z direction]
Specification of the checkpointing method
Definition of the checkpoint CHECKPOINT_ITERATIONS = n
Output simulation results after checkpoint CHECKPOINT_OUTFILE = "outfile.name"
Input file to continue the simulation after the break of the checkpoint CHECKPOINT_INFILE = "input.name"
Definition of the logical objects
  • Ligand
  • The ligand release pattern
  • Chemical reaction
Definition of the physical objects and object modifier
  • Box object
  • Polygon list object
  • Spherical ligand release site
  • Meta object
  • Instantiated object
  • Object modifier

    Adding effector

    Geometrical transformation

    Setting the permeability of the object

Specification of the simulation output
  • Visaulization output of the simulation
  • Chemical reaction data of the simulation
  • General "C" language output

How to Visualize the MCell Simulation Results


To visualize your simulation results, you should define the format of the visualization output as the format of the visualization tool which will be used. The MCell simulator supports the following data formats for 3D rendering:

If you choose the visualization output format as the IBM's DataExplore, you can also visualize the simulation results with the MCell rendering tool DReAMM( Design, Render, Animate the MCell Model). DReAMM is designed as a module of the IBM's DataExplore, it can be used to handle both 3D visualizations and 2D plots. It is very easy to use DReAmm to animate MCell simulation results, detailed instructions can be found in the DReAMM website. DReAMM is available for download at the MCell home page.