22class PotentialField2D;
51 std::vector<double>
x;
99 double tolerance = 1.0e-5)
noexcept;
117 double hbar = 1.0)
noexcept;
141 double relativePhaseRadians = 0.0);
Implements the Bound States1D component.
static bool isYInvariant(const PotentialField2D &potential, double tolerance=1.0e-5) noexcept
Returns whether y invariant.
static bool prepareEigenstate(ComplexField2D &field, const BoundStateSpectrum1D &spectrum, int stateIndex)
Prepares eigenstate.
static bool matches(const BoundStateSpectrum1D &spectrum, const PotentialField2D &potential, double mass, double hbar=1.0) noexcept
Performs matches.
static BoundStateSpectrum1D solve(const PotentialField2D &potential, const BoundStateSolver1DParams ¶ms)
Performs solve.
static std::uint64_t potentialSignature(const PotentialField2D &potential) noexcept
Performs potential signature.
static bool prepareSuperposition(ComplexField2D &field, const BoundStateSpectrum1D &spectrum, int stateIndexA, int stateIndexB, double relativePhaseRadians=0.0)
Prepares superposition.
Owning Cartesian grid of complex scalar samples.
Implements the Potential Field2D component.
Data structure used by the Bound State1D component.
std::vector< float > amplitude
Configuration values for Bound State Solver1D Params.
double yInvarianceTolerance
Data structure used by the Bound State Spectrum1D component.
std::vector< BoundState1D > states
std::vector< double > potential
std::uint64_t sourceSignature
double continuumThreshold