On Jun 26, 2015, at 6:46 AM, Chun Chen <chen2698@umn.edu> wrote:Chun ChenWith Best Regards,Thanks again for your patience and great help. Have a nice weekend. See you next time in the mailing list.2. In your supplemental "Kitaev.py" code and the "tsc.xml" file, why the value of operator "P" gets changed by "+1" for annihilation operator "c", while the value of "P" gets reduced by "-1" for creation operator "c^{\dagger}"? It seems to me that under Z2 symmetry, the operator "P" is just the number operator for the spinless fermions.1. Would it be possible to impose two symmetries in one code (namely in one parameter file, could I define one conserved quantum number which obeying NU1 symmetry, while at the same time define another differing conserved quantum number which satisfying the Z2 symmetry)?When I look into the code for Kitaev model, I notice two questions:Hi Michele:Sorry, I really should post my question onto the mailing list. It is just convenient to send an email. I promise that I will post my questions into the mailing list in the future.Thanks very much for your prompt reply. Yes, it would be very useful if you could describe in some detail how to enable and how to use these symmetries somewhere else.Many thanks for your instruction. It is the semicolon... Now, It works!!!On Wed, Jun 24, 2015 at 2:58 AM, Michele Dolfi <dolfim@phys.ethz.ch> wrote:Hi Chun,Let me reply to the mailing list such that others might also profit form it.Basically you were very close, in CMake you can set a list of entries by separating them with a semicolon.DMRG_BUILD_SYMMETRIES:STRING="NU1;Z2"Note that the option can also be changed with the ccmake gui instead of tuning the CMakeCache file.Best regards,Michele--ETH ZurichMichele DolfiInstitute for Theoretical PhysicsHIT G 32.4Wolfgang-Pauli-Str. 278093 ZurichSwitzerland+41 44 633 78 56 phone+41 44 633 11 15 fax
On Jun 24, 2015, at 7:07 AM, Chun Chen <chen2698@umn.edu> wrote:Chun ChenBest,Thanks very much for your suggestions. Have a good day.My question is how to keep both the Z2 and the NU1 symmetries during the installation?However, once I successfully install the ALPS_MPS, I find that even though I can successfully employ the Z2 symmetry, the original NU1 symmetry gets disabled.I tried to implement your instruction by doing the following steps (I have gotten the latest version of ALPS package by executing $ svn co https://alps.comp-phys.org/svn/alps1/trunk/alps):However, I can only find the brief description on how to enable the Z2 symmetry. In the Appendix of your paper, you mentioned that the Z2 symmetry can be enabled at compile-time using the CMake option DMRG_BUILD_SYMMETRIES.Dear Michele:I am studying the supplemental codes of Kitaev model in your recent paper "Matrix product state applications for the ALPS project".
1. First I finish the steps up to "# Compile and install":
# Configuration
$ cd build
$ cmake ../alps
2. Then I cd into the file "build";
Find and open "CMakeCache.txt";
Find the following CMake option:
//List of symmetry to include in the build objects. U1, TwoU1,
// NU1, Z2 and NONE are currently available.
DMRG_BUILD_SYMMETRIES:STRING=NU1
3. Change it to the following:
//List of symmetry to include in the build objects. U1, TwoU1,
// NU1, Z2 and NONE are currently available.
DMRG_BUILD_SYMMETRIES:STRING=NU1
DMRG_BUILD_SYMMETRIES:STRING=Z2
Then save the "CMakeCache.txt" file.
4. Next I go ahead to finish the "# Compile and install" by executing the following:
# Compile and install
$ make # -j 4 for compilation in parallel using 4 processes
$ sudo make install
Also, would it be possible to give some more details on how to enable various existing symmetries?