Code Monkey home page Code Monkey logo

learn-fireside's Introduction

learn-fireside

This is a tutorial for density-functional theory (DFT) calculations using the open-source [Quantum ESPRESSO] distribution (https://www.quantum-espresso.org/)(QE)[1,2].

In each subfolder you will find the required instructions to run the example exercise. All the required input and pseudopotential files can be found under the files folder.

The SSSP pseudopotentials (PPs) files can be downloaded from the [Materials Cloud (https://www.materialscloud.org/discover/sssp/table/efficiency#sssp-license). Other sites providing PPs are pseudodojo and Quantum ESPRESSO website. The input files required to run the calculations are provided within this repository.

All codes required to run the examples are already installed in the Quantum Mobile (see below), a virtual machine (VM) that can run on any Windows, Mac, or Linux laptop/desktop. Both the codes and Quantum Mobile are open source.

Using the Quantum Mobile Virtual Machine

The setup of the Quantum Mobile requires you to download the Quantum Mobile image (we use the v20.03.1 release) and the open-source Virtual Box (VBox) virtualizaton software. In order to import the image inside VBox, please refer to this documentation.

NOTE: If you are running this tutorial on a laptop, beware that some manufacturers disable the Virtualization technology at the BIOS level. This feature can be reactivated, but we would advise against doing it yourself unless you know exactly what you are doing, and it might be wiser to install Quantum ESPRESSO natively on your machine - for this, see instructions at https://www.quantum-espresso.org/Doc/user_guide.pdf

Convergence tests

In exercises 1 through 5 you will perform a series of basic convergence tests on the core computational input parameters for a proper DFT calculations.

In particular, in order to determine whether the accuracy of the desired results is being affected by your numerical approximations, a series of convergence tests has to be performed. The basic idea behind them is to vary a parameter inherent to the accuracy of the calculation and monitor how certain quantities vary with it. When these variations are below a threshold that represent the desired output accuracy, we say that our calculation is "converged" with respect to that parameter.

You might rightfully ask: "Why compromise at all and not use extremely high values for all the parameters?". The answer to this is TIME, and MEMORY. You will notice while doing the exercises that a higher value of a convergence parameter will also result in an longer execution time of your code. Computational resources have a cost and most importantly are usually limited, hence you always want to aim to have physically relevant results at the minimum meaningful cost.

For more details on each approximation, refer to the documentation of each subsection and the handouts.

Computing mechaical properties

In exercises 6 and 7 you will compute a series of mechanical properties of a material (NaCl).

Exercises

  1. Launching a PWscf calculation
  2. Cutoff convergence vs Total energy
  3. Cutoff convergence vs Forces
  4. K-points convergence vs Total energy
  5. K-points convergence vs Forces
  6. Cutoff convergence vs energy differences
  7. Lattice parameter
  8. Elastic constants

Bibliography

  1. P. Giannozzi, S. Baroni, N. Bonini, M. Calandra, R. Car, C. Cavazzoni, D. Ceresoli, G. L. Chiarotti, M. Cococcioni, I. Dabo, et al., Journal of physics: Condensed matter 21, 395502 (2009).
  2. P. Giannozzi, O. Andreussi, T. Brumme, O. Bunau, M. B. Nardelli, M. Calandra, R. Car, C. Cavazzoni, D. Ceresoli, M. Cococcioni, et al., Journal of Physics: Condensed Matter 29, 465901 (2017).

learn-fireside's People

Contributors

crivella avatar nicolamarzari avatar giovannipizzi avatar

Stargazers

Guoliang Ru 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.