Struct sourcing_geometry_t¶
Defined in File beam_geometry.hpp
Struct Documentation¶
-
struct sourcing_geometry_t¶
Beam sourcing geometry.
Public Functions
-
inline auto phase_space_extent() const noexcept¶
Computes the phase-space extent of this sourcing geometry.
Public Members
-
const intersection_surface_t *surface = nullptr¶
Public Static Functions
-
static inline auto source_mub_from(const f_t tan_alpha, const Wavenumber auto k) noexcept¶
Source an isotropic minimum-uncertainty beam (MUB) into a solid angle.
-
static inline auto source_mub_from(const length_t initial_spatial_length, const Wavenumber auto k) noexcept¶
Source an isotropic minimum-uncertainty beam (MUB) from a spatial footprint.
-
static inline auto source_mub_from(const pqvec2_t initial_spatial_lengths, const dir3_t x, const Wavenumber auto k) noexcept¶
Source a minimum-uncertainty beam (MUB) from a spatial footprint.
- Parameters:
x – tangent direction for the largest spatial dimension
-
static inline auto source_mub_from(const intersection_surface_t *surface, const Wavenumber auto k) noexcept¶
Source a minimum-uncertainty beam (MUB) from a surface.
-
static inline auto source(const length_t initial_spatial_length, const f_t tan_alpha, const Wavenumber auto k) noexcept¶
Source a beam with explicitly defined spatial footprint and tan opening half angle. This can be used to specify a beam that is not strictly physical (not fulfilling the uncertainty relation); this is useful for not-strictly-physical sensors, like virtual cameras.
-
static inline auto source(const phase_space_extent_t &extent) noexcept¶
Source an isotropic beam with an explicitly defined phase-space extent. This can be used to specify a beam that is not strictly physical (not fulfilling the uncertainty relation); this is useful for not-strictly-physical sensors, like virtual cameras.
-
static inline auto source(const intersection_surface_t *surface, const phase_space_extent_t &extent) noexcept¶
Source an isotropic beam with an explicitly defined phase-space extent. This can be used to specify a beam that is not strictly physical (not fulfilling the uncertainty relation); this is useful for not-strictly-physical sensors, like virtual cameras.
-
inline auto phase_space_extent() const noexcept¶