|
Quantum Phenomena Explorer 7.9.8
Interactive quantum-phenomena Explorer Tutor — source documentation
|
Implements the Quantum Berry History2D component. More...
#include <quantumberryphase2d.h>
Public Member Functions | |
| QuantumBerryHistory2D (std::size_t maximumSamples=1200u) | |
| Constructs a Quantum Berry History 2D instance. | |
| void | clear () noexcept |
| Clears stored state and returns the component to its empty/default state. | |
| bool | configure (const ComplexField2D &reference, const QuantumBerryTrap2D &trap, const QuantumBerryLoop2DConfig &config) |
| Returns configure. | |
| bool | append (double time, const QuantumBerryLoop2DState &loopState, const ComplexField2D &field) |
| Carries out append. | |
| bool | configured () const noexcept |
| Returns configured. | |
| bool | empty () const noexcept |
| Returns whether the object contains no data. | |
| const QuantumBerryTrap2D & | trap () const noexcept |
| Carries out trap. | |
| const QuantumBerryLoop2DConfig & | config () const noexcept |
| Returns config. | |
| const std::vector< QuantumBerrySample2D > & | samples () const noexcept |
| Samples s. | |
Private Member Functions | |
| void | trimToLimit () |
| Carries out trim to limit. | |
Private Attributes | |
| std::size_t | maximumSamples_ = 1200u |
| bool | configured_ = false |
| ComplexField2D | reference_ |
| ComplexField2D | previous_ |
| QuantumBerryTrap2D | trap_ |
| QuantumBerryLoop2DConfig | config_ |
| std::complex< double > | transportPhase_ = std::complex<double>(1.0, 0.0) |
| bool | havePrevious_ = false |
| std::vector< QuantumBerrySample2D > | samples_ |
Implements the Quantum Berry History2D component.
The class provides one focused service within the QPE architecture and is documented here independently of the experiment-level Help.
Definition at line 219 of file quantumberryphase2d.h.
|
explicit |
Constructs a Quantum Berry History 2D instance.
| maximumSamples | The maximum samples value used by the operation. |
Definition at line 259 of file quantumberryphase2d.cpp.
| bool qpe::QuantumBerryHistory2D::append | ( | double | time, |
| const QuantumBerryLoop2DState & | loopState, | ||
| const ComplexField2D & | field ) |
Carries out append.
| time | Simulation time in solver units. |
| loopState | The loop state value used by the operation. |
| field | Field data to read or modify. |
Definition at line 291 of file quantumberryphase2d.cpp.
References config_, configured_, qpe::QuantumBerryLoop2DConfig::duration, qpe::QuantumBerryLoop2DState::finished, havePrevious_, maximumSamples_, qpe::QuantumBerryPhase2D::normalizedOverlap(), qpe::QuantumBerryLoop2DState::parameterAngle, previous_, qpe::QuantumBerryLoop2DState::principalAxisAngle, qpe::QuantumBerryLoop2DState::progress, qpe::QuantumBerryLoop2DState::q1, qpe::QuantumBerryLoop2DState::q2, reference_, samples_, transportPhase_, trimToLimit(), qpe::QuantumBerryLoop2DState::valid, and qpe::QuantumBerryPhase2D::wrapPhase().
Referenced by MainWindow::advanceSimulation(), MainWindow::resetSimulation(), qpe::tests::runQuantumBerryPhase2DTests(), and MainWindow::singleStep().
|
noexcept |
Clears stored state and returns the component to its empty/default state.
Definition at line 264 of file quantumberryphase2d.cpp.
References config_, configured_, havePrevious_, previous_, reference_, samples_, transportPhase_, and trap_.
Referenced by configure(), and MainWindow::resetSimulation().
|
inlinenoexcept |
Returns config.
Definition at line 267 of file quantumberryphase2d.h.
References config_.
Referenced by configure(), and QuantumBerryPhasePlotWidget::paintEvent().
| bool qpe::QuantumBerryHistory2D::configure | ( | const ComplexField2D & | reference, |
| const QuantumBerryTrap2D & | trap, | ||
| const QuantumBerryLoop2DConfig & | config ) |
Returns configure.
| reference | The reference value used by the operation. |
| trap | The trap value used by the operation. |
| config | Configuration to apply. |
Definition at line 276 of file quantumberryphase2d.cpp.
References clear(), config(), config_, configured_, qpe::ComplexField2D::empty(), havePrevious_, previous_, reference_, trap(), trap_, and qpe::QuantumBerryPhase2D::validateConfig().
Referenced by MainWindow::resetSimulation(), and qpe::tests::runQuantumBerryPhase2DTests().
|
inlinenoexcept |
Returns configured.
Definition at line 254 of file quantumberryphase2d.h.
References configured_.
Referenced by MainWindow::advanceSimulation(), QuantumBerryPhasePlotWidget::paintEvent(), MainWindow::singleStep(), and MainWindow::updateQuantumBerryAnalysis().
|
inlinenoexcept |
Returns whether the object contains no data.
| empty | The empty value used by the operation. |
Definition at line 259 of file quantumberryphase2d.h.
References samples_.
Referenced by QuantumBerryPhasePlotWidget::paintEvent(), and MainWindow::updateQuantumBerryAnalysis().
|
inlinenoexcept |
Samples s.
Definition at line 271 of file quantumberryphase2d.h.
References samples_.
Referenced by QuantumBerryPhasePlotWidget::paintEvent(), qpe::tests::runQuantumBerryPhase2DTests(), and MainWindow::updateQuantumBerryAnalysis().
|
inlinenoexcept |
Carries out trap.
Definition at line 263 of file quantumberryphase2d.h.
References trap_.
Referenced by configure().
|
private |
Carries out trim to limit.
Definition at line 348 of file quantumberryphase2d.cpp.
References maximumSamples_, and samples_.
Referenced by append().
|
private |
Definition at line 284 of file quantumberryphase2d.h.
Referenced by append(), clear(), config(), and configure().
|
private |
Definition at line 280 of file quantumberryphase2d.h.
Referenced by append(), clear(), configure(), and configured().
|
private |
Definition at line 286 of file quantumberryphase2d.h.
Referenced by append(), clear(), and configure().
|
private |
Definition at line 279 of file quantumberryphase2d.h.
Referenced by append(), and trimToLimit().
|
private |
Definition at line 282 of file quantumberryphase2d.h.
Referenced by append(), clear(), and configure().
|
private |
Definition at line 281 of file quantumberryphase2d.h.
Referenced by append(), clear(), and configure().
|
private |
Definition at line 287 of file quantumberryphase2d.h.
Referenced by append(), clear(), empty(), samples(), and trimToLimit().
|
private |
Definition at line 285 of file quantumberryphase2d.h.
|
private |
Definition at line 283 of file quantumberryphase2d.h.
Referenced by clear(), configure(), and trap().