Loading...
Searching...
No Matches
reciprocal_space.hpp
Go to the documentation of this file.
1#pragma once
2
3/**
4 * Reciprocal-space wavefunction.
5 *
6 * A wavefunction defined as a function of a reciprocal-space vector.
7 * ψ(G): reciprocal space → C
8 */
9
13
14namespace q3 {
15
16/// A wavefunction in reciprocal space: ψ(G).
18 public:
19 ~ReciprocalSpaceWavefunction() override = default;
20
21 /// Evaluate the wavefunction at a reciprocal-space vector.
22 [[nodiscard]] virtual Complex evaluate(const ReciprocalSpaceVector& g_vector) const = 0;
23};
24
25} // namespace q3
A wavefunction in reciprocal space: ψ(G).
~ReciprocalSpaceWavefunction() override=default
virtual Complex evaluate(const ReciprocalSpaceVector &g_vector) const =0
Evaluate the wavefunction at a reciprocal-space vector.
Abstract base for all wavefunction types.
Definition init.hpp:17
std::complex< double > Complex
A vector in reciprocal space (Cartesian, units of 2π/alat).