Giter Club home page Giter Club logo

phasefield's Introduction

PRISMS-PF

Code repository: https://github.com/prisms-center/phaseField
Code documentation: https://goo.gl/30XwIW
User registration link: http://goo.gl/forms/GXo7Im8p2Y

Version information: This version of the code, 0.9.2, is a pre-release version of PRISMS-PF. This version provides a number of improvements to version 0.9.1, including a substantial performance increase and the addition of a test suite. The source of the change in the simulation results from version 0.8 to version 0.9.1 has been identified and fixed (the discrepancy was related to when variables were updated each time step). For more details concerning the differences between versions, please consult version_changes.txt.

What is PRISMS-PF?

It is a Finite Element Method (FEM) code implementing various phase field and coupled mechanics models and its applications to some physical problems (spinodal decomposition, coupled transport and mechanics, precipitate evolution, etc.). 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:

  1. Install deal.II (version 8.2.1 currently supported)
  1. Clone the PRISMS-PF GitHub repo https://github.com/prisms-center/phaseField

Usage:

Running PRISMS-PF applications, for example Cahn-Hilliard spinodal decomposition problem :

  • $ cd applications/cahnHilliard
    For debug mode [default mode, very slow]:
  • $ cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=Debug
    For optimized mode:
  • $ cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=Release
    and
  • $ make

    Execution (serial runs):
  • $ make run
    Execution (parallel runs):
  • $ mpirun -np nprocs ./main
    [here nprocs denotes the number of processors]

Updates: Since PRISMS-PF is still under active development, regular code and documentation updates are pushed to the upstream repo (https://github.com/prisms-center/phaseField) 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:

  1. VisIt (https://wci.llnl.gov/simulation/computer-codes/visit/downloads)
  2. Paraview (http://www.paraview.org/download/)

Getting started:

Examples of various initial boundary value problems (IBVP's) 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:

  • include/: header files
  • src/: models (diffusion, mechanics and coupled models), matrixfree (base class for parallel implementation of parabolic and elliptic intial boundary value problems)
  • applications/: Various phase field and mechanics example problems
  • docs/: Formulations, example documents, etc in PDF format
  • html/: HTML documentation generated by doxygen

Documentation:

Detailed mathematical formulations, example simulations, code documentation, etc, provided:

License:

GNU Lesser General Public License (LGPL). Please see the file LICENSE for details.

Mailing Lists:

Further information, questions, issues and bugs:

Contact the developers at [email protected]

phasefield's People

Contributors

rudraa avatar stvdwtt avatar

Watchers

James Cloos avatar 李震 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.