Add Lattice graph
Created by: martamau
This pull request adds the Lattice graph. A generic lattice built translating a unit cell. The unit cell can contain an arbitrary number of atoms, located at arbitrary positions. Periodic boundary conditions can also be imposed along the desired directions.
Here is an example usage to construct a rectangular 3X4 lattice with periodic boundaries
>>> from netket.graph import Lattice
>>> g=Lattice(basis_vectors=[[1,0],[0,1]],extent=[3,4])
>>> print(g.n_sites)
12