Quantum 3xplorer (Q3)
An AI-native quantum simulation engine
Loading...
Searching...
No Matches
q3::GuidedPhaseBranch Class Reference

#include <guided_phase_branch.hpp>

+ Inheritance diagram for q3::GuidedPhaseBranch:

Public Member Functions

 GuidedPhaseBranch (std::vector< Vector3D > centers_bohr)
 centers_bohr: one per Wannier function, Cartesian, in the frame and unit of the b-vectors.
 
Real phase_of (const Complex &diagonal_overlap, int wannier_function, const Vector3D &b_vector) const override
 
void require_serves (int number_of_wannier_functions) const override
 Refuses, with std::invalid_argument, a functional of a size this branch cannot serve.
 
- Public Member Functions inherited from q3::PhaseBranch
virtual ~PhaseBranch ()=default
 

Detailed Description

Definition at line 30 of file guided_phase_branch.hpp.

Constructor & Destructor Documentation

◆ GuidedPhaseBranch()

q3::GuidedPhaseBranch::GuidedPhaseBranch ( std::vector< Vector3D >  centers_bohr)
inlineexplicit

centers_bohr: one per Wannier function, Cartesian, in the frame and unit of the b-vectors.

Definition at line 33 of file guided_phase_branch.hpp.

Member Function Documentation

◆ phase_of()

Real q3::GuidedPhaseBranch::phase_of ( const Complex &  diagonal_overlap,
int  wannier_function,
const Vector3D &  b_vector 
) const
inlineoverridevirtual

The phase of diagonal_overlap, M_nn(k,b) of Wannier function wannier_function along b_vector, on this branch.

Implements q3::PhaseBranch.

Definition at line 49 of file guided_phase_branch.hpp.

References q3::Vector3D::dot(), and q3::constants::two_pi.

◆ require_serves()

void q3::GuidedPhaseBranch::require_serves ( int  number_of_wannier_functions) const
inlineoverridevirtual

Refuses, with std::invalid_argument, a functional of a size this branch cannot serve.

Implements q3::PhaseBranch.

Definition at line 40 of file guided_phase_branch.hpp.


The documentation for this class was generated from the following file: