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

Implements the Quantum Billiard History2D component. More...

#include <quantumbilliards2d.h>

Public Member Functions

 QuantumBilliardHistory2D (std::size_t maximumSamples=1600u)
 Constructs a Quantum Billiard History 2D instance.
 
void clear () noexcept
 Clears stored state and returns the component to its empty/default state.
 
bool captureReference (const ComplexField2D &field, const QuantumBilliardGeometry2D &geometry)
 Carries out capture reference.
 
bool hasReference () const noexcept
 Returns whether reference.
 
void setMaximumSamples (std::size_t maximumSamples)
 Sets maximum samples.
 
std::size_t maximumSamples () const noexcept
 Carries out maximum samples.
 
bool append (double time, const ComplexField2D &field, const QuantumBilliardGeometry2D &geometry)
 Carries out append.
 
const std::vector< QuantumBilliardSample2D > & samples () const noexcept
 Samples s.
 
const std::vector< float > & meanProbabilityDensity () const noexcept
 Carries out mean probability density.
 
std::size_t gridWidth () const noexcept
 Carries out grid width.
 
std::size_t gridHeight () const noexcept
 Carries out grid height.
 
float dx () const noexcept
 Returns the X-axis grid spacing.
 
float dy () const noexcept
 Returns the Y-axis grid spacing.
 
std::size_t accumulatedFrames () const noexcept
 Carries out accumulated frames.
 
bool empty () const noexcept
 Returns whether the object contains no data.
 

Private Member Functions

void trimToLimit ()
 Carries out trim to limit.
 

Private Attributes

std::size_t maximumSamples_ = 1600u
 
ComplexField2D reference_
 
std::vector< QuantumBilliardSample2D > samples_
 
std::vector< float > meanProbabilityDensity_
 
std::size_t accumulatedFrames_ = 0u
 

Detailed Description

Implements the Quantum Billiard 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 126 of file quantumbilliards2d.h.

Constructor & Destructor Documentation

◆ QuantumBilliardHistory2D()

qpe::QuantumBilliardHistory2D::QuantumBilliardHistory2D ( std::size_t maximumSamples = 1600u)
explicit

Constructs a Quantum Billiard History 2D instance.

Parameters
maximumSamplesThe maximum samples value used by the operation.

Definition at line 276 of file quantumbilliards2d.cpp.

Member Function Documentation

◆ accumulatedFrames()

std::size_t qpe::QuantumBilliardHistory2D::accumulatedFrames ( ) const
inlinenoexcept

Carries out accumulated frames.

Definition at line 211 of file quantumbilliards2d.h.

References accumulatedFrames_.

◆ append()

◆ captureReference()

bool qpe::QuantumBilliardHistory2D::captureReference ( const ComplexField2D & field,
const QuantumBilliardGeometry2D & geometry )

Carries out capture reference.

Parameters
fieldField data to read or modify.
geometryThe geometry value used by the operation.

Definition at line 289 of file quantumbilliards2d.cpp.

References clear(), qpe::ComplexField2D::empty(), meanProbabilityDensity_, reference_, qpe::ComplexField2D::size(), and qpe::QuantumBilliardGeometry2D::valid.

Referenced by MainWindow::resetSimulation(), and qpe::tests::runQuantumBilliards2DTests().

◆ clear()

void qpe::QuantumBilliardHistory2D::clear ( )
noexcept

Clears stored state and returns the component to its empty/default state.

Definition at line 281 of file quantumbilliards2d.cpp.

References accumulatedFrames_, qpe::ComplexField2D::clear(), meanProbabilityDensity_, reference_, and samples_.

Referenced by captureReference(), and MainWindow::resetSimulation().

◆ dx()

float qpe::QuantumBilliardHistory2D::dx ( ) const
inlinenoexcept

Returns the X-axis grid spacing.

Parameters
dxThe dx value used by the operation.

Definition at line 202 of file quantumbilliards2d.h.

References qpe::ComplexField2D::dx(), and reference_.

Referenced by QuantumBilliardPlotWidget::paintEvent().

◆ dy()

float qpe::QuantumBilliardHistory2D::dy ( ) const
inlinenoexcept

Returns the Y-axis grid spacing.

Parameters
dyThe dy value used by the operation.

Definition at line 207 of file quantumbilliards2d.h.

References qpe::ComplexField2D::dy(), and reference_.

