ALPS Home Libraries License Support People ALPS Web Site

PrevUpHomeNext

Class template coordinate_lattice

alps::coordinate_lattice

Synopsis

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

template<typename BASE = simple_lattice<>, 
         typename Vector = std::vector<double> > 
class coordinate_lattice : public BASE {
public:
  // types
  typedef BASE                                                   parent_lattice_type;  
  typedef lattice_traits< parent_lattice_type >::unit_cell_type  unit_cell_type;       
  typedef lattice_traits< parent_lattice_type >::offset_type     offset_type;          
  typedef lattice_traits< parent_lattice_type >::cell_descriptor cell_descriptor;      
  typedef Vector                                                 vector_type;          
  typedef std::vector< vector_type >::const_iterator             basis_vector_iterator;

  // construct/copy/destruct
  coordinate_lattice();
  template<typename B2, typename V2> 
    coordinate_lattice(const coordinate_lattice< B2, V2 > &);
  template<typename InputIterator> 
    coordinate_lattice(const unit_cell_type &, InputIterator, InputIterator);
  template<typename InputIterator1, typename InputIterator2> 
    coordinate_lattice(const unit_cell_type &, InputIterator1, InputIterator1, 
                       InputIterator2, InputIterator2);
  coordinate_lattice(const unit_cell_type &);
  template<typename B2, typename V2> 
    const coordinate_lattice & operator=(const coordinate_lattice< B2, V2 > &);

  // public member functions
  void set_parameters(const Parameters &);
  void add_basis_vector(const vector_type &);
  std::size_t num_basis_vectors() const;
  std::pair< basis_vector_iterator, basis_vector_iterator > 
  basis_vectors() const;
  void add_reciprocal_basis_vector(const vector_type &);
  std::size_t num_reciprocal_basis_vectors() const;
  std::pair< basis_vector_iterator, basis_vector_iterator > 
  reciprocal_basis_vectors() const;
};

Description

coordinate_lattice public construct/copy/destruct

  1. coordinate_lattice();
  2. template<typename B2, typename V2> 
      coordinate_lattice(const coordinate_lattice< B2, V2 > & l);
  3. template<typename InputIterator> 
      coordinate_lattice(const unit_cell_type & u, InputIterator first, 
                         InputIterator last);
  4. template<typename InputIterator1, typename InputIterator2> 
      coordinate_lattice(const unit_cell_type & u, InputIterator1 first1, 
                         InputIterator1 last1, InputIterator2 first2, 
                         InputIterator2 last2);
  5. coordinate_lattice(const unit_cell_type & u);
  6. template<typename B2, typename V2> 
      const coordinate_lattice & operator=(const coordinate_lattice< B2, V2 > & l);

coordinate_lattice public member functions

  1. void set_parameters(const Parameters & p);
  2. void add_basis_vector(const vector_type & v);
  3. std::size_t num_basis_vectors() const;
  4. std::pair< basis_vector_iterator, basis_vector_iterator > 
    basis_vectors() const;
  5. void add_reciprocal_basis_vector(const vector_type & v);
  6. std::size_t num_reciprocal_basis_vectors() const;
  7. std::pair< basis_vector_iterator, basis_vector_iterator > 
    reciprocal_basis_vectors() const;
Copyright © 1994, 2002-2005 Matthias Troyer, Synge Todo

PrevUpHomeNext