~jose-soler/siesta/unfolding

« back to all changes in this revision

Viewing changes to Docs/tbtrans.tex

  • Committer: Jose M Soler
  • Date: 2018-10-29 18:09:36 UTC
  • mfrom: (718.1.26 trunk)
  • Revision ID: jose.soler@uam.es-20181029180936-7p8z2sbde0mkvxoz
Merged with trunk-744

modified:
  Docs/Contributors.txt
  Docs/siesta.bib
  Docs/siesta.tex
  Docs/tbtrans.tex
  Docs/tex/fdf.tex
  Docs/tex/setup.tex
  RELEASE_NOTES
  Src/final_H_f_stress.F
  Src/grdsam.F
  Src/m_ts_options.F90
  Src/m_ts_tri_init.F90
  Src/m_ts_weight.F90
  Src/save_density_matrix.F90
  Src/state_init.F
  Util/TS/TBtrans/Makefile
  Util/TS/TBtrans/m_tbt_tri_init.F90

Show diffs side-by-side

added added

removed removed

Lines of Context:
13
13
% Include settings appropriate for tbtrans
14
14
\input{tex/init.tex}
15
15
 
 
16
% Title
 
17
\title{TBtrans manual 4.1-b4}
 
18
 
16
19
% Set the date
17
20
\date{October 16, 2018}
18
21
 
 
22
% Specify Authors
 
23
\author{%
 
24
    Nick R. Papior%
 
25
}
 
26
 
 
27
% Ensure the information is written in the PDF (see tex/setup.tex)
 
28
\setpdfmetadata
 
29
 
19
30
\begin{document}
20
31
 
21
32
% TITLE PAGE --------------------------------------------------------------
62
73
L. Mozos, Jeremy Taylor, Pablo Ordejon and Kurt Stokbro. The current
63
74
\tbtrans\ is implemented by the following contributors:
64
75
 
65
 
Nick R. Papior.
 
76
\vspace{0.5cm}
 
77
 
 
78
\hbox{ \hskip 0.1cm
 
79
\begin{tabular}{ll}
 
80
 
 
81
  Nick R\"ubner Papior &
 
82
  \textit{Technical University of Denmark} \\ \\
 
83
 
 
84
\end{tabular}
 
85
}
66
86
 
67
87
 
68
88
\tableofcontents
857
877
  The COOP curves are orbital, energy and $k$-resolved and they may
858
878
  thus result in very large output files.
859
879
 
860
 
  \note \fdf{TBT.DOS!Gf} has to be \fdftrue\ for this to be
861
 
  calculated, otherwise a warning will be issued.
862
 
 
863
880
  \note Untested!
864
881
 
865
882
\end{fdflogicalF}
923
940
  calculated. 
924
941
 
925
942
  This generates \sysfile{TEIG\_<1>\_<2>} and
926
 
  \sysfile{AVTEIG\_<1>\_<2>}, however, only for the non-equivalent
927
 
  electrode combinations (\tbtrans\ intrinsically assumes
928
 
  time-reversal symmetry).
929
 
 
 
943
  \sysfile{AVTEIG\_<1>\_<2>}, possibly \sysfile{CEIG\_<1>} and
 
944
  \sysfile{AVCEIG\_<1>}. The former is for two different electrodes
 
945
  $i\neq j$, while the latter is for electrode $i=j$.
 
946
  
930
947
  \note if you specify a number of eigenvalues above the available
931
948
  number of eigenvalues, \tbtrans\ will automatically truncate it to a
932
949
  reasonable number.
933
950
 
 
951
  \note The transmission eigenvalues for $N>2$ systems is not fully
 
952
  understood and the transmission eigenvalues calculated in \tbtrans\ is
 
953
  done by diagonalizing this sub-matrix:
 
954
  \begin{equation}
 
955
    \mathbf G \boldsymbol \Gamma_i \mathbf G^\dagger \boldsymbol \Gamma_j.
 
956
  \end{equation}
 
957
 
934
958
\end{fdfentry}
935
959
 
936
960
\begin{fdflogicalF}{TBT.T!All}
998
1022
  \end{equation}
999
1023
  where we have left out the pre-factor ($e/\hbar$)
1000
1024
  intentionally. \sisl\ may be used to analyze the orbital currents
1001
 
  and enables easy transformation of orbital currents to
1002
 
  bond currents and activity currents.
 
1025
  and enables easy transformation of orbital currents to bond currents
 
1026
  and activity currents\cite{Papior2017}.
1003
1027
 
1004
1028
  \note this requires \tbtrans\ to be compiled with NetCDF-4 support,
1005
1029
  see Sec.~\ref{sec:arch-make}.
1270
1294
 
1271
1295
    \end{fdfoptions}
1272
1296
 
1273
 
    \option[\fdfvalue{siesta-method}]%
 
1297
    \option[\fdfvalue*{siesta-method}]%
1274
1298
 
1275
1299
    One may also use the typical \fdf*{kgrid\_Monkhorst\_Pack} method
1276
1300
    of input as done in \siesta. This is a $3\times3$ block such as:
1835
1859
flag controls the partitioning for the device region.
1836
1860
 
1837
1861
 
 
1862
\begin{fdflogicalF}{TBT!Analyze}
 
1863
 
 
1864
  As the pivoting algorithm \emph{highly} influences the performance
 