Referenced by QuantumBilliardPlotWidget::paintEvent().

◆ empty()

bool qpe::QuantumBilliardHistory2D::empty ( ) const
inlinenoexcept

Returns whether the object contains no data.

Parameters
emptyThe empty value used by the operation.

Definition at line 216 of file quantumbilliards2d.h.

References samples_.

Referenced by QuantumBilliardPlotWidget::paintEvent(), and MainWindow::updateBilliardAnalysis().

◆ gridHeight()

std::size_t qpe::QuantumBilliardHistory2D::gridHeight ( ) const
inlinenoexcept

Carries out grid height.

Parameters
heightThe height value used by the operation.

Definition at line 197 of file quantumbilliards2d.h.

References qpe::ComplexField2D::height(), and reference_.

Referenced by QuantumBilliardPlotWidget::paintEvent().

◆ gridWidth()

std::size_t qpe::QuantumBilliardHistory2D::gridWidth ( ) const
inlinenoexcept

Carries out grid width.

Parameters
widthThe width value used by the operation.

Definition at line 192 of file quantumbilliards2d.h.

References reference_, and qpe::ComplexField2D::width().

Referenced by QuantumBilliardPlotWidget::paintEvent().

◆ hasReference()

bool qpe::QuantumBilliardHistory2D::hasReference ( ) const
inlinenoexcept

Returns whether reference.

Parameters
emptyThe empty value used by the operation.

Definition at line 150 of file quantumbilliards2d.h.

References qpe::ComplexField2D::empty(), and reference_.

Referenced by append(), MainWindow::recordTimeSeriesSample(), and MainWindow::updateBilliardAnalysis().

◆ maximumSamples()

std::size_t qpe::QuantumBilliardHistory2D::maximumSamples ( ) const
inlinenoexcept

Carries out maximum samples.

Definition at line 160 of file quantumbilliards2d.h.

References maximumSamples_.

Referenced by setMaximumSamples().

◆ meanProbabilityDensity()

const std::vector< float > & qpe::QuantumBilliardHistory2D::meanProbabilityDensity ( ) const
inlinenoexcept

Carries out mean probability density.

Definition at line 183 of file quantumbilliards2d.h.

References meanProbabilityDensity_.

Referenced by QuantumBilliardPlotWidget::paintEvent(), and qpe::tests::runQuantumBilliards2DTests().

◆ samples()

const std::vector< QuantumBilliardSample2D > & qpe::QuantumBilliardHistory2D::samples ( ) const
inlinenoexcept

◆ setMaximumSamples()

void qpe::QuantumBilliardHistory2D::setMaximumSamples ( std::size_t maximumSamples)

Sets maximum samples.

Parameters
maximumSamplesThe maximum samples value used by the operation.

Definition at line 299 of file quantumbilliards2d.cpp.

References maximumSamples(), maximumSamples_, and trimToLimit().

◆ trimToLimit()

void qpe::QuantumBilliardHistory2D::trimToLimit ( )
private

Carries out trim to limit.

Definition at line 334 of file quantumbilliards2d.cpp.

References maximumSamples_, and samples_.

Referenced by append(), and setMaximumSamples().

Member Data Documentation

◆ accumulatedFrames_

std::size_t qpe::QuantumBilliardHistory2D::accumulatedFrames_ = 0u
private

Definition at line 228 of file quantumbilliards2d.h.

Referenced by accumulatedFrames(), append(), and clear().

◆ maximumSamples_

std::size_t qpe::QuantumBilliardHistory2D::maximumSamples_ = 1600u
private

Definition at line 224 of file quantumbilliards2d.h.

Referenced by maximumSamples(), setMaximumSamples(), and trimToLimit().

◆ meanProbabilityDensity_

std::vector<float> qpe::QuantumBilliardHistory2D::meanProbabilityDensity_
private

Definition at line 227 of file quantumbilliards2d.h.

Referenced by append(), captureReference(), clear(), and meanProbabilityDensity().

◆ reference_

ComplexField2D qpe::QuantumBilliardHistory2D::reference_
private

◆ samples_

std::vector<QuantumBilliardSample2D> qpe::QuantumBilliardHistory2D::samples_
private

Definition at line 226 of file quantumbilliards2d.h.

Referenced by append(), clear(), empty(), samples(), and trimToLimit().


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