3
0
mirror of https://github.com/triqs/dft_tools synced 2024-06-25 22:52:20 +02:00

Updated W90 converter: bug fixes for SOC, code restructured, more tests for add_lambda and bloch_basis

This commit is contained in:
mmerkel 2022-02-01 11:06:40 +01:00 committed by Alexander Hampel
parent 50e50da931
commit 0b72ad7fce
35 changed files with 886614 additions and 960 deletions

View File

@ -34,7 +34,7 @@ Once these two files are available, one can use the converter as follows::
Converter.convert_dft_input()
The converter input :file:`seedname.inp` is a simple text file with
the following format (do not use the text/comments in your input file):
the following format:
.. literalinclude:: images_scripts/LaVO3_w90.inp
@ -92,7 +92,7 @@ rotated by (approximatively) 45 degrees with respect to the axes of the `Pbnm` c
The last line of :file:`seedname.inp` is the DFT Fermi energy (in eV), which is subtracted from the onsite
terms in the :file:`seedname_hr.dat` file. This is recommended since some functions in DFTTools implicitly
assume a Fermi energy of 0 eV.
assume a Fermi energy of 0 eV.
In the orbital mode the Converter supports the addition of a local spin-orbit term, if the Wannier Hamiltonian
describes a t\ :sub:`2g` manifold. Currently, the correct interaction term is only implemented if the default
@ -102,6 +102,11 @@ The coupling strength can be specified as ``add_lambda = [lambda_x, lambda_y, la
representative of the orbital coupling terms perpendicular to :math:`[x, y, z]` i.e. :math:`[d_{yz}, d_{xz}, d_{xy}]`,
respectively. Note that it is required to have ``SO=0`` and ``SP=1``.
For spin-orbit coupled systems (from DFT or with the add_lambda parameter),
the orbitals are resorted internally by the converter to the triqs order so, e.g.,
the order from above would become
:math:`d_{xz,\uparrow}, d_{xz,\downarrow}, d_{yz,\uparrow}, d_{yz,\downarrow}, d_{xy,\uparrow}, d_{xy,\downarrow}`.
Band mode
----------------
@ -151,6 +156,9 @@ so far tests have not shown any issue, but one must be careful in those cases
(the converter will print a warning message and turns off the use of rotation matrices,
which leads to an incorrect mapping between equivalent correlated shells).
Note that in the case of spin-orbit coupling, these rotation matrices in general
mix spin and orbital components.
Current limitations
----------------------------------------------
@ -159,6 +167,6 @@ The current implementation of the Wannier90 Converter has some limitations:
* Since :program:`wannier90` does not make use of symmetries (symmetry-reduction
of the :math:`\mathbf{k}`-point grid is not possible), the converter always
sets ``symm_op=0`` (see the :ref:`hdfstructure` section).
* The spin-polarized case (``SP=1``) is not yet tested.
* The spin-polarized case (``SP=1``) is neither completely implemented nor tested.
* ``proj_mat_all`` are not used, so there are no projectors onto the
uncorrelated orbitals for now.

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ foreach(file ${all_h5_ref_files})
endforeach()
# Copy other files
FILE(COPY SrVO3.pmat SrVO3.struct SrVO3.outputs SrVO3.oubwin SrVO3.ctqmcout SrVO3.symqmc SrVO3.sympar SrVO3.parproj hk_convert_hamiltonian.hk LaVO3-Pnma_hr.dat LaVO3-Pnma.inp LaVO3-Pnma_ef_hr.dat LaVO3-Pnma_ef.inp LaVO3-Pbnm.inp LaVO3-Pbnm_hr.dat EFERMI.OUT EIGVAL.OUT GEOMETRY.OUT KPOINTS.OUT LATTICE.OUT PROJ.OUT SYMCRYS.OUT WANPROJ_L02_S03_A0001.OUT DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
FILE(COPY SrVO3.pmat SrVO3.struct SrVO3.outputs SrVO3.oubwin SrVO3.ctqmcout SrVO3.symqmc SrVO3.sympar SrVO3.parproj hk_convert_hamiltonian.hk w90_convert EFERMI.OUT EIGVAL.OUT GEOMETRY.OUT KPOINTS.OUT LATTICE.OUT PROJ.OUT SYMCRYS.OUT WANPROJ_L02_S03_A0001.OUT DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
# List of all tests

View File

@ -1,7 +0,0 @@
0 3 3 2
8.0
4
0 0 2 3 0 0
1 0 2 3 0 0
2 0 2 3 0 0
3 0 2 3 0 0

View File

@ -49,7 +49,7 @@ for orb in range(SK.n_corr_shells):
assert_arrays_are_close(t_solver_eal[orb][block],np.identity(3), precision=1e-6)
assert_arrays_are_close(t_solver_dm[orb][block],np.identity(3), precision=1e-6)
SK = SumkDFT(hdf_file = 'w90_convert_wannier.ref.h5', use_dft_blocks=True)
SK = SumkDFT(hdf_file = 'w90_convert/LaVO3-Pnma_wannier.ref.h5', use_dft_blocks=True)
t_sumk_eal, t_solver_eal, t_sumk_dm, t_solver_dm = call_diagonalize(SK)

View File

@ -1,25 +0,0 @@
import unittest
import numpy as np
import sys
sys.path.insert(1, '../python/converters/')
from triqs_dft_tools.converters.wannier90 import Wannier90Converter
from triqs_dft_tools import SumkDFT
class test_w90_conv(unittest.TestCase):
def test_hopping(self):
conv1 = Wannier90Converter(seedname='LaVO3-Pnma')
conv1.convert_dft_input()
SK1 = SumkDFT(hdf_file='LaVO3-Pnma.h5')
conv2 = Wannier90Converter(seedname='LaVO3-Pnma_ef')
conv2.convert_dft_input()
SK2 = SumkDFT(hdf_file='LaVO3-Pnma_ef.h5')
for ik in range(SK1.n_k):
self.assertTrue(np.all(SK1.hopping[ik,0] - conv2.fermi_energy*np.identity(SK1.n_orbitals[ik][0]) - SK2.hopping[ik,0] < 1e-12))
if __name__ == '__main__':
unittest.main()

View File

@ -21,23 +21,133 @@
################################################################################
from triqs_dft_tools.converters import *
from h5 import *
from triqs.utility.h5diff import h5diff
import triqs.utility.mpi as mpi
import os
import sys
from triqs_dft_tools.converters import Wannier90Converter
from triqs_dft_tools import SumkDFT
from triqs.utility import h5diff
from triqs.utility import mpi
from h5 import HDFArchive
def custom_h5diff(filename1, filename2):
"""
Compares the dft_input section of two h5 archives, omitting the rot_mat.
This is useful if there are degenerate eigenvalues where the rot_mat ends
up depending on the diagonalization algorithm.
"""
with HDFArchive(filename1, 'r') as out, HDFArchive(filename2, 'r') as ref:
key = 'dft_input'
a = out[key]
b = ref[key]
if sorted(list(a.keys())) != sorted(list(b.keys())):
h5diff.failures.append('Two archive groups \'%s\' with different keys \n %s \n vs\n %s'%(key,list(a.keys()), list(b.keys())))
for k in a.keys():
# We cannot compare the rot_mats here because of degeneracies from TR symmetry
if k == 'rot_mat':
continue
h5diff.compare(key + '/'+ k, a[k], b[k], 2, 1e-6)
if h5diff.failures:
print('-'*50, file=sys.stderr )
print('-'*20 + ' FAILED ' + '-'*20, file=sys.stderr)
print('-'*50, file=sys.stderr)
for x in h5diff.failures:
print(x, file=sys.stderr)
print('-'*50, file=sys.stderr)
raise RuntimeError('FAILED')
subfolder = 'w90_convert/'
# --------------------- LaVO3 tests, four correlated sites, one impurity ---------------------
# test rot_mat_type='hloc_diag'
Converter = Wannier90Converter(seedname='LaVO3-Pbnm',hdf_filename='w90_convert_hloc_diag.out.h5', rot_mat_type='hloc_diag')
Converter.convert_dft_input()
seedname = subfolder+'LaVO3-Pbnm'
converter = Wannier90Converter(seedname=seedname, hdf_filename=seedname+'_hloc_diag.out.h5',
rot_mat_type='hloc_diag')
converter.convert_dft_input()
if mpi.is_master_node():
h5diff("w90_convert_hloc_diag.out.h5","w90_convert_hloc_diag.ref.h5")
h5diff.h5diff(seedname+'_hloc_diag.out.h5', seedname+'_hloc_diag.ref.h5')
# test rot_mat_type='wannier'
Converter = Wannier90Converter(seedname='LaVO3-Pnma',hdf_filename='w90_convert_wannier.out.h5', rot_mat_type='wannier')
Converter.convert_dft_input()
seedname = subfolder+'LaVO3-Pnma'
converter = Wannier90Converter(seedname=seedname, hdf_filename=seedname+'_wannier.out.h5',
rot_mat_type='wannier')
converter.convert_dft_input()
if mpi.is_master_node():
h5diff("w90_convert_wannier.out.h5","w90_convert_wannier.ref.h5")
h5diff.h5diff(seedname+'_wannier.out.h5', seedname+'_wannier.ref.h5')
# test add_lambda
seedname = subfolder+'LaVO3-Pnma'
converter = Wannier90Converter(seedname=seedname, hdf_filename=seedname+'_lambda.out.h5',
rot_mat_type='wannier', add_lambda=(.2, .2, .2))
converter.convert_dft_input()
if mpi.is_master_node():
custom_h5diff(seedname+'_lambda.out.h5', seedname+'_lambda.ref.h5')
# --------------------- Collinear SrVO3 tests, two correlated sites (V t2g and V eg)
# and uncorrelated orbitals (O p), two impurities ---------------------
# test svo, bloch_basis False
seedname = subfolder+'SrVO3_col'
converter = Wannier90Converter(seedname=seedname, hdf_filename=seedname+'_wannierbasis.out.h5',
rot_mat_type='hloc_diag', bloch_basis=False)
converter.convert_dft_input()
if mpi.is_master_node():
h5diff.h5diff(seedname+'_wannierbasis.out.h5', seedname+'_wannierbasis.ref.h5')
# test svo, bloch_basis True
if mpi.is_master_node():
os.rename(seedname + '.OUTCAR', subfolder + 'OUTCAR')
os.rename(seedname + '.LOCPROJ', subfolder + 'LOCPROJ')
mpi.barrier()
try:
converter = Wannier90Converter(seedname=seedname, hdf_filename=seedname+'_blochbasis.out.h5',
rot_mat_type='hloc_diag', bloch_basis=True)
converter.convert_dft_input()
fermi_energy = converter.fermi_energy
finally:
if mpi.is_master_node():
os.rename(subfolder + 'OUTCAR', seedname + '.OUTCAR')
os.rename(subfolder + 'LOCPROJ', seedname + '.LOCPROJ')
if mpi.is_master_node():
h5diff.h5diff(seedname+'_blochbasis.out.h5', seedname+'_blochbasis.ref.h5')
# Compares effective atomic levels between wannier and bloch basis
sum_k_wannier = SumkDFT(seedname+'_wannierbasis.out.h5')
eff_levels_wannier = sum_k_wannier.eff_atomic_levels()
sum_k_bloch = SumkDFT(seedname+'_blochbasis.out.h5')
sum_k_bloch.set_mu(-fermi_energy)
eff_levels_bloch = sum_k_bloch.eff_atomic_levels()
h5diff.compare('', eff_levels_wannier, eff_levels_bloch, 0, 1e-5)
if h5diff.failures :
print('-'*50, file=sys.stderr)
print('-'*20 + ' FAILED ' + '-'*20, file=sys.stderr)
print('-'*50, file=sys.stderr)
for x in h5diff.failures:
print(x, file=sys.stderr)
print('-'*50, file=sys.stderr)
raise RuntimeError('FAILED')
# --------------------- Collinear SrVO3 tests, one correlated site and uncorrelated orbitals, one impurity ---------------------
# test SVO, bloch_basis False and add_lambda
seedname = subfolder+'SrVO3_t2g_col'
converter = Wannier90Converter(seedname=seedname, hdf_filename=seedname+'_lambda.out.h5',
rot_mat_type='wannier', bloch_basis=False, add_lambda=(.3, .3, .3))
converter.convert_dft_input()
if mpi.is_master_node():
h5diff.h5diff(seedname+'_lambda.out.h5', seedname+'_lambda.ref.h5')
# --------------------- SOC SrVO3 tests, one correlated site and uncorrelated orbitals, one impurity ---------------------
seedname = subfolder+'SrVO3_soc'
converter = Wannier90Converter(seedname=seedname, hdf_filename=seedname+'.out.h5',
rot_mat_type='wannier', bloch_basis=False)
converter.convert_dft_input()
if mpi.is_master_node():
h5diff.h5diff(seedname+'.out.h5', seedname+'.ref.h5')

View File

@ -0,0 +1,7 @@
0 3 3 2 # specification of the k-mesh
8.0 # electron density
4 # number of atoms
0 0 2 3 0 0 # atom, sort, l, dim, SO, irep
1 0 2 3 0 0 # atom, sort, l, dim, SO, irep
2 0 2 3 0 0 # atom, sort, l, dim, SO, irep
3 0 2 3 0 0 # atom, sort, l, dim, SO, irep

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,5 @@
-1
1.0
2
0 0 2 3 0 0
1 1 2 2 0 0

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,590 @@
+---------------------------------------------------+
| |
| WANNIER90 |
| |
+---------------------------------------------------+
| |
| Welcome to the Maximally-Localized |
| Generalized Wannier Functions code |
| http://www.wannier.org |
| |
| |
| Wannier90 Developer Group: |
| Giovanni Pizzi (EPFL) |
| Valerio Vitale (Cambridge) |
| David Vanderbilt (Rutgers University) |
| Nicola Marzari (EPFL) |
| Ivo Souza (Universidad del Pais Vasco) |
| Arash A. Mostofi (Imperial College London) |
| Jonathan R. Yates (University of Oxford) |
| |
| For the full list of Wannier90 3.x authors, |
| please check the code documentation and the |
| README on the GitHub page of the code |
| |
| |
| Please cite |
| |
| [ref] "Wannier90 as a community code: |
| new features and applications", |
| G. Pizzi et al., J. Phys. Cond. Matt. 32, |
| 165902 (2020). |
| http://doi.org/10.1088/1361-648X/ab51ff |
| |
| in any publications arising from the use of |
| this code. For the method please cite |
| |
| [ref] "Maximally Localized Generalised Wannier |
| Functions for Composite Energy Bands" |
| N. Marzari and D. Vanderbilt |
| Phys. Rev. B 56 12847 (1997) |
| |
| [ref] "Maximally Localized Wannier Functions |
| for Entangled Energy Bands" |
| I. Souza, N. Marzari and D. Vanderbilt |
| Phys. Rev. B 65 035109 (2001) |
| |
| |
| Copyright (c) 1996-2020 |
| The Wannier90 Developer Group and |
| individual contributors |
| |
| Release: 3.1.0 5th March 2020 |
| |
| This program is free software; you can |
| redistribute it and/or modify it under the terms |
| of the GNU General Public License as published by |
| the Free Software Foundation; either version 2 of |
| the License, or (at your option) any later version|
| |
| This program is distributed in the hope that it |
| will be useful, but WITHOUT ANY WARRANTY; without |
| even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| General Public License for more details. |
| |
| You should have received a copy of the GNU General|
| Public License along with this program; if not, |
| write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
+---------------------------------------------------+
| Execution started on 6Jan2022 at 14:50:16 |
+---------------------------------------------------+
******************************************************************************
* -> Using CODATA 2006 constant values *
* (http://physics.nist.gov/cuu/Constants/index.html) *
* -> Using Bohr value from CODATA *
******************************************************************************
Running in serial (with serial executable)
------
SYSTEM
------
Lattice Vectors (Ang)
a_1 3.770000 0.000000 0.000000
a_2 0.000000 3.842090 0.000000
a_3 0.000000 0.000000 3.960000
Unit Cell Volume: 57.35933 (Ang^3)
Reciprocal-Space Vectors (Ang^-1)
b_1 1.666627 0.000000 0.000000
b_2 0.000000 1.635356 0.000000
b_3 0.000000 0.000000 1.586663
*----------------------------------------------------------------------------*
| Site Fractional Coordinate Cartesian Coordinate (Ang) |
+----------------------------------------------------------------------------+
| Sr 1 0.00000 0.00000 0.00000 | 0.00000 0.00000 0.00000 |
| V 1 0.50000 0.50000 0.50000 | 1.88500 1.92104 1.98000 |
| O 1 0.50000 0.50000 0.00000 | 1.88500 1.92104 0.00000 |
| O 2 0.00000 0.50000 0.50000 | 0.00000 1.92104 1.98000 |
| O 3 0.50000 0.00000 0.50000 | 1.88500 0.00000 1.98000 |
*----------------------------------------------------------------------------*
------------
K-POINT GRID
------------
Grid size = 9 x 9 x 9 Total points = 729
*---------------------------------- MAIN ------------------------------------*
| Number of Wannier Functions : 14 |
| Number of Objective Wannier Functions : 14 |
| Number of input Bloch states : 25 |
| Output verbosity (1=low, 5=high) : 1 |
| Timing Level (1=low, 5=high) : 1 |
| Optimisation (0=memory, 3=speed) : 3 |
| Length Unit : Ang |
| Post-processing setup (write *.nnkp) : F |
| Using Gamma-only branch of algorithms : F |
*----------------------------------------------------------------------------*
*------------------------------- WANNIERISE ---------------------------------*
| Total number of iterations : 0 |
| Number of CG steps before reset : 5 |
| Trial step length for line search : 2.000 |
| Convergence tolerence : 0.100E-08 |
| Convergence window : 10 |
| Iterations between writing output : 1 |
| Iterations between backing up to disk : 100 |
| Write r^2_nm to file : F |
| Write xyz WF centres to file : F |
| Write on-site energies <0n|H|0n> to file : F |
| Use guiding centre to control phases : T |
| Use phases for initial projections : F |
| Iterations before starting guiding centres: 0 |
| Iterations between using guiding centres : 1 |
*----------------------------------------------------------------------------*
*------------------------------- DISENTANGLE --------------------------------*
| Using band disentanglement : T |
| Total number of iterations : 2000 |
| Mixing ratio : 0.500 |
| Convergence tolerence : 1.000E-09 |
| Convergence window : 10 |
*----------------------------------------------------------------------------*
*-------------------------------- PLOTTING ----------------------------------*
| Plotting interpolated bandstructure : T |
| Number of K-path sections : 3 |
| Divisions along first K-path section : 40 |
| Output format : gnuplot |
| Output mode : s-k |
*----------------------------------------------------------------------------*
| K-space path sections: |
| From: G 0.000 0.000 0.000 To: X 0.000 0.500 0.000 |
| From: X 0.000 0.500 0.000 To: M 0.500 0.500 0.000 |
| From: M 0.500 0.500 0.000 To: G 0.000 0.000 0.000 |
*----------------------------------------------------------------------------*
| Plotting Hamiltonian in WF basis : T |
*----------------------------------------------------------------------------*
Time to read parameters 0.120 (sec)
*---------------------------------- K-MESH ----------------------------------*
+----------------------------------------------------------------------------+
| Distance to Nearest-Neighbour Shells |
| ------------------------------------ |
| Shell Distance (Ang^-1) Multiplicity |
| ----- ----------------- ------------ |
| 1 0.176296 2 |
| 2 0.181706 2 |
| 3 0.185181 2 |
| 4 0.253175 4 |
| 5 0.255680 4 |
| 6 0.259440 4 |
| 7 0.313671 8 |
| 8 0.352592 2 |
| 9 0.363412 2 |
| 10 0.370362 2 |
| 11 0.396659 4 |
| 12 0.398262 4 |
| 13 0.403917 4 |
| 14 0.407873 4 |
| 15 0.410180 4 |
| 16 0.412535 4 |
| 17 0.437756 8 |
| 18 0.444343 8 |
| 19 0.448626 8 |
| 20 0.506349 4 |
| 21 0.511360 4 |
| 22 0.518880 4 |
| 23 0.528888 2 |
| 24 0.539149 8 |
| 25 0.542684 8 |
| 26 0.545119 2 |
| 27 0.548012 8 |
| 28 0.555542 2 |
| 29 0.559231 4 |
| 30 0.560370 4 |
| 31 0.572918 4 |
| 32 0.575714 4 |
| 33 0.582844 4 |
| 34 0.584504 4 |
| 35 0.589094 8 |
| 36 0.602102 8 |
+----------------------------------------------------------------------------+
| The b-vectors are chosen automatically |
| The following shells are used: 1, 2, 3 |
+----------------------------------------------------------------------------+
| Shell # Nearest-Neighbours |
| ----- -------------------- |
| 1 2 |
| 2 2 |
| 3 2 |
+----------------------------------------------------------------------------+
| Completeness relation is fully satisfied [Eq. (B1), PRB 56, 12847 (1997)] |
+----------------------------------------------------------------------------+
| b_k Vectors (Ang^-1) and Weights (Ang^2) |
| ---------------------------------------- |
| No. b_k(x) b_k(y) b_k(z) w_b |
| --- -------------------------------- -------- |
| 1 0.000000 0.000000 0.176296 16.087393 |
| 2 0.000000 0.000000 -0.176296 16.087393 |
| 3 0.000000 0.181706 0.000000 15.143643 |
| 4 0.000000 -0.181706 0.000000 15.143643 |
| 5 0.185181 0.000000 0.000000 14.580687 |
| 6 -0.185181 0.000000 0.000000 14.580687 |
+----------------------------------------------------------------------------+
| b_k Directions (Ang^-1) |
| ----------------------- |
| No. x y z |
| --- -------------------------------- |
| 1 0.000000 0.000000 0.176296 |
| 2 0.000000 0.181706 0.000000 |
| 3 0.185181 0.000000 0.000000 |
+----------------------------------------------------------------------------+
Time to get kmesh 6.044 (sec)
*============================================================================*
| MEMORY ESTIMATE |
| Maximum RAM allocated during each phase of the calculation |
*============================================================================*
| Disentanglement 66.29 Mb |
| Wannierise: 41.50 Mb |
| plot_wannier: 41.50 Mb |
*----------------------------------------------------------------------------*
Starting a new Wannier90 calculation ...
Reading overlaps from wannier90.mmn : File generated by VASP: SrVO3
Reading projections from wannier90.amn : File generated by VASP: SrVO3
Time to read overlaps 5.884 (sec)
*------------------------------- DISENTANGLE --------------------------------*
+----------------------------------------------------------------------------+
| Energy Windows |
| --------------- |
| Outer: -2.00000 to 12.00000 (eV) |
| No frozen states were specified |
+----------------------------------------------------------------------------+
Number of target bands to extract: 14
Unitarised projection of Wannier functions
------------------------------------------
A_mn = <psi_m|g_n> --> S = A.A^+ --> U = S^-1/2.A
In dis_project... done
No inner window (linner = F)
Extraction of optimally-connected subspace
------------------------------------------
+---------------------------------------------------------------------+<-- DIS
| Iter Omega_I(i-1) Omega_I(i) Delta (frac.) Time |<-- DIS
+---------------------------------------------------------------------+<-- DIS
1 15.93924611 14.62720377 8.970E-02 0.00 <-- DIS
2 15.21032294 14.07683318 8.052E-02 0.16 <-- DIS
3 14.58517569 13.62942046 7.012E-02 0.31 <-- DIS
4 14.05856816 13.25530711 6.060E-02 0.46 <-- DIS
5 13.61595469 12.94038601 5.221E-02 0.61 <-- DIS
6 13.24355522 12.67423393 4.492E-02 0.76 <-- DIS
7 12.92956041 12.44856316 3.864E-02 0.91 <-- DIS
8 12.66412663 12.25662658 3.325E-02 1.05 <-- DIS
9 12.43911622 12.09287782 2.863E-02 1.20 <-- DIS
10 12.24781364 11.95273812 2.469E-02 1.35 <-- DIS
11 12.08467494 11.83241952 2.132E-02 1.50 <-- DIS
12 11.94511893 11.72878387 1.844E-02 1.65 <-- DIS
13 11.82535580 11.63922798 1.599E-02 1.80 <-- DIS
14 11.72224659 11.56158920 1.390E-02 1.94 <-- DIS
15 11.63318792 11.49406772 1.210E-02 2.10 <-- DIS
16 11.55601727 11.43516264 1.057E-02 2.26 <-- DIS
17 11.48893517 11.38361941 9.252E-03 2.40 <-- DIS
18 11.43044118 11.33838674 8.119E-03 2.54 <-- DIS
19 11.37928139 11.29858121 7.143E-03 2.69 <-- DIS
20 11.33440531 11.26345834 6.299E-03 2.83 <-- DIS
21 11.29493050 11.23238875 5.568E-03 2.98 <-- DIS
22 11.26011355 11.20483875 4.933E-03 3.12 <-- DIS
23 11.22932631 11.18035430 4.380E-03 3.27 <-- DIS
24 11.20203638 11.15854789 3.897E-03 3.41 <-- DIS
25 11.17779106 11.13908768 3.475E-03 3.56 <-- DIS
26 11.15620417 11.12168860 3.103E-03 3.70 <-- DIS
27 11.13694524 11.10610498 2.777E-03 3.85 <-- DIS
28 11.11973051 11.09212442 2.489E-03 3.99 <-- DIS
29 11.10431556 11.07956270 2.234E-03 4.14 <-- DIS
30 11.09048923 11.06825962 2.008E-03 4.28 <-- DIS
31 11.07806846 11.05807541 1.808E-03 4.43 <-- DIS
32 11.06689411 11.04888780 1.630E-03 4.57 <-- DIS
33 11.05682743 11.04058954 1.471E-03 4.72 <-- DIS
34 11.04774711 11.03308634 1.329E-03 4.86 <-- DIS
35 11.03954678 11.02629506 1.202E-03 5.01 <-- DIS
36 11.03213294 11.02014225 1.088E-03 5.15 <-- DIS
37 11.02542320 11.01456286 9.860E-04 5.30 <-- DIS
38 11.01934479 11.00949917 8.943E-04 5.44 <-- DIS
39 11.01383330 11.00489986 8.118E-04 5.59 <-- DIS
40 11.00883159 11.00071923 7.374E-04 5.73 <-- DIS
41 11.00428885 10.99691647 6.704E-04 5.88 <-- DIS
42 11.00015986 10.99345514 6.099E-04 6.02 <-- DIS
43 10.99640426 10.99030259 5.552E-04 6.17 <-- DIS
44 10.99298599 10.98742958 5.057E-04 6.31 <-- DIS
45 10.98987278 10.98480982 4.609E-04 6.46 <-- DIS
46 10.98703571 10.98241972 4.203E-04 6.60 <-- DIS
47 10.98444880 10.98023804 3.835E-04 6.75 <-- DIS
48 10.98208873 10.97824562 3.501E-04 6.90 <-- DIS
49 10.97993450 10.97642520 3.197E-04 7.07 <-- DIS
50 10.97796719 10.97476120 2.921E-04 7.22 <-- DIS
51 10.97616975 10.97323954 2.670E-04 7.37 <-- DIS
52 10.97452677 10.97184746 2.442E-04 7.51 <-- DIS
53 10.97302434 10.97057344 2.234E-04 7.66 <-- DIS
54 10.97164988 10.96940703 2.045E-04 7.81 <-- DIS
55 10.97039199 10.96833875 1.872E-04 7.97 <-- DIS
56 10.96924036 10.96736001 1.714E-04 8.12 <-- DIS
57 10.96818562 10.96646300 1.571E-04 8.27 <-- DIS
58 10.96721928 10.96564063 1.440E-04 8.41 <-- DIS
59 10.96633365 10.96488645 1.320E-04 8.56 <-- DIS
60 10.96552171 10.96419461 1.210E-04 8.71 <-- DIS
61 10.96477710 10.96355976 1.110E-04 8.85 <-- DIS
62 10.96409403 10.96297704 1.019E-04 9.00 <-- DIS
63 10.96346723 10.96244202 9.352E-05 9.14 <-- DIS
64 10.96289190 10.96195068 8.586E-05 9.29 <-- DIS
65 10.96236368 10.96149933 7.885E-05 9.44 <-- DIS
66 10.96187857 10.96108460 7.243E-05 9.58 <-- DIS
67 10.96143294 10.96070344 6.656E-05 9.73 <-- DIS
68 10.96102347 10.96035304 6.117E-05 9.88 <-- DIS
69 10.96064714 10.96003086 5.623E-05 10.02 <-- DIS
70 10.96030118 10.95973454 5.170E-05 10.17 <-- DIS
71 10.95998308 10.95946195 4.755E-05 10.31 <-- DIS
72 10.95969051 10.95921115 4.374E-05 10.46 <-- DIS
73 10.95942138 10.95898033 4.025E-05 10.61 <-- DIS
74 10.95917375 10.95876787 3.704E-05 10.75 <-- DIS
75 10.95894586 10.95857227 3.409E-05 10.90 <-- DIS
76 10.95873609 10.95839215 3.139E-05 11.04 <-- DIS
77 10.95854296 10.95822626 2.890E-05 11.19 <-- DIS
78 10.95836512 10.95807345 2.662E-05 11.34 <-- DIS
79 10.95820132 10.95793266 2.452E-05 11.48 <-- DIS
80 10.95805044 10.95780292 2.259E-05 11.63 <-- DIS
81 10.95791143 10.95768334 2.082E-05 11.78 <-- DIS
82 10.95778333 10.95757311 1.918E-05 11.92 <-- DIS
83 10.95766526 10.95747149 1.768E-05 12.07 <-- DIS
84 10.95755642 10.95737778 1.630E-05 12.21 <-- DIS
85 10.95745608 10.95729136 1.503E-05 12.36 <-- DIS
86 10.95736356 10.95721165 1.386E-05 12.51 <-- DIS
87 10.95727823 10.95713811 1.279E-05 12.65 <-- DIS
88 10.95719952 10.95707026 1.180E-05 12.80 <-- DIS
89 10.95712691 10.95700765 1.088E-05 12.94 <-- DIS
90 10.95705991 10.95694987 1.004E-05 13.10 <-- DIS
91 10.95699809 10.95689653 9.269E-06 13.27 <-- DIS
92 10.95694103 10.95684729 8.555E-06 13.41 <-- DIS
93 10.95688837 10.95680184 7.898E-06 13.56 <-- DIS
94 10.95683975 10.95675986 7.291E-06 13.71 <-- DIS
95 10.95679486 10.95672109 6.733E-06 13.86 <-- DIS
96 10.95675341 10.95668529 6.218E-06 14.00 <-- DIS
97 10.95671514 10.95665222 5.743E-06 14.15 <-- DIS
98 10.95667978 10.95662166 5.304E-06 14.30 <-- DIS
99 10.95664712 10.95659344 4.900E-06 14.45 <-- DIS
100 10.95661696 10.95656735 4.527E-06 14.60 <-- DIS
101 10.95658908 10.95654325 4.183E-06 14.75 <-- DIS
102 10.95656332 10.95652097 3.866E-06 14.89 <-- DIS
103 10.95653952 10.95650038 3.573E-06 15.04 <-- DIS
104 10.95651752 10.95648134 3.302E-06 15.19 <-- DIS
105 10.95649719 10.95646374 3.053E-06 15.36 <-- DIS
106 10.95647839 10.95644747 2.822E-06 15.50 <-- DIS
107 10.95646101 10.95643242 2.609E-06 15.65 <-- DIS
108 10.95644495 10.95641851 2.413E-06 15.79 <-- DIS
109 10.95643009 10.95640564 2.231E-06 15.94 <-- DIS
110 10.95641635 10.95639374 2.063E-06 16.08 <-- DIS
111 10.95640364 10.95638273 1.908E-06 16.23 <-- DIS
112 10.95639189 10.95637255 1.765E-06 16.38 <-- DIS
113 10.95638102 10.95636313 1.633E-06 16.52 <-- DIS
114 10.95637096 10.95635441 1.511E-06 16.67 <-- DIS
115 10.95636166 10.95634634 1.398E-06 16.81 <-- DIS
116 10.95635305 10.95633888 1.293E-06 16.96 <-- DIS
117 10.95634508 10.95633197 1.197E-06 17.11 <-- DIS
118 10.95633771 10.95632558 1.108E-06 17.25 <-- DIS
119 10.95633089 10.95631966 1.025E-06 17.40 <-- DIS
120 10.95632458 10.95631418 9.487E-07 17.54 <-- DIS
121 10.95631874 10.95630911 8.782E-07 17.69 <-- DIS
122 10.95631333 10.95630442 8.129E-07 17.84 <-- DIS
123 10.95630832 10.95630008 7.525E-07 17.98 <-- DIS
124 10.95630369 10.95629605 6.967E-07 18.13 <-- DIS
125 10.95629939 10.95629233 6.451E-07 18.27 <-- DIS
126 10.95629542 10.95628888 5.973E-07 18.42 <-- DIS
127 10.95629174 10.95628568 5.531E-07 18.57 <-- DIS
128 10.95628834 10.95628272 5.122E-07 18.71 <-- DIS
129 10.95628518 10.95627998 4.743E-07 18.86 <-- DIS
130 10.95628226 10.95627745 4.393E-07 19.00 <-- DIS
131 10.95627955 10.95627510 4.069E-07 19.15 <-- DIS
132 10.95627705 10.95627292 3.769E-07 19.30 <-- DIS
133 10.95627473 10.95627090 3.491E-07 19.44 <-- DIS
134 10.95627257 10.95626903 3.234E-07 19.59 <-- DIS
135 10.95627058 10.95626730 2.996E-07 19.73 <-- DIS
136 10.95626874 10.95626570 2.775E-07 19.88 <-- DIS
137 10.95626703 10.95626421 2.571E-07 20.03 <-- DIS
138 10.95626544 10.95626283 2.382E-07 20.17 <-- DIS
139 10.95626398 10.95626156 2.207E-07 20.32 <-- DIS
140 10.95626262 10.95626038 2.045E-07 20.46 <-- DIS
141 10.95626136 10.95625928 1.895E-07 20.61 <-- DIS
142 10.95626019 10.95625826 1.757E-07 20.76 <-- DIS
143 10.95625911 10.95625732 1.628E-07 20.90 <-- DIS
144 10.95625810 10.95625645 1.509E-07 21.05 <-- DIS
145 10.95625717 10.95625564 1.398E-07 21.19 <-- DIS
146 10.95625631 10.95625489 1.296E-07 21.34 <-- DIS
147 10.95625551 10.95625420 1.201E-07 21.48 <-- DIS
148 10.95625477 10.95625355 1.113E-07 21.63 <-- DIS
149 10.95625409 10.95625296 1.032E-07 21.77 <-- DIS
150 10.95625345 10.95625240 9.568E-08 21.92 <-- DIS
151 10.95625286 10.95625189 8.870E-08 22.07 <-- DIS
152 10.95625232 10.95625142 8.223E-08 22.21 <-- DIS
153 10.95625181 10.95625097 7.624E-08 22.36 <-- DIS
154 10.95625134 10.95625057 7.068E-08 22.50 <-- DIS
155 10.95625090 10.95625019 6.553E-08 22.65 <-- DIS
156 10.95625050 10.95624984 6.076E-08 22.80 <-- DIS
157 10.95625013 10.95624951 5.634E-08 22.94 <-- DIS
158 10.95624978 10.95624921 5.224E-08 23.09 <-- DIS
159 10.95624946 10.95624893 4.844E-08 23.23 <-- DIS
160 10.95624916 10.95624867 4.492E-08 23.38 <-- DIS
161 10.95624888 10.95624843 4.166E-08 23.53 <-- DIS
162 10.95624863 10.95624820 3.863E-08 23.67 <-- DIS
163 10.95624839 10.95624799 3.583E-08 23.82 <-- DIS
164 10.95624817 10.95624780 3.323E-08 23.96 <-- DIS
165 10.95624796 10.95624762 3.082E-08 24.11 <-- DIS
166 10.95624777 10.95624746 2.858E-08 24.25 <-- DIS
167 10.95624760 10.95624731 2.651E-08 24.40 <-- DIS
168 10.95624743 10.95624716 2.459E-08 24.55 <-- DIS
169 10.95624728 10.95624703 2.281E-08 24.69 <-- DIS
170 10.95624714 10.95624691 2.116E-08 24.84 <-- DIS
171 10.95624701 10.95624680 1.962E-08 25.01 <-- DIS
172 10.95624689 10.95624669 1.820E-08 25.15 <-- DIS
173 10.95624678 10.95624659 1.689E-08 25.30 <-- DIS
174 10.95624667 10.95624650 1.567E-08 25.44 <-- DIS
175 10.95624658 10.95624642 1.453E-08 25.59 <-- DIS
176 10.95624649 10.95624634 1.348E-08 25.73 <-- DIS
177 10.95624640 10.95624627 1.251E-08 25.88 <-- DIS
178 10.95624633 10.95624620 1.160E-08 26.03 <-- DIS
179 10.95624626 10.95624614 1.077E-08 26.17 <-- DIS
180 10.95624619 10.95624608 9.988E-09 26.32 <-- DIS
181 10.95624613 10.95624603 9.267E-09 26.46 <-- DIS
182 10.95624607 10.95624598 8.598E-09 26.61 <-- DIS
183 10.95624602 10.95624593 7.978E-09 26.76 <-- DIS
184 10.95624597 10.95624589 7.402E-09 26.90 <-- DIS
185 10.95624592 10.95624585 6.868E-09 27.05 <-- DIS
186 10.95624588 10.95624581 6.373E-09 27.19 <-- DIS
187 10.95624584 10.95624578 5.914E-09 27.34 <-- DIS
188 10.95624580 10.95624574 5.488E-09 27.48 <-- DIS
189 10.95624577 10.95624571 5.092E-09 27.63 <-- DIS
190 10.95624574 10.95624569 4.725E-09 27.78 <-- DIS
191 10.95624571 10.95624566 4.385E-09 27.92 <-- DIS
192 10.95624568 10.95624564 4.069E-09 28.07 <-- DIS
193 10.95624566 10.95624562 3.776E-09 28.21 <-- DIS
194 10.95624563 10.95624560 3.505E-09 28.36 <-- DIS
195 10.95624561 10.95624558 3.252E-09 28.50 <-- DIS
196 10.95624559 10.95624556 3.018E-09 28.65 <-- DIS
197 10.95624557 10.95624554 2.801E-09 28.80 <-- DIS
198 10.95624556 10.95624553 2.600E-09 28.94 <-- DIS
199 10.95624554 10.95624551 2.413E-09 29.09 <-- DIS
200 10.95624553 10.95624550 2.240E-09 29.23 <-- DIS
201 10.95624551 10.95624549 2.079E-09 29.38 <-- DIS
202 10.95624550 10.95624548 1.929E-09 29.52 <-- DIS
203 10.95624549 10.95624547 1.791E-09 29.67 <-- DIS
204 10.95624548 10.95624546 1.662E-09 29.82 <-- DIS
205 10.95624547 10.95624545 1.543E-09 29.96 <-- DIS
206 10.95624546 10.95624544 1.432E-09 30.11 <-- DIS
207 10.95624545 10.95624543 1.329E-09 30.25 <-- DIS
208 10.95624544 10.95624543 1.234E-09 30.40 <-- DIS
209 10.95624543 10.95624542 1.145E-09 30.54 <-- DIS
210 10.95624543 10.95624541 1.063E-09 30.69 <-- DIS
211 10.95624542 10.95624541 9.868E-10 30.84 <-- DIS
212 10.95624541 10.95624540 9.160E-10 30.98 <-- DIS
213 10.95624541 10.95624540 8.503E-10 31.13 <-- DIS
214 10.95624540 10.95624539 7.893E-10 31.27 <-- DIS
215 10.95624540 10.95624539 7.327E-10 31.42 <-- DIS
216 10.95624539 10.95624539 6.802E-10 31.56 <-- DIS
217 10.95624539 10.95624538 6.315E-10 31.71 <-- DIS
218 10.95624538 10.95624538 5.862E-10 31.86 <-- DIS
219 10.95624538 10.95624537 5.442E-10 32.00 <-- DIS
220 10.95624538 10.95624537 5.052E-10 32.15 <-- DIS
<<< Delta < 1.000E-09 over 10 iterations >>>
<<< Disentanglement convergence criteria satisfied >>>
Final Omega_I 10.95624537 (Ang^2)
+----------------------------------------------------------------------------+
Time to disentangle bands 32.720 (sec)
Writing checkpoint file wannier90.chk... done
*------------------------------- WANNIERISE ---------------------------------*
+--------------------------------------------------------------------+<-- CONV
| Iter Delta Spread RMS Gradient Spread (Ang^2) Time |<-- CONV
+--------------------------------------------------------------------+<-- CONV
------------------------------------------------------------------------------
Initial State
WF centre and spread 1 ( 1.885000, 1.921045, 1.980000 ) 0.71082577
WF centre and spread 2 ( 1.885000, 1.921045, 1.980000 ) 0.71749429
WF centre and spread 3 ( 1.885000, 1.921045, 1.980000 ) 0.70220486
WF centre and spread 4 ( 1.885000, 1.921045, 1.980000 ) 0.61355003
WF centre and spread 5 ( 1.885000, 1.921045, 1.980000 ) 0.61423532
WF centre and spread 6 ( 1.885000, 1.921045, -0.000000 ) 0.77446652
WF centre and spread 7 ( 1.885000, 1.921045, -0.000000 ) 0.99290858
WF centre and spread 8 ( 1.885000, 1.921045, -0.000000 ) 0.99546377
WF centre and spread 9 ( -0.000000, 1.921045, 1.980000 ) 0.93841665
WF centre and spread 10 ( -0.000000, 1.921045, 1.980000 ) 0.78194777
WF centre and spread 11 ( -0.000000, 1.921045, 1.980000 ) 0.93476634
WF centre and spread 12 ( 1.885000, -0.000000, 1.980000 ) 0.96343056
WF centre and spread 13 ( 1.885000, 0.000000, 1.980000 ) 0.95757319
WF centre and spread 14 ( 1.885000, -0.000000, 1.980000 ) 0.77388660
Sum of centres and spreads ( 20.735000, 21.131495, 21.780000 ) 11.47117024
0 0.115E+02 0.0000000000 11.4711702436 32.78 <-- CONV
O_D= 0.0000000 O_OD= 0.5149249 O_TOT= 11.4711702 <-- SPRD
------------------------------------------------------------------------------
Final State
WF centre and spread 1 ( 1.885000, 1.921045, 1.980000 ) 0.71082577
WF centre and spread 2 ( 1.885000, 1.921045, 1.980000 ) 0.71749429
WF centre and spread 3 ( 1.885000, 1.921045, 1.980000 ) 0.70220486
WF centre and spread 4 ( 1.885000, 1.921045, 1.980000 ) 0.61355003
WF centre and spread 5 ( 1.885000, 1.921045, 1.980000 ) 0.61423532
WF centre and spread 6 ( 1.885000, 1.921045, -0.000000 ) 0.77446652
WF centre and spread 7 ( 1.885000, 1.921045, -0.000000 ) 0.99290858
WF centre and spread 8 ( 1.885000, 1.921045, -0.000000 ) 0.99546377
WF centre and spread 9 ( -0.000000, 1.921045, 1.980000 ) 0.93841665
WF centre and spread 10 ( -0.000000, 1.921045, 1.980000 ) 0.78194777
WF centre and spread 11 ( -0.000000, 1.921045, 1.980000 ) 0.93476634
WF centre and spread 12 ( 1.885000, -0.000000, 1.980000 ) 0.96343056
WF centre and spread 13 ( 1.885000, 0.000000, 1.980000 ) 0.95757319
WF centre and spread 14 ( 1.885000, -0.000000, 1.980000 ) 0.77388660
Sum of centres and spreads ( 20.735000, 21.131495, 21.780000 ) 11.47117024
Spreads (Ang^2) Omega I = 10.956245372
================ Omega D = 0.000000000
Omega OD = 0.514924872
Final Spread (Ang^2) Omega Total = 11.471170244
------------------------------------------------------------------------------
Time for wannierise 0.096 (sec)
Writing checkpoint file wannier90.chk... done
*---------------------------------------------------------------------------*
| PLOTTING |
*---------------------------------------------------------------------------*
Calculating interpolated band-structure
Time to calculate interpolated band structure 3.504 (sec)
Time for plotting 5.736 (sec)
Total Execution Time 50.788 (sec)
*===========================================================================*
| TIMING INFORMATION |
*===========================================================================*
| Tag Ncalls Time (s)|
|---------------------------------------------------------------------------|
|kmesh: get : 1 6.044|
|overlap: allocate : 1 0.000|
|overlap: read : 1 5.884|
|dis: main : 1 32.720|
|wann: main : 1 0.096|
|plot: main : 1 5.736|
*---------------------------------------------------------------------------*
All done: wannier90 exiting

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -0,0 +1,5 @@
-1
1.0
2
0 0 2 3 1 0
1 1 2 2 1 0

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
-1
1.0
1
0 0 2 3 0 0

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -0,0 +1,17 @@
import numpy as np
from triqs_dft_tools.converters.wannier90 import Wannier90Converter
from triqs_dft_tools import SumkDFT
subfolder = 'w90_convert/'
seedname = subfolder+'LaVO3-Pnma'
conv1 = Wannier90Converter(seedname=seedname)
conv1.convert_dft_input()
SK1 = SumkDFT(hdf_file=seedname+'.h5')
conv2 = Wannier90Converter(seedname=seedname+'_ef')
conv2.convert_dft_input()
SK2 = SumkDFT(hdf_file=seedname+'_ef.h5')
for ik in range(SK1.n_k):
assert np.allclose(SK1.hopping[ik,0] - conv2.fermi_energy*np.identity(SK1.n_orbitals[ik][0]), SK2.hopping[ik,0], atol=1e-12, rtol=0)