Tutorials: Difference between revisions

From The Yambo Project
Jump to navigation Jump to search
No edit summary
mNo edit summary
 
(184 intermediate revisions by 14 users not shown)
Line 1: Line 1:
==Tutorial files and use of CECAM cluster==
The tutorials are meant to give some introductory background to the key concepts behind Yambo. Practical topics such as convergence are also discussed.  
To follow the tutorials, you must first download or copy data files for each system. Files are distributed as gzipped tarballs. Always extract the tarballs '''in the same place.'''<br>
Nonetheless, users are invited to first read and study the [[lectures|background material]] in order to get familiar with the fundamental physical quantities.
Available systems are: <code>hBN.tar.gz</code>, <code>hBN-2D.tar.gz</code>. You will need both ''hBN'' and ''hBN-2D'' tarballs.  
We recommend that you complete the tutorials before trying to use Yambo for your system.


CECAM students: The tutorials will be run on the CECAM linux ''cluster''.  
You must have a working environment where both Yambo and Yambopy (and eventually QE or abinit) are installed.
If you are starting out with Yambo, we suggest to follow [[Setting up Yambo|this page]] with a detailed explanation about how to set up all you need for running the tutorials.


* If connecting from the CECAM iMac, your username is indicated on the terminal (''tutoXY'').
In the left main menu you can access the different Tutorials sections:
 
* [[Tutorials_download|Download information]]
* If connecting from your notebook, choose a username [[CECAM accounts 2017|from this list (link)]]
* [[Tutorials_standalone|Stand-alone tutorials]]
 
* [[Tutorials_modular|Modular tutorials]] and corresponding [[Modules|Modules]]
=== Standard tutorials: cecampc4 cluster ===
* [https://enccs.github.io/max-coe-workshop/day5-tutorials/ More tutorials in Markdown]
 
Log into the cluster via:
ssh -Y tutoXY@cecampc4.epfl.ch
replacing ''XY'' with the appropriate number.
<!--, and find your allocated username ''tutoXY'' and node ''node0RS'' from [[CECAM-accounts-2017|this table]]. -->
 
Next you '''must''' log into the linux cluster directly, using the node ''node0RS'' that is [[CECAM accounts 2017|associated with the username (link)]], and set up the tutorial as follows:
$ ssh -Y node0RS
$ pwd
/nfs_home/tutoXY
$ which pw.x yambo
/nfs_home/tutoadmin/bin/pw.x
/nfs_home/tutoadmin/bin/yambo
$ cd /home/scratch/                ''(NB: do '''not''' run on the /nfs_home partition!)''
$ mkdir yambo_YOUR_NAME            ''(there are more participants than accounts!)''
$ cd yambo_YOUR_NAME
$ cp /nfs_home/tutoadmin/yambo-2017/tutorials/hBN.tar.gz .
$ cp /nfs_home/tutoadmin/yambo-2017/tutorials/hBN-2D.tar.gz  .
$ tar -zxvf hBN.tar.gz
$ tar -zxvf hBN-2D.tar.gz 
$ ls
YAMBO_TUTORIALS
 
If you used "ssh -Y", X-forwarding, for plotting with gnuplot, ''should'' work. If not, try <code>set DISPLAY:0.0</code> on your local machine; it might also help to keep one terminal open for plotting and the other for running codes. If all else fails, try the cool gnuplot trick <code>gnuplot> set terminal dumb</code>.
 
=== Parallel tutorial: bellatrix cluster ===
 
This cluster is equipped with 16-core nodes based on Intel processors.
A tutorial-dedicated queue (''cecam_course'') allows participants to access up to 20 nodes.
 
First log into the cecam4 cluster via:
ssh -Y tutoXY@cecampc4.epfl.ch
replacing ''XY'' with the appropriate number.
<!--, and find your allocated username ''tutoXY'' and node ''node0RS'' from [[CECAM-accounts-2017|this table]]. -->
 
Next move into the bellatrix cluster via:
ssh -Y cecam.schoolXY@cecampc4.epfl.ch
replacing ''XY'' with the appropriate number.
 
This cluster is equipped with 16-core nodes based on Intel processors.
 
The Unix environment (already set by default), can be obtained by loading the following modules:
  module load gcc/5.3.0
  module load openmpi/1.10.2
 
A tutorial-dedicated queue (''cecam_course'') allows participants to access up to 20 nodes.
 
In order to submit to this queue use:
  srun  -N 2 -n 8 --reservation=cecam_course  job.sh
where ''job.sh'' is a submission script.
In the example above, 2 nodes are requested with -N, together with 8 total MPI tasks (4 per node), and, implicitly,
OMP_NUM_THREADS is set to 4  (in order to fill each node with 16 threads).
 
 
<!-- * Download: from [this link] -->
 
== Full tutorials ==
If you are starting out with Yambo, or even an experienced user, we recommend that you complete the following tutorials before trying to use Yambo for your system.
Each tutorial is fairly standalone, although some require that you have completed previous ones.
 
====Introduction====
* [[First steps: a walk through from DFT to optical properties]]
====Quasiparticles in the GW approximation====
* [[How to obtain the quasi-particle band structure of a bulk material: h-BN]]
====Using Yambo in Parallel====
* [[GW_parallel_strategies|Parallel GW]]: strategies for running Yambo in parallel
* [[GW_diamond|GW on diamond]]: use Yambo in parallel to converge a GW calculation for diamond
 
====Excitons and the Bethe-Salpeter Equation====
* [[How to obtain an optical spectrum|Calculating optical spectra including excitonic effects: a step-by-step guide]]
* [[How to choose the input parameters|Obtaining a converged optical spectrum]]  
* [[How to treat low dimensional systems|Many-body effects in low-dimensional systems: numerical issues and remedies]]
* [[How to analyse excitons|Analysis of excitonic spectra in a 2D material]]
<!--* [[Two particle excitations]] (try to bypass this page) : Learn how to set up and run calculations to obtain and analyze an optical absorption spectrum of bulk and low dimension materials by using the Bethe-Salpeter equation-->
 
====Yambo-python driver====
 
*[[First steps in Yambopy]]
 
*[[GW tutorial. Convergence and approximations (BN)]]
 
*[[Bethe-Salpeter equation tutorial. Optical absorption (BN)]]
 
* [http://yambopy.readthedocs.io/en/devel/tutorial.html Efficient many body calculations with the Yambo-python tool]
 
 
 
<!--* [[How to obtain the absorption spectrum of a bulk material: h-BN]] - this would basically be a list of links of particular modules -->
<!--* [[Optical properties and excitons in a bidimensional material: h-BN 2D]] - this would basically be a list of links of particular modules -->
 
== Modules ==
An alternative way to learn Yambo is through a more detailed look at our ''[[Modules|documentation modules]]''. These provide a focus on the input parameters, run time behaviour, and underlying physics behind each yambo task or runlevel. Although they can be followed separately, they are better followed as part of the more structured tutorials given above. The modules are grouped as follows:
* [[Modules#Generating the Yambo databases|Generating the Yambo databases]]
* [[Modules#How to use Yambo|How to use Yambo]]
* [[Modules#Tricks for low dimensional systems|Tricks for low dimensional systems]]
* [[Modules#Linear response and screening|Linear response and screening]]
* [[Modules#Quasiparticle properties|Quasiparticle properties]]
* [[Modules#Two-particle excitations|Two-particle excitations]]
* [[Modules#Parallelism|Parallelism]]
 
==Other stuff and old stuff==
* [[Parallelization]]
* [[Yambopy]]
* [[GW]] (quick port just for demo purposes)
* [[Parallelization]] (quick port just for demo purposes)
 
<br>
{| style="width:100%" border="1"
|style="width:15%; text-align:left"|Prev:
|style="width:70%; text-align:center"|Now: [[Tutorials|Tutorials Home]]
|style="width:15%; text-align:right"|Next: [[First_steps:_a_walk_through_from_DFT_to_optical_properties|First steps]]
|-
|}

Latest revision as of 15:36, 31 October 2024

The tutorials are meant to give some introductory background to the key concepts behind Yambo. Practical topics such as convergence are also discussed. Nonetheless, users are invited to first read and study the background material in order to get familiar with the fundamental physical quantities. We recommend that you complete the tutorials before trying to use Yambo for your system.

You must have a working environment where both Yambo and Yambopy (and eventually QE or abinit) are installed. If you are starting out with Yambo, we suggest to follow this page with a detailed explanation about how to set up all you need for running the tutorials.

In the left main menu you can access the different Tutorials sections: