Releases: prisms-center/phaseField
PRISMS-PF (version 1.1)
Update to v1.0, released in January 2017.
Added functionality:
- Periodic boundary conditions are now available.
- PRISMS-PF now automatically constrains the solution if only periodic/Neumann BCs are used for a component of a variable .
- Added more options for controlling the spacing between outputs.
- Added the ability to control how often the progress of a run prints to the screen.
- Ability to change the output file format between “.vtu” and “.vtk”.
- When mesh adaptivity is turned on, the mesh will adapt before the first time step.
Changes to the pre-built applications:
- New applications: singlePrecipitateKKS, allenCahn_pfield, precipitateEvolution_pfunction, CHiMaD_benchmark1a, and CHiMaD_benchmark2a
- Added formulation files for the CHAC_anisotropy and CHAC_anisotropyRegularized applications.
- Boundary conditions changed for grainGrowth and mechanics.
- Moduli changed in precipitateEvolution.
Bug fixes:
- Fixed constraint bug for purely elliptic problems. The solution in the domain was correct, but the boundary value for Dirichlet BCs was double what it was supposed to be.
- Removed unnecessary LAPACK check in the CMakeLists.txt files.
Other changes:
- Installation instructions updated, both in the README and in the user guide.
- The “init” function was split into an “init” function and a “reinit” function.
- Removed call of “norm_sqr”, which no longer exists in deal.II v8.5.
Known issues:
- For some compilers that lack full C++11 support (including the Intel compilers on the Stampede cluster), errors are generated because we initialize some vectors with C-style arrays. This will be fixed in the near future.
PRISMS-PF (version 1.0)
This is the first release version of PRISMS-PF, released in August 2016. The code has been substantially reworked since version 0.9.3.
Major changes include:
- New user interface
- New user guide
- Mesh adaptivity capability
- Many new applications
- Improved tests, including tests versus analytical results
PRISMS-PF (version 0.9.2)
Patch to version 0.9.1, released in January 2016.
Bug fixes:
- In versions 0.9 and 0.9.1, unlike version 0.8, the fields in the calculation were updated sequentially, with the updated value being used for other calculations in that time step (e.g. the concentration is updated using the Cahn-Hilliard equation, then that updated value is used when updating the order parameter via the Allen-Cahn equation). In version 0.8, all of the updates to the fields used the value of the fields from the previous time step. This was the source of the different solutions between the versions. We reverted to the approach taken in version 0.8.
Added functionality:
- A new test suite has been added. The tests can be found in the "tests" directory. Tests include a regression test, testing that the solutions exhibit the expected order of accuracy in both time and space, a comparison against a finite difference code, and tests comparing the accuracy of first, second, and third order elements at a range of element sizes.
Performance improvements:
- Refactoring of "computeRHS" has led to a substantial performance increase when solving parabolic equations. Most of the improved performance came from no longer storing field metadata in std::map containers.
Known issues:
- None
PRISMS phaseField (version 0.9.1)
Patch to version 0.9, release in December 2015. This patch fixes a number of bugs that were introduced between versions 0.8 and 0.9.
Bug fixes include:
- Fixed error in strain calculation in getRHS, previously it missed some terms in 3D calculations
- Fixed formatting for output filenames after the 999,999th output
- Fixed a sign error in the residuals in the beta prime precipitate application
- Fixed symmetry error in generation of the stiffness tensor for 2D anisotropic calculations
- Fixed error in the mechanics solver where solution was erroneously set to the change in the solution
- Updated the namespace for MPI calls to comply with Deal.II v8.3 specifications
Added functionality:
- Changed mesh generation to allow for elements with a different aspect ratio than the domain
Known issues:
- Code runs more slowly than version 0.8, possibly due to compiler flags set by Deal.II that are disabling vectorization
- Yields different solutions for time evolution equations than version 0.8
PRISMS phaseField (version 0.8)
This version of the code is from before the initial public release in September 2015. It has a very different structure from v0.9 and later, with much less shared source code between applications.
PRISMS phaseField (version 0.9)
First public release of PRISMS Phase Field code