Struct phase_space_extent_t¶
Defined in File beam_geometry.hpp
Struct Documentation¶
-
struct phase_space_extent_t¶
Phase-space extent of a beam.
Public Functions
-
inline auto sbp() const noexcept¶
The space-bandwidth product (SBP) of a beam with this phase-space extent.
-
inline bool is_mub() const noexcept¶
Return TRUE if this phase-space extent is physical, i.e. conforms to the uncertainty relation (SBP >= ¼).
-
inline auto make_mub() const noexcept¶
Enlarges the phase-space extent to make it physical, if needed. Does nothing if the extent already satisfies minimum uncertainty, or is degenerate.
Public Static Functions
-
static inline constexpr f_t minimum_uncertainty_tan_alpha(const Length auto spatial_length, const Wavenumber auto k) noexcept¶
Computes a minimum-uncertainty beam’s (MUB) tan(ɑ) given a spatial extent. For degenerate cases (vanishing spatial extent), returns a ray (tan(ɑ)=0).
- Parameters:
spatial_length – spatial extent length per dimension
-
static inline constexpr f_t minimum_uncertainty_tan_alpha(const Area auto spatial_extent, const Wavenumber auto k) noexcept¶
Computes a minimum-uncertainty beam’s (MUB) tan(ɑ) given a spatial extent. For degenerate cases (vanishing spatial extent), returns a ray (tan(ɑ)=0).
- Parameters:
spatial_extent – spatial extent (area)
-
static inline constexpr f_t minimum_uncertainty_tan_alpha(const pqvec2_t spatial_lengths, const Wavenumber auto k) noexcept¶
Computes a minimum-uncertainty beam’s (MUB) tan(ɑ) given a spatial extent. For degenerate cases (vanishing spatial extent), returns a ray (tan(ɑ)=0).
- Parameters:
spatial_lengths – spatial extent lengths for each dimension
-
inline auto sbp() const noexcept¶