ALPS MPS Codes
Reference documentation.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Static Public Member Functions | List of all members
coded_model_factory< Matrix, U1 > Struct Template Reference

#include <factory_u1.hpp>

Static Public Member Functions

static boost::shared_ptr
< model_impl< Matrix, U1 > > 
parse (Lattice const &lattice, BaseParameters &parms)
 

Detailed Description

template<class Matrix>
struct coded_model_factory< Matrix, U1 >

Definition at line 31 of file factory_u1.hpp.

Member Function Documentation

template<class Matrix >
static boost::shared_ptr<model_impl<Matrix, U1> > coded_model_factory< Matrix, U1 >::parse ( Lattice const &  lattice,
BaseParameters parms 
)
inlinestatic

Definition at line 33 of file factory_u1.hpp.

34  {
35  typedef boost::shared_ptr<model_impl<Matrix, U1> > impl_ptr;
36  if (parms["MODEL"] == std::string("heisenberg"))
37  return impl_ptr( new Heisenberg<Matrix>(lattice, parms["Jxy"], parms["Jz"]) );
38  else if (parms["MODEL"] == std::string("HCB"))
39  return impl_ptr( new HCB<Matrix>(lattice) );
40  else if (parms["MODEL"] == std::string("boson Hubbard"))
41  return impl_ptr( new BoseHubbard<Matrix>(lattice, parms) );
42 // else if (parms["MODEL"] == std::string("fermion Hubbard"))
43 // return impl_ptr( new FermiHubbardU1<Matrix>(lattice, parms) );
44  else if (parms["MODEL"] == std::string("FreeFermions"))
45  return impl_ptr( new FreeFermions<Matrix>(lattice, parms["t"]) );
46 // else if (parms["MODEL"] == std::string("bela_chiral"))
47 // return impl_ptr( new Chiral<Matrix>(lattice, parms) );
48  else {
49  throw std::runtime_error("Don't know this model!");
50  return impl_ptr();
51  }
52  }

The documentation for this struct was generated from the following file: