Giter VIP home page Giter VIP logo

phasefield's Introduction

PRISMS-PF

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

Version information:

This version of the code, 1.0, is the first release version of PRISMS-PF. This version provides many updates to the pre-release versions. For more information concerning the differences between versions, please consult version_changes.txt.

What is PRISMS-PF?

PRISMS-PF is a high-performance Finite Element Method (FEM) code for phase field modeling simulations and solving related systems of partial differential equations. It has a flexible user interface designed to allow users to easily modify existing applications as well as developing their own. In terms of performance, PRISMS-PF has been shown to be competitive with state-of-the-art finite difference codes. PRISMS-PF has been tested on thousands of processors and has been used in simulations with over one billion degrees of freedom.

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

Quick Start Guide:

For detailed instructions on how to download and use PRISMS-PF, please consult the PRISMS-PF Users Guide (the file prismspf_users_guide.pdf). An abbreviated version of the instructions is given below.

Installation:

  1. Install deal.II (version 8.4.1 recommended)
  • Download CMake [http://www.cmake.org/download/]
  • Add CMake to your path (e.g. $ PATH="/path/to/cmake/Contents/bin":"$PATH"), preferably in a shell configuration file
  • Download Deal.II binaries (OSX and Linux) or Virtual Machine (VMI) from https://www.dealii.org/download.html
  • If a Deal.II binary is downloaded, open it and follow the instructions in the terminal window
  1. Clone the PRISMS-PF GitHub repo https://github.com/prisms-center/phaseField

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.

Running a Pre-Built Application:

Entering the following commands will run one of the pre-built example applications (the Cahn-Hilliard spinodal decomposition application in this case):

  • $ 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]

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. The easiest way to get started on the code is to run the example applications in this folder.

THe example 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.

Applications that are still under development/testing are preceded by an underscore.

Documentation:

The PRISMS-PF Users Guide provides extensive documentation on installing PRISMS-PF, running and visualizing simulations, and the structure of the input files.

Doxygen-generated documentation can be viewed in one of two ways:

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]

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.