Git Product home page Git Product logo

schrpoisson-2dmaterials's Introduction

Schrödinger-Poisson solver for 2D materials

This code aims at self-consistently solving the coupled Schrödinger-Poisson equations in 2D materials. More precisely, in the current implementation it is designed to simulate nanosheets of a single material with regions of different strains. The Schrödinger equation is in 1D, meaning that the strain can vary on a single axis x. Moreover, the material is assumed to be infinite in the y direction and periodic in the x direction.

If you use this code in your work, please cite the following paper:

  • A. Bussy, G. Pizzi, M. Gibertini, Strain-induced polar discontinuities in 2D materials from combined first-principles and Schrödinger-Poisson simulations, Phys. Rev. B 96, 165438 (2017). [DOI] [arXiv]

Run the simulation live in your browser (no login required!)

https://raw.githubusercontent.com/giovannipizzi/schrpoisson-2dmaterials/master/static/submission.png

https://raw.githubusercontent.com/giovannipizzi/schrpoisson-2dmaterials/master/static/figure1.png

https://raw.githubusercontent.com/giovannipizzi/schrpoisson-2dmaterials/master/static/figure2.png

You first need to have/install some dependencies:

  • python
  • the python numpy package (this is also needed to have the f2py compiler)
  • the python matplotlib package (if you want to interactively show the plots)

You can then compile the Fortran part of the code by simply typing make inside the code folder.

Go into the code folder and run:

python schrpoisson2D.py {material_properties}.json {calc_input}.json

where you need to replace the two command-line options with two valid input files, the first for the materials properties of the system, and the second with the code input flags.

You will find some example input files in the input_examples subfolder.

The two input files must be in JSON format and contain all the input needed to specify the system properties and the input flags.

A detailed description of the input flags can be found in the PDF documentation in the docs/compiled_output subfolder, as well as a longer documentation and the description of the output files produced by the code.

The code is released open-source under a MIT license (see LICENSE.txt file).

schrpoisson-2dmaterials's People

Contributors

giovannipizzi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  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.