Quantum 3xplorer (Q3)
Loading...
Searching...
No Matches
wannier_subspace.hpp
Go to the documentation of this file.
1
#pragma once
2
3
/**
4
* WannierSubspace — the chosen subspace, as a SubspaceSelection hands it to
5
* the gauge choice, with its section of the construction report.
6
*
7
* `frames[k]` is C(k), kept x N with orthonormal columns: the subspace at k
8
* in the projection gauge, its rows in the order of
9
* `classification.kpoints[k].kept_bands`. An isolated manifold keeps every
10
* band and its frame is the projection gauge itself; a disentangled one
11
* keeps a subset and its frame is V(k) U(k), the iteration's subspace times
12
* the projection gauge inside it.
13
*/
14
15
#include <vector>
16
17
#include "
layer_0_core/math/linear_algebra/dense_matrix.hpp
"
18
#include "
layer_0_core/types/init.hpp
"
19
#include "
layer_4_computation/interpolator/method/wannier/internal/band_classification.hpp
"
20
#include "
layer_4_computation/interpolator/method/wannier/report/disentanglement_report.hpp
"
21
22
namespace
q3
{
23
24
struct
[[nodiscard]]
WannierSubspace
{
25
BandClassification
classification
;
26
std::vector<DenseMatrix<Complex>>
frames
;
27
DisentanglementReport
report
;
28
};
29
30
}
// namespace q3
band_classification.hpp
dense_matrix.hpp
disentanglement_report.hpp
init.hpp
q3
Definition
q3_core_api.hpp:33
q3::BandClassification
Every k-point's verdict, and the summary of the whole.
Definition
band_classification.hpp:22
q3::DisentanglementReport
Definition
disentanglement_report.hpp:13
q3::WannierSubspace
Definition
wannier_subspace.hpp:24
q3::WannierSubspace::classification
BandClassification classification
Definition
wannier_subspace.hpp:25
q3::WannierSubspace::frames
std::vector< DenseMatrix< Complex > > frames
Definition
wannier_subspace.hpp:26
q3::WannierSubspace::report
DisentanglementReport report
Definition
wannier_subspace.hpp:27
src
layer_4_computation
interpolator
method
wannier
subspace
wannier_subspace.hpp
Generated by
1.9.8