logo
 Materials Process Design & Control Laboratory
"To address critical material
needs through innovative computational 
research, education & outreach"
Doctoral & MS dissertations supervised Archival Journal Publications Lectures & Colloquia Books Edited Refereed Conference Publications Other Conference Presentations Technical Reports
Positions Available Suggested Curriculum for Doctoral Studies

MPDC Scientific Computing Libraries

The software listed on this web site is aimed at members of the MPDC laboratory and research collaborators and sponsors from academia, industry and government laboratories. For access to any of the software packages listed below, our collaborators should send a request to Prof. N. Zabaras. Use of the software listed here is only allowed for academic and open research unless is otherwise specified.

As part of a broad software dissimination effort, we plan to gradually transition our computational work to a fully parallel C++ format based on open MPI and the PETSc platform. This documentation process was intiated in February, 2008 and as such the software listed here represents only a small portion of our research activities. For MPDC members and others users of this software, the following document for a unified preparation of software libraries should be consulted.

MPDC Linux Cluster: Information for installation and updates (internal use only)

The links below concern installation of the MPDC Linux cluster and are addressed only to the MPDC cluster manager and internal users.


Background software needed for MPDC applications

The required software packages for compiling and linking the MPDC applications are listed below. This software is available free to the broad scientific community and can be downloaded from the indicated sites. As this software updates become available, we will make a considerable effort to upgrade the MPDC library applications. The particular background software needed for each of the MPDC application modules are clearly indicated in the links below.


  • FEM-Library (last update 4/09/08): An in house library based on the PETSc platform for parallel finite element computations. A tutorial and a number of examples for learning and testing the utilization of this library is given here.

  • Geometric Modeling: A set of libraries for geometric discretization and domain decomposition using the finite element method. These libraries are based on TetGen (a quality tetrahedral mesh generator and 3D Delaunay triangulator), NetGen (automatic mesh generator) and Triangle (a 2D quality mesh generator and Delaunay triangulator).
MPDC software libraries currently available for download

A list is provided below of currently released MPDC software modulus together with their documentation. Some of these packages require integration with other software as indicated. Follow the links below for the MPDC application software of interest.


Microstructure Modeling

  • Microstructure Reconstruction - GRF: Reconstruction of 3D microstructures from 2D images using Gaussian Random Fields.
  • PCA based Representation of Polycrystal Microstructures: Representation of 3D microstructures in their PCA eigenbases. It includes construction of a reduced-order surrogate microstructure space.
  • Phase Field Model of 3D Grain Growth for Polycrystal Microstructures (last release 5/31/2008): This is an independent suite of tools for simulating grain growth process in metallic polycrystal microstructures using the phase-field technique.
  • MaxEnt (last release 5/31/2008): This is a suite of tools for performing constrained Maximum-entropy optimization using the conjugate gradient method and Gibbs sampling scheme.
  • Construction of 3D Polycrystal Microstructures with Desired Grain size distribution (last release 5/31/2008): A software library for reconstructing polycrystalline microstructure from its grain size distribution.

Deformation process modeling and design

  • Constitutive Modeling (last release 3/28/2008): A stand alone C++ library for the implementation and time-integration of phenomenological state-variable based constitutive models for metallic materials. A driver for a material point simulator with a number of examples is included.
  • Kinematic Modeling (last release 4/04/2008): A Petsc based finite element code for modeling large deformations. It requires MPI, Petsc and the MPDC-FEM library.
  • Contact and Friction Modeling (last release 4/04/2008): Petsc based finite element classes for modeling contact and friction in deformation processes. It is needed in the analysis of large deformation processes that involve contact and friction. It requires MPI, Petsc and the MPDC-FEM library.
  • Large Deformation Process Analysis (last release 4/04/2008): A Petsc based code for deformation processes (forging, extrusion, etc.) using state-variable based constitutive models. It needs to be compiled together with the Constitutive Modeling, Kinematic Modeling, and Contact and Friction Modeling classes. It requires MPI, Petsc and the MPDC-FEM library.
  • Sensitivity Constitutive Modeling (last release 3/18/2008): A Petsc based code for computing sensitivities at a material point for phenomenological state-variable based constitutive models of metallic materials. A driver for a material point sensitivity simulator is also included. It requires the Constitutive Modeling class, MPI and Petsc.
  • Sensitivity Contact Modeling (last release 3/18/2008): A Petsc based finite element code for computing sensitivity fields related to contact and friction models. It is required in sensitivity and design analysis of large deformation processes.
  • Sensitivity Kinematic Modeling (last release 3/18/2008): A Petsc based finite element code for computing sensitivity fields in large deformations for state-variable based constitutive models. It requires Constitutive Modeling, Kinematic Modeling, MPI, Petsc and the MPDC-FEM library.
  • Large Deformation Process Sensitivity Analysis (last release 3/28/2008): A Petsc based code for computing sensitivities in deformation processess (forging, extrusion, etc). It includes sensitivities with respect to preform, die and other process parameters. It requires Constitutive Modeling, Kinematic Modeling, Large Deformation Analysis, MPI, Petsc and the MPDC-FEM library.
  • Design of Deformation Processes (last release 2/28/2008): A Petsc based code for the design of multi-stage deformation processes (forging, extrusion, etc.).

Microstructure-sensitive design and multiscale modeling of deformation processes

Solidification and crystal growth process modeling and design

Electronic structure calculations

  • Multibody energy expansions (last release 2/28/2008): A C++ library using a finite element interpolation framework. It can be coupled with any ab initio software.
  • Multibody energy expansions (last release 7/15/2008): A C++ library using the multidimensional Smolyak algorithm based interpolation software provided here. It can be coupled with any ab initio software.

Stochastic Modeling Libraries


Bayesian Inference Libraries