Input file generation: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
In this tutorial you will learn how to generate and modify an input file with Yambo. | |||
== Prerequisites == | |||
'''Previous modules''' | |||
* Initialization for [[Bulk_material:_h-BN|bulk hBN]]. | |||
'''You will need''': | |||
* The <code>SAVE</code> databases for bulk hBN ('''Download here''') | |||
* The <code>yambo</code> executable | |||
== Launch the input file generator == | |||
Yambo generates its own input files: you just tell the code what you want to calculate by launching Yambo along with one or more '''lowercase''' options. | Yambo generates its own input files: you just tell the code what you want to calculate by launching Yambo along with one or more '''lowercase''' options. | ||
(Uppercase options are considered in the [[Command_line_options|following section]]). | (Uppercase options are considered in the [[Command_line_options|following section]]). | ||
Line 25: | Line 37: | ||
yambo -x -g n -p p Perform a Hartree-Fock and GW calculation using a plasmon-pole approximation | yambo -x -g n -p p Perform a Hartree-Fock and GW calculation using a plasmon-pole approximation | ||
After launching Yambo with a lowercase option, Yambo will generate an appropriate input file (default name: <code>yambo.in</code>) and launch the <code>vi</code> editor. ( | After launching Yambo with a lowercase option, Yambo will generate an appropriate input file (default name: <code>yambo.in</code>) and launch the <code>vi</code> editor. (Editor choice can be changed at configure; alternatively you can use the <code>-Q</code> run time option). | ||
Yambo will also read various parameters from existing database files and/or input files and use them to suggest values to use. Let's illustrate this by calculating the static screening for bulk hBN. | |||
cd YAMBO_TUTORIALS/hBN/YAMBO | |||
yambo ''(initialize, if you haven't already done so)'' | |||
yambo -b | |||
and look at the generated input file. Inside you will see a suggested range of bands, which Yambo guesses from the core <code>ns.db1</core> database. | |||
% BndsRnXd | % BndsRnXd | ||
1 | 100 | # [Xd] Polarization function bands | 1 | 100 | # [Xd] Polarization function bands | ||
% | % | ||
Change this to | |||
% BndsRnXd | |||
8 | 9 | # [Xd] Polarization function bands | |||
% | |||
and exit the editor. Launch the input file generator again: | |||
yambo -b | |||
and notice that your chosen values remain: they are simply read from the <code>yambo.in</code> file. Now launch the code: | |||
yambo | |||
After a few seconds, the code finishes. If you now look inside the SAVE folder, you will see several new databases: | |||
$ ls SAVE | |||
ns.db1 ns.wf '''ndb.dip_iR_and_P''' '''ndb.em1s''' ns.gops ns.kindx [...] | |||
Delete the input file, and launch a new calculation: optical response in the independent particle approximation. | |||
$ rm yambo.in | |||
$ yambo -o c | |||
and look at the input file: | |||
% BndsRnXd | |||
8 | 9 | # [Xd] Polarization function bands | |||
% | |||
Here, Yambo has read from the <code>ndb.dip_iR_and_P</code> database and suggests to use the previous values. If at this stage, you decide to change these values, Yambo will ''recompute'' the relevant database. | |||
== Links == | == Links == | ||
* [[Command_line_options|Command line options]] | * [[Command_line_options|Command line options]] | ||
* [[Tutorials|Back to tutorials menu]] | * [[Tutorials|Back to tutorials menu]] |
Revision as of 20:09, 23 March 2017
In this tutorial you will learn how to generate and modify an input file with Yambo.
Prerequisites
Previous modules
- Initialization for bulk hBN.
You will need:
- The
SAVE
databases for bulk hBN (Download here) - The
yambo
executable
Launch the input file generator
Yambo generates its own input files: you just tell the code what you want to calculate by launching Yambo along with one or more lowercase options. (Uppercase options are considered in the following section).
To see the list of runlevels and options, run yambo -h
or better,
$ yambo -H Tool: yambo 4.1.2 rev.14024 Description: A shiny pot of fun and happiness [C.D.Hogan] [Upper case options] -i :Initialization -o <opt> :Optics [opt=(c)hi is (G)-space / (b)se is (eh)-space ] -k <opt> :Kernel [opt=hartree/alda/lrc/hf/sex] -y <opt> :BSE solver [opt=h/d/(p/f)i] (h)aydock/(d)iagonalization/(i)nversion -r :Coulomb potential -x :Hartree-Fock Self-energy and local XC -d :Dynamical Inverse Dielectric Matrix -b :Static Inverse Dielectric Matrix -p <opt> :GW approximations [opt=(p)PA/(c)HOSEX] -g <opt> :Dyson Equation solver [opt=(n)ewton/(s)ecant/(g)reen] -l :GoWo Quasiparticle lifetimes -a :ACFDT Total Energy
Note that multiple options can be used together (in some cases this is actually a necessity). For instance:
yambo -o c -k hartree Calculate optical spectra including local field effects (Hartree approximation) yambo -x -g n -p p Perform a Hartree-Fock and GW calculation using a plasmon-pole approximation
After launching Yambo with a lowercase option, Yambo will generate an appropriate input file (default name: yambo.in
) and launch the vi
editor. (Editor choice can be changed at configure; alternatively you can use the -Q
run time option).
Yambo will also read various parameters from existing database files and/or input files and use them to suggest values to use. Let's illustrate this by calculating the static screening for bulk hBN.
cd YAMBO_TUTORIALS/hBN/YAMBO yambo (initialize, if you haven't already done so) yambo -b
and look at the generated input file. Inside you will see a suggested range of bands, which Yambo guesses from the core ns.db1</core> database.
% BndsRnXd
1 | 100 | # [Xd] Polarization function bands
%
Change this to
% BndsRnXd
8 | 9 | # [Xd] Polarization function bands
%
and exit the editor. Launch the input file generator again:
yambo -b
and notice that your chosen values remain: they are simply read from the yambo.in
file. Now launch the code:
yambo
After a few seconds, the code finishes. If you now look inside the SAVE folder, you will see several new databases:
$ ls SAVE
ns.db1 ns.wf ndb.dip_iR_and_P ndb.em1s ns.gops ns.kindx [...]
Delete the input file, and launch a new calculation: optical response in the independent particle approximation.
$ rm yambo.in
$ yambo -o c
and look at the input file:
% BndsRnXd
8 | 9 | # [Xd] Polarization function bands
%
Here, Yambo has read from the ndb.dip_iR_and_P
database and suggests to use the previous values. If at this stage, you decide to change these values, Yambo will recompute the relevant database.
Links