Tutorials: Difference between revisions

From The Yambo Project
Jump to navigation Jump to search
mNo edit summary
 
(178 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@bellatrix.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.
 
====Day 1: Introduction====
* [[First steps: a walk through from DFT to optical properties]]
====Day 2: Quasiparticles in the GW approximation====
* [[How to obtain the quasi-particle band structure of a bulk material: h-BN]]
====Day 3: Using Yambo in Parallel====
* [[GW_parallel_strategies|Parallel GW]]: strategies for running Yambo in parallel
* [[GW_corrections_for_diamond|GW on diamond]]: use Yambo in parallel to converge a GW calculation for diamond
 
====Day 4: 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-->
 
====Day 5: Yambo-python driver====
* [[First steps in Yambopy]]
* [[GW tutorial. Convergence and approximations (BN)]]
* [[Bethe-Salpeter equation tutorial. Optical absorption (BN)]]
 
== 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.
 
==Other stuff and old stuff==
* [[GW]]
* [[Parallelization]]
* [[Yambopy]]
 
<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: