Abstract

Phase-field modeling is a popular front-tracking approach used to model solidification. Its time-evolution equations are often coupled to alloy composition and/or thermal diffusion in high-resolution multiphysics approaches. Materials thermodynamic properties tabulated in CALPHAD databases can be used for phase-field modeling to parameterize bulk energies of alloys. In addition, they can be naturally integrated into models such as the Kim-Kim-Suzuki (KKS) model where driving forces depend on the differences between chemical potentials of co-existing phases. In that case, a small system of coupled nonlinear equations needs to be solved at every point in space where the phase-field order parameter is to be updated and evolved in time. We present Thermo4PFM, a solver for the KKS equations for binary and ternary alloys, with two or three phases, and parameterized with CALPHAD models. Thermo4PFM is open source, written in C++, and can take advantage of Graphics Processing Units (GPU) accelerators. Using OpenMP offload capabilities for C++ classes, an excellent performance is demonstrated on GPU using the LLVM compiler. CALPHAD data is read from simple JSON files using an open source parser from the boost library. Program summaryProgram Title: Thermo4PFMCPC Library link to program files:https://doi.org/10.17632/8j3ntp5c7k.1Developer's repository link:https://github.com/ORNL/Thermo4PFMLicensing provisions: BSD 3-clauseProgramming language: C++/OpenMPNature of problem: Accurate modeling of solidification in metallic alloys requires thermodynamic data associated with possible material phases. That data can be used in phase-field modeling (PFM) to evaluate the driving force responsible for phase changes and solidification front motion. Integrating that data into PFM requires the solution of a small system of coupled nonlinear differential equations — the Kim-Kim-Suzuki equations — that needs to be solved at every point of a discretization mesh.Solution method: Thermo4PFM implements a Newton-based solver for the Kim-Kim-Suzuki equations for a few special cases (binary and ternary alloys with two or three phases) for CALPHAD-based models of the bulk energy of the phases. The software is written in C++ and uses the Curiously Recurring Template Pattern and OpenMP offload capabilities to take advantage of GPU accelerators, when available, on modern High Performance Computing resources. It also uses the boost Property Tree library to parse input CALPHAD data.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call