Class piecewise_linear_distribution_t

Inheritance Relationships

Base Type

Class Documentation

class piecewise_linear_distribution_t : public wt::distribution1d_t

Continuos piecewise-linear distribution.

Public Functions

inline explicit piecewise_linear_distribution_t(std::vector<vec2_t> values)

Construct a piecewise_linear_distribution_t.

Parameters:

values – non negative values, with x in strictly ascending order

piecewise_linear_distribution_t(piecewise_linear_distribution_t&&) noexcept = default
piecewise_linear_distribution_t(const piecewise_linear_distribution_t&) noexcept = default
piecewise_linear_distribution_t &operator=(piecewise_linear_distribution_t&&) noexcept = default
piecewise_linear_distribution_t &operator=(const piecewise_linear_distribution_t&) noexcept = default
inline virtual std::unique_ptr<distribution1d_t> clone() const override
inline auto total() const noexcept
inline auto range() const noexcept
inline auto &operator[](std::size_t idx)
inline const auto &operator[](std::size_t idx) const
inline auto size() const noexcept
inline auto begin() noexcept
inline auto end() noexcept
inline auto begin() const noexcept
inline auto end() const noexcept
inline auto &front() noexcept
inline auto &back() noexcept
inline const auto &front() const noexcept
inline const auto &back() const noexcept
inline auto cbegin() const noexcept
inline auto cend() const noexcept
inline auto crbegin() const noexcept
inline auto crend() const noexcept
inline auto rbegin() noexcept
inline auto rend() noexcept
inline auto rbegin() const noexcept
inline auto rend() const noexcept
inline auto operator+(const piecewise_linear_distribution_t &d) const noexcept
inline f_t value(f_t x) const noexcept

Value at position.

Parameters:

x – position

Returns:

Piece-wise linearly interpolated value

inline f_t integrate(f_t x0, f_t x1) const noexcept

Integrate the distribution between x0 and x1.

Parameters:
  • x0 – integrate from

  • x1 – integrate to

inline virtual f_t pdf(f_t x, measure_e measure = measure_e::continuos) const noexcept final

PDF.

Parameters:

x – value

Returns:

PDF of the distribution at x

inline vec2_t icdf(f_t v) const noexcept

Inverse CDF.

Parameters:

v – CDF values in range [0,1]

Returns:

value

inline virtual sample_ret_t sample(sampler::sampler_t &sampler) const noexcept final

Sample from the distribution.