... | ... | @@ -36,11 +36,11 @@ JuKKR collects a number of programs that share common source code (e.g., the Che |
|
|
- [`source/KKRnano/`](https://iffgit.fz-juelich.de/kkr/jukkr/-/tree/master/source/KKRnano): linear scaling code for extremely large unit cells
|
|
|
- [`source/PKKprime/`](https://iffgit.fz-juelich.de/kkr/jukkr/-/tree/master/source/PKKprime): Fermi surface and Boltzmann transport code
|
|
|
|
|
|
### CPA
|
|
|
### Coherent potential approximation (CPA)
|
|
|
|
|
|
Useful information on the CPA algorithm and its implementation in JuKKR including reference points (names of source files found in `source/KKRhost`) to the JuKKR specific implementation are summarized in these [notes By Manuel dos Santos Dias.](uploads/d03af6032027c9d729809b6aa5a1992f/Short_notes_on_CPA_in_KKR-2.pdf)
|
|
|
|
|
|
### BdG
|
|
|
### Bogoliubov-de Gennes (BdG) for superconductivity
|
|
|
|
|
|
The Bogoliubov-de Gennes implementation is found mainly on the `BdG` branch of JuKKR. Since the BdG implementation requires many changes in matrix sizes, these changes appear throughout the code but they usually are triggered with the `kBdG` parameter which changes from `kBdG=0` to `kBdG=1` when the BdG formalism is used. This then translates into matrix dimension that change to `lmmax*(1+kBdG)` taking this into account.
|
|
|
|
... | ... | @@ -48,10 +48,56 @@ The main changes to the radial solver are published in the [KS-BdG method paper] |
|
|
|
|
|
Useful might also be the following [notes on the KKRhost code](uploads/e84755724df5819dd1c754d7ada2ea36/KKR_BdG_formalism_in_the_JuKKR_code-2.pdf) detailing the KKR multiple scattering formalism with implementation details and important changes introduced by the BdG formalism.
|
|
|
|
|
|
### $`J_{ij}, \mathbf{D}_{ij}`$ extraction
|
|
|
### $`J_{ij}, \vec{D}_{ij}`$ extraction
|
|
|
|
|
|
- [see the corresponding wiki page](https://iffgit.fz-juelich.de/kkr/jukkr/-/wikis/jumu/jijdij)
|
|
|
- [`source/KKRhost/jijhelp.f90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/KKRhost/jijhelp.f90?ref_type=heads): calculation of $`\Delta t`$ matrices
|
|
|
- [`source/KKRhost/tbxccpljijdij.F90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/KKRhost/tbxccpljijdij.F90?ref_type=heads): calculation of $`J_{ij}, \mathbf{D}_{ij}`$ based on Liechtenstein formula
|
|
|
- [`source/KKRhost/tbxccpljijdij.F90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/KKRhost/tbxccpljijdij.F90?ref_type=heads): calculation of $`J_{ij}, \vec{D}_{ij}`$ based on Liechtenstein formula
|
|
|
|
|
|
### |
|
|
\ No newline at end of file |
|
|
### Energy integration contour
|
|
|
|
|
|
- [`source/KKRhost/epathtb.f90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/KKRhost/epathtb.f90?ref_type=heads)
|
|
|
- [`source/KKRhost/emesht.f90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/KKRhost/emesht.f90?ref_type=heads)
|
|
|
|
|
|
### Inputs for PKKprime code
|
|
|
|
|
|
Files necessary for Fermi surface generation:
|
|
|
- [`source/KKRhost/write_tbkkr_files.f90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/KKRhost/write_tbkkr_files.f90?ref_type=heads)
|
|
|
Additional files needed for Boltzmann transport calculations:
|
|
|
- [`source/KKRhost/operators_for_FScode.F90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/KKRhost/operators_for_FScode.F90?ref_type=heads)
|
|
|
- [`source/KKRhost/normcoeff_SO.F90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/KKRhost/normcoeff_SO.F90?ref_type=heads)
|
|
|
|
|
|
### Parsing of `inputcard` etc.
|
|
|
|
|
|
- [`source/KKRhost/rinput13.F90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/KKRhost/rinput13.F90?ref_type=heads)
|
|
|
- [`source/common/runoptions.F90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/common/runoptions.F90?ref_type=heads): available [run options](https://iffgit.fz-juelich.de/kkr/jukkr/-/wikis/jumu/runoption)
|
|
|
- [`source/common/global_variables.F90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/common/global_variables.F90?ref_type=heads): definition of global constants (array sizes etc.)
|
|
|
- [`source/common/constants.f90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/common/constants.f90?ref_type=heads): definition of physical constants
|
|
|
|
|
|
### MPI parallelization
|
|
|
|
|
|
- [`source/common/mympi.F90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/common/mympi.F90?ref_type=heads)
|
|
|
|
|
|
### Timing measurements
|
|
|
|
|
|
- [`source/common/timing.F90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/common/timing.F90?ref_type=heads)
|
|
|
|
|
|
### Space groups
|
|
|
|
|
|
- [`source/common/findgroup.f90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/common/findgroup.f90?ref_type=heads)
|
|
|
- [`source/common/pointgrp.f90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/common/pointgrp.f90?ref_type=heads)
|
|
|
|
|
|
### Noncollinear magnetism: rotation between local and global spin frame
|
|
|
|
|
|
- [`source/common/rotatespinframe.f90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/common/rotatespinframe.f90?ref_type=heads)
|
|
|
- see also chapter 6.3 of [PhD thesis by David Bauer](https://publications.rwth-aachen.de/record/229375)
|
|
|
|
|
|
### Broyden mixing
|
|
|
|
|
|
- [`source/common/broyden.f90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/common/broyden.f90?ref_type=heads)
|
|
|
|
|
|
### Chebychev radial solver
|
|
|
|
|
|
- [`common/radial_solver_Chebychev/rllsll.F90`](https://iffgit.fz-juelich.de/kkr/jukkr/-/blob/develop/source/common/radial_solver_Chebychev/rllsll.F90?ref_type=heads)
|
|
|
- see also chapter 5 of [PhD thesis by David Bauer](https://publications.rwth-aachen.de/record/229375)
|
|
|
- and also [Rudolf Zeller, Frontiers in Physics, **12**, (2024). doi: 10.3389/fphy.2024.1393130](https://www.frontiersin.org/journals/physics/articles/10.3389/fphy.2024.1393130/full) |