Commit Graph

219 Commits

Author SHA1 Message Date
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
Alexander Hampel b30559a212 [doc] fixes for Vasp interface and general doc fix 2023-06-19 17:30:02 -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 29c7c337b1 merge latest app4trqs skeleton changes 2021-09-17 14:24:22 -04:00
Nils Wentzell 1c6d29d6a3 [cmake] For ANALYZE_SOURCES=ON run cppcheck in c++20 mode 2021-06-07 14:20:10 -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
sobeck 765bb6b3cb added new test in w90_convert.py for rot_mat_type='hloc_diag' 2020-08-17 19:31:32 +02:00