3
0
mirror of https://github.com/triqs/dft_tools synced 2024-12-27 06:43:40 +01:00
Commit Graph

61 Commits

Author SHA1 Message Date
Nils Wentzell
792abcb710 Fix compatibility against numpy 2.0 2024-06-21 11:47:39 -04:00
Chia-Nan Yeh
b8a667b3a1
read wannier centres and symmetry kpath from w90 (#253)
This PR/ commit adds two new features to the w90 converter stored to the h5 archive: 
1. Centres of Wannier functions: This can be obtained using the `read_wannier90_centres()` function. This would also be useful if one wants to shift Wannier centres back to the home unit cells on-the-fly in `dft_tool`. 
2. High-symmetry k-path for band structure: This can be obtained using the `read_wannier90_symm_kpath()` function. 

changes:
* read wannier centres and symmetry kpath from w90
* [fix] w90convert test after fix for kpt_basis stor

---------

Co-authored-by: Alexander Hampel <ahampel@flatironinstitute.org>
2024-06-03 15:00:01 -04:00
Alexander Hampel
a87276b6c4
[feat] add option to use DLR mesh in Sumk (#254)
allow using the MeshDLRImFreq to be used as general Sumk mesh during the DMFT loop for all functions.
2024-05-26 20:35:41 -04:00
Alexander Hampel
d5db329d22 [fix] calc_density_correction: see issue #250
* fix not initialized variable Glatt_iw
* add simple run tests for all 4 DFT codes to test at least if
  calc_density_correction runs without errors
* small formatting fixes
2024-03-15 20:46:55 -04:00
Alexander Hampel
b355173cf1
[feat] improved standard behavior of block struct (#248)
* previously the default gf_struct_solver had keys up / down,
inconsistent with the default behavior after analyse_block_structure was
run: up_0 / down_0. Now the default solver structure always has the _0
in the key.
* old behavior resulted in error when analyse_block_structure was called
twice
* fixed analyse block structure tests with new changes
* to correctly use analyse_block_structure use now
extract_G_loc(transform_to_solver_blocks=False)
* changed density_matrix function to use directly extract_G_loc() if
using_gf is selected.
* print deprecation warning in density_matrix, same can be achieved via
extract_G_loc and [G.density() for G in Gloc]
* new function density_matrix_using_point_integration()
* enforce in analyse block structure that input dm or G is list with
length of n_corr_shells
* correct doc string for how include_shells are given
* fixed other tests accordingly
* fixed small bug in initial block structure regarding length of lists
2024-02-26 14:50:24 -05:00
Alexander Hampel
23723bc580 [vasp] change normion default to False
In coordination with M. Aichorn and O. Peil we decided to change the
default of the normion to False. This is closed to the behavior of the
other converters w90, elk, and wien2k, which will always orthonormalize
all projectors in a unit cell together (normion=False) and not per ion
site (normion=True). Changed tests accordingly.
2023-07-24 11:30:39 -04:00
Alexander Hampel
901722ad58 [fix] issue #216 correctly use beta when calling density on MeshReFreq 2023-06-28 16:18:43 -04:00
Alyn James
98ae1cf14e doc, log and minor updates 2023-06-19 14:34:47 +01:00
Alexander Hampel
cd3776baca merge origin unstable into alynj/unstable 2023-06-05 09:56:12 -04:00
Alexander Hampel
89f72dee02 [fix] update mpi.all_reduce calls 52bccac 2023-06-02 10:51:48 -04:00
Alexander Hampel
b2271d578e [fix] U_matrix renamed to U_matrix_slater e7310c8 2023-06-02 10:15:29 -04:00
Alyn James
4b0e539395 fixed test 2023-04-17 11:05:27 +01:00
Alyn James
ac70d962fa removed copies 2023-04-15 18:35:01 +01:00
Alyn James
45696baf9a spectral routines plotpt3d update 2023-04-15 18:30:37 +01:00
Alyn James
d4b43ff9f8 spectral routines update 2023-04-14 23:43:23 +01:00
Oleg Peil
aa0162d810 [test] adjust NiO reference h5-file 2023-03-27 18:55:59 +02:00
Oleg Peil
67188b4a43 [test] add test of NiO with two correlated shells 2023-03-27 11:07:02 +02:00
Oleg Peil
b536d20330 [test] fix tests of LuNiO3 and SrVO3 after changes 2023-03-27 11:06:10 +02:00
Alexander Hampel
37c3d984c6 fix: srvo3 transport test after DC PR 2023-03-23 13:52:35 -04:00
Alexander Hampel
c6e755ef07 refactor & fix: merge the two read functions and small fixes
fix: add asserts for spin calculations and disent
2023-03-23 12:57:15 -04:00
phibeck
d4ef98edfd test: correct broken tests and append new one 2023-03-23 12:26:22 -04:00
phibeck
345fd14a39 feat: optical prop with Wannier90 and WannierBerri
All existing transport features from SumkDFTTools are now integrated in sumk_dft_transport.py as functions.

    feat: new code = "wannier90"
    refactor: free functions instead of sum_k members

If code is chosen as wannier90:

    feat: compute transport function
    feat: compute OC in Wannier or Hamiltonian basis
    feat: compute intra- and interband contributions separately in OC
2023-03-23 12:24:38 -04:00
Alexander Hampel
45749529ec add calc_mu test and pep8 format 2023-03-21 09:34:49 -04:00
Alexander Hampel
88094c0f92 outsource calc_DC_from_density into util.py and cleanup 2023-03-21 09:34:49 -04:00
alberto-carta
0d25aefc73 Corrections for new calc_dc and calc_mu
* typos and subbed check in spin polarized calculations for quantum espresso with a warning when computing the deltaN
* fixed typos in comments
* removed legacy mode maintaining only compatibility layer and switched to old (<3.10) python syntax
* added target density output in mu finder for brent and newton, refactored tunit test for DC, changed some comments
2023-03-21 09:34:49 -04:00
aichhorn
161b9d9eb5 reverting previous commit, not compatible with TRIQS/unstable 2023-02-01 10:05:30 +01:00
aichhorn
e53a8c1c03 fixed call to h_int_slater in basis_transformation test 2023-02-01 08:44:19 +01:00
Alexander Hampel
095f8a0b6a fix: np.int / np.float / np. complex are depracted (np v1.20) / removed (np v1.24) 2023-01-23 15:40:57 -05:00
AlynJ
c202286341
Elk Transport code and subsequent updates (#229)
* elk-transport
* minor updates
* specify explicitly fortran compiler and python exe in CMAKE

Co-authored-by: Alexander Hampel <ahampel@flatironinstitute.org>
2023-01-04 17:16:57 -05:00
Alexander Hampel
f8153c2134 [fix] orb_names is deprecated in h_int_ methods 2022-11-18 17:14:05 -05:00
AlynJ
ce4aed3551
elk-interface bug fixes (#228)
updated the Elk interface to fix some minor bugs which arose for certain systems with equivalent atoms. I've also included new tests for this interface and collated all of these interface tests in the "test/python/elk" subdirectory.
2022-11-10 11:11:28 -05:00
mmerkel
8de30d67fe Fix for wannier converter: reordering of orbital/spin order only necessary for vasp 5 2022-10-19 11:28:33 +02:00
Alexander Hampel
97afc3061e fix misusage of GfImFreq in create_gf 2022-10-05 16:28:31 -04:00
Alexander Hampel
2497484626 start changelog for unstable and fix python test 2022-07-07 09:33:16 -04:00
Alexander Hampel
213016ee1c fix transport test, allow for parallel execution of tests 2022-04-20 11:36:10 -04:00
Alexander Hampel
a36f2fdc61 fix spaghettis function and update test 2022-04-20 11:36:10 -04:00
Jonathan Karp
1e7c66805f fix bugs and tests 2022-04-20 11:36:10 -04:00
mmerkel
a913c07592 Split wannier90 tests up 2022-04-19 17:03:49 +02:00
mmerkel
0b72ad7fce Updated W90 converter: bug fixes for SOC, code restructured, more tests for add_lambda and bloch_basis 2022-04-15 10:51:37 -04:00
Alexander Hampel
320b2d2dfd remove gf_struct_flatten function and replace with triqs version 2022-03-09 09:15:10 -05:00
Hermann Schnait
4c44dbe2af Remove tkinter import (don't know how this ended up in the code) 2022-03-09 10:07:10 +01:00
hschnait
507fe32308 Update Unit-Tests to new gfstruct 2022-03-08 18:50:17 +01:00
Alyn James
e2c038ae8a elk interface bug fixs 2021-12-15 12:57:57 +00:00
Jonathan Karp
3b9a9dab9c vectorize loop over frequencies in spaghettis 2021-10-13 17:37:33 -04:00
Jonathan Karp
baec3b2f31 vectorize loop over frequency in dos functions and add tests 2021-10-13 14:09:48 -04:00
Alexander Hampel
342aa363d9 fixed tests to work with dev version of triqs 2021-05-26 17:59:50 -04:00
Sophie Beck
3122ab2a83
Updates of Wannier90Converter: (#169)
Added:

substantial speed-up using MPI for Fourier transform
option to add a local spin-orbit term to t2g local Hamiltonian.
writing dft_fermi_energy to group 'dft_misc_input'
writing kpt_basis to group 'dft_input' if bloch_basis=True
writing kpts_cart to group 'dft_misc_input' if bloch_basis=True
Minor bugfixes:

bug can be caused by rounding of outer window limits if bloch_basis and disentangle =True, made error message clearer
2021-05-06 08:37:15 -04:00
sobeck
aeaebb04ae Revision of Wannier90Converter: 1) write the Hamiltonian in Bloch space
for charge self-consistent calculations, and 2) spin-orbit coupling

if bloch_basis = True:
* if "seedname_u.dat" (and in case of disentanglement "seedname_u_dis.dat")
  present, write hopping in Bloch basis
* "proj_mat" transforming from Bloch to orbital space
* diagonal hoppings are directly read from "seedname.eig"
* fermi weights and band_window of Wannier Hamiltonian are read from DFT
  output and "seedname.nnkp", written into new subgroup "dft_misc_input"
* automatic calculation of "density_required"
* implemented for Quantum Espresso (read from "seedname.nscf.out" if
  verbosity = 'high') and VASP (read from "OUTCAR"/"LOCPROJ")

* spin-orbit coupling SO = 1 implemented
* substitute k_mesh and bz_weights with kpts and kpt_weights,
  respectively (previous names kept for compatibility)
* updated tests
2021-02-05 14:41:59 -05:00
AlynJ
ad8c4e75fe
Elk converter (#151)
Adding Elk-TRIQS interface (first iteration) 

This interface reads in Elk's ground-state files / projectors generated by a specific Elk interface code version (https://github.com/AlynJ/Elk_interface-TRIQS). The interface can perform charge-self consistent DFT+DMFT calculations using the aforementioned Elk code version, including spin orbit-coupling. Hence, this is the first open source interfaced DFT code to triqs with FCSC support. 

The commit includes detailed documentation and tutorials on how to use this interface. Moreover, further new post-processing routines are added for Fermi surface plots and spectral functions (A(w)) from the elk inputs.

The interface was tested by A. James and A. Hampel. However, this is the first iteration of the interface and should be used with care. Please report all bugs.

List of changes:
---------------
- sumk.py: added cacluation of charge density correction for elk (dm_type='elk').
- sumk_dft_tools.py: added new post-processing functions to calculate the Fermi surface and A(w) from the Elk inputs.
- documentation and tutorial files amended for this interface.
- added python tests for the Elk converter.
2020-10-09 08:35:28 -04:00
sobeck
6a104622d1 renamed w90 reference h5 archive 2020-08-17 19:31:32 +02:00