1865
  and throughput of the transport calculation it is crucial to select
 
1866
  the best performing algorithm available. This option tells \tbtrans\
 
1867
  to analyze the pivoting table for nearly all the implemented
 
1868
  algorithms and print-out information about them.
 
1869
 
 
1870
  \note we advice users to \emph{always} run an analyzation step prior
 
1871
  to actual calculation and select the \emph{best} BTD format. This
 
1872
  analyzing step is very fast and can be performed on small
 
1873
  work-station computers, even on systems of $\gg10,000$ orbitals.
 
1874
 
 
1875
  To run the analyzing step you may do:
 
1876
  \begin{shellexample}
 
1877
    tbtrans -fdf TBT.Analyze RUN.fdf > analyze.out
 
1878
  \end{shellexample}
 
1879
  note that there is little gain on using MPI and it should complete
 
1880
  within a few minutes, no matter the number of orbitals.
 
1881
 
 
1882
  Choosing the best one may be difficult. Generally one should choose
 
1883
  the pivoting scheme that uses the least amount of memory. However,
 
1884
  one should also choose the method with the largest block-size being
 
1885
  as small as possible. As an example:
 
1886
  \begin{shellexample}
 
1887
TBT.BTD.Pivot.Device atom+GPS
 
1888
...
 
1889
    BTD partitions (7): 
 
1890
     [ 2984, 2776, 192, 192, 1639, 4050, 105 ]
 
1891
    BTD matrix block size [max] / [average]: 4050 /   1705.429
 
1892
    BTD matrix elements in % of full matrix:   47.88707 %
 
1893
 
 
1894
TBT.BTD.Pivot.Device atom+GGPS
 
1895
...
 
1896
    BTD partitions (6): 
 
1897
     [ 2880, 2916, 174, 174, 2884, 2910 ]
 
1898
    BTD matrix block size [max] / [average]: 2916 /   1989.667
 
1899
    BTD matrix elements in % of full matrix:   48.62867 %
 
1900
 
 
1901
  \end{shellexample}
 
1902
  Although the GPS method uses the least amount of memory, the GGPS
 
1903
  will likely perform better as the largest block in GPS is $4050$
 
1904
  vs. $2916$ for the GGPS method. 
 
1905
 
 
1906
\end{fdflogicalF}
 
1907
 
 
1908
 
1838
1909
\begin{fdfentry}{TBT.BTD!Pivot.Device}[string]<atom-\nonvalue{largest
1839
1910
      overlapping electrode}>
1840
1911
 
1932
2003
  
1933
2004
\end{fdfentry}
1934
2005
 
1935
 
\begin{fdflogicalF}{TBT!Analyze}
1936
 
 
1937
 
  As the pivoting algorithm \emph{highly} influences the performance
1938
 
  and throughput of the transport calculation it is crucial to select
1939
 
  the best performing algorithm available. This option tells \tbtrans\
1940
 
  to analyze the pivoting table for nearly all the implemented
1941
 
  algorithms and print-out information about them.
1942
 
 
1943
 
  \note we advice users to \emph{always} run an analyzation step prior
1944
 
  to actual calculation and select the \emph{best} BTD format. This
1945
 
  analyzing step is very fast and may be performed on small
1946
 
  work-station computers, even on systems of $\gg10,000$ orbitals.
1947
 
 
1948
 
  To run the analyzing step you may do:
1949
 
  \begin{shellexample}
1950
 
    tbtrans -fdf TBT.Analyze RUN.fdf > analyze.out
1951
 
  \end{shellexample}
1952
 
  note that there is little gain on using MPI and it should complete
1953
 
  within a few minutes, no matter the number of orbitals.
1954
 
 
1955
 
  Choosing the best one may be difficult. Generally one should choose
1956
 
  the pivoting scheme that uses the least amount of memory. However,
1957
 
  one should also choose the method with the largest block-size being
1958
 
  as small as possible. As an example:
1959
 
  \begin{shellexample}
1960
 
TBT.BTD.Pivot.Device atom+GPS
1961
 
...
1962
 
    BTD partitions (7): 
1963
 
     [ 2984, 2776, 192, 192, 1639, 4050, 105 ]
1964
 
    BTD matrix block size [max] / [average]: 4050 /   1705.429
1965
 
    BTD matrix elements in % of full matrix:   47.88707 %
1966
 
 
1967
 
TBT.BTD.Pivot.Device atom+GGPS
1968
 
...
1969
 
    BTD partitions (6): 
1970
 
     [ 2880, 2916, 174, 174, 2884, 2910 ]
1971
 
    BTD matrix block size [max] / [average]: 2916 /   1989.667
1972
 
    BTD matrix elements in % of full matrix:   48.62867 %
1973
 
 
1974
 
  \end{shellexample}
1975
 
  Although the GPS method uses the least amount of memory, the GGPS
1976
 
  will likely perform better as the largest block in GPS is $4050$
1977
 
  vs. $2916$ for the GGPS method. 
1978
 
 
1979
 
\end{fdflogicalF}
1980
 
 
1981
 
 
1982
2006
\begin{fdflogicalF}{TBT.BTD!Pivot.Graphviz}
1983
2007
 
1984
2008
  Create Graphviz\footnote{\url{www.graphviz.org}} compatible input