Code Monkey home page Code Monkey logo

pydii-1's Introduction

PyDII

Equilibrium defect concentrations and solute site preference in intermetallic compounds.

Requirements

PyDII requires Python 3.4+, Pymatgen, SymPy, and Monty packages and optionally VASP for full functionality.

Source Code

Obtaining

If not available already, use the following steps.

  1. Install git if it's not already packaged with your system.

  2. Download the PyDII source code using the command:

    git clone https://github.com/pydii/pydii.git
    

Code Description

The PyDII source code is in the folder ROOT_FOLDR/pydii. The ROOT_FOLDR is also named pydii. The root folder contains additional files for setup and one examples folder that can be used to test the code.

Within the pydii folder, the essential functionality is implemented in dilute_solution_model.py. Scripts to generate input files for VASP calculations, parse VASP runs, and generate defect concentrations are in the scripts subfolder. The scripts

  1. Generate VASP input files for defect supercell calculations.
  2. Parse the output files from VASP calculations.
  3. Generate defect concentration, defect formation energy, and chemical potential data.

To test the programs fully, VASP is required. If a VASP installation is not found, a POTCAR file is not generated in step 1 and step 2 cannot be performed. In case the user uses alternative density functional theory packages for first-principles calculations, the input to step 3 should be prepared in the JSON format given in examples/NiAl_mp-1487/mp-1487_raw_defect_energy.json. Contact the authors for any additional details.

Installation

  1. Navigate to the PyDII root directory

    cd pydii
    
  2. Install the code, using the command

    python setup.py install
    

    The command tries to obtain the required packages and their dependencies and install them automatically. Access to root may be needed if virtualenv is not used. Alternatively you can try

    pip install . --user

  3. The package can be installed at non-standard locations using the command

    python setup.py install --prefix PYDII_ROOTDIR
    

    where PYDII_ROOTDIR is your choice of directory. In UNIX/Linux environments, add PYDII_ROOTDIR to PATH and PYTHONPATH variables by the following commands, which you can add to your .bashrc file

    export PATH=$PATH:PYDII_ROOTDIR
    export PYTHONPATH=$PYTHONPATH:PYDII_ROOTDIR
    

Materials Project API key

PyDII makes use of the Materials Project (MP) database to get the crystal structure of the intermetallic. To access the MP database, a MP API key is required. Please refer to https://materialsproject.org/open to obtain your MP API key.

Examples

From the PyDII root directory, go to the examples folder by typing:

cd examples

The examples folder contains two subfolders for Al3V and NiAl intermetallic systems. For a description of the compounds and how to generate the defect concentration profiles, refer to the manuscript: Ding, H. et al, Computer Physics Communications, 193, (2015).

pydii-1's People

Contributors

enze-chen avatar mbkumar avatar

Watchers

 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.