Error when searching for excited states with MPS code
I was using MPS code in ALPS to calculate exited states of the fermion Hubbard model when there throwed an error -------------------------------------------------------------------------------------------- Sweep 0, optimizing sites 19 and 20 Input <MPS|O[0]> : 0 Output <MPS|O[0]> : -nan JCD used 8 iterations. Time elapsed in JCD: 0.19799719 MPS overlap: 0 Energy 1 2.341151156e-310 Exception thrown: Error in SVD! -------------------------------------------------------------------------------------------------- This error vanished when the "total number" was less than 10 or great than 20 (or around) or the 'MAXSTATES' is greater than about 80. In the attachment I deliver my python script. -------------------------------------------------------------------------------------------------------------- import pyalps import numpy as np parms=[] for L in [40]: for P in [12]: # for P in [55,56,57,58,59,60,61,62]: parms.append({ 'LATTICE' : "open chain lattice", 'L' : L, 'MODEL' : "fermion Hubbard", 'CONSERVED_QUANTUMNUMBERS' : 'Nup,Ndown', 'Nup_total' : P, 'Ndown_total' : P, 'mu' : 0.0, 't' : 1.0, 'U' : 0.0, 'SWEEPS' : 4, 'MAXSTATES' : 50, 'NUMBER_EIGENVALUES' : 2, 'storagedir' : 'storage', }) #write the input file and run the simulation input_file = pyalps.writeInputFiles('parm_tsc',parms) res = pyalps.runApplication('mps_optim',input_file,writexml=True) -------------------------------------------------------------------------------------------------------------------- -- -------苏威-------
Dear Wei, I think I found the bug. It is fixed in the latest /trunk version. Be aware that I’m not 100% of the workaround, I’m currently checking it with my collaborators.. But it seems to work. Best, Michele -- ETH Zurich Michele Dolfi Institute for Theoretical Physics HIT G 32.4 Wolfgang-Pauli-Str. 27 8093 Zurich Switzerland dolfim@phys.ethz.ch www.itp.phys.ethz.ch +41 44 633 78 56 phone +41 44 633 11 15 fax
On Jul 6, 2015, at 3:20 PM, Wei.Su <xichuang_s@163.com> wrote:
I was using MPS code in ALPS to calculate exited states of the fermion Hubbard model when there throwed an error -------------------------------------------------------------------------------------------- Sweep 0, optimizing sites 19 and 20 Input <MPS|O[0]> : 0 Output <MPS|O[0]> : -nan JCD used 8 iterations. Time elapsed in JCD: 0.19799719 MPS overlap: 0 Energy 1 2.341151156e-310 Exception thrown: Error in SVD! -------------------------------------------------------------------------------------------------- This error vanished when the "total number" was less than 10 or great than 20 (or around) or the 'MAXSTATES' is greater than about 80.
In the attachment I deliver my python script.
-------------------------------------------------------------------------------------------------------------- import pyalps import numpy as np
parms=[] for L in [40]: for P in [12]: # for P in [55,56,57,58,59,60,61,62]: parms.append({ 'LATTICE' : "open chain lattice", 'L' : L, 'MODEL' : "fermion Hubbard", 'CONSERVED_QUANTUMNUMBERS' : 'Nup,Ndown', 'Nup_total' : P, 'Ndown_total' : P, 'mu' : 0.0, 't' : 1.0, 'U' : 0.0, 'SWEEPS' : 4, 'MAXSTATES' : 50, 'NUMBER_EIGENVALUES' : 2, 'storagedir' : 'storage', })
#write the input file and run the simulation input_file = pyalps.writeInputFiles('parm_tsc',parms) res = pyalps.runApplication('mps_optim',input_file,writexml=True)
--------------------------------------------------------------------------------------------------------------------
-- -------苏威-------
<fermionhubbard.py>
participants (2)
-
Michele Dolfi
-
Wei.Su