3
0
mirror of https://github.com/triqs/dft_tools synced 2024-11-18 12:03:50 +01:00
Commit Graph

516 Commits

Author SHA1 Message Date
Nils Wentzell
3648fd74e8 Automated porting to triqs + meshes + nda 2021-05-26 17:59:50 -04:00
Alexander Hampel
9b22859553 added helper function to flatten gf_struct objects for new triqs version 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
merkelm
0a71b29096
Added parameter kpts_to_write to SumkDFT.calc_density_correction (#170)
Default behavior unchanged. If parameter kpts_to_write is given and if dm_type=='vasp', only the selected k points are written to the density correction GAMMA file.
Can be used for running Vasp with symmetries, where Vasp requires only the density correction from the irreducible Brillouin zone.

* For density correction in vasp, added option to select kpoints
* Made docstring of calc_density_correction clearer
2021-05-05 11:55:40 -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
Nils Wentzell
6dccb363de Merge remote-tracking branch 'app4triqs-remote/unstable' into unstable 2021-02-03 11:03:08 -05:00
Nils Wentzell
6bd1e51c4e [cmake] Provide an alias PROJECT_NAME::module_name for each module 2021-01-22 14:49:50 -05:00
Alexander Hampel
93cf096932 changed fermi weights from np array complex to float in accordance with h5 structure 2020-11-24 16:35:27 -05:00
mmerkel
1fa2376a99 sum_k.calc_mu exposes dichotomy parameter max_loops
Default behavior unchanged
2020-10-30 18:58:57 +01:00
Alexander Hampel
b0b2a64286 removed unused debug print commands 2020-10-12 07:52:19 -04: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
Alexander Hampel
d61ce6eaae fix for bug in wannier90 converter
* the Fermi level given in the inp file was ignored
* added a new line reporting which energy is subtracted from mu
2020-08-25 08:22:45 -04:00
sobeck
393753dc96 typo in wannier90.py 2020-08-17 19:31:32 +02:00
mmerkel
c6385b16d4 Bug fix: changed use_rotations from bool to int 2020-08-17 19:31:32 +02:00
mmerkel
52d2159c18 Small bugfixes 2020-08-17 19:31:32 +02:00
mmerkel
4ebfd15803 Added Gabriele's additional checks 2020-08-17 19:31:32 +02:00
mmerkel
19a2e55183 Added choice of different bases: hloc_diag, wannier (already implemented previously), none 2020-08-17 19:31:32 +02:00
mmerkel
aacb8847ac Clean-up: float comparison tolerances and few minor things 2020-08-17 19:31:32 +02:00
Alexander Hampel
378f743b09 Update for hdf5 structure reference
- added missing corr to inequiv information
- added a Vasp specific section and added missing information
2020-08-04 10:51:01 +02:00
Alexander Hampel
af8cde628e small adjustments to Vasp converter (closes #146)
* adding kpts_basis, kpts, and kpt_weights to h5 dft_input
* read these properties as optional arguments in Sumk_dft.py
* change accordingly the ref h5 files for vasp converter test
* soon all converters are demanted to store those properties
* bz_weights should then be replaced by kpt_weights
* closes PR #146
2020-08-03 12:39:34 +02:00
Alexander Hampel
a158fec7eb small fix to read_inp_from_h5 function of Sumk
split things_to_read into req and optional properties. Only throw error
show warning if req parameters are missing.
2020-07-31 11:52:42 +02:00
Alexander Hampel
9d94c78cba Merge branch 'unstable' into py3
merge latest commit de163cce03 for
enhanced warning for set_Sigma if ReFreqMesh is too small into py3
2020-06-23 11:24:08 +02:00
Alexander Hampel
a1209f8a53 renamed converters from app_converter.py to app.py
* adapted all occurences of the converter script file names including
  the doc files
* fixed one failing test: Py_basis_transformation.py
2020-06-23 11:13:00 +02:00
Alexander Hampel
f27399758e Merge branch 'unstable' into py3
merged unstable into py3

* include the major changes of a94f8ed942
  of blockstructure.py
* adapted all code to python 3
* fixed all tests
2020-06-23 10:53:52 +02:00
Jonathan Karp
46ecd2cd3e look at the mesh of each shell of Sigma_imp, not just the first shell 2020-06-11 20:31:31 -04:00
Jonathan Karp
2f0f458eb6 add function to find min and max of band energy, and add warning to set_Sigma if its mesh is smaller than the energy bounds 2020-06-11 18:13:16 -04:00
Nils Wentzell
272ac793a3 Merge remote-tracking branch 'app4triqs-remote/py3' into py3 2020-06-10 18:32:13 -04:00
Nils Wentzell
74aefcb1dc [cmake] Make sure to install python modules into their proper subdirectories 2020-06-10 18:30:49 -04:00
Nils Wentzell
9b1a3c0e7e [cmake] Make sure to install python files into their proper subdirectories 2020-06-10 18:30:10 -04:00
Alexander Hampel
11d394fd5b synchronize dfttools with app4triqs structure
* moved the plovasp C++ code to c++/triqs_dft_tools/converters/vasp
* added global header triqs_dft_tools/triqs_dft_tools.hpp
* python dir based on single cmakelist file
* registered C++ tests for plovasp
* corrected imports for py3 tests for plovasp
* corrected block order in sigma_from_file and srvo3_Gloc
* exchanged ref files for sigma_from_file, srvo3_Gloc, SrVO3.ref.h5
* moved vasp converter bash scripts from dir shells to bin dir
2020-06-10 17:45:53 +02:00
Nils Wentzell
e059d403c1 [cmake] Generalize desc file detection to allow for modules in subdirectories 2020-06-08 14:49:39 -04:00
Nils Wentzell
746710ea48 [cmake] explicitly link cpp2py modules against triqs_py library 2020-06-04 11:47:23 -04:00
Jonathan Karp
aa8c631c27 made fermi_energy an attribute of the converter 2020-05-31 21:04:15 -04:00
jkarp314
4cc530a129 Update wannier90_converter.py
Can specify DFT Fermi energy in the inp file and it's subtracted from the r = 0 term when reading the hr file.
2020-05-31 21:03:48 -04:00
Nils Wentzell
fbe3f2fa0a [cmake] Prefer the use of PROJECT_NAME in most CMakeLists.txt files 2020-05-28 11:20:01 -04:00
Nils Wentzell
97c5cad66e [py3] Run port_to_triqs3 script 2020-05-27 11:30:24 -04:00
Nils Wentzell
21532641a2 [cmake] FIX keyword usage in target_link_libraries command for cpp2py modules 2020-05-27 08:00:47 -04:00
Markus Aichhorn
a94f8ed942
Merge pull request #138 from TRIQS/BSrotations
BlockStructure and rotations
2020-05-13 12:17:15 +02:00
Nils Wentzell
5c1ec4c67d [cmake] FIX target_link_libraries and target_compile_options command for python modules 2020-04-29 16:17:06 -04:00
hschnait
37ccb46a8c Add convert_operator method to block_structure + Tests 2020-04-29 16:15:14 +02:00
Alexander Hampel
d9e5a4d3aa added printout of complex part of local Hamiltonian in the Vasp converter 2020-04-17 02:20:23 -07:00
Nils Wentzell
d9fa71fbec Fix additional integer division to use floordiv 2020-04-14 11:21:33 -04:00
Nils Wentzell
d3f68310a6 [cmake] Use target_link_libraries with keyword for cpp2py modules 2020-04-08 17:41:18 -04:00
Nils Wentzell
961215ccac Adjust to nda/h5 changes in triqs pytriqs.archive -> h5
-pytriqs.archive.hdf_archive_schemes -> h5.formats
2020-04-08 17:41:18 -04:00
Nils Wentzell
6cc6cd8b7a Do not use deprecated set_from_inverse_fourier 2020-04-08 17:41:18 -04:00
Nils Wentzell
e2a1534272 [py3] properly cast strings to float 2020-04-08 17:41:14 -04:00
Nils Wentzell
392c94d4c3 [py3] set is now a builtin type 2020-04-08 17:41:14 -04:00
Nils Wentzell
b1d9229e83 [py3] Use free function next(..) for generator expressions 2020-04-08 17:41:14 -04:00
Nils Wentzell
6d5e04f006 [py3] Use isinstance for proper type checking 2020-04-08 17:41:14 -04:00
Nils Wentzell
484e10ef1f [py3] Be sure to properly use floor division in various places 2020-04-08 17:41:06 -04:00