Wannierisation
This tutorial shows how to construct (Symmetry adapted) Wannier functions with WannierBerri, with magnetic symmetries. We will use the example of bcc Fe.
1. Setup
First import modules and set up the parallel environment
[1]:
import os
from matplotlib import pyplot as plt
import ray
import scipy
import wannierberri as wberri
import numpy as np
from termcolor import cprint
from wannierberri.parallel import Parallel
from pathlib import Path
path_data = Path("./wannier-berri/tests/data/Fe-444-sitesym/") # adjust path if needed to point to the data in the tests fo wannier-berri repository
assert os.path.exists(path_data), f"Path {path_data} does not exist"
results_path = {}
results_grid = {}
# We do all calculations for three cases:
# 1. With all magnetic symmetries
# 2. With only the spacegroup symmetries that preserve the magnetic order
# 3. Without any symmetries
include_TR_list = [ True, False, None] # None means no symmetry
try:
ray.shutdown()
except:
pass
parallel = Parallel(ray_init={"num_gpus": 0}) # use of gpus is not tested
# if needed
# os.chdir("path to here")
2024-10-23 01:45:46,010 INFO util.py:154 -- Missing packages: ['ipywidgets']. Run `pip install -U ipywidgets`, then restart the notebook server for rich notebook output.
initializing ray with {'num_gpus': 0, 'num_cpus': None}
2024-10-23 01:45:48,349 INFO worker.py:1777 -- Started a local Ray instance. View the dashboard at http://127.0.0.1:8265
2. Wannierise
[2]:
w90_data_list = {}
for includeTR in include_TR_list:
cprint (f"include_TR = {includeTR}", "green", attrs=["bold"])
w90data=wberri.w90files.Wannier90data(seedname=str(path_data/"Fe"))
# check the symmetries of the amn and eig files
cprint (f"creating dmn", "blue", attrs=["bold"])
if includeTR is not None:
sitesym = True
dmn = wberri.w90files.DMN(seedname=str(path_data/f"Fe_TR={includeTR}"), read_npz=True)
w90data.set_file("dmn",dmn)
print (f"eig is symmetric within the accuracy of : {dmn.check_eig(w90data.eig)}")
print (f"amn is symmetric within the accuracy of : {dmn.check_amn(w90data.amn, warning_precision=1e-4)}")
else:
sitesym = False
cprint (f"wannierising", "blue", attrs=["bold"])
#aidata.apply_outer_window(win_min=-8,win_max= 100 )
froz_max=30
w90data.wannierise( init = "amn",
froz_min=-8,
froz_max=froz_max,
print_progress_every=10,
num_iter=21,
conv_tol=1e-6,
mix_ratio_z=1.0,
localise=True,
sitesym=sitesym,
)
w90_data_list[includeTR] = w90data
include_TR = True
kwargs for win are {}
kwargs for eig are {'read_npz': True, 'write_npz': True, 'selected_bands': None}
calling w90 file with wannier-berri/tests/data/Fe-444-sitesym/Fe, eig, tags=['data'], read_npz=True, write_npz=True, kwargs={}
kwargs for mmn are {'read_npz': True, 'write_npz': True, 'selected_bands': None}
calling w90 file with wannier-berri/tests/data/Fe-444-sitesym/Fe, mmn, tags=['data', 'neighbours', 'G'], read_npz=True, write_npz=True, kwargs={'npar': 32}
kwargs for amn are {'read_npz': True, 'write_npz': True, 'selected_bands': None}
calling w90 file with wannier-berri/tests/data/Fe-444-sitesym/Fe, amn, tags=['data'], read_npz=True, write_npz=True, kwargs={'npar': 32}
apply_window amn, selected_bands=None
creating CheckPoint_bare
kwargs for chk are {'selected_bands': None}
creating dmn
calling w90 file with wannier-berri/tests/data/Fe-444-sitesym/Fe_TR=True, dmn, tags=['D_wann_block_indices', '_NB', 'kpt2kptirr', 'kptirr', 'kptirr2kpt', 'kpt2kptirr_sym', '_NK', 'num_wann', 'comment', 'NKirr', 'Nsym', 'time_reversals'], read_npz=True, write_npz=True, kwargs={}
kwargs for dmn are {'read_npz': True, 'write_npz': True, 'selected_bands': None}
eig is symmetric within the accuracy of : 3.0701497788707307e-10
amn is symmetric within the accuracy of : 1.9175439968189927e-05
wannierising
wannier centers from spread functional:
[[ 6.71979229e-12 -6.51893616e-12 -3.92760222e-12]
[-1.27512928e-11 1.28487128e-11 -2.52994276e-11]
[-3.91419114e-09 1.38967756e-10 -8.18313939e-11]
[-3.63017504e-10 -2.38568938e-09 3.00743266e-12]
[-1.46710391e-11 -2.19970249e-10 -2.09126122e-09]
[ 2.84679824e-10 2.46750644e-09 8.59723038e-10]
[ 3.84141389e-09 7.37226893e-11 2.07708633e-09]
[ 3.47451115e-10 -1.08832960e-10 -7.70141714e-10]
[-4.84415875e-11 1.43338522e-12 2.61820385e-12]
[-1.87362811e-12 -2.12664549e-11 3.40293090e-12]
[ 4.23658892e-13 -7.14919793e-13 -1.23273510e-12]
[ 2.82673535e-12 -4.45932451e-13 1.60933841e-13]
[ 1.64706171e-12 -1.04924006e-12 -1.46801040e-12]
[ 1.14141087e-12 -9.58876568e-14 3.49805911e-13]
[ 4.57680348e-11 1.09647619e-12 3.35337879e-12]
[-4.31866474e-13 2.33710096e-11 1.11921639e-12]
[ 2.72877314e-12 -2.00420790e-13 3.18084097e-12]
[-2.35712655e-14 -2.86505012e-13 5.25167225e-13]]
####################################################################################################
Initial State
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
0.000000000000 -0.000000000000 -0.000000000000 | 1.822712918666
-0.000000000000 0.000000000000 -0.000000000000 | 1.775270440967
-0.000000000000 0.000000000000 -0.000000000000 | 1.784731791941
-0.000000000000 -0.000000000000 0.000000000000 | 1.748633051913
-0.000000000000 -0.000000000000 -0.000000000000 | 1.784745738844
0.000000000000 0.000000000000 0.000000000000 | 1.748631185697
0.000000000000 0.000000000000 0.000000000000 | 1.784745735271
0.000000000000 -0.000000000000 -0.000000000000 | 1.748631185824
-0.000000000000 0.000000000000 0.000000000000 | 0.515479519165
-0.000000000000 -0.000000000000 0.000000000000 | 0.486069142522
0.000000000000 -0.000000000000 -0.000000000000 | 0.489469186891
0.000000000000 -0.000000000000 0.000000000000 | 0.478489321985
0.000000000000 -0.000000000000 -0.000000000000 | 0.489469186888
0.000000000000 -0.000000000000 0.000000000000 | 0.478489321986
0.000000000000 0.000000000000 0.000000000000 | 0.515495586219
-0.000000000000 0.000000000000 0.000000000000 | 0.486068196653
0.000000000000 -0.000000000000 0.000000000000 | 0.489469975386
-0.000000000000 -0.000000000000 0.000000000000 | 0.478496224120
----------------------------------------------------------------------------------------------------
Omega_tot = 19.10495553 | Omega_0 = 1.82270805 | Omega_1 = 1.77526605 | Omega_2 = 1.78471858 | Omega_3 = 1.74862081 | Omega_4 = 1.78471772 | Omega_5 = 1.74860596 | Omega_6 = 1.78471772 | Omega_7 = 1.74860596 | Omega_8 = 0.51547950 | Omega_9 = 0.48606912 | Omega_10 = 0.48946909 | Omega_11 = 0.47848924 | Omega_12 = 0.48946909 | Omega_13 = 0.47848924 | Omega_14 = 0.51549554 | Omega_15 = 0.48606813 | Omega_16 = 0.48946972 | Omega_17 = 0.47849602
####################################################################################################
####################################################################################################
iteration 0 Omega= 18.3390889757 delta=--, max(3)=--, slope=--
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
0.000000000000 -0.000000000000 -0.000000000000 | 1.795845840945
-0.000000000000 -0.000000000000 -0.000000000000 | 1.590279451809
-0.000000000000 0.000000000000 -0.000000000000 | 1.838800956356
-0.000000000000 -0.000000000000 -0.000000000000 | 1.720329929304
0.000000000000 -0.000000000000 -0.000000000000 | 1.780004390502
0.000000000000 0.000000000000 0.000000000000 | 1.704063135313
0.000000000000 0.000000000000 0.000000000000 | 1.780004388718
0.000000000000 0.000000000000 -0.000000000000 | 1.704063135495
-0.000000000000 -0.000000000000 0.000000000000 | 0.476980542191
0.000000000000 0.000000000000 0.000000000000 | 0.441644747391
0.000000000000 -0.000000000000 -0.000000000000 | 0.437763536653
-0.000000000000 0.000000000000 -0.000000000000 | 0.425603018800
0.000000000000 -0.000000000000 -0.000000000000 | 0.437763536652
0.000000000000 0.000000000000 -0.000000000000 | 0.425603018797
0.000000000000 -0.000000000000 0.000000000000 | 0.477246668367
-0.000000000000 -0.000000000000 0.000000000000 | 0.441600527146
-0.000000000000 -0.000000000000 -0.000000000000 | 0.436567351732
0.000000000000 0.000000000000 0.000000000000 | 0.425470048636
----------------------------------------------------------------------------------------------------
Omega_tot = 18.33908898 | Omega_0 = 1.79584383 | Omega_1 = 1.59027883 | Omega_2 = 1.83879753 | Omega_3 = 1.72032528 | Omega_4 = 1.77995521 | Omega_5 = 1.70384524 | Omega_6 = 1.77995521 | Omega_7 = 1.70384524 | Omega_8 = 0.47698054 | Omega_9 = 0.44164474 | Omega_10 = 0.43776349 | Omega_11 = 0.42560298 | Omega_12 = 0.43776349 | Omega_13 = 0.42560298 | Omega_14 = 0.47724664 | Omega_15 = 0.44160050 | Omega_16 = 0.43656724 | Omega_17 = 0.42546998
####################################################################################################
####################################################################################################
iteration 10 Omega= 17.7466374281 delta=-5.92451548e-01, max(3)=--, slope=--
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
-0.000000000000 -0.000000000000 0.000000000000 | 1.564331556226
0.000000000000 -0.000000000000 0.000000000000 | 1.446105650853
0.000000000000 -0.000000000000 -0.000000000000 | 1.880591554852
-0.000000000000 0.000000000000 -0.000000000000 | 1.704357578683
0.000000000000 0.000000000000 -0.000000000000 | 1.784886014292
0.000000000000 -0.000000000000 0.000000000000 | 1.703628038392
-0.000000000000 0.000000000000 0.000000000000 | 1.784886013683
0.000000000000 -0.000000000000 -0.000000000000 | 1.703628038258
0.000000000000 -0.000000000000 0.000000000000 | 0.461148442677
-0.000000000000 0.000000000000 0.000000000000 | 0.431006239279
0.000000000000 -0.000000000000 -0.000000000000 | 0.406327045813
-0.000000000000 0.000000000000 -0.000000000000 | 0.392972158341
0.000000000000 -0.000000000000 -0.000000000000 | 0.406327045812
0.000000000000 0.000000000000 -0.000000000000 | 0.392972158340
-0.000000000000 0.000000000000 -0.000000000000 | 0.454555420899
0.000000000000 -0.000000000000 0.000000000000 | 0.430225660487
-0.000000000000 -0.000000000000 -0.000000000000 | 0.407185144670
0.000000000000 0.000000000000 0.000000000000 | 0.392537138699
----------------------------------------------------------------------------------------------------
Omega_tot = 17.74663743 | Omega_0 = 1.56433070 | Omega_1 = 1.44610370 | Omega_2 = 1.88057262 | Omega_3 = 1.70435312 | Omega_4 = 1.78484325 | Omega_5 = 1.70316739 | Omega_6 = 1.78484325 | Omega_7 = 1.70316739 | Omega_8 = 0.46114842 | Omega_9 = 0.43100620 | Omega_10 = 0.40632703 | Omega_11 = 0.39297213 | Omega_12 = 0.40632703 | Omega_13 = 0.39297213 | Omega_14 = 0.45455540 | Omega_15 = 0.43022548 | Omega_16 = 0.40718509 | Omega_17 = 0.39253710
####################################################################################################
####################################################################################################
iteration 20 Omega= 17.7555248377 delta= 8.88740961e-03, max(3)=--, slope=--
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
-0.000000000000 -0.000000000000 0.000000000000 | 1.565924353123
0.000000000000 -0.000000000000 0.000000000000 | 1.445722292964
0.000000000000 -0.000000000000 0.000000000000 | 1.879133201049
-0.000000000000 0.000000000000 -0.000000000000 | 1.704339955602
0.000000000000 0.000000000000 -0.000000000000 | 1.789157210581
0.000000000000 -0.000000000000 0.000000000000 | 1.703548501034
-0.000000000000 0.000000000000 0.000000000000 | 1.789157209964
0.000000000000 -0.000000000000 -0.000000000000 | 1.703548500900
0.000000000000 -0.000000000000 0.000000000000 | 0.460784434597
-0.000000000000 0.000000000000 0.000000000000 | 0.431013554242
0.000000000000 -0.000000000000 -0.000000000000 | 0.406482214887
-0.000000000000 0.000000000000 -0.000000000000 | 0.393142780439
0.000000000000 -0.000000000000 -0.000000000000 | 0.406482214887
0.000000000000 0.000000000000 -0.000000000000 | 0.393142780439
-0.000000000000 0.000000000000 -0.000000000000 | 0.454402206059
0.000000000000 -0.000000000000 0.000000000000 | 0.430231233914
-0.000000000000 -0.000000000000 -0.000000000000 | 0.407685943537
0.000000000000 0.000000000000 0.000000000000 | 0.392663934185
----------------------------------------------------------------------------------------------------
Omega_tot = 17.75552484 | Omega_0 = 1.56592350 | Omega_1 = 1.44572031 | Omega_2 = 1.87911439 | Omega_3 = 1.70433548 | Omega_4 = 1.78911407 | Omega_5 = 1.70308610 | Omega_6 = 1.78911406 | Omega_7 = 1.70308610 | Omega_8 = 0.46078442 | Omega_9 = 0.43101351 | Omega_10 = 0.40648220 | Omega_11 = 0.39314275 | Omega_12 = 0.40648220 | Omega_13 = 0.39314275 | Omega_14 = 0.45440218 | Omega_15 = 0.43023104 | Omega_16 = 0.40768589 | Omega_17 = 0.39266389
####################################################################################################
wannier centers from spread functional:
[[-8.28366296e-12 -7.60120387e-12 3.92905876e-12]
[ 7.64476686e-12 -1.36891259e-12 5.82483491e-12]
[ 3.12834329e-10 -1.85019211e-10 4.19408069e-14]
[-2.71854449e-10 2.99058861e-10 -1.86481660e-11]
[ 1.69829672e-10 5.28475523e-11 -5.47183205e-10]
[ 6.23704105e-12 -2.59846821e-10 1.11421279e-10]
[-6.39613474e-10 1.49924524e-11 5.19417971e-10]
[ 2.37669626e-10 -4.33269348e-12 -5.61963251e-11]
[ 5.77923554e-12 -3.76338281e-12 1.71641208e-12]
[-2.27155123e-12 5.68191110e-12 8.02106046e-13]
[ 8.26903978e-13 -4.30460801e-12 -3.48627689e-12]
[-9.61772646e-13 5.41066905e-13 -2.51519743e-12]
[ 4.94168886e-12 -1.11630599e-12 -3.82930076e-12]
[ 3.67530284e-13 1.31515244e-12 -2.16516249e-13]
[-2.29612479e-12 1.09735049e-11 -7.71657786e-13]
[ 2.62443544e-12 -5.78419623e-12 2.35944397e-12]
[-6.01099241e-13 -2.14869495e-12 -1.19422937e-12]
[ 8.24962534e-14 6.88279872e-13 9.27200966e-13]]
####################################################################################################
Final State
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
-0.000000000000 -0.000000000000 0.000000000000 | 1.565924353123
0.000000000000 -0.000000000000 0.000000000000 | 1.445722292964
0.000000000000 -0.000000000000 0.000000000000 | 1.879133201049
-0.000000000000 0.000000000000 -0.000000000000 | 1.704339955602
0.000000000000 0.000000000000 -0.000000000000 | 1.789157210581
0.000000000000 -0.000000000000 0.000000000000 | 1.703548501034
-0.000000000000 0.000000000000 0.000000000000 | 1.789157209964
0.000000000000 -0.000000000000 -0.000000000000 | 1.703548500900
0.000000000000 -0.000000000000 0.000000000000 | 0.460784434597
-0.000000000000 0.000000000000 0.000000000000 | 0.431013554242
0.000000000000 -0.000000000000 -0.000000000000 | 0.406482214887
-0.000000000000 0.000000000000 -0.000000000000 | 0.393142780439
0.000000000000 -0.000000000000 -0.000000000000 | 0.406482214887
0.000000000000 0.000000000000 -0.000000000000 | 0.393142780439
-0.000000000000 0.000000000000 -0.000000000000 | 0.454402206059
0.000000000000 -0.000000000000 0.000000000000 | 0.430231233914
-0.000000000000 -0.000000000000 -0.000000000000 | 0.407685943537
0.000000000000 0.000000000000 0.000000000000 | 0.392663934185
----------------------------------------------------------------------------------------------------
Omega_tot = 17.75552484 | Omega_0 = 1.56592350 | Omega_1 = 1.44572031 | Omega_2 = 1.87911439 | Omega_3 = 1.70433548 | Omega_4 = 1.78911407 | Omega_5 = 1.70308610 | Omega_6 = 1.78911406 | Omega_7 = 1.70308610 | Omega_8 = 0.46078442 | Omega_9 = 0.43101351 | Omega_10 = 0.40648220 | Omega_11 = 0.39314275 | Omega_12 = 0.40648220 | Omega_13 = 0.39314275 | Omega_14 = 0.45440218 | Omega_15 = 0.43023104 | Omega_16 = 0.40768589 | Omega_17 = 0.39266389
####################################################################################################
include_TR = False
kwargs for win are {}
kwargs for eig are {'read_npz': True, 'write_npz': True, 'selected_bands': None}
calling w90 file with wannier-berri/tests/data/Fe-444-sitesym/Fe, eig, tags=['data'], read_npz=True, write_npz=True, kwargs={}
kwargs for mmn are {'read_npz': True, 'write_npz': True, 'selected_bands': None}
calling w90 file with wannier-berri/tests/data/Fe-444-sitesym/Fe, mmn, tags=['data', 'neighbours', 'G'], read_npz=True, write_npz=True, kwargs={'npar': 32}
kwargs for amn are {'read_npz': True, 'write_npz': True, 'selected_bands': None}
calling w90 file with wannier-berri/tests/data/Fe-444-sitesym/Fe, amn, tags=['data'], read_npz=True, write_npz=True, kwargs={'npar': 32}
apply_window amn, selected_bands=None
creating CheckPoint_bare
kwargs for chk are {'selected_bands': None}
creating dmn
calling w90 file with wannier-berri/tests/data/Fe-444-sitesym/Fe_TR=False, dmn, tags=['D_wann_block_indices', '_NB', 'kpt2kptirr', 'kptirr', 'kptirr2kpt', 'kpt2kptirr_sym', '_NK', 'num_wann', 'comment', 'NKirr', 'Nsym', 'time_reversals'], read_npz=True, write_npz=True, kwargs={}
kwargs for dmn are {'read_npz': True, 'write_npz': True, 'selected_bands': None}
eig is symmetric within the accuracy of : 3.0701497788707307e-10
amn is symmetric within the accuracy of : 1.9175439968189927e-05
wannierising
wannier centers from spread functional:
[[ 6.71987382e-12 -6.51882748e-12 -3.92757194e-12]
[-1.27513041e-11 1.28487303e-11 -2.52994568e-11]
[-3.91419395e-09 1.38970763e-10 -8.18309629e-11]
[-3.63007009e-10 -2.38569559e-09 3.00716634e-12]
[-1.46707985e-11 -2.19963723e-10 -2.09126092e-09]
[ 2.84679060e-10 2.46749592e-09 8.59735756e-10]
[ 3.84142327e-09 7.37237220e-11 2.07709403e-09]
[ 3.47437367e-10 -1.08833571e-10 -7.70130136e-10]
[-4.84415591e-11 1.43338560e-12 2.61822072e-12]
[-1.87361004e-12 -2.12664277e-11 3.40292096e-12]
[ 4.23655729e-13 -7.14872558e-13 -1.23276622e-12]
[ 2.82671797e-12 -4.45943443e-13 1.60957862e-13]
[ 1.64705115e-12 -1.04923871e-12 -1.46801399e-12]
[ 1.14137626e-12 -9.58898558e-14 3.49814678e-13]
[ 4.57680224e-11 1.09650787e-12 3.35337422e-12]
[-4.31833707e-13 2.33709875e-11 1.11921509e-12]
[ 2.72877221e-12 -2.00445373e-13 3.18083088e-12]
[-2.35863065e-14 -2.86520743e-13 5.25174449e-13]]
####################################################################################################
Initial State
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
0.000000000000 -0.000000000000 -0.000000000000 | 1.822712918985
-0.000000000000 0.000000000000 -0.000000000000 | 1.775270441158
-0.000000000000 0.000000000000 -0.000000000000 | 1.784731794998
-0.000000000000 -0.000000000000 0.000000000000 | 1.748633061020
-0.000000000000 -0.000000000000 -0.000000000000 | 1.784745738737
0.000000000000 0.000000000000 0.000000000000 | 1.748631182947
0.000000000000 0.000000000000 0.000000000000 | 1.784745735164
0.000000000000 -0.000000000000 -0.000000000000 | 1.748631183074
-0.000000000000 0.000000000000 0.000000000000 | 0.515479519164
-0.000000000000 -0.000000000000 0.000000000000 | 0.486069142517
0.000000000000 -0.000000000000 -0.000000000000 | 0.489469186867
0.000000000000 -0.000000000000 0.000000000000 | 0.478489321990
0.000000000000 -0.000000000000 -0.000000000000 | 0.489469186865
0.000000000000 -0.000000000000 0.000000000000 | 0.478489321991
0.000000000000 0.000000000000 0.000000000000 | 0.515495586221
-0.000000000000 0.000000000000 0.000000000000 | 0.486068196662
0.000000000000 -0.000000000000 0.000000000000 | 0.489469975353
-0.000000000000 -0.000000000000 0.000000000000 | 0.478496224093
----------------------------------------------------------------------------------------------------
Omega_tot = 19.10495554 | Omega_0 = 1.82270805 | Omega_1 = 1.77526605 | Omega_2 = 1.78471858 | Omega_3 = 1.74862082 | Omega_4 = 1.78471772 | Omega_5 = 1.74860595 | Omega_6 = 1.78471772 | Omega_7 = 1.74860595 | Omega_8 = 0.51547950 | Omega_9 = 0.48606912 | Omega_10 = 0.48946909 | Omega_11 = 0.47848924 | Omega_12 = 0.48946909 | Omega_13 = 0.47848924 | Omega_14 = 0.51549554 | Omega_15 = 0.48606813 | Omega_16 = 0.48946972 | Omega_17 = 0.47849602
####################################################################################################
####################################################################################################
iteration 0 Omega= 17.5173388992 delta=--, max(3)=--, slope=--
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
0.000000000000 0.000000000000 0.000000000000 | 1.618940004644
-0.000000000000 0.000000000000 -0.000000000000 | 1.576706198647
-0.000000000000 -0.000000000000 -0.000000000000 | 1.664787248614
-0.000000000000 -0.000000000000 -0.000000000000 | 1.631420513725
-0.000000000000 -0.000000000000 -0.000000000000 | 1.664802639705
0.000000000000 0.000000000000 0.000000000000 | 1.631416026003
0.000000000000 0.000000000000 0.000000000000 | 1.664802637406
0.000000000000 -0.000000000000 -0.000000000000 | 1.631416025959
-0.000000000000 -0.000000000000 0.000000000000 | 0.476781310144
0.000000000000 -0.000000000000 0.000000000000 | 0.442135090082
0.000000000000 -0.000000000000 -0.000000000000 | 0.438666007193
-0.000000000000 0.000000000000 -0.000000000000 | 0.426419592263
0.000000000000 0.000000000000 -0.000000000000 | 0.438666007191
0.000000000000 0.000000000000 0.000000000000 | 0.426419592261
0.000000000000 -0.000000000000 0.000000000000 | 0.476800078450
-0.000000000000 0.000000000000 0.000000000000 | 0.442136692399
-0.000000000000 -0.000000000000 0.000000000000 | 0.438666540748
0.000000000000 0.000000000000 0.000000000000 | 0.426428120265
----------------------------------------------------------------------------------------------------
Omega_tot = 17.51733890 | Omega_0 = 1.61893856 | Omega_1 = 1.57670483 | Omega_2 = 1.66478407 | Omega_3 = 1.63141746 | Omega_4 = 1.66478608 | Omega_5 = 1.63140158 | Omega_6 = 1.66478608 | Omega_7 = 1.63140158 | Omega_8 = 0.47678131 | Omega_9 = 0.44213509 | Omega_10 = 0.43866597 | Omega_11 = 0.42641956 | Omega_12 = 0.43866597 | Omega_13 = 0.42641956 | Omega_14 = 0.47680005 | Omega_15 = 0.44213667 | Omega_16 = 0.43866643 | Omega_17 = 0.42642804
####################################################################################################
####################################################################################################
iteration 10 Omega= 16.7791177517 delta=-7.38221147e-01, max(3)=--, slope=--
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
-0.000000000000 0.000000000000 0.000000000000 | 1.490748600281
0.000000000000 -0.000000000000 0.000000000000 | 1.452912148738
-0.000000000000 -0.000000000000 -0.000000000000 | 1.620430662232
-0.000000000000 -0.000000000000 -0.000000000000 | 1.586854380351
-0.000000000000 -0.000000000000 -0.000000000000 | 1.620449499798
0.000000000000 0.000000000000 0.000000000000 | 1.586835487942
0.000000000000 0.000000000000 0.000000000000 | 1.620449498643
0.000000000000 -0.000000000000 -0.000000000000 | 1.586835487913
-0.000000000000 -0.000000000000 0.000000000000 | 0.468675297247
0.000000000000 -0.000000000000 0.000000000000 | 0.432126656006
0.000000000000 -0.000000000000 -0.000000000000 | 0.409065020614
-0.000000000000 0.000000000000 -0.000000000000 | 0.394935083536
0.000000000000 0.000000000000 -0.000000000000 | 0.409065020609
0.000000000000 0.000000000000 -0.000000000000 | 0.394935083533
0.000000000000 -0.000000000000 0.000000000000 | 0.468695181657
0.000000000000 0.000000000000 0.000000000000 | 0.432129143818
0.000000000000 -0.000000000000 0.000000000000 | 0.409064750364
-0.000000000000 0.000000000000 0.000000000000 | 0.394946059066
----------------------------------------------------------------------------------------------------
Omega_tot = 16.77911775 | Omega_0 = 1.49074839 | Omega_1 = 1.45291196 | Omega_2 = 1.62042991 | Omega_3 = 1.58685362 | Omega_4 = 1.62044033 | Omega_5 = 1.58682801 | Omega_6 = 1.62044033 | Omega_7 = 1.58682801 | Omega_8 = 0.46867530 | Omega_9 = 0.43212666 | Omega_10 = 0.40906502 | Omega_11 = 0.39493508 | Omega_12 = 0.40906502 | Omega_13 = 0.39493508 | Omega_14 = 0.46869515 | Omega_15 = 0.43212913 | Omega_16 = 0.40906473 | Omega_17 = 0.39494604
####################################################################################################
####################################################################################################
iteration 20 Omega= 16.7791351293 delta= 1.73776479e-05, max(3)=--, slope=--
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
-0.000000000000 0.000000000000 0.000000000000 | 1.490398467188
0.000000000000 -0.000000000000 0.000000000000 | 1.452608683066
-0.000000000000 -0.000000000000 -0.000000000000 | 1.620407788318
-0.000000000000 -0.000000000000 -0.000000000000 | 1.586839181156
-0.000000000000 -0.000000000000 -0.000000000000 | 1.620427599249
0.000000000000 0.000000000000 0.000000000000 | 1.586818682122
0.000000000000 0.000000000000 0.000000000000 | 1.620427598097
0.000000000000 -0.000000000000 -0.000000000000 | 1.586818682093
-0.000000000000 -0.000000000000 0.000000000000 | 0.468678979096
0.000000000000 -0.000000000000 0.000000000000 | 0.432130842599
0.000000000000 -0.000000000000 -0.000000000000 | 0.409207412688
-0.000000000000 0.000000000000 -0.000000000000 | 0.395049743419
0.000000000000 0.000000000000 -0.000000000000 | 0.409207412683
0.000000000000 0.000000000000 -0.000000000000 | 0.395049743416
0.000000000000 -0.000000000000 0.000000000000 | 0.468698895995
0.000000000000 0.000000000000 0.000000000000 | 0.432133292439
0.000000000000 -0.000000000000 0.000000000000 | 0.409207115756
-0.000000000000 0.000000000000 0.000000000000 | 0.395060760221
----------------------------------------------------------------------------------------------------
Omega_tot = 16.77913513 | Omega_0 = 1.49039825 | Omega_1 = 1.45260849 | Omega_2 = 1.62040704 | Omega_3 = 1.58683842 | Omega_4 = 1.62041830 | Omega_5 = 1.58681112 | Omega_6 = 1.62041830 | Omega_7 = 1.58681112 | Omega_8 = 0.46867898 | Omega_9 = 0.43213084 | Omega_10 = 0.40920741 | Omega_11 = 0.39504974 | Omega_12 = 0.40920741 | Omega_13 = 0.39504974 | Omega_14 = 0.46869886 | Omega_15 = 0.43213327 | Omega_16 = 0.40920709 | Omega_17 = 0.39506075
####################################################################################################
wannier centers from spread functional:
[[-5.14441886e-12 8.18545637e-12 7.95579453e-12]
[ 5.38523317e-13 -4.46653848e-12 3.24990636e-12]
[-1.53700735e-09 -3.11053111e-11 -9.17072098e-11]
[-1.19545378e-10 -9.16011783e-10 -3.00273251e-11]
[-1.12995948e-11 -2.18659020e-12 -7.84667352e-10]
[ 5.08261971e-11 9.21973295e-10 3.69829027e-10]
[ 1.47520183e-09 7.81122637e-12 8.40101835e-10]
[ 1.85544328e-10 -3.06809155e-11 -3.33546975e-10]
[-3.06167228e-11 -1.03217643e-12 4.40944529e-13]
[ 3.61882883e-13 -1.08307518e-11 2.00836085e-12]
[ 2.02878413e-13 -4.02646524e-12 -3.48352036e-12]
[-1.45669716e-12 3.51857435e-12 -3.33537935e-12]
[ 7.19832791e-12 1.06328927e-12 -4.44324102e-12]
[ 3.53489351e-13 2.35732690e-12 -5.12466344e-13]
[ 3.06613679e-11 -1.37999916e-12 9.09721774e-13]
[ 1.62683601e-13 1.21888891e-11 2.30091402e-12]
[ 1.26770225e-12 -3.78797379e-12 1.38474100e-12]
[-3.73314336e-13 2.06171181e-13 7.09540799e-13]]
####################################################################################################
Final State
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
-0.000000000000 0.000000000000 0.000000000000 | 1.490398467188
0.000000000000 -0.000000000000 0.000000000000 | 1.452608683066
-0.000000000000 -0.000000000000 -0.000000000000 | 1.620407788318
-0.000000000000 -0.000000000000 -0.000000000000 | 1.586839181156
-0.000000000000 -0.000000000000 -0.000000000000 | 1.620427599249
0.000000000000 0.000000000000 0.000000000000 | 1.586818682122
0.000000000000 0.000000000000 0.000000000000 | 1.620427598097
0.000000000000 -0.000000000000 -0.000000000000 | 1.586818682093
-0.000000000000 -0.000000000000 0.000000000000 | 0.468678979096
0.000000000000 -0.000000000000 0.000000000000 | 0.432130842599
0.000000000000 -0.000000000000 -0.000000000000 | 0.409207412688
-0.000000000000 0.000000000000 -0.000000000000 | 0.395049743419
0.000000000000 0.000000000000 -0.000000000000 | 0.409207412683
0.000000000000 0.000000000000 -0.000000000000 | 0.395049743416
0.000000000000 -0.000000000000 0.000000000000 | 0.468698895995
0.000000000000 0.000000000000 0.000000000000 | 0.432133292439
0.000000000000 -0.000000000000 0.000000000000 | 0.409207115756
-0.000000000000 0.000000000000 0.000000000000 | 0.395060760221
----------------------------------------------------------------------------------------------------
Omega_tot = 16.77913513 | Omega_0 = 1.49039825 | Omega_1 = 1.45260849 | Omega_2 = 1.62040704 | Omega_3 = 1.58683842 | Omega_4 = 1.62041830 | Omega_5 = 1.58681112 | Omega_6 = 1.62041830 | Omega_7 = 1.58681112 | Omega_8 = 0.46867898 | Omega_9 = 0.43213084 | Omega_10 = 0.40920741 | Omega_11 = 0.39504974 | Omega_12 = 0.40920741 | Omega_13 = 0.39504974 | Omega_14 = 0.46869886 | Omega_15 = 0.43213327 | Omega_16 = 0.40920709 | Omega_17 = 0.39506075
####################################################################################################
include_TR = None
kwargs for win are {}
kwargs for eig are {'read_npz': True, 'write_npz': True, 'selected_bands': None}
calling w90 file with wannier-berri/tests/data/Fe-444-sitesym/Fe, eig, tags=['data'], read_npz=True, write_npz=True, kwargs={}
kwargs for mmn are {'read_npz': True, 'write_npz': True, 'selected_bands': None}
calling w90 file with wannier-berri/tests/data/Fe-444-sitesym/Fe, mmn, tags=['data', 'neighbours', 'G'], read_npz=True, write_npz=True, kwargs={'npar': 32}
kwargs for amn are {'read_npz': True, 'write_npz': True, 'selected_bands': None}
calling w90 file with wannier-berri/tests/data/Fe-444-sitesym/Fe, amn, tags=['data'], read_npz=True, write_npz=True, kwargs={'npar': 32}
apply_window amn, selected_bands=None
creating CheckPoint_bare
kwargs for chk are {'selected_bands': None}
creating dmn
wannierising
wannier centers from spread functional:
[[-2.55930596e-09 1.88654029e-09 9.83803996e-10]
[-2.70062794e-09 3.78092758e-09 -2.01906552e-09]
[-2.53239036e-09 -5.72558135e-10 -4.27339060e-09]
[-6.08781988e-10 -1.81320673e-09 8.14955713e-09]
[ 1.17536789e-08 -3.43202647e-10 -2.66440833e-09]
[ 1.13900240e-08 2.60775694e-09 1.33526521e-09]
[ 3.02748920e-09 -5.19660187e-09 2.23961503e-09]
[ 1.79789118e-10 -1.63824116e-08 -1.13769677e-09]
[ 6.89905597e-12 -2.88377309e-11 -4.18312961e-11]
[ 5.29697396e-11 -1.12643889e-10 2.11230347e-10]
[-1.38774739e-12 3.01304969e-11 -5.80530467e-11]
[-1.67749498e-11 8.65540982e-11 3.56085393e-11]
[-5.69460107e-11 -1.07885918e-11 2.10614883e-11]
[-5.12250358e-11 -1.32603421e-11 -1.67722359e-11]
[ 1.71410198e-10 -3.47775597e-11 -8.03428221e-12]
[ 1.03931688e-10 -2.30469254e-10 -4.33889822e-12]
[ 5.72015630e-11 4.77988950e-11 3.05221246e-11]
[ 1.97462667e-11 4.95785749e-12 -3.57325875e-11]]
####################################################################################################
Initial State
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
-0.000000000000 0.000000000000 0.000000000000 | 1.822712919325
-0.000000000000 0.000000000000 -0.000000000000 | 1.775270440985
-0.000000000000 -0.000000000000 -0.000000000000 | 1.784731786598
-0.000000000000 -0.000000000000 0.000000000000 | 1.748633067856
0.000000000000 -0.000000000000 -0.000000000000 | 1.784745745525
0.000000000000 0.000000000000 0.000000000000 | 1.748631180695
0.000000000000 -0.000000000000 0.000000000000 | 1.784745738457
0.000000000000 -0.000000000000 -0.000000000000 | 1.748631180938
0.000000000000 -0.000000000000 -0.000000000000 | 0.515479519278
0.000000000000 -0.000000000000 0.000000000000 | 0.486069142560
-0.000000000000 0.000000000000 -0.000000000000 | 0.489469186857
-0.000000000000 0.000000000000 0.000000000000 | 0.478489321990
-0.000000000000 -0.000000000000 0.000000000000 | 0.489469186868
-0.000000000000 -0.000000000000 -0.000000000000 | 0.478489321995
0.000000000000 -0.000000000000 -0.000000000000 | 0.515495586207
0.000000000000 -0.000000000000 -0.000000000000 | 0.486068196617
0.000000000000 0.000000000000 0.000000000000 | 0.489469975361
0.000000000000 0.000000000000 -0.000000000000 | 0.478496224026
----------------------------------------------------------------------------------------------------
Omega_tot = 19.10495554 | Omega_0 = 1.82270805 | Omega_1 = 1.77526605 | Omega_2 = 1.78471858 | Omega_3 = 1.74862082 | Omega_4 = 1.78471773 | Omega_5 = 1.74860595 | Omega_6 = 1.78471772 | Omega_7 = 1.74860595 | Omega_8 = 0.51547950 | Omega_9 = 0.48606912 | Omega_10 = 0.48946909 | Omega_11 = 0.47848924 | Omega_12 = 0.48946909 | Omega_13 = 0.47848924 | Omega_14 = 0.51549554 | Omega_15 = 0.48606813 | Omega_16 = 0.48946972 | Omega_17 = 0.47849602
####################################################################################################
####################################################################################################
iteration 0 Omega= 17.5173388915 delta=--, max(3)=--, slope=--
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
-0.000000000000 0.000000000000 0.000000000000 | 1.618940004551
-0.000000000000 0.000000000000 -0.000000000000 | 1.576706198553
-0.000000000000 -0.000000000000 -0.000000000000 | 1.664787244483
0.000000000000 -0.000000000000 0.000000000000 | 1.631420515607
0.000000000000 -0.000000000000 -0.000000000000 | 1.664802640259
0.000000000000 0.000000000000 0.000000000000 | 1.631416023813
0.000000000000 -0.000000000000 0.000000000000 | 1.664802635484
0.000000000000 -0.000000000000 -0.000000000000 | 1.631416024775
-0.000000000000 0.000000000000 0.000000000000 | 0.476781310050
0.000000000000 -0.000000000000 0.000000000000 | 0.442135090033
0.000000000000 0.000000000000 -0.000000000000 | 0.438666007177
-0.000000000000 0.000000000000 0.000000000000 | 0.426419592270
-0.000000000000 -0.000000000000 0.000000000000 | 0.438666007170
-0.000000000000 -0.000000000000 -0.000000000000 | 0.426419592262
0.000000000000 -0.000000000000 -0.000000000000 | 0.476800078457
0.000000000000 -0.000000000000 -0.000000000000 | 0.442136692380
0.000000000000 0.000000000000 0.000000000000 | 0.438666540708
0.000000000000 0.000000000000 -0.000000000000 | 0.426428120208
----------------------------------------------------------------------------------------------------
Omega_tot = 17.51733889 | Omega_0 = 1.61893856 | Omega_1 = 1.57670483 | Omega_2 = 1.66478407 | Omega_3 = 1.63141746 | Omega_4 = 1.66478608 | Omega_5 = 1.63140158 | Omega_6 = 1.66478607 | Omega_7 = 1.63140158 | Omega_8 = 0.47678131 | Omega_9 = 0.44213509 | Omega_10 = 0.43866597 | Omega_11 = 0.42641956 | Omega_12 = 0.43866597 | Omega_13 = 0.42641956 | Omega_14 = 0.47680005 | Omega_15 = 0.44213667 | Omega_16 = 0.43866643 | Omega_17 = 0.42642804
####################################################################################################
####################################################################################################
iteration 10 Omega= 16.7791177510 delta=-7.38221140e-01, max(3)=--, slope=--
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
-0.000000000000 0.000000000000 0.000000000000 | 1.490748600488
-0.000000000000 0.000000000000 -0.000000000000 | 1.452912148817
-0.000000000000 -0.000000000000 -0.000000000000 | 1.620430662278
-0.000000000000 -0.000000000000 0.000000000000 | 1.586854382533
0.000000000000 -0.000000000000 -0.000000000000 | 1.620449501004
0.000000000000 0.000000000000 0.000000000000 | 1.586835486127
0.000000000000 -0.000000000000 0.000000000000 | 1.620449496991
0.000000000000 -0.000000000000 -0.000000000000 | 1.586835487045
-0.000000000000 0.000000000000 0.000000000000 | 0.468675297271
-0.000000000000 0.000000000000 -0.000000000000 | 0.432126656046
0.000000000000 -0.000000000000 0.000000000000 | 0.409065020691
0.000000000000 0.000000000000 -0.000000000000 | 0.394935083566
-0.000000000000 0.000000000000 -0.000000000000 | 0.409065020641
-0.000000000000 0.000000000000 0.000000000000 | 0.394935083570
-0.000000000000 0.000000000000 0.000000000000 | 0.468695181623
-0.000000000000 0.000000000000 0.000000000000 | 0.432129143800
-0.000000000000 0.000000000000 0.000000000000 | 0.409064750278
-0.000000000000 -0.000000000000 -0.000000000000 | 0.394946059034
----------------------------------------------------------------------------------------------------
Omega_tot = 16.77911775 | Omega_0 = 1.49074839 | Omega_1 = 1.45291196 | Omega_2 = 1.62042991 | Omega_3 = 1.58685362 | Omega_4 = 1.62044033 | Omega_5 = 1.58682801 | Omega_6 = 1.62044033 | Omega_7 = 1.58682801 | Omega_8 = 0.46867530 | Omega_9 = 0.43212666 | Omega_10 = 0.40906502 | Omega_11 = 0.39493508 | Omega_12 = 0.40906502 | Omega_13 = 0.39493508 | Omega_14 = 0.46869515 | Omega_15 = 0.43212913 | Omega_16 = 0.40906473 | Omega_17 = 0.39494604
####################################################################################################
####################################################################################################
iteration 20 Omega= 16.7791351287 delta= 1.73776531e-05, max(3)=--, slope=--
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
-0.000001000000 0.000000000000 0.000000000000 | 1.490398467394
-0.000001000000 0.000001000000 -0.000000000000 | 1.452608683144
-0.000000000000 0.000000000000 -0.000000000000 | 1.620407788388
-0.000000000000 0.000000000000 0.000000000000 | 1.586839183315
0.000001000000 0.000000000000 0.000000000000 | 1.620427600472
0.000001000000 0.000000000000 -0.000000000000 | 1.586818680329
-0.000000000000 -0.000000000000 0.000000000000 | 1.620427596398
-0.000000000000 -0.000001000000 -0.000000000000 | 1.586818681235
-0.000000000000 0.000000000000 0.000000000000 | 0.468678979121
-0.000000000000 0.000000000000 -0.000000000000 | 0.432130842639
0.000000000000 0.000000000000 0.000000000000 | 0.409207412764
0.000000000000 0.000000000000 -0.000000000000 | 0.395049743448
-0.000000000000 0.000000000000 -0.000000000000 | 0.409207412716
-0.000000000000 0.000000000000 0.000000000000 | 0.395049743452
-0.000000000000 0.000000000000 0.000000000000 | 0.468698895960
-0.000000000000 0.000000000000 -0.000000000000 | 0.432133292420
-0.000000000000 0.000000000000 0.000000000000 | 0.409207115671
-0.000000000000 -0.000000000000 -0.000000000000 | 0.395060760191
----------------------------------------------------------------------------------------------------
Omega_tot = 16.77913513 | Omega_0 = 1.49039825 | Omega_1 = 1.45260849 | Omega_2 = 1.62040704 | Omega_3 = 1.58683843 | Omega_4 = 1.62041830 | Omega_5 = 1.58681112 | Omega_6 = 1.62041829 | Omega_7 = 1.58681112 | Omega_8 = 0.46867898 | Omega_9 = 0.43213084 | Omega_10 = 0.40920741 | Omega_11 = 0.39504974 | Omega_12 = 0.40920741 | Omega_13 = 0.39504974 | Omega_14 = 0.46869886 | Omega_15 = 0.43213327 | Omega_16 = 0.40920709 | Omega_17 = 0.39506075
####################################################################################################
wannier centers from spread functional:
[[-6.92566396e-07 2.78540036e-07 2.51009590e-07]
[-5.92587254e-07 8.20056853e-07 -3.89037910e-07]
[-8.15090334e-09 1.95785802e-10 -3.26237188e-07]
[-3.88265469e-09 1.55827941e-09 4.97915639e-07]
[ 8.97115792e-07 1.26843098e-10 3.92215692e-10]
[ 7.57751341e-07 6.22422072e-09 -5.26041814e-10]
[-1.23682361e-09 -3.56899522e-07 4.27800511e-09]
[-2.08533456e-09 -1.04840747e-06 -2.60640363e-09]
[-2.29840211e-08 9.06608013e-09 3.61468426e-08]
[-1.80090553e-08 2.48385226e-08 -5.07262665e-08]
[ 9.70220612e-10 3.58404623e-11 8.20402213e-11]
[ 2.35121099e-10 1.75509131e-10 -6.61930192e-11]
[-1.83735373e-10 1.28749018e-10 -5.41091127e-10]
[-1.22650370e-10 2.71815118e-10 2.19587552e-10]
[-7.26623106e-08 2.86361227e-08 2.40714767e-11]
[-5.68485762e-08 7.85484487e-08 -1.84875240e-11]
[-3.15353628e-10 2.37107453e-10 7.42292867e-11]
[-5.64129154e-11 -5.66286161e-10 -7.60538541e-11]]
####################################################################################################
Final State
----------------------------------------------------------------------------------------------------
wannier centers and spreads
----------------------------------------------------------------------------------------------------
-0.000001000000 0.000000000000 0.000000000000 | 1.490398467394
-0.000001000000 0.000001000000 -0.000000000000 | 1.452608683144
-0.000000000000 0.000000000000 -0.000000000000 | 1.620407788388
-0.000000000000 0.000000000000 0.000000000000 | 1.586839183315
0.000001000000 0.000000000000 0.000000000000 | 1.620427600472
0.000001000000 0.000000000000 -0.000000000000 | 1.586818680329
-0.000000000000 -0.000000000000 0.000000000000 | 1.620427596398
-0.000000000000 -0.000001000000 -0.000000000000 | 1.586818681235
-0.000000000000 0.000000000000 0.000000000000 | 0.468678979121
-0.000000000000 0.000000000000 -0.000000000000 | 0.432130842639
0.000000000000 0.000000000000 0.000000000000 | 0.409207412764
0.000000000000 0.000000000000 -0.000000000000 | 0.395049743448
-0.000000000000 0.000000000000 -0.000000000000 | 0.409207412716
-0.000000000000 0.000000000000 0.000000000000 | 0.395049743452
-0.000000000000 0.000000000000 0.000000000000 | 0.468698895960
-0.000000000000 0.000000000000 -0.000000000000 | 0.432133292420
-0.000000000000 0.000000000000 0.000000000000 | 0.409207115671
-0.000000000000 -0.000000000000 -0.000000000000 | 0.395060760191
----------------------------------------------------------------------------------------------------
Omega_tot = 16.77913513 | Omega_0 = 1.49039825 | Omega_1 = 1.45260849 | Omega_2 = 1.62040704 | Omega_3 = 1.58683843 | Omega_4 = 1.62041830 | Omega_5 = 1.58681112 | Omega_6 = 1.62041829 | Omega_7 = 1.58681112 | Omega_8 = 0.46867898 | Omega_9 = 0.43213084 | Omega_10 = 0.40920741 | Omega_11 = 0.39504974 | Omega_12 = 0.40920741 | Omega_13 = 0.39504974 | Omega_14 = 0.46869886 | Omega_15 = 0.43213327 | Omega_16 = 0.40920709 | Omega_17 = 0.39506075
####################################################################################################
3. Create System_w90 objects
[3]:
systems = {}
for includeTR in include_TR_list:
cprint (f"include_TR = {includeTR}", "green", attrs=["bold"])
systems[includeTR]=wberri.system.System_w90(w90data= w90_data_list[includeTR], berry=True, transl_inv_JM=True, transl_inv_MV=False, wcc_phase_fin_diff=False)
include_TR = True
/home/stepan/github/WannierBerri-tutorial/.conda/lib/python3.11/site-packages/wannierberri/system/system_w90.py:145: UserWarning: converting convention II to convention I is not recommended.Better use 'wcc_phase_fin_dif=True' or `transl_inv_JM=True`
warnings.warn("converting convention II to convention I is not recommended."
expjphase1 (18, 18, 12)
irvec_new_all shape (89,)
using ws_dist for Ham
using ws_dist for AA
Real-space lattice:
[[ 1.4349963 1.4349963 1.4349963]
[-1.4349963 1.4349963 1.4349963]
[-1.4349963 -1.4349963 1.4349963]]
Number of wannier functions: 18
Number of R points: 89
Recommended size of FFT grid [4 4 4]
include_TR = False
expjphase1 (18, 18, 12)
irvec_new_all shape (89,)
using ws_dist for Ham
using ws_dist for AA
Real-space lattice:
[[ 1.4349963 1.4349963 1.4349963]
[-1.4349963 1.4349963 1.4349963]
[-1.4349963 -1.4349963 1.4349963]]
Number of wannier functions: 18
Number of R points: 89
Recommended size of FFT grid [4 4 4]
include_TR = None
expjphase1 (18, 18, 12)
irvec_new_all shape (89,)
using ws_dist for Ham
using ws_dist for AA
Real-space lattice:
[[ 1.4349963 1.4349963 1.4349963]
[-1.4349963 1.4349963 1.4349963]
[-1.4349963 -1.4349963 1.4349963]]
Number of wannier functions: 18
Number of R points: 89
Recommended size of FFT grid [4 4 4]
4. Bands along path
4.1 calculate bands
[4]:
results_path = {}
for includeTR in include_TR_list:
cprint (f"include_TR = {includeTR}", "green", attrs=["bold"])
system = systems[includeTR]
# system.set_symmetry(spacegroup=bandstructure.spacegroup)
tabulators = { "Energy": wberri.calculators.tabulate.Energy(),
}
tab_all_path = wberri.calculators.TabulatorAll(
tabulators,
ibands=np.arange(0,18),
mode="path"
)
# all kpoints given in reduced coordinates
path=wberri.Path(system,
k_nodes=[
[0.0000, 0.0000, 0.0000 ], # G
[0.500 ,-0.5000, -0.5000], # H
[0.7500, 0.2500, -0.2500], # P
[0.5000, 0.0000, -0.5000], # N
[0.0000, 0.0000, 0.000 ]
] , # G
labels=["G","H","P","N","G"],
length=200 ) # length [ Ang] ~= 2*pi/dk
results_path[includeTR]=wberri.run(system,
parallel=parallel,
grid=path,
calculators={"tabulate" : tab_all_path},
print_Kpoints=False)
include_TR = True
Starting run()
Using the follwing calculators :
############################################################
'tabulate' : <wannierberri.calculators.tabulate.TabulatorAll object at 0x7f9f5bf6e290> :
TabulatorAll - a pack of all k-resolved calculators (Tabulators)
Includes the following tabulators :
--------------------------------------------------
"Energy" : <wannierberri.calculators.tabulate.Energy object at 0x7f9f5bf6c890> : calculator not described
--------------------------------------------------
############################################################
Calculation along a path - checking calculators for compatibility
tabulate <wannierberri.calculators.tabulate.TabulatorAll object at 0x7f9f5bf6e290>
All calculators are compatible
Symmetrization switched off for Path
Grid is regular
The set of k points is a Path() with 215 points and labels {0: 'G', 70: 'H', 130: 'P', 165: 'N', 214: 'G'}
generating K_list
Done
Done, sum of weights:215.0
processing 215 K points : using 32 processes.
# K-points calculated Wall time (sec) Est. remaining (sec)
/home/stepan/github/WannierBerri-tutorial/.conda/lib/python3.11/site-packages/wannierberri/grid/path.py:163: UserWarning: symmetry is not used for a tabulation along path
warnings.warn("symmetry is not used for a tabulation along path")
time for processing 215 K-points on 32 processes: 1.6117 ; per K-point 0.0075 ; proc-sec per K-point 0.2399
time1 = 0.004637241363525391
Totally processed 215 K-points
run() finished
include_TR = False
Starting run()
Using the follwing calculators :
############################################################
'tabulate' : <wannierberri.calculators.tabulate.TabulatorAll object at 0x7f9f5605f090> :
TabulatorAll - a pack of all k-resolved calculators (Tabulators)
Includes the following tabulators :
--------------------------------------------------
"Energy" : <wannierberri.calculators.tabulate.Energy object at 0x7f9fb01bb490> : calculator not described
--------------------------------------------------
############################################################
Calculation along a path - checking calculators for compatibility
tabulate <wannierberri.calculators.tabulate.TabulatorAll object at 0x7f9f5605f090>
All calculators are compatible
Symmetrization switched off for Path
Grid is regular
The set of k points is a Path() with 215 points and labels {0: 'G', 70: 'H', 130: 'P', 165: 'N', 214: 'G'}
generating K_list
Done
Done, sum of weights:215.0
processing 215 K points : using 32 processes.
# K-points calculated Wall time (sec) Est. remaining (sec)
time for processing 215 K-points on 32 processes: 0.1798 ; per K-point 0.0008 ; proc-sec per K-point 0.0268
time1 = 0.0032613277435302734
Totally processed 215 K-points
run() finished
include_TR = None
Starting run()
Using the follwing calculators :
############################################################
'tabulate' : <wannierberri.calculators.tabulate.TabulatorAll object at 0x7f9f4c271590> :
TabulatorAll - a pack of all k-resolved calculators (Tabulators)
Includes the following tabulators :
--------------------------------------------------
"Energy" : <wannierberri.calculators.tabulate.Energy object at 0x7fa020e43010> : calculator not described
--------------------------------------------------
############################################################
Calculation along a path - checking calculators for compatibility
tabulate <wannierberri.calculators.tabulate.TabulatorAll object at 0x7f9f4c271590>
All calculators are compatible
Symmetrization switched off for Path
Grid is regular
The set of k points is a Path() with 215 points and labels {0: 'G', 70: 'H', 130: 'P', 165: 'N', 214: 'G'}
generating K_list
Done
Done, sum of weights:215.0
processing 215 K points : using 32 processes.
# K-points calculated Wall time (sec) Est. remaining (sec)
time for processing 215 K-points on 32 processes: 0.0969 ; per K-point 0.0005 ; proc-sec per K-point 0.0144
time1 = 0.003574848175048828
Totally processed 215 K-points
run() finished
4.2 plot bands
[5]:
# plot the bands and compare with pw
EF = 12.6
A = np.loadtxt(path_data / "Fe_bands_pw.dat")
bohr_ang = scipy.constants.physical_constants['Bohr radius'][0] / 1e-10
alatt = 5.4235* bohr_ang
A[:,0]*= 2*np.pi/alatt
A[:,1] = A[:,1] - EF
plt.scatter(A[:,0], A[:,1], c="black", s=5)
colors = ["blue", "red","black"]
for includeTR in include_TR_list:
cprint (f"include_TR = {includeTR}", "green", attrs=["bold"])
path_result = results_path[includeTR].results["tabulate"]
path_result.plot_path_fat(path,
quantity=None,
# save_file="Fe_bands.pdf",
Eshift=EF,
Emin=-10, Emax=50,
iband=None,
mode="fatband",
fatfactor=20,
cut_k=False,
linecolor=colors.pop(),
close_fig=False,
show_fig=False,
label=f"TR={includeTR}"
)
plt.ylim(-10, 20)
plt.hlines(froz_max-EF, 0, A[-1,0], linestyles="dashed")
plt.legend()
plt.savefig("Fe_bands.pdf")
include_TR = True
include_TR = False
include_TR = None
5. AHC and Ohmic conductivity
5.1 calculate
[6]:
results_grid = {}
efermi = np.linspace(12.4,12.8,1001)
param = dict(Efermi=efermi)
calculators_grid = {
"CDOS": wberri.calculators.static.CumDOS(**param),
"ohmic": wberri.calculators.static.Ohmic_FermiSea(**param),
"ahc_internal": wberri.calculators.static.AHC(kwargs_formula={"external_terms":False}, **param),
"ahc_external": wberri.calculators.static.AHC(kwargs_formula={"internal_terms":False}, **param ),
}
for includeTR in include_TR_list:
cprint (f"include_TR = {includeTR}", "green", attrs=["bold"])
system = systems[includeTR]
grid = wberri.Grid(system, NKFFT=6, NK=48)
results_grid[includeTR] = wberri.run(system, grid, calculators_grid,
fout_name="Fe_grid",
suffix = f"TR={includeTR}",
adpt_num_iter=0,
symmetrize=False, # we do not symmetrize here so that we can chaeck how symmetric are the WFs
use_irred_kpt=False,
print_progress_step=1,
parallel=parallel,
print_Kpoints=False,
)
# plot the bands to compare with pw
include_TR = True
Starting run()
Using the follwing calculators :
############################################################
'CDOS' : <wannierberri.calculators.static.CumDOS object at 0x7f9f1420a210> : Cumulative density of states
'ohmic' : <wannierberri.calculators.static.Ohmic_FermiSea object at 0x7f9fb01edb50> : Ohmic conductivity (:math:`S/m`)
| With Fermi sea integral. Eq(31) in `Ref <https://www.nature.com/articles/s41524-021-00498-5>`__
| Output: :math:`\sigma_{\alpha\beta} = e^2/\hbar \tau \int [dk] \partial_\beta v_\alpha f`for \tau=1fs| Instruction: :math:`j_\alpha = \sigma_{\alpha\beta} E_\beta`
'ahc_internal' : <wannierberri.calculators.static.AHC object at 0x7f9f4c45b610> : Anomalous Hall conductivity (:math:`s^3 \cdot A^2 / (kg \cdot m^3) = S/m`)
| With Fermi sea integral Eq(11) in `Ref <https://www.nature.com/articles/s41524-021-00498-5>`__
| Output: :math:`O = -e^2/\hbar \int [dk] \Omega f`
| Instruction: :math:`j_\alpha = \sigma_{\alpha\beta} E_\beta = \epsilon_{\alpha\beta\delta} O_\delta E_\beta`
'ahc_external' : <wannierberri.calculators.static.AHC object at 0x7f9f142c0990> : Anomalous Hall conductivity (:math:`s^3 \cdot A^2 / (kg \cdot m^3) = S/m`)
| With Fermi sea integral Eq(11) in `Ref <https://www.nature.com/articles/s41524-021-00498-5>`__
| Output: :math:`O = -e^2/\hbar \int [dk] \Omega f`
| Instruction: :math:`j_\alpha = \sigma_{\alpha\beta} E_\beta = \epsilon_{\alpha\beta\delta} O_\delta E_\beta`
############################################################
Calculation on grid - checking calculators for compatibility
CDOS <wannierberri.calculators.static.CumDOS object at 0x7f9f1420a210>
ohmic <wannierberri.calculators.static.Ohmic_FermiSea object at 0x7f9fb01edb50>
ahc_internal <wannierberri.calculators.static.AHC object at 0x7f9f4c45b610>
ahc_external <wannierberri.calculators.static.AHC object at 0x7f9f142c0990>
All calculators are compatible
Grid is regular
The set of k points is a Grid() with NKdiv=[8 8 8], NKFFT=[6 6 6], NKtot=[48 48 48]
generating K_list
Done in 0.001710653305053711 s
K_list contains 512 Irreducible points(100.0%) out of initial 8x8x8=512 grid
Done, sum of weights:1.0
processing 512 K points : using 32 processes.
# K-points calculated Wall time (sec) Est. remaining (sec)
time for processing 512 K-points on 32 processes: 9.5603 ; per K-point 0.0187 ; proc-sec per K-point 0.5975
time1 = 0.04990577697753906
Totally processed 512 K-points
run() finished
include_TR = False
Starting run()
Using the follwing calculators :
############################################################
'CDOS' : <wannierberri.calculators.static.CumDOS object at 0x7f9f1420a210> : Cumulative density of states
'ohmic' : <wannierberri.calculators.static.Ohmic_FermiSea object at 0x7f9fb01edb50> : Ohmic conductivity (:math:`S/m`)
| With Fermi sea integral. Eq(31) in `Ref <https://www.nature.com/articles/s41524-021-00498-5>`__
| Output: :math:`\sigma_{\alpha\beta} = e^2/\hbar \tau \int [dk] \partial_\beta v_\alpha f`for \tau=1fs| Instruction: :math:`j_\alpha = \sigma_{\alpha\beta} E_\beta`
'ahc_internal' : <wannierberri.calculators.static.AHC object at 0x7f9f4c45b610> : Anomalous Hall conductivity (:math:`s^3 \cdot A^2 / (kg \cdot m^3) = S/m`)
| With Fermi sea integral Eq(11) in `Ref <https://www.nature.com/articles/s41524-021-00498-5>`__
| Output: :math:`O = -e^2/\hbar \int [dk] \Omega f`
| Instruction: :math:`j_\alpha = \sigma_{\alpha\beta} E_\beta = \epsilon_{\alpha\beta\delta} O_\delta E_\beta`
'ahc_external' : <wannierberri.calculators.static.AHC object at 0x7f9f142c0990> : Anomalous Hall conductivity (:math:`s^3 \cdot A^2 / (kg \cdot m^3) = S/m`)
| With Fermi sea integral Eq(11) in `Ref <https://www.nature.com/articles/s41524-021-00498-5>`__
| Output: :math:`O = -e^2/\hbar \int [dk] \Omega f`
| Instruction: :math:`j_\alpha = \sigma_{\alpha\beta} E_\beta = \epsilon_{\alpha\beta\delta} O_\delta E_\beta`
############################################################
Calculation on grid - checking calculators for compatibility
CDOS <wannierberri.calculators.static.CumDOS object at 0x7f9f1420a210>
ohmic <wannierberri.calculators.static.Ohmic_FermiSea object at 0x7f9fb01edb50>
ahc_internal <wannierberri.calculators.static.AHC object at 0x7f9f4c45b610>
ahc_external <wannierberri.calculators.static.AHC object at 0x7f9f142c0990>
All calculators are compatible
Grid is regular
The set of k points is a Grid() with NKdiv=[8 8 8], NKFFT=[6 6 6], NKtot=[48 48 48]
generating K_list
Done in 0.0023353099822998047 s
K_list contains 512 Irreducible points(100.0%) out of initial 8x8x8=512 grid
Done, sum of weights:1.0
processing 512 K points : using 32 processes.
# K-points calculated Wall time (sec) Est. remaining (sec)
time for processing 512 K-points on 32 processes: 10.3670 ; per K-point 0.0202 ; proc-sec per K-point 0.6479
time1 = 0.04056549072265625
Totally processed 512 K-points
run() finished
include_TR = None
Starting run()
Using the follwing calculators :
############################################################
'CDOS' : <wannierberri.calculators.static.CumDOS object at 0x7f9f1420a210> : Cumulative density of states
'ohmic' : <wannierberri.calculators.static.Ohmic_FermiSea object at 0x7f9fb01edb50> : Ohmic conductivity (:math:`S/m`)
| With Fermi sea integral. Eq(31) in `Ref <https://www.nature.com/articles/s41524-021-00498-5>`__
| Output: :math:`\sigma_{\alpha\beta} = e^2/\hbar \tau \int [dk] \partial_\beta v_\alpha f`for \tau=1fs| Instruction: :math:`j_\alpha = \sigma_{\alpha\beta} E_\beta`
'ahc_internal' : <wannierberri.calculators.static.AHC object at 0x7f9f4c45b610> : Anomalous Hall conductivity (:math:`s^3 \cdot A^2 / (kg \cdot m^3) = S/m`)
| With Fermi sea integral Eq(11) in `Ref <https://www.nature.com/articles/s41524-021-00498-5>`__
| Output: :math:`O = -e^2/\hbar \int [dk] \Omega f`
| Instruction: :math:`j_\alpha = \sigma_{\alpha\beta} E_\beta = \epsilon_{\alpha\beta\delta} O_\delta E_\beta`
'ahc_external' : <wannierberri.calculators.static.AHC object at 0x7f9f142c0990> : Anomalous Hall conductivity (:math:`s^3 \cdot A^2 / (kg \cdot m^3) = S/m`)
| With Fermi sea integral Eq(11) in `Ref <https://www.nature.com/articles/s41524-021-00498-5>`__
| Output: :math:`O = -e^2/\hbar \int [dk] \Omega f`
| Instruction: :math:`j_\alpha = \sigma_{\alpha\beta} E_\beta = \epsilon_{\alpha\beta\delta} O_\delta E_\beta`
############################################################
Calculation on grid - checking calculators for compatibility
CDOS <wannierberri.calculators.static.CumDOS object at 0x7f9f1420a210>
ohmic <wannierberri.calculators.static.Ohmic_FermiSea object at 0x7f9fb01edb50>
ahc_internal <wannierberri.calculators.static.AHC object at 0x7f9f4c45b610>
ahc_external <wannierberri.calculators.static.AHC object at 0x7f9f142c0990>
All calculators are compatible
Grid is regular
The set of k points is a Grid() with NKdiv=[8 8 8], NKFFT=[6 6 6], NKtot=[48 48 48]
generating K_list
Done in 0.001852273941040039 s
K_list contains 512 Irreducible points(100.0%) out of initial 8x8x8=512 grid
Done, sum of weights:1.0
processing 512 K points : using 32 processes.
# K-points calculated Wall time (sec) Est. remaining (sec)
time for processing 512 K-points on 32 processes: 10.5928 ; per K-point 0.0207 ; proc-sec per K-point 0.6620
time1 = 0.04562973976135254
Totally processed 512 K-points
run() finished
5.2 Plot
[7]:
def plotxyz(axes, x, data, pre = "", label="",ls="-"):
for i in range(3):
ax =axes[i]
ax.plot(x, data[:,i], ls, label=label)
ax.set_title(f"{pre}{'xyz'[i]}")
quantities = ["ahc_internal", "ahc_external","ohmic"]
linestyles = {k:v for k,v in zip( include_TR_list, ["-", "--", "-."])}
nfig = len(quantities)
for quantity in quantities:
fig = None
for includeTR in include_TR_list:
res = results_grid[includeTR].results[quantity]
data = res.data
E = res.Energies[0]
if fig is None:
if data.ndim == 2:
nfigx = 1
nfigy = data.shape[1]
elif data.ndim == 3:
nfigx = data.shape[1]
nfigy = data.shape[2]
fig, axes = plt.subplots(nfigx, nfigy, figsize=(5*nfigy,5*nfigx))
if nfigx ==1:
plotxyz(axes, E, data, label=f"{includeTR}", ls=linestyles[includeTR])
else:
for i in range(nfigx):
plotxyz(axes[i], E, data[:,i], pre="xyz"[i], label=f"{includeTR}", ls=linestyles[includeTR])
for ax in axes.flat:
ax.legend()
fig.suptitle(quantity)
plt.show()
plt.close()
6. Creating the dmn files
The wannierberri.w90files.DMN
class is used to create the dmn files or read them from the disk. Note that although it can read the files created bt pw2wannier90, and also save in the same format the DMN object contains more information, which is lost when saving to wannier90 format therefore it is recommended to save the object as npz file, unless you need to use the dmn files with Wannier90 or other codes.
In particular, the DMN object has extra information:
The matrices D_wann and d_band are stored in block diagonal form, which saves memory and allows for faster calculations.
for d_band the blocks correspond to (almost) degenerate bands
for D_wann the blocks correspond to the same orbital at the same Wyckoff position
The information on magnetic symmeties (which symmetry operation includes time reversal)
6.1 read the bandstructure using irrep
[8]:
from irrep.bandstructure import BandStructure
path_data = Path("./wannier-berri/tests/data/Fe-222-pw/")
assert os.path.exists(path_data), f"Path {path_data} does not exist"
# adjust path if needed to point to the data in the tests fo wannier-berri repository
bandstructure = BandStructure(code='espresso', # to work with VASP or abinit please refer to the documentation of irrep
prefix=str(path_data / "Fe"),
Ecut=100,
normalize=False,
magmom=[[0,0,1]], # set the magnetic moments for a magnetic system (units do not matter)
include_TR=True) # set include_TR=False if you do not want to include the symmetries involving time reversal
bandstructure.spacegroup.show()
dmn = wberri.w90files.DMN(empty=True)
dmn.from_irrep(bandstructure)
---------- CRYSTAL STRUCTURE ----------
Cell vectors in angstroms:
Vectors of DFT cell | Vectors of REF. cell
a0 = 1.4350 1.4350 1.4350 | a0 = 1.4350 -1.4350 -1.4350
a1 = -1.4350 1.4350 1.4350 | a1 = 1.4350 1.4350 -1.4350
a2 = -1.4350 -1.4350 1.4350 | a2 = 1.4350 1.4350 1.4350
Atomic positions in direct coordinates:
Atom type | Position in DFT cell | Position in REF cell
1 | 0.0000 0.0000 0.0000 | 0.0000 0.0000 0.0000
---------- SPACE GROUP -----------
Space group: magnetic-unknown (# None)
Number of symmetries: 16 (mod. lattice translations)
The transformation from the DFT cell to the reference cell of tables is given by:
| 1.0000 0.0000 0.0000 |
refUC = | 0.0000 1.0000 0.0000 | shiftUC = [0. 0. 0.]
| 0.0000 0.0000 1.0000 |
### 1
rotation : | 1 0 0 |
| 0 1 0 |
| 0 0 1 |
gk = [kx, ky, kz]
spinor rot. : | 1.000+0.000j 0.000+0.000j |
| 0.000+0.000j 1.000+0.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [-0.240772 0.120386 0.963087] ; angle = 0 , inversion : False
time-reversal : False
### 2
rotation : | -1 0 0 |
| 0 -1 0 |
| 0 0 -1 |
gk = [-kx, -ky, -kz]
spinor rot. : | 1.000+0.000j 0.000+0.000j |
| 0.000+0.000j 1.000+0.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [-0.240772 0.120386 0.963087] ; angle = 0 , inversion : True
time-reversal : False
### 3
rotation : | 0 0 1 |
| 1 0 -1 |
| 0 1 1 |
gk = [kx-ky+kz, kx, ky]
spinor rot. : | 0.707-0.707j 0.000+0.000j |
|-0.000+0.000j 0.707+0.707j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [ 0. -0. 1.] ; angle = 1/2 pi, inversion : False
time-reversal : False
### 4
rotation : | 0 0 -1 |
| -1 0 1 |
| 0 -1 -1 |
gk = [-kx+ky-kz, -kx, -ky]
spinor rot. : | 0.707-0.707j 0.000+0.000j |
|-0.000+0.000j 0.707+0.707j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [ 0. -0. 1.] ; angle = 1/2 pi, inversion : True
time-reversal : False
### 5
rotation : | 0 1 1 |
| 0 -1 0 |
| 1 1 0 |
gk = [kz, kx-ky+kz, kx]
spinor rot. : | 0.000-1.000j 0.000-0.000j |
|-0.000-0.000j 0.000+1.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [ 0. -0. 1.] ; angle = 1 pi, inversion : False
time-reversal : False
### 6
rotation : | 0 -1 -1 |
| 0 1 0 |
| -1 -1 0 |
gk = [-kz, -kx+ky-kz, -kx]
spinor rot. : | 0.000-1.000j 0.000-0.000j |
|-0.000-0.000j 0.000+1.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [ 0. -0. 1.] ; angle = 1 pi, inversion : True
time-reversal : False
### 7
rotation : | 1 1 0 |
| -1 0 1 |
| 1 0 0 |
gk = [ky, kz, kx-ky+kz]
spinor rot. : | 0.707+0.707j 0.000+0.000j |
| 0.000+0.000j 0.707-0.707j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [0. 0. 1.] ; angle = -1/2 pi, inversion : False
time-reversal : False
### 8
rotation : | -1 -1 0 |
| 1 0 -1 |
| -1 0 0 |
gk = [-ky, -kz, -kx+ky-kz]
spinor rot. : | 0.707+0.707j -0.000+0.000j |
| 0.000+0.000j 0.707-0.707j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [ 0. -0. 1.] ; angle = -1/2 pi, inversion : True
time-reversal : False
### 9
rotation : | 0 -1 -1 |
| -1 0 1 |
| 0 0 -1 |
gk = [-ky, -kx, -kx+ky-kz]
spinor rot. : | 0.000+0.000j 0.000-1.000j |
|-0.000-1.000j 0.000+0.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [ 1. -0. 0.] ; angle = 1 pi, inversion : False
time-reversal : True
### 10
rotation : | 0 1 1 |
| 1 0 -1 |
| 0 0 1 |
gk = [ky, kx, kx-ky+kz]
spinor rot. : | 0.000+0.000j 0.000-1.000j |
|-0.000-1.000j 0.000+0.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [ 1. -0. 0.] ; angle = 1 pi, inversion : True
time-reversal : True
### 11
rotation : | -1 -1 0 |
| 0 1 0 |
| 0 -1 -1 |
gk = [-kx, -kx+ky-kz, -kz]
spinor rot. : |-0.000+0.000j -0.707+0.707j |
| 0.707+0.707j 0.000+0.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [-0.707107 0.707107 0. ] ; angle = 1 pi, inversion : False
time-reversal : True
### 12
rotation : | 1 1 0 |
| 0 -1 0 |
| 0 1 1 |
gk = [kx, kx-ky+kz, kz]
spinor rot. : |-0.000+0.000j 0.707-0.707j |
|-0.707-0.707j 0.000+0.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [ 0.707107 -0.707107 -0. ] ; angle = 1 pi, inversion : True
time-reversal : True
### 13
rotation : | -1 0 0 |
| 1 0 -1 |
| -1 -1 0 |
gk = [-kx+ky-kz, -kz, -ky]
spinor rot. : | 0.000+0.000j -1.000+0.000j |
| 1.000+0.000j 0.000+0.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [0. 1. 0.] ; angle = 1 pi, inversion : False
time-reversal : True
### 14
rotation : | 1 0 0 |
| -1 0 1 |
| 1 1 0 |
gk = [kx-ky+kz, kz, ky]
spinor rot. : | 0.000+0.000j -1.000+0.000j |
| 1.000+0.000j 0.000+0.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [0. 1. 0.] ; angle = 1 pi, inversion : True
time-reversal : True
### 15
rotation : | 0 0 -1 |
| 0 -1 0 |
| -1 0 0 |
gk = [-kz, -ky, -kx]
spinor rot. : |-0.000+0.000j -0.707-0.707j |
| 0.707-0.707j 0.000+0.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [ 0.707107 0.707107 -0. ] ; angle = 1 pi, inversion : False
time-reversal : True
### 16
rotation : | 0 0 1 |
| 0 1 0 |
| 1 0 0 |
gk = [kz, ky, kx]
spinor rot. : |-0.000+0.000j 0.707+0.707j |
|-0.707+0.707j 0.000+0.000j |
translation : [ 0.0000 0.0000 0.0000 ]
axis: [-0.707107 -0.707107 0. ] ; angle = 1 pi, inversion : True
time-reversal : True
mpgrid = [2 2 2], 8
Set projections
[9]:
# now set the transformations of WFs. Make sure, the projections are consistent with the amn file
pos = [[0,0,0]]
dmn.set_D_wann_from_projections(projections=[(pos, 's'), (pos,'p'), (pos,'d')])
#write on disk
dmn.to_npz("Fe_spd.dmn.npz")
# later can be read with
dmn_read_npz = wberri.w90files.DMN(seedname="Fe_spd", read_npz=True)
# or write to w90 file (wiss not work if include_TR is True)
#dmn.to_w90_file("Fe_spd")
#dmn_read_w90 = wberri.w90files.DMN(seedname="Fe_spd", read_npz=False)
len(D_wann_list) = 0
calculating Wannier functions for s at [[0, 0, 0]]
calculating Wannier functions for p at [[0, 0, 0]]
calculating Wannier functions for d at [[0, 0, 0]]
len(D_wann_list) = 3
D.shape [(4, 16, 2, 2), (4, 16, 6, 6), (4, 16, 10, 10)]
num_wann 18
D_wann_block_indices [[ 0 2]
[ 2 8]
[ 8 18]]
saving to Fe_spd.dmn.npz :
calling w90 file with Fe_spd, dmn, tags=['D_wann_block_indices', '_NB', 'kpt2kptirr', 'kptirr', 'kptirr2kpt', 'kpt2kptirr_sym', '_NK', 'num_wann', 'comment', 'NKirr', 'Nsym', 'time_reversals'], read_npz=True, write_npz=True, kwargs={}