Quantum Phenomena Explorer 7.9.8
Interactive quantum-phenomena Explorer Tutor — source documentation
Loading...
Searching...
No Matches
qpe::PotentialObject2D Struct Reference

Data structure used by the Potential Object2D component. More...

#include <potentialscene2d.h>

Public Member Functions

bool valid () const noexcept
 Performs valid.
 

Public Attributes

std::uint64_t id = 0
 
PotentialObjectType2D type = PotentialObjectType2D::Rectangle
 
bool enabled = true
 
float value = 0.0f
 
float centerX = 0.0f
 
float centerY = 0.0f
 
float width = 1.0f
 
float height = 1.0f
 
float radius = 1.0f
 
float length = 1.0f
 
float thickness = 1.0f
 
float wallWidth = 1.0f
 
float slitHeight = 1.0f
 
float slitSeparation = 2.0f
 
float sigmaX = 1.0f
 
float sigmaY = 1.0f
 
float curvatureX = 0.25f
 
float curvatureY = 0.25f
 
float slopeX = 0.0f
 
float slopeY = 0.0f
 
float softening = 0.5f
 

Detailed Description

Data structure used by the Potential Object2D component.

The structure keeps related values explicit and testable across the QPE physics, analysis, or persistence layers.

Definition at line 50 of file potentialscene2d.h.

Member Function Documentation

◆ valid()

Member Data Documentation

◆ centerX

float qpe::PotentialObject2D::centerX = 0.0f

Definition at line 57 of file potentialscene2d.h.

Referenced by MainWindow::applyExperimentPreset(), qpe::tests::anonymous_namespace{resonanttunneling2d_tests.cpp}::barrier(), qpe::QuantumBilliards2D::identify(), qpe::QuantumScars2D::identify(), qpe::QuantumRevivals2D::identifyBox(), qpe::ResonantTunneling2D::identifyDoubleBarrier(), qpe::QuantumAnderson2D::identifyLattice(), qpe::CoherentTunneling2D::identifySymmetricDoubleWell(), qpe::QuantumBerryPhase2D::identifyTrap(), qpe::QuantumVortex2D::identifyTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeAndersonLocalization(), qpe::tests::anonymous_namespace{quantumbilliards2d_tests.cpp}::makeBilliard(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeBlochOscillation(), qpe::tests::anonymous_namespace{quantumrevivals2d_tests.cpp}::makeBox(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeCoherentDoubleWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeDrivenDoubleWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeDrivenHarmonicTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeFiniteQuantumWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeGaussianWellBreathing(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeHarmonicTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeLandauZenerSweep(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeMoshinskyShutter(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBerryPhase(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBilliard(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBouncer(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumKickedRotor(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumLoschmidt(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumQuench(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumScars(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumVortex(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeRamseyInterferometer(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeResonantTunneling(), qpe::tests::anonymous_namespace{blochoscillations2d_tests.cpp}::makeScene(), qpe::tests::anonymous_namespace{coherenttunneling2d_tests.cpp}::makeScene(), qpe::tests::anonymous_namespace{quantumberryphase2d_tests.cpp}::makeTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeWavePacketRevival(), qpe::anonymous_namespace{experimentdocument2d.cpp}::potentialObjectFromJson(), qpe::tests::runExperimentDocument2DTests(), qpe::tests::runExperimentPreset2DTests(), qpe::tests::runPotentialScene2DTests(), qpe::tests::runQuantumAnderson2DTests(), qpe::tests::runQuantumBilliards2DTests(), qpe::tests::runQuantumMoshinsky2DTests(), qpe::tests::runQuantumScar2DTests(), qpe::tests::runTimeDependentPotential2DTests(), MainWindow::updateStatusText(), and valid().

◆ centerY

float qpe::PotentialObject2D::centerY = 0.0f

Definition at line 58 of file potentialscene2d.h.

Referenced by MainWindow::applyExperimentPreset(), qpe::tests::anonymous_namespace{resonanttunneling2d_tests.cpp}::barrier(), qpe::BlochOscillations2D::identify(), qpe::QuantumBilliards2D::identify(), qpe::QuantumBouncer2D::identify(), qpe::QuantumScars2D::identify(), qpe::QuantumRevivals2D::identifyBox(), qpe::QuantumBerryPhase2D::identifyTrap(), qpe::QuantumVortex2D::identifyTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeAndersonLocalization(), qpe::tests::anonymous_namespace{quantumbilliards2d_tests.cpp}::makeBilliard(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeBlochOscillation(), qpe::tests::anonymous_namespace{quantumrevivals2d_tests.cpp}::makeBox(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeCoherentDoubleWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeDrivenDoubleWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeDrivenHarmonicTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeFiniteQuantumWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeGaussianWellBreathing(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeHarmonicTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeLandauZenerSweep(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeMoshinskyShutter(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBerryPhase(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBilliard(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBouncer(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumKickedRotor(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumLoschmidt(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumQuench(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumScars(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumVortex(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeRamseyInterferometer(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeResonantTunneling(), qpe::tests::anonymous_namespace{blochoscillations2d_tests.cpp}::makeScene(), qpe::tests::anonymous_namespace{coherenttunneling2d_tests.cpp}::makeScene(), qpe::tests::anonymous_namespace{quantumberryphase2d_tests.cpp}::makeTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeWavePacketRevival(), qpe::anonymous_namespace{experimentdocument2d.cpp}::potentialObjectFromJson(), qpe::tests::runExperimentDocument2DTests(), qpe::tests::runPotentialScene2DTests(), qpe::tests::runQuantumAnderson2DTests(), qpe::tests::runQuantumBouncer2DTests(), qpe::tests::runQuantumMoshinsky2DTests(), qpe::tests::runQuantumScar2DTests(), MainWindow::updateStatusText(), and valid().

◆ curvatureX

◆ curvatureY

◆ enabled

◆ height

float qpe::PotentialObject2D::height = 1.0f

◆ id

◆ length

◆ radius

◆ sigmaX

◆ sigmaY

◆ slitHeight

float qpe::PotentialObject2D::slitHeight = 1.0f

◆ slitSeparation

float qpe::PotentialObject2D::slitSeparation = 2.0f

◆ slopeX

◆ slopeY

◆ softening

float qpe::PotentialObject2D::softening = 0.5f

◆ thickness

◆ type

Definition at line 53 of file potentialscene2d.h.

Referenced by qpe::tests::anonymous_namespace{resonanttunneling2d_tests.cpp}::barrier(), qpe::QuantumMoshinsky2D::identifyShutter(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeAndersonLocalization(), qpe::tests::anonymous_namespace{quantumbilliards2d_tests.cpp}::makeBilliard(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeBlochOscillation(), qpe::tests::anonymous_namespace{quantumrevivals2d_tests.cpp}::makeBox(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeCoherentDoubleWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeDrivenDoubleWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeDrivenHarmonicTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeFiniteQuantumWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeGaussianWellBreathing(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeHarmonicTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeLandauZenerSweep(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeMoshinskyShutter(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBerryPhase(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBilliard(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBouncer(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumKickedRotor(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumLoschmidt(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumQuench(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumScars(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumVortex(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumZeno(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeRamseyInterferometer(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeResonantTunneling(), qpe::tests::anonymous_namespace{blochoscillations2d_tests.cpp}::makeScene(), qpe::tests::anonymous_namespace{coherenttunneling2d_tests.cpp}::makeScene(), qpe::tests::anonymous_namespace{quantumberryphase2d_tests.cpp}::makeTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeWavePacketRevival(), MainWindow::potentialObjectFromControls(), qpe::anonymous_namespace{experimentdocument2d.cpp}::potentialObjectFromJson(), qpe::tests::runBlochOscillations2DTests(), qpe::tests::runCoherentTunneling2DTests(), qpe::tests::runExperimentDocument2DTests(), qpe::tests::runExperimentPreset2DTests(), qpe::tests::runPotentialScene2DTests(), qpe::tests::runQuantumAnderson2DTests(), qpe::tests::runQuantumBilliards2DTests(), qpe::tests::runQuantumBouncer2DTests(), qpe::tests::runQuantumMoshinsky2DTests(), qpe::tests::runQuantumRevivals2DTests(), qpe::tests::runQuantumScar2DTests(), qpe::tests::runQuantumVortex2DTests(), qpe::tests::runResonantTunneling2DTests(), qpe::tests::runTimeDependentPotential2DTests(), MainWindow::updatePeriodicDriveAnalysis(), MainWindow::updateStatusText(), and valid().

◆ value

float qpe::PotentialObject2D::value = 0.0f

Definition at line 55 of file potentialscene2d.h.

Referenced by MainWindow::applyExperimentPreset(), qpe::tests::anonymous_namespace{resonanttunneling2d_tests.cpp}::barrier(), qpe::BlochOscillations2D::identify(), qpe::QuantumBilliards2D::identify(), qpe::QuantumBouncer2D::identify(), qpe::QuantumScars2D::identify(), qpe::QuantumRevivals2D::identifyBox(), qpe::QuantumAnderson2D::identifyLattice(), qpe::QuantumMoshinsky2D::identifyShutter(), qpe::CoherentTunneling2D::identifySymmetricDoubleWell(), qpe::QuantumBerryPhase2D::identifyTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeAndersonLocalization(), qpe::tests::anonymous_namespace{quantumbilliards2d_tests.cpp}::makeBilliard(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeBlochOscillation(), qpe::tests::anonymous_namespace{quantumrevivals2d_tests.cpp}::makeBox(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeCoherentDoubleWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeDrivenDoubleWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeDrivenHarmonicTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeFiniteQuantumWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeGaussianWellBreathing(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeHarmonicTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeLandauZenerSweep(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeMoshinskyShutter(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBerryPhase(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBilliard(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBouncer(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumKickedRotor(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumLoschmidt(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumQuench(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumScars(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumVortex(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeRamseyInterferometer(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeResonantTunneling(), qpe::tests::anonymous_namespace{blochoscillations2d_tests.cpp}::makeScene(), qpe::tests::anonymous_namespace{coherenttunneling2d_tests.cpp}::makeScene(), qpe::tests::anonymous_namespace{quantumberryphase2d_tests.cpp}::makeTrap(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeWavePacketRevival(), qpe::anonymous_namespace{experimentdocument2d.cpp}::potentialObjectFromJson(), qpe::QuantumMoshinsky2D::rasterize(), MainWindow::resetResonanceSweepDefaults(), qpe::tests::runBlochOscillations2DTests(), qpe::tests::runCoherentTunneling2DTests(), qpe::tests::runExperimentDocument2DTests(), qpe::tests::runExperimentPreset2DTests(), qpe::tests::runPotentialScene2DTests(), qpe::tests::runQuantumAnderson2DTests(), qpe::tests::runQuantumBilliards2DTests(), qpe::tests::runQuantumBouncer2DTests(), qpe::tests::runQuantumMoshinsky2DTests(), qpe::tests::runQuantumRevivals2DTests(), qpe::tests::runQuantumScar2DTests(), qpe::tests::runResonantTunneling2DTests(), qpe::ResonantTunneling2D::sweepCavityWidth(), qpe::ResonantTunneling2D::sweepEnergy(), MainWindow::updateResonanceAnalysis(), MainWindow::updateStatusText(), and valid().

◆ wallWidth

float qpe::PotentialObject2D::wallWidth = 1.0f

◆ width

float qpe::PotentialObject2D::width = 1.0f

Definition at line 60 of file potentialscene2d.h.

Referenced by MainWindow::applyExperimentPreset(), qpe::BlochOscillations2D::identify(), qpe::QuantumBilliards2D::identify(), qpe::QuantumScars2D::identify(), qpe::QuantumRevivals2D::identifyBox(), qpe::CoherentTunneling2D::identifySymmetricDoubleWell(), qpe::tests::anonymous_namespace{quantumbilliards2d_tests.cpp}::makeBilliard(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeBlochOscillation(), qpe::tests::anonymous_namespace{quantumrevivals2d_tests.cpp}::makeBox(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeCoherentDoubleWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeDrivenDoubleWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeFiniteQuantumWell(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeLandauZenerSweep(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBilliard(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumBouncer(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumLoschmidt(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeQuantumScars(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeRamseyInterferometer(), qpe::tests::anonymous_namespace{blochoscillations2d_tests.cpp}::makeScene(), qpe::tests::anonymous_namespace{coherenttunneling2d_tests.cpp}::makeScene(), qpe::anonymous_namespace{experimentpreset2d.cpp}::makeWavePacketRevival(), qpe::anonymous_namespace{experimentdocument2d.cpp}::potentialObjectFromJson(), qpe::tests::runExperimentPreset2DTests(), qpe::tests::runPotentialScene2DTests(), qpe::tests::runQuantumBouncer2DTests(), qpe::tests::runQuantumScar2DTests(), MainWindow::updateStatusText(), and valid().


The documentation for this struct was generated from the following files: