-
Notifications
You must be signed in to change notification settings - Fork 144
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implementation of Stengel-Spaldin Functional in Wannierization #498
base: develop
Are you sure you want to change the base?
Implementation of Stengel-Spaldin Functional in Wannierization #498
Conversation
Results of personal local tests
|
TODO after this PR is merged.
|
Note: The default value of |
bd9df0d
to
d3db9ca
Compare
…er90_transl_inv into Stengel-Spaldin
The main differences for this pull request are shown below.
Implemented the Stengel-Spaldin functional [1] in Wannierization.
Added
use_ss_functional
parameter. Uses Stengel-Spaldin functional iftrue
, and Marzari-Vanderbilt forfalse
.Changed some arrays to allocatable in
disentangle.f90
andkmesh.f90
for the many k-points computation. (If not, a stack overflow occurs.) (Since this is for personal local tests, it is unnecessary.)Since the functional sums over k-points before b-vector summation, I needed to order the b-vector information before Wannierization. This sorting is implemented in the
kmesh_sort
subroutine inkmesh.f90
, and only used for wannier90.x (not postw90.x).The main changes are in
wannierise.f90
file.wann_phases
,wann_omega
, andwann_domega
subroutines are changed.guiding_centres=T
case is also considered.Documentations, tests, and tutorials are added by slightly modifying the silicon tutorial. Also, test data are modified for restart and bvec tests.
Since this is my first pull request in Wannier90, there might be many errors and mistakes. Please feel free to comment.
[1] https://journals.aps.org/prb/abstract/10.1103/PhysRevB.73.075121