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
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.
- Red Hat Enterprise Linux AS (Taroon Update 3) for I386 (Intel): This is the version currently
installed in the MPDC cluster.
High-performance and widely portable implementation of the Message Passing Interface (MPI) standard.
Contains open source cluster application resources. It installs and configures all required
software for the cluster such as ganglia,
TORQUE job system.
- PETSc: The Portable,
Extensible Toolkit for Scientific computing (PETSc) is a
freely available package for solving large linear and nonlinear systems of equations. Petsc will download and install
BLAS, LAPACK, MPICH2 if they are not already installed in your system.
- Cluster Installation: A detailed
summary of the installation and needed software/hardware updates of the MPDC cluster are provided here.
Background software needed for MPDC applications
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.
MPDC software libraries currently available for download
- 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).
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 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):
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):
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):
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):
based code for computing sensitivities at a material point for phenomenological state-variable based constitutive models of metallic materials.
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):
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):
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
- Smolyak-I: A sparse grid collocation toolbox for modeling
stochastic PDEs in multidimensional random spaces. This library can run in C++ independently of Petsy. The software
can be downloaded here and a short description of its installation and use are discussed in this document.
variational multiscale methods for transport in highly heterogeneous
media -- spectral stochastic and stochastic support methods.
FEnics C++ Library
(last release 6/26/2012): Installation information is given here.
Python script downloads
and compiles FEniCS and all its dependencies.
Currently it compiles a serial static version without MPI support (you only need to set up some environment libraries).
We will provide the parallel version here soon.
Then your run the script and you wait for 3-4 hours until it is completed.
The script will work only on Hopper.
Multiphase Flows in Heterogeneous Media