hep-mc  0.8
Public Member Functions | List of all members
hep::multi_channel_result< T > Class Template Reference

Detailed Description

template<typename T>
class hep::multi_channel_result< T >

Result of a multi-channel integration.

Inheritance diagram for hep::multi_channel_result< T >:
hep::plain_result< T > hep::mc_result< T >

Public Member Functions

 multi_channel_result (plain_result< T > const &result, std::vector< T > const &adjustment_data, std::vector< T > const &channel_weights)
 
 multi_channel_result (std::istream &in)
 
 multi_channel_result (multi_channel_result< T > const &)=default
 
 multi_channel_result (multi_channel_result< T > &&) noexcept=default
 
multi_channel_resultoperator= (multi_channel_result< T > const &)=default
 
multi_channel_resultoperator= (multi_channel_result< T > &&) noexcept=default
 
 ~multi_channel_result () override=default
 
std::vector< T > const & adjustment_data () const
 
std::vector< T > const & channel_weights () const
 
void serialize (std::ostream &out) const override
 
- Public Member Functions inherited from hep::plain_result< T >
 plain_result (std::vector< distribution_result< T >> const &distributions, std::size_t calls, std::size_t non_zero_calls, std::size_t finite_calls, T sum, T sum_of_squares)
 
 plain_result (std::istream &in)
 
 plain_result (plain_result< T > const &)=default
 
 plain_result (plain_result< T > &&) noexcept=default
 
plain_resultoperator= (plain_result< T > const &)=default
 
plain_resultoperator= (plain_result< T > &&) noexcept=default
 
 ~plain_result () override=default
 
std::vector< distribution_result< T > > const & distributions () const
 
void serialize (std::ostream &out) const override
 
- Public Member Functions inherited from hep::mc_result< T >
 mc_result (std::size_t calls, std::size_t non_zero_calls, std::size_t finite_calls, T sum, T sum_of_squares)
 
 mc_result (std::istream &in)
 
 mc_result (mc_result< T > const &)=default
 
 mc_result (mc_result< T > &&) noexcept=default
 
mc_resultoperator= (mc_result< T > const &)=default
 
mc_resultoperator= (mc_result< T > &&) noexcept=default
 
virtual ~mc_result ()=default
 
std::size_t calls () const
 
value () const
 
variance () const
 
error () const
 
std::size_t finite_calls () const
 
std::size_t non_zero_calls () const
 
sum () const
 
sum_of_squares () const
 

Additional Inherited Members

- Public Types inherited from hep::mc_result< T >
using numeric_type = T
 

Constructor & Destructor Documentation

◆ multi_channel_result() [1/4]

template<typename T >
hep::multi_channel_result< T >::multi_channel_result ( plain_result< T > const &  result,
std::vector< T > const &  adjustment_data,
std::vector< T > const &  channel_weights 
)
inline

Constructor.

◆ multi_channel_result() [2/4]

template<typename T >
hep::multi_channel_result< T >::multi_channel_result ( std::istream &  in)
inlineexplicit

Deserialization constructor.

◆ multi_channel_result() [3/4]

template<typename T >
hep::multi_channel_result< T >::multi_channel_result ( multi_channel_result< T > const &  )
default

Copy constructor.

◆ multi_channel_result() [4/4]

template<typename T >
hep::multi_channel_result< T >::multi_channel_result ( multi_channel_result< T > &&  )
defaultnoexcept

Move constructor.

◆ ~multi_channel_result()

template<typename T >
hep::multi_channel_result< T >::~multi_channel_result ( )
overridedefault

Destructor.

Member Function Documentation

◆ adjustment_data()

template<typename T >
std::vector<T> const& hep::multi_channel_result< T >::adjustment_data ( ) const
inline

This is the data used by multi_channel_refine_weights to refine the channel_weights used in the same iteration. The refined weights are then used in a subsequent iteration.

◆ channel_weights()

template<typename T >
std::vector<T> const& hep::multi_channel_result< T >::channel_weights ( ) const
inline

The weight for each channel.

◆ operator=() [1/2]

template<typename T >
multi_channel_result& hep::multi_channel_result< T >::operator= ( multi_channel_result< T > const &  )
default

Assignment operator.

◆ operator=() [2/2]

template<typename T >
multi_channel_result& hep::multi_channel_result< T >::operator= ( multi_channel_result< T > &&  )
defaultnoexcept

Move assignment operator.

◆ serialize()

template<typename T >
void hep::multi_channel_result< T >::serialize ( std::ostream &  out) const
inlineoverridevirtual

Serializes this object.

Reimplemented from hep::mc_result< T >.