|
Quantum Phenomena Explorer 7.9.8
Interactive quantum-phenomena Explorer Tutor — source documentation
|
Implements the Quantum Kicked Rotor2D component. More...
#include <quantumkickedrotor2d.h>
Static Public Member Functions | |
| static bool | validateConfig (const QuantumKickedRotor2DConfig &config, std::string *reason=nullptr) |
| Validates config. | |
| static bool | validateInitialState (const QuantumKickedRotorInitialState2DConfig &config, std::string *reason=nullptr) |
| Validates initial state. | |
| static bool | initialize (ComplexField2D &field, const QuantumKickedRotorInitialState2DConfig &config, std::string *reason=nullptr) |
| Initializes ialize. | |
| static bool | applyKick (ComplexField2D &field, const QuantumKickedRotor2DConfig &config, std::string *reason=nullptr) |
| Applies kick. | |
| static double | xDomainLength (const ComplexField2D &field) noexcept |
| Performs x domain length. | |
| static double | effectiveTau (const ComplexField2D &field, const QuantumKickedRotor2DConfig &config, double mass, double hbar) noexcept |
| Performs effective tau. | |
| static double | classicalStochasticity (const ComplexField2D &field, const QuantumKickedRotor2DConfig &config, double mass, double hbar) noexcept |
| Performs classical stochasticity. | |
| static double | scheduledKickTime (const QuantumKickedRotor2DConfig &config, std::size_t zeroBasedKickIndex) noexcept |
| Performs scheduled kick time. | |
| static QuantumKickedRotorSample2D | measure (const MomentumSpace2DResult &momentum, std::size_t kickCount, double time, double tau, const QuantumKickedRotor2DConfig &config, int initialMomentumMode=0, std::size_t classicalEnsemble=512u) |
| Performs measure. | |
| static double | classicalMeanModeSquared (const QuantumKickedRotor2DConfig &config, double tau, std::size_t kickCount, int initialMomentumMode=0, std::size_t ensemble=512u) noexcept |
| Performs classical mean mode squared. | |
Implements the Quantum Kicked Rotor2D component.
The class provides one focused service within the QPE architecture and is documented here independently of the experiment-level Help.
Definition at line 79 of file quantumkickedrotor2d.h.
|
static |
Applies kick.
| field | Field data to read or modify. |
| config | Configuration to apply. |
| reason | The reason value used by the operation. |
Definition at line 145 of file quantumkickedrotor2d.cpp.
References qpe::ComplexField2D::dx(), qpe::ComplexField2D::empty(), qpe::ComplexField2D::height(), qpe::QuantumKickedRotor2DConfig::phaseStrength, validateConfig(), qpe::ComplexField2D::width(), and xDomainLength().
Referenced by MainWindow::applyKickedRotorKickIfDue(), qpe::anonymous_namespace{quantumkickedrotor2d_tests.cpp}::testDynamicalLocalizationSignature(), and qpe::anonymous_namespace{quantumkickedrotor2d_tests.cpp}::testInitializationAndKick().
|
staticnoexcept |
Performs classical mean mode squared.
| config | Configuration to apply. |
| tau | The tau value used by the operation. |
| kickCount | The kick count value used by the operation. |
| initialMomentumMode | The initial momentum mode value used by the operation. |
| ensemble | The ensemble value used by the operation. |
Definition at line 209 of file quantumkickedrotor2d.cpp.
Referenced by measure(), and qpe::anonymous_namespace{quantumkickedrotor2d_tests.cpp}::testDynamicalLocalizationSignature().
|
staticnoexcept |
Performs classical stochasticity.
| field | Field data to read or modify. |
| config | Configuration to apply. |
| mass | The mass value used by the operation. |
| hbar | The hbar value used by the operation. |
Definition at line 193 of file quantumkickedrotor2d.cpp.
Referenced by MainWindow::updateKickedRotorAnalysis().
|
staticnoexcept |
Performs effective tau.
| field | Field data to read or modify. |
| config | Configuration to apply. |
| mass | The mass value used by the operation. |
| hbar | The hbar value used by the operation. |
Definition at line 180 of file quantumkickedrotor2d.cpp.
Referenced by MainWindow::resetSimulation(), qpe::anonymous_namespace{quantumkickedrotor2d_tests.cpp}::testDynamicalLocalizationSignature(), and qpe::anonymous_namespace{quantumkickedrotor2d_tests.cpp}::testEffectiveTau().
|
static |
Initializes ialize.
| field | Field data to read or modify. |
| config | Configuration to apply. |
| reason | The reason value used by the operation. |
Definition at line 106 of file quantumkickedrotor2d.cpp.
References qpe::ComplexField2D::dx(), qpe::ComplexField2D::dy(), qpe::ComplexField2D::empty(), qpe::ComplexField2D::height(), qpe::QuantumKickedRotorInitialState2DConfig::initialMomentumMode, qpe::ComplexField2D::normalize(), validateInitialState(), qpe::ComplexField2D::width(), xDomainLength(), qpe::QuantumKickedRotorInitialState2DConfig::yCenter, and qpe::QuantumKickedRotorInitialState2DConfig::ySigma.
Referenced by MainWindow::prepareConfiguredInitialState(), qpe::anonymous_namespace{quantumkickedrotor2d_tests.cpp}::testDynamicalLocalizationSignature(), and qpe::anonymous_namespace{quantumkickedrotor2d_tests.cpp}::testInitializationAndKick().
|
static |
Performs measure.
| momentum | The momentum value used by the operation. |
| kickCount | The kick count value used by the operation. |
| time | Simulation time in solver units. |
| tau | The tau value used by the operation. |
| config | Configuration to apply. |
| initialMomentumMode | The initial momentum mode value used by the operation. |
| classicalEnsemble | The classical ensemble value used by the operation. |
Definition at line 237 of file quantumkickedrotor2d.cpp.
References classicalMeanModeSquared(), qpe::QuantumKickedRotorSample2D::classicalMeanModeSquared, qpe::MomentumSpace2DResult::dpX(), qpe::MomentumSpace2DResult::dpY(), qpe::MomentumSpace2DResult::empty(), qpe::ComplexField2D::height(), qpe::QuantumKickedRotorSample2D::kickCount, qpe::QuantumKickedRotorSample2D::meanMode, qpe::QuantumKickedRotorSample2D::meanModeSquared, qpe::QuantumKickedRotorSample2D::modeMin, qpe::QuantumKickedRotorSample2D::modeProbability, qpe::QuantumKickedRotorSample2D::modeStep, qpe::QuantumKickedRotorSample2D::modeVariance, qpe::QuantumKickedRotorSample2D::norm, qpe::QuantumKickedRotorSample2D::participation, qpe::MomentumSpace2DResult::pxCoordinates, qpe::MomentumSpace2DResult::pyCoordinates, qpe::MomentumSpace2DResult::spectrum, qpe::QuantumKickedRotorSample2D::time, and qpe::ComplexField2D::width().
Referenced by qpe::QuantumKickedRotorHistory2D::append(), and qpe::anonymous_namespace{quantumkickedrotor2d_tests.cpp}::testDynamicalLocalizationSignature().
|
staticnoexcept |
Performs scheduled kick time.
| config | Configuration to apply. |
| zeroBasedKickIndex | Zero-based index used to select the requested item. |
Definition at line 202 of file quantumkickedrotor2d.cpp.
Referenced by MainWindow::applyKickedRotorKickIfDue(), qpe::anonymous_namespace{quantumkickedrotor2d_tests.cpp}::testDynamicalLocalizationSignature(), and MainWindow::updateKickedRotorAnalysis().
|
static |
Validates config.
| config | Configuration to apply. |
| reason | The reason value used by the operation. |
Definition at line 68 of file quantumkickedrotor2d.cpp.
References qpe::QuantumKickedRotor2DConfig::firstKickTime, qpe::QuantumKickedRotor2DConfig::kickPeriod, and qpe::QuantumKickedRotor2DConfig::phaseStrength.
Referenced by applyKick(), qpe::QuantumKickedRotorHistory2D::configure(), and qpe::anonymous_namespace{experimentdocument2d.cpp}::kickedRotorFromJson().
|
static |
Validates initial state.
| config | Configuration to apply. |
| reason | The reason value used by the operation. |
Definition at line 87 of file quantumkickedrotor2d.cpp.
References qpe::QuantumKickedRotorInitialState2DConfig::initialMomentumMode, qpe::QuantumKickedRotorInitialState2DConfig::yCenter, and qpe::QuantumKickedRotorInitialState2DConfig::ySigma.
Referenced by qpe::QuantumKickedRotorHistory2D::configure(), initialize(), and qpe::anonymous_namespace{experimentdocument2d.cpp}::kickedRotorInitialStateFromJson().
|
staticnoexcept |
Performs x domain length.
| field | Field data to read or modify. |
Definition at line 175 of file quantumkickedrotor2d.cpp.
Referenced by applyKick(), and initialize().