Code repository: https://github.com/prisms-center/plasticity
Code documentation: https://goo.gl/B6lVpZ
User registration link: https://goo.gl/forms/dkAdtoHzd1qsKJ673
What is PRISMS-Plasticity?
PRISMS-Plasticity is a Finite Element Method (FEM) code for solving boundary value problems arising in Continuum Plasticity and Crystal Plasticity. It is build on top of the deal.II open source finite element library [http://www.dealii.org]
This code is developed by the PRedictive Integrated Structural Materials Science (PRISMS) Center [http://www.prisms-center.org/] at University of Michigan which is supported by the U.S. Department of Energy (DOE), Office of Basic Energy Sciences, Division of Materials Sciences and Engineering under Award #DE-SC0008637
Installation: Refer to the installation manual in docs/installation\ manual.pdf for detailed instructions on getting started with using the plasticity code.
With deal.ii installed and $DEAL_II_DIR setup, the following steps can be followed to download and compile the code.
- Clone the PRISMS Plasticity GitHub repo https://github.com/prisms-center/plasticity
- $ git clone https://github.com/prisms-center/plasticity.git
and - $ cd plasticity
- Compile the library
- $ cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=Debug
For optimized mode: - $ cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=Release
- $ make -jN
- $ export PLAS_DIR=$PWD
Here N refers to number of processor cores available, this helps in quicker compilation.
- Compile plasticity applications
- $ cd applications/crystalPlasticity
- $ cmake .
- $ make
Running an example simulation
- $ cd applications/crystalPlasticity/fcc/simpleTension
Execution (parallel runs): - $ mpirun -np nprocs $PLAS_DIR/applications/crystalPlasticity/main prm.in
[here nprocs denotes the number of processors]
Updates: Since plasticity code is still under active development, regular code and documentation updates are pushed to the upstream repo (https://github.com/prisms-center/plasticity) and we strongly recommend users to synchronize their respective clones/forks at regular intervals or when requested by the developers through the announcements on the mailing list.
Visualization
Output of the primal fields and postprocessed 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/)
Getting started:
Examples of various boundary value problems are located under the applications/ folder. Easiest way to get started on the code is to run the applications.
Applications are intended to serve as (1) Demonstration of the capabilities of this library, (2) Provide a framework for further development of specialized/advanced applications by users.
Application or code under development/testing is preceded by an underscore.
List of folders:
- src/: material models (continuum plasticity and crystal plasticity), ellipticBVP (base class for parallel implementation of elliptic boundary value problems), enrichment models (enhanced strain), utility (static condensation class, crystal orientations and grain information IO)
- applications/: continuum plasticity and crystal plasticity
- utils/: IntegrationTools (developed by the PRISMS center and available at https://github.com/prisms-center/IntegrationTools) and json headers
- docs/: Formulations, example documents, etc in PDF format
- html/: HTML documentation generated by doxygen
Documentation:
Detailed mathematical formulations, example simulations, code documentation, etc, provided:
- Open html/index.html in any web browser
(OR) - https://htmlpreview.github.io/?https://raw.githubusercontent.com/prisms-center/plasticity/master/html/index.html
License:
GNU Lesser General Public License (LGPL). Please see the file LICENSE for details.
Forum:
Mailing List:
Current Developers:
- Mohammadreza Yaghoobi [email protected]
- Srihari Sundar [email protected]
- Aaditya Lakshmanan [email protected]
Further information, questions, issues and bugs:
Contact the developers at [email protected]