ALPS Home Libraries License Support People ALPS Web Site

PrevUpHomeNext

Class template lattice_graph

alps::lattice_graph

Synopsis

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

template<typename LATTICE, typename GRAPH> 
class lattice_graph {
public:
  // types
  typedef LATTICE                                              super_type;            
  typedef LATTICE                                              base_type;             
  typedef lattice_traits< base_type >::unit_cell_type          unit_cell_type;        
  typedef lattice_traits< base_type >::offset_type             offset_type;           
  typedef lattice_traits< base_type >::extent_type             extent_type;           
  typedef lattice_traits< base_type >::vector_type             vector_type;           
  typedef lattice_traits< base_type >::basis_vector_iterator   basis_vector_iterator; 
  typedef lattice_traits< base_type >::cell_iterator           cell_iterator;         
  typedef lattice_traits< base_type >::boundary_crossing_type  boundary_crossing_type;
  typedef lattice_traits< base_type >::size_type               size_type;             
  typedef GRAPH                                                graph_type;            
  typedef boost::graph_traits< graph_type >::vertex_iterator   vertex_iterator;       
  typedef boost::graph_traits< graph_type >::vertex_descriptor vertex_descriptor;     
  typedef boost::graph_traits< graph_type >::edge_iterator     edge_iterator;         

  // construct/copy/destruct
  lattice_graph();
  template<typename L2> lattice_graph(const L2 &);

  // public member functions
  const graph_type & graph() const;
  graph_type & graph();
  template<typename H> H::graph_type & graph(H &) const;
  template<typename H> const H::graph_type & graph(const H &) const;
  std::vector< std::string > distance_labels(int = 0) const;
  std::vector< unsigned int > distance_multiplicities() const;
  size_type num_distances() const;
  size_type distance(vertex_descriptor, vertex_descriptor) const;
  std::vector< std::pair< std::complex< double >, std::vector< std::size_t > > > 
  translations(const vector_type &) const;
};

Description

lattice_graph public construct/copy/destruct

  1. lattice_graph();
  2. template<typename L2> lattice_graph(const L2 &);

lattice_graph public member functions

  1. const graph_type & graph() const;
  2. graph_type & graph();
  3. template<typename H> H::graph_type & graph(H & g) const;
  4. template<typename H> const H::graph_type & graph(const H & g) const;
  5. std::vector< std::string > distance_labels(int precision = 0) const;
  6. std::vector< unsigned int > distance_multiplicities() const;
  7. size_type num_distances() const;
  8. size_type distance(vertex_descriptor x, vertex_descriptor y) const;
  9. std::vector< std::pair< std::complex< double >, std::vector< std::size_t > > > 
    translations(const vector_type & k) const;
Copyright © 1994, 2002-2005 Matthias Troyer, Synge Todo

PrevUpHomeNext