The Model Coupling Toolkit




MCT is a set of open-source software tools for creating coupled models. MCT is fully parallel and can be used to couple message-passing parallel models to create a parallel coupled model. MCT is available as a small library and a set of Fortran90 modules.

MCT provides model interoperability through a simple API. Two models that declare and use MCT datatypes can be coupled with a minimum of effort.

MCT provides the following core coupling services:

MCT can be used in single or multiple executable systems and allows sequential or concurrent execution.

Supported platforms include IBM, SGI, Compaq, NEC, Cray X1 and Linux (with Absoft, Lahey, NAG, PGI, PathScale, or Intel compilers and MPICH, VMI and/or ChaMPIon/Pro MPI libraries) .

This software project began under the DOE ACPI Avante Garde project and continues under the DOE Scientific Discovery through Advanced (SciDAC) Computing program.

Latest Release: MCT 2.5.1 -- released May 22, 2008


MCT Users:


Download Software:

MCT source (including data for example programs) [.tar.gz] 4.1MB

or

MCT source only [.tar.gz]. Only 0.3MB


Optional Additional Downloads:

To install these options, first download and untar one of the packages above.
Then place these files in the "MCT" directory and untar.

Babel cross-language interface for MCT [.tar.gz] (0.8MB). C++ and python bindings are available. See babel/README for more information.

Little Endian data file for examples [.tar.gz] 3.8MB

Mailing list:
To receive announcements about MCT including bug fixes and new releases, join the MCT mailing list: mct-ann.
To subscribe, send an email to majordomo@mcs.anl.gov with the following in the body of the message:
subscribe mct-ann
This is a low-traffic mailing list.
View the mct-ann archive


Documentation:

Current MCT Application Program Interface (API) Document [html]   [pdf]   [ps]

MPEU (included with MCT) tutorial [pdf]

User's Guide to the Model Coupling Toolkit - Not yet available.
Please see the examples in the MCT distribution above in particular the program examples/climate_sequen1.
Also feel free to ask lots of questions using the email addresses below (for Jacob or Larson).

Main References:

(To reference MCT, please use both of the papers below.)

Larson, Jacob, Ong "The Model Coupling Toolkit: A New Fortran90 Toolkit for Building Multiphysics Parallel Coupled Models." 2005: Int. J. High Perf. Comp. App.,19(3), 277-292. [pdf](preprint)

Jacob, Larson, Ong "MxN Communication and Parallel Interpolation in CCSM3 Using the Model Coupling Toolkit." 2005: Int. J. High Perf. Comp. App.,19(3), 293-307. [pdf](preprint)

Other Papers/Talks:

MCT Applications:

Craig, Jacob, Kauffman, Bettge, Larson, Ong, Ding, He, 2005: "Cpl6: The New Extensible High-Performance Parallel Coupler for the Community Climate System Model." Int. J. High Perf. Comp. App.,19(3), 309-327. [pdf](preprint)


We welcome feedback and any suggestions for code changes. We also welcome code contributions and will, after review, include them with full credit. Please mail any suggestions to Jay Larson larson@mcs.anl.gov or Robert Jacob jacob@mcs.anl.gov

View the Change log

Compiler Notes - details about compiling MCT with Intel Fortran and other compilers.

Search for or report a bug at MCT's Bugzilla


MCT developers:

Jay Larson
Robert Jacob
Everest Ong
Ray Loy


MCT development is supported by the Climate Change Research Division subprogram of the Office of Biological & Environmental Research, Office of Science, U. S. Department of Energy