ALPS Home Libraries License Support People ALPS Web Site

PrevUpHomeNext

Class template mcdata

alps::alea::mcdata

Synopsis

// In header: <alps/alea/mcanalyze.hpp>

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

  // public member functions
  std::size_t size() const;
  const_iterator begin() const;
  const_iterator end() const;
  bool can_rebin() const;
  bool jackknife_valid() const;
  void swap(mcdata< T > &);
  uint64_t count() const;
  uint64_t bin_size() const;
  uint64_t max_bin_number() const;
  std::size_t bin_number() const;
  std::vector< value_type > const & bins() const;
  std::vector< result_type > const & jackknife() const;
  result_type const & mean() const;
  result_type const & error() const;
  bool has_variance() const;
  result_type const & variance() const;
  bool has_tau() const;
  time_type const & tau() const;
  covariance_type covariance(mcdata< T > const &) const;
  covariance_type accurate_covariance(mcdata< T > const &) const;
  void set_bin_size(uint64_t);
  void set_bin_number(uint64_t);
  void discard_bins(size_type = 0);
  void output(std::ostream &) const;
  void save(hdf5::archive &) const;
  void load(hdf5::archive &);
  void save(std::string const &, std::string const &) const;
  void load(std::string const &, std::string const &);
  void merge(mcdata< T > const &);
  mcdata< T > & operator<<(mcdata< T > const &);
  template<typename S> element_type slice(S) const;
  template<typename X> bool operator==(mcdata< X > const &) const;
  template<typename X> 
    bool operator==(mcdata< std::vector< X > > const &) const;
  template<typename X> bool operator!=(mcdata< X > const &) const;
  mcdata< T > & operator+=(mcdata< T > const &);
  mcdata< T > & operator-=(mcdata< T > const &);
  template<typename X> mcdata< T > & operator*=(mcdata< X > const &);
  template<typename X> mcdata< T > & operator/=(mcdata< X > const &);
  template<typename X> mcdata< T > & operator+=(X const &);
  template<typename X> mcdata< T > & operator-=(X const &);
  template<typename X> mcdata< T > & operator*=(X const &);
  template<typename X> mcdata< T > & operator/=(X const &);
  mcdata< T > & operator+();
  mcdata< T > & operator-();
  template<typename X> void subtract_from(X const &);
  template<typename X> void divide(X const &);
  template<typename OP> 
    void transform_linear(OP, value_type const &, 
                          boost::optional< result_type > = boost::none);
  template<typename OP> 
    void transform(OP, value_type const &, 
                   boost::optional< result_type > = boost::none);
  template<typename X, typename OP> 
    void transform(mcdata< X > const &, OP, value_type const &, 
                   boost::optional< result_type > = boost::none);

  // private member functions
  T const & replace_valarray_by_vector(T const &);
  template<typename X> 
    std::vector< X > replace_valarray_by_vector(std::valarray< X > const &);
  void collect_bins(uint64_t);
  void fill_jack() const;
  void analyze() const;
  template<typename Archive> void serialize(Archive &, const unsigned int);
};

Description

mcdata public construct/copy/destruct

  1. mcdata();
  2. mcdata(result_type mean, result_type error = result_type());
  3. template<typename X, typename S> mcdata(mcdata< X > const & rhs, S s);
  4. template<typename X, typename S> mcdata(mcdata< X > const & rhs, S from, S to);
  5. template<typename X> mcdata(AbstractSimpleObservable< X > const & obs);
  6. mcdata(int64_t count, value_type const & mean, value_type const & error, 
           boost::optional< result_type > const & variance_opt, 
           boost::optional< time_type > const & tau_opt, uint64_t binsize, 
           uint64_t max_bin_number, std::vector< value_type > const & values);
  7. mcdata< T > & operator=(mcdata< T > rhs);

mcdata public member functions

  1. std::size_t size() const;
  2. const_iterator begin() const;
  3. const_iterator end() const;
  4. bool can_rebin() const;
  5. bool jackknife_valid() const;
  6. void swap(mcdata< T > & rhs);
  7. uint64_t count() const;
  8. uint64_t bin_size() const;
  9. uint64_t max_bin_number() const;
  10. std::size_t bin_number() const;
  11. std::vector< value_type > const & bins() const;
  12. std::vector< result_type > const & jackknife() const;
  13. result_type const & mean() const;
  14. result_type const & error() const;
  15. bool has_variance() const;
  16. result_type const & variance() const;
  17. bool has_tau() const;
  18. time_type const & tau() const;
  19. covariance_type covariance(mcdata< T > const & obs) const;
  20. covariance_type accurate_covariance(mcdata< T > const & obs) const;
  21. void set_bin_size(uint64_t binsize);
  22. void set_bin_number(uint64_t bin_number);
  23. void discard_bins(size_type keep_bins = 0);
  24. void output(std::ostream & out) const;
  25. void save(hdf5::archive & ar) const;
  26. void load(hdf5::archive & ar);
  27. void save(std::string const & filename, std::string const & path) const;
  28. void load(std::string const & filename, std::string const & path);
  29. void merge(mcdata< T > const & rhs);
  30. mcdata< T > & operator<<(mcdata< T > const & rhs);
  31. template<typename S> element_type slice(S s) const;
  32. template<typename X> bool operator==(mcdata< X > const & rhs) const;
  33. template<typename X> 
      bool operator==(mcdata< std::vector< X > > const & rhs) const;
  34. template<typename X> bool operator!=(mcdata< X > const & rhs) const;
  35. mcdata< T > & operator+=(mcdata< T > const & rhs);
  36. mcdata< T > & operator-=(mcdata< T > const & rhs);
  37. template<typename X> mcdata< T > & operator*=(mcdata< X > const & rhs);
  38. template<typename X> mcdata< T > & operator/=(mcdata< X > const & rhs);
  39. template<typename X> mcdata< T > & operator+=(X const & rhs);
  40. template<typename X> mcdata< T > & operator-=(X const & rhs);
  41. template<typename X> mcdata< T > & operator*=(X const & rhs);
  42. template<typename X> mcdata< T > & operator/=(X const & rhs);
  43. mcdata< T > & operator+();
  44. mcdata< T > & operator-();
  45. template<typename X> void subtract_from(X const & x);
  46. template<typename X> void divide(X const & x);
  47. template<typename OP> 
      void transform_linear(OP op, value_type const & error, 
                            boost::optional< result_type > variance_opt = boost::none);
  48. template<typename OP> 
      void transform(OP op, value_type const & error, 
                     boost::optional< result_type > variance_opt = boost::none);
  49. template<typename X, typename OP> 
      void transform(mcdata< X > const & rhs, OP op, value_type const & error, 
                     boost::optional< result_type > variance_opt = boost::none);

mcdata private member functions

  1. T const & replace_valarray_by_vector(T const & value);
  2. template<typename X> 
      std::vector< X > 
      replace_valarray_by_vector(std::valarray< X > const & value);
  3. void collect_bins(uint64_t howmany);
  4. void fill_jack() const;
  5. void analyze() const;
  6. template<typename Archive> 
      void serialize(Archive & ar, const unsigned int version);
Copyright © 1994, 2002-2004, 2012 Matthias Troyer, Synge Todo, Maximilian Poprawe

PrevUpHomeNext