Class beam_generic_t¶
Defined in File beam_generic.hpp
Inheritance Relationships¶
Derived Types¶
public wt::beam_t< beam::transport_e::forward, spectral_radiance_t >
(Template Class beam_t)public wt::beam_t< beam::transport_e::forward, spectral_radiant_flux_t >
(Template Class beam_t)public wt::beam_t< beam::transport_e::backward, QE_t >
(Template Class beam_t)public wt::beam_t< beam::transport_e::backward, QE_flux_t >
(Template Class beam_t)public wt::beam_t< Transport, Q >
(Template Class beam_t)
Class Documentation¶
-
class beam_generic_t¶
Handles the geometric aspects of beams.
Subclassed by wt::beam_t< beam::transport_e::forward, spectral_radiance_t >, wt::beam_t< beam::transport_e::forward, spectral_radiant_flux_t >, wt::beam_t< beam::transport_e::backward, QE_t >, wt::beam_t< beam::transport_e::backward, QE_flux_t >, wt::beam_t< Transport, Q >
Public Functions
-
beam_generic_t(const beam_generic_t&) noexcept = default¶
-
beam_generic_t &operator=(const beam_generic_t&) noexcept = default¶
-
virtual ~beam_generic_t() noexcept = default¶
-
virtual wavenumber_t k() const noexcept = 0¶
Returns the beam’s wavenumber.
-
inline auto wavelength() const noexcept¶
Returns the beam’s wavelength.
-
inline const auto &get_envelope() const noexcept¶
Returns beam’s envelope.
-
inline const auto &dir() const noexcept¶
Beam mean direction.
-
inline const auto &origin() const noexcept¶
Beam origin.
-
inline bool from_infinity() const noexcept¶
Returns TRUE if beam originates from infinity.
-
inline const auto &mean_ray() const noexcept¶
Beam mean ray.
-
inline auto frame() const noexcept¶
Beam’s local frame.
-
inline pqvec3_t footprint(length_t dist) const noexcept¶
Beam’ spatial three-dimensional footprint at propagation distance dist (in beam’s local frame)
-
inline pqvec3_t std_dev(length_t dist) const noexcept¶
Beam’ spatial standard deviation over local x,y,z axes at propagation distance dist. (in beam’s local frame)
-
inline gaussian_wavefront_t wavefront(length_t dist) const noexcept¶
Beam’ wavefront, in local frame, at propagation distance dist.
-
inline pqvec2_t project(const pqvec3_t &p, length_t beam_dist) const noexcept¶
Returns the point ‘p’ after projection onto the beam cross section after propagation a distance of ‘beam_dist’.
-
inline bool is_ray() const noexcept¶
Returns true if this beam is a ray.
-
intersection_footprint_t surface_footprint_ellipsoid(const intersection_surface_t &surface, const length_t beam_z_dist) const noexcept¶
Returns the footprint on intersection with a surface.
- Parameters:
surface – surface intersection
beam_z_dist – beam propagation distance
-
inline intersection_footprint_t surface_footprint_static(const intersection_surface_t &surface, const length_t beam_z_dist) const noexcept¶
Returns the footprint on intersection with a surface.
- Parameters:
surface – surface intersection
beam_z_dist – beam propagation distance
Public Static Functions
Protected Functions
-
inline beam_generic_t(const ray_t &ray, const sourcing_geometry_t &sourcing_geometry) noexcept¶
-
inline beam_generic_t(const elliptic_cone_t &envelope) noexcept¶
-
beam_generic_t(const beam_generic_t&) noexcept = default¶