Maybe a DataSet.props bug for ALPS MPS Project
Dear all, I found an interesting wrong var assignment in ALPS MPS Project version: MAQUIS repo r4143 (2013-2014). It appears both on OSX bmg package version and builds from source code version on Linux. You can use the following simple script to reappear the problem: ******************************************************** # # Author: Rongyang Sun <sun-rongyang@outlook.com> # Date: 2017-12-13 11:59 # Last Modified Date: 2017-12-13 11:59 # Last Modified By: Rongyang Sun <sun-rongyang@outlook.com> # # Description: A demo to show the interesting bug # import pyalps #prepare the input parameters parms = [ { 'LATTICE' : "open chain lattice", 'MODEL' : "spin", 'CONSERVED_QUANTUMNUMBERS' : 'N,Sz', 'Sz_total' : 0, 'J' : 1, 'spin' : 1, 'SWEEPS' : 4, 'NUMBER_EIGENVALUES' : 1, 'L' : 10, 'MAXSTATES' : 100 } ] input_file = pyalps.writeInputFiles('bug',parms) res = pyalps.runApplication('mps_optim',input_file,writexml=True) data = pyalps.loadEigenstateMeasurements(pyalps.getResultFiles(prefix='bug'),verbose=True) print("\nMODEL: {0}".format(str(data[0][0].props['MODEL']))) ******************************************************** It will return "MODEL: 1" not the right "MODEL" parameter because I define an unused parameter 'spin' with value 1. Once a parameter with a name which appears at the value of 'MODEL', it will be replaced by the value of the parameter. It is more severe for 't-J' model case. if you set 't': 1.0 and 'J': 0.5, 'MODEL' will be assigned as 0.5 which equals 1.0('t') - 0.5('J')! I have checked the output hdf5 file and found that the wrong replace had happened in the file. That means it may be a bug about ALPS MPS code. Best regards, Rongyang Sun
Hello, Thanks for reporting this behavior. We started investigating it a bit and it doesn’t seem to be related to the MPS applications, but to the ALPS Parameters class. Attached is a small test. Just running "h5dump test.h5” shows the buggy output. -- Michele
On 13 Dec 2017, at 10:02, Rongyang Sun <sun-rongyang@outlook.com> wrote:
Dear all,
I found an interesting wrong var assignment in ALPS MPS Project version: MAQUIS repo r4143 (2013-2014). It appears both on OSX bmg package version and builds from source code version on Linux. You can use the following simple script to reappear the problem:
******************************************************** # # Author: Rongyang Sun <sun-rongyang@outlook.com <mailto:sun-rongyang@outlook.com>> # Date: 2017-12-13 11:59 # Last Modified Date: 2017-12-13 11:59 # Last Modified By: Rongyang Sun <sun-rongyang@outlook.com <mailto:sun-rongyang@outlook.com>> # # Description: A demo to show the interesting bug #
import pyalps
#prepare the input parameters parms = [ { 'LATTICE' : "open chain lattice", 'MODEL' : "spin", 'CONSERVED_QUANTUMNUMBERS' : 'N,Sz', 'Sz_total' : 0, 'J' : 1, 'spin' : 1, 'SWEEPS' : 4, 'NUMBER_EIGENVALUES' : 1, 'L' : 10, 'MAXSTATES' : 100 } ]
input_file = pyalps.writeInputFiles('bug',parms) res = pyalps.runApplication('mps_optim',input_file,writexml=True) data = pyalps.loadEigenstateMeasurements(pyalps.getResultFiles(prefix='bug'),verbose=True)
print("\nMODEL: {0}".format(str(data[0][0].props['MODEL'])))
********************************************************
It will return "MODEL: 1" not the right "MODEL" parameter because I define an unused parameter 'spin' with value 1. Once a parameter with a name which appears at the value of 'MODEL', it will be replaced by the value of the parameter. It is more severe for 't-J' model case. if you set 't': 1.0 and 'J': 0.5, 'MODEL' will be assigned as 0.5 which equals 1.0('t') - 0.5('J')! I have checked the output hdf5 file and found that the wrong replace had happened in the file. That means it may be a bug about ALPS MPS code.
Best regards, Rongyang Sun
---- Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/ <http://alps.comp-phys.org/>
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users <https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users> Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users <https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users>
Unsubscribe by writing a mail to comp-phys-alps-users-leave@lists.phys.ethz.ch <mailto:comp-phys-alps-users-leave@lists.phys.ethz.ch>.
participants (2)
-
Michele Dolfi
-
Rongyang Sun