ALPS Home Libraries License Support People ALPS Web Site

PrevUpHomeNext

Class template mcdata

alps::mcdata

Synopsis

// In header: <alps/ngs.hpp>

template<typename T> 
class mcdata : public alps::mcany {
public:
  // types
  typedef alea::mcdata< T >::value_type        value_type;  
  typedef alea::mcdata< T >::result_type       result_type; 
  typedef alps::element_type< T >::type        element_type;
  typedef change_value_type< T, double >::type time_type;   

  // construct/copy/destruct
  mcdata();
  template<typename X> mcdata(mcdata< X > const &);
  template<typename X, typename S> mcdata(mcdata< X > const &, S);
  template<typename X> mcdata(AbstractSimpleObservable< X > const &);
  mcdata(int64_t, result_type const &, result_type const &, 
         boost::optional< result_type > const &, 
         boost::optional< typename alea::mcdata< T >::time_type > const &, 
         uint64_t, std::vector< value_type > const &);

  // public member functions
  alea::mcdata< T > const & get_mcdata() const;
  uint64_t count() const;
  std::string to_string() const;
  void serialize(hdf5::iarchive &);
  void serialize(hdf5::oarchive &) const;
  void reduce_master(boost::ptr_map< std::string, mcany > &, 
                     std::string const &, boost::mpi::communicator const &, 
                     std::size_t);
  void reduce_slave(boost::mpi::communicator const &, std::size_t);

  // private member functions
  void reduce_master_impl(boost::ptr_map< std::string, mcany > &, 
                          std::string const &, 
                          boost::mpi::communicator const &, std::size_t, 
                          boost::mpl::true_);
  void reduce_master_impl(boost::ptr_map< std::string, mcany > &, 
                          std::string const &, 
                          boost::mpi::communicator const &, std::size_t, 
                          boost::mpl::false_);
  void reduce_slave_impl(boost::mpi::communicator const &, std::size_t, 
                         boost::mpl::true_);
  void reduce_slave_impl(boost::mpi::communicator const &, std::size_t, 
                         boost::mpl::false_);
  std::size_t partition_bins(std::vector< result_type > &, 
                             boost::mpi::communicator const &);
};

Description

mcdata public construct/copy/destruct

  1. mcdata();
  2. template<typename X> mcdata(mcdata< X > const & rhs);
  3. template<typename X, typename S> mcdata(mcdata< X > const & rhs, S s);
  4. template<typename X> mcdata(AbstractSimpleObservable< X > const & obs);
  5. mcdata(int64_t count, result_type const & mean, result_type const & error, 
           boost::optional< result_type > const & variance, 
           boost::optional< typename alea::mcdata< T >::time_type > const & tau, 
           uint64_t binsize, std::vector< value_type > const & values);

mcdata public member functions

  1. alea::mcdata< T > const & get_mcdata() const;
  2. uint64_t count() const;
  3. std::string to_string() const;
  4. void serialize(hdf5::iarchive & ar);
  5. void serialize(hdf5::oarchive & ar) const;
  6. void reduce_master(boost::ptr_map< std::string, mcany > & results, 
                       std::string const & name, 
                       boost::mpi::communicator const & communicator, 
                       std::size_t binnumber);
  7. void reduce_slave(boost::mpi::communicator const & communicator, 
                      std::size_t binnumber);

mcdata private member functions

  1. void reduce_master_impl(boost::ptr_map< std::string, mcany > & results, 
                            std::string const & name, 
                            boost::mpi::communicator const & communicator, 
                            std::size_t binnumber, boost::mpl::true_);
  2. void reduce_master_impl(boost::ptr_map< std::string, mcany > & results, 
                            std::string const & name, 
                            boost::mpi::communicator const & communicator, 
                            std::size_t binnumber, boost::mpl::false_);
  3. void reduce_slave_impl(boost::mpi::communicator const & communicator, 
                           std::size_t binnumber, boost::mpl::true_);
  4. void reduce_slave_impl(boost::mpi::communicator const & communicator, 
                           std::size_t binnumber, boost::mpl::false_);
  5. std::size_t partition_bins(std::vector< result_type > & bins, 
                               boost::mpi::communicator const & communicator);
Copyright © 1994, 2002-2005 Matthias Troyer, Synge Todo

PrevUpHomeNext