ALPS Home Libraries License Support People ALPS Web Site

PrevUpHomeNext

Class GraphUnitCell

alps::GraphUnitCell

Synopsis

// In header: <alps/lattice/unitcell.h>


class GraphUnitCell {
public:
  // types
  typedef std::vector< int >                                                                                                                                                                                                                                                                                                                                                 offset_type;    
  typedef ::alps::coordinate_type                                                                                                                                                                                                                                                                                                                                            coordinate_type;
  typedef boost::adjacency_list< boost::vecS, boost::vecS, boost::directedS, boost::property< coordinate_t, coordinate_type, boost::property< vertex_type_t, type_type > >, boost::property< target_offset_t, offset_type, boost::property< source_offset_t, offset_type, boost::property< edge_type_t, type_type, boost::property< bond_vector_t, coordinate_type > > > > > graph_type;     

  // construct/copy/destruct
  GraphUnitCell();
  GraphUnitCell(const EmptyUnitCell &);
  GraphUnitCell(const XMLTag &, std::istream &);
  GraphUnitCell(const std::string &, std::size_t);
  GraphUnitCell& operator=(const EmptyUnitCell &);

  // public member functions
  void write_xml(oxstream &) const;
  graph_type & graph();
  const graph_type & graph() const;
  std::size_t dimension() const;
  const std::string & name() const;
  std::size_t add_vertex(int, const coordinate_type &);
  std::size_t add_edge(int, uint32_t, const offset_type &, uint32_t, 
                       const offset_type &);

  // private member functions
  void update_bond_vectors();
};

Description

GraphUnitCell public construct/copy/destruct

  1. GraphUnitCell();
  2. GraphUnitCell(const EmptyUnitCell & e);
  3. GraphUnitCell(const XMLTag &, std::istream &);
  4. GraphUnitCell(const std::string & name, std::size_t dim);
  5. GraphUnitCell& operator=(const EmptyUnitCell & e);

GraphUnitCell public member functions

  1. void write_xml(oxstream &) const;
  2. graph_type & graph();
  3. const graph_type & graph() const;
  4. std::size_t dimension() const;
  5. const std::string & name() const;
  6. std::size_t add_vertex(int type, const coordinate_type & coord);
  7. std::size_t add_edge(int type, uint32_t si, const offset_type & so, 
                         uint32_t ti, const offset_type & to);

GraphUnitCell private member functions

  1. void update_bond_vectors();
Copyright © 1994, 2002-2005 Matthias Troyer, Synge Todo

PrevUpHomeNext