Hi all,
It try to use customs lattices with looper but it seems to crash. I use
an easy one to start , a simple closed chain with 16 spins. The
calculation work with dirlooper_sse (but take a long time and have very
few options) but using "loop" algorithm it crash immediately
here is the lattice :
<LATTICES>
<GRAPH name = "chain lattice 16" dimension="1" vertices="16" edges="16">
<EDGE source="1" target="2" id="1" type="0" />
<EDGE source="2" target="3" id="2" type="0" />
<EDGE source="3" target="4" id="3" type="0" />
<EDGE source="4" target="5" id="4" type="0" />
<EDGE source="5" target="6" id="5" type="0" />
<EDGE source="6" target="7" id="6" type="0" />
<EDGE source="7" target="8" id="7" type="0" />
<EDGE source="8" target="9" id="8" type="0" />
<EDGE source="9" target="10" id="9" type="0" />
<EDGE source="10" target="11" id="10" type="0" />
<EDGE source="11" target="12" id="11" type="0" />
<EDGE source="12" target="13" id="12" type="0" />
<EDGE source="13" target="14" id="13" type="0" />
<EDGE source="14" target="15" id="14" type="0" />
<EDGE source="15" target="16" id="15" type="0" />
<EDGE source="16" target="1" id="16" type="0" />
</GRAPH>
</LATTICES>
here is the python script :
------------------------------------------------------
#! /usr/bin/python
import pyalps
import matplotlib.pyplot as plt
import pyalps.plot
#prepare the input parameters
parms = []
for t in [0.05, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.25,
1.5, 1.75, 2.0]:
parms.append(
{'LATTICE_LIBRARY' : 'my_lattice.xml',
'LATTICE' : chain lattice 16',
'MODEL' : 'spin',
'local_S0' : '.5',
'T' : t,
'J0' : 1 ,
'THERMALIZATION' : 5000,
'SWEEPS' : 50000,
'ALGORITHM' : "loop"
}
)
#write the input file and run the simulation
input_file = pyalps.writeInputFiles('parmcustom',parms)
pyalps.runApplication('loop',input_file)
#load the susceptibility and collect it as function of temperature T
data =
pyalps.loadMeasurements(pyalps.getResultFiles(prefix='parmcustom'),'Susceptibility')
susceptibility = pyalps.collectXY(data,x='T',y='Susceptibility')
#make plot
plt.figure()
pyalps.plot.plot(susceptibility)
plt.xlabel('Temperature $T/J$')
plt.ylabel('Susceptibility $\chi J$')
plt.ylim(0,0.22)
plt.title('Quantum Heisenberg chain')
plt.show()
-----------------------------------
I hope someone can help me
with regards
--
Sylvain Bertaina
Chargé de recherche
IM2NP - UMR 7334 CNRS
Faculté des Sciences et Techniques
Avenue Escadrille Normandie Niemen - Case 162 -
13397 Marseille Cedex 20 (France)
Tel: +33 (0) 4 91 28 27 66
Fax: +33 (0) 4 91 28 87 75