New release: v0.7.1.

## Define spin-1 Boson site

How do I use this algorithm? What does that parameter do?
steven_tao
Posts: 12
Joined: 11 Mar 2020, 01:07

### Define spin-1 Boson site

Dear Community,

How we can define the spin-1 Boson site for the following Hamiltonian:

$$H = - t \sum_{i, \sigma} \left(b^\dagger_{i, \sigma} b_{i+1, \sigma} + H.c. \right) + U_1 \sum_i n_{i, \sigma}\left(n_{i, \sigma}-1\right) + U_2 \sum_i \mathbf{S}_i^2$$

where spin operator $$\mathbf{S}_i = \sum_{\sigma,\sigma'} b^\dagger_{\sigma,\sigma'} S_{\sigma,\sigma'} b_{\sigma,\sigma'}$$, with standard spin-1 matrice $$S_{\sigma,\sigma'}$$.

Is it right like this?

Code: Select all

        # Set site
boson_site_1 = BosonSite(Nmax=n_max, conserve='N')      # spin component 1
boson_site_2 = BosonSite(Nmax=n_max, conserve='N')      #  spin component 0
boson_site_3 = BosonSite(Nmax=n_max, conserve='N')      #  spin component -1

# Set lattice
lat = Lattice([L], [boson_site_1, boson_site_2, boson_site_3], bc=bc, bc_MPS=bc_MPS)

# Add terms of the Hamiltonian
self.add_coupling(-t,2,'Bd',2,'B',1)   

How to define spin operators and add Last term when adding terms of the Hamiltonian?
Johannes
Posts: 188
Joined: 21 Jul 2018, 12:52
Location: UC Berkeley

### Re: Define spin-1 Boson site

steven_tao wrote: 02 Apr 2020, 01:10 where spin operator $$\mathbf{S}_i = \sum_{\sigma,\sigma'} b^\dagger_{\sigma,\sigma'} S_{\sigma,\sigma'} b_{\sigma,\sigma'}$$, with standard spin-1 matrice $$S_{\sigma,\sigma'}$$.
I guess you meant the usual definiton
$$S^\alpha_i = \sum_{\sigma,\sigma'} (b^\alpha_{i,\sigma})^\dagger S^\alpha_{\sigma,\sigma'} b_{i, \sigma'}$$, with $$\alpha = x,y,z$$.

Given that, you can evaluate what $$\mathbf{S}_i^2 \equiv S^x_i S^x_i + S^y_i S^y_i +S^z_i S^z_i$$ evaluates to in terms of boson-operators: basically a sum of 4-body terms with prefactors.
You can even try to evaluate that numerically, but I would highly recommend to at least very carfully check the results
The drawback: in particular if you want to use n_max > 2, this will quickly result in very large local dimensions, and make DMRG very costly.
Overall, I'd recommend the first approach: evaluate $$\mathbf{S}_i^2$$ and use the MultiCouplingModel.