The AI-assisted Microstructure Model BuildER (AMMBER) is an ongoing project at the University of Michigan.
AMMBER-PRISMS-PF is a phase-field simulation code.
Phase-field models, which incorporate thermodynamic and kinetic data from atomistic calculations and experiments, have become a key computational tool for understanding microstructural evolution and providing a path to control and optimize morphologies and topologies of structures from nanoscale to microscales. However, due to the complexity of interactions between multiple species, these models are difficult to parameterize. In this project, we developed algorithms and software that automate and optimize the selection of thermodynamic and kinetic parameters for phase-field simulations of microstructure evolution in multicomponent systems.
Presently, the framework consists of two modules: AMMBER_python, which is used to extract phase-field usable free energies from general data sources, and AMMBER-PRISMS-PF, which provides an open-source suite of multi-component, multi-phase-field model implementations with a simple, flexible interface for defining a system of thermodynamic and kinetic parameters.
AMMBER-PRISMS-PF Features:
- Open-source
- Multi-component
- Multi-phase
- Simple, flexible input file
- Automatic parameter selection
- High-performance Code
- Adaptive Mesh Refinement (AMR)
AMMBER-PRISMS-PF can be installed on Linux and MacOS.
In the terminal, clone this repository and its submodule, and navigate inside.
git clone --recurse-submodules https://github.com/UMThorntonGroup/AMMBER-PRISMS-PF.git
cd AMMBER-PRISMS-PFIf you have already cloned the repository without the submodule, you can run
git submodule update --init --recursiveto initialize it.
Next, you will need to install the PRISMS-PF library included as a submodule. For more information on installing PRISMS-PF and its dependencies, see https://prisms-center.github.io/phaseField/doxygen/install.html.
If you already have the dependencies installed, you can run
cd phaseField
cmake .
make -j <nprocs>or simply, make.
Recommended: Install AMMBER_python
pip install ammberEach application in this suite has a more detailed README, explaining how to use each model. PRISMS-PF also has documentation explaining the requirements of an app. To run an application without any modifications, you just need to navigate to the application directory and compile first. For example:
cd grandPotential-paraboloid
cmake .
make -j <nprocs>Next, you can run the simulation in parallel using
mpirun -n <nprocs> ./main(nprocs=8 for most desktops) or just ./main for serial.
Output of the fields is in standard vtk format (parallel:.pvtu, serial:.vtu files) which can be visualized with the following open source applications:
- VisIt (https://wci.llnl.gov/simulation/computer-codes/visit/downloads)
- Paraview (http://www.paraview.org/download/)
GNU Lesser General Public License (LGPL). Please see LICENSE for details.
AMMBER-PRISMS-PF Repository
AMMBER_python Repository
PRISMS-PF Homepage
PRISMS-PF Repository
PRISMS-PF User Forum