The reason is probably that your lattice is translation invariant - then only average quantities and not local ones are computed, since all local quantities would be the same.
Matthias
On 21 Jun 2010, at 08:33, jun wen wrote:
Hello All,
I was trying to compute the local <S> in the Kitaev model defined on the honeycomb lattice with Exact Diagnolization Here is my parameter file:
MODEL="kitaev"; LATTICE="honeycomb lattice";
LATTICE_LIBRARY="../../../definitions/kitaev/lattices.xml"; MODEL_LIBRARY="../../../definitions/kitaev/models.xml";
MEASURE_LOCAL[Local Sz]=Sz; MEASURE_LOCAL[Local Sx]=Sx; MEASURE_LOCAL[Local Sy]=Sy;
local_S=1/2; L=2; W=2; J=1;
However, in the output xml file, there are no such terms as the Local Sz or Local Splux or Local Sminus. I wonder if anyone could kindly point out what is the problem. The Kitaev model is defined in the following models.xml Thanks a lot!
<MODELS> <SITEBASIS name="spin"> <PARAMETER name="local_spin" default="local_S"/> <PARAMETER name="local_S" default="1/2"/> <QUANTUMNUMBER name="S" min="local_spin" max="local_spin"/> <QUANTUMNUMBER name="Sz" min="-S" max="S"/> <OPERATOR name="Splus" matrixelement="sqrt(S*(S+1)-Sz*(Sz+1))"> <CHANGE quantumnumber="Sz" change="1"/> </OPERATOR> <OPERATOR name="Sminus" matrixelement="sqrt(S*(S+1)-Sz*(Sz-1))"> <CHANGE quantumnumber="Sz" change="-1"/> </OPERATOR> <OPERATOR name="Sz" matrixelement="Sz"/> </SITEBASIS>
<SITEOPERATOR name="Sx" site="x"> 1/2*(Splus(x)+Sminus(x)) </SITEOPERATOR>
<SITEOPERATOR name="Sy" site="x"> 1/2/I*(Splus(x)-Sminus(x)) </SITEOPERATOR>
<BASIS name="spin"> <SITEBASIS ref="spin"/> </BASIS>
<HAMILTONIAN name="kitaev">
<PARAMETER name="J1" default="1"/> <PARAMETER name="Jz" default="J1"/> <PARAMETER name="Jx" default="J1"/> <PARAMETER name="Jy" default="J1"/>
<BASIS ref="spin"/>
<BONDTERM type="0" source="i" target="j"> Jz*Sz(i)*Sz(j) </BONDTERM>
<BONDTERM type="1" source="i" target="j"> Jx*Sx(i)*Sx(j)
</BONDTERM>
<BONDTERM type="2" source="i" target="j"> Jy*Sy(i)*Sy(j)
</BONDTERM> </HAMILTONIAN>
</MODELS>
Jun