From 42cd9b68335bf0f7df1b5a936ee7c4bb790ca9c9 Mon Sep 17 00:00:00 2001 From: Yuichi Motoyama Date: Wed, 27 Dec 2023 10:10:44 +0900 Subject: [PATCH] fix shrink chi with RSVD --- src/iTPS/core/ctm.cpp | 4 +- test/CMakeLists.txt | 1 + test/data/RSVD.toml | 316 +++++++++++++++++++ test/data/output_RSVD/RSVD.toml | 316 +++++++++++++++++++ test/data/output_RSVD/correlation.dat | 61 ++++ test/data/output_RSVD/correlation_length.dat | 11 + test/data/output_RSVD/density.dat | 8 + test/data/output_RSVD/onesite_obs.dat | 27 ++ test/data/output_RSVD/parameters.dat | 39 +++ test/data/output_RSVD/time.dat | 5 + test/data/output_RSVD/twosite_obs.dat | 54 ++++ 11 files changed, 840 insertions(+), 2 deletions(-) create mode 100644 test/data/RSVD.toml create mode 100644 test/data/output_RSVD/RSVD.toml create mode 100644 test/data/output_RSVD/correlation.dat create mode 100644 test/data/output_RSVD/correlation_length.dat create mode 100644 test/data/output_RSVD/density.dat create mode 100644 test/data/output_RSVD/onesite_obs.dat create mode 100644 test/data/output_RSVD/parameters.dat create mode 100644 test/data/output_RSVD/time.dat create mode 100644 test/data/output_RSVD/twosite_obs.dat diff --git a/src/iTPS/core/ctm.cpp b/src/iTPS/core/ctm.cpp index c5602313..58f249d0 100644 --- a/src/iTPS/core/ctm.cpp +++ b/src/iTPS/core/ctm.cpp @@ -433,8 +433,8 @@ void Calc_projector_updown_blocks( tensor U_c = mptensor::slice(U, 3, 0, cut); tensor VT_c = mptensor::slice(VT, 0, 0, cut); - U_c.multiply_vector(s, 3); - VT_c.multiply_vector(s, 0); + U_c.multiply_vector(s_c, 3); + VT_c.multiply_vector(s_c, 0); PU = tensordot(LB, tensordot(RB, conj(VT_c), Axes(1, 3, 5), Axes(1, 2, 3)), Axes(1, 3, 5), Axes(0, 1, 2)) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index e8a564dd..c4d26b6f 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -40,6 +40,7 @@ foreach( AntiferroHeisenberg_real AntiferroHeisenberg_complex AntiferroHeisenberg_mf + RSVD J1J2_AFH Honeycomb Honeycomb_skew diff --git a/test/data/RSVD.toml b/test/data/RSVD.toml new file mode 100644 index 00000000..c141467a --- /dev/null +++ b/test/data/RSVD.toml @@ -0,0 +1,316 @@ +[parameter] +[parameter.general] +is_real = false +output = 'output_RSVD' +[parameter.simple_update] +tau = 0.01 +num_step = 100 +[parameter.full_update] +tau = 0.01 +num_step = 1 +[parameter.ctm] +dimension = 5 +use_rsvd = true +projector_corner = false + +[tensor] +L_sub = [2, 2] +skew = 0 +[[tensor.unitcell]] +index = [] +physical_dim = 2 +virtual_dim = [2, 2, 2, 2] +initial_state = [0.0] +noise = 0.01 + +[correlation] +r_max = 3 +operators = [[0,0], [0,1]] + +[observable] +[[observable.onesite]] +name = "Sz" +group = 0 +sites = [] +dim = 2 +elements = """ +0 0 0.5 0.0 +1 1 -0.5 0.0 +""" +[[observable.onesite]] +name = "Sx" +group = 1 +sites = [] +dim = 2 +elements = """ +1 0 0.5 0.0 +0 1 0.5 0.0 +""" +[[observable.onesite]] +name = "Sy" +group = 2 +sites = [] +dim = 2 +elements = """ +1 0 0.0 0.5 +0 1 -0.0 -0.5 +""" + +[[observable.twosite]] +name = "bond_hamiltonian" +group = 0 +bonds = """ +0 1 0 +1 1 0 +2 1 0 +3 1 0 +0 0 1 +1 0 1 +2 0 1 +3 0 1 +""" +dim = [2, 2] +elements = """ +0 0 0 0 0.25 0.0 +1 0 1 0 -0.25 0.0 +0 1 1 0 0.5 0.0 +1 0 0 1 0.5 0.0 +0 1 0 1 -0.25 0.0 +1 1 1 1 0.25 0.0 +""" +[[observable.twosite]] +name = "SzSz" +group = 1 +bonds = """ +0 1 0 +1 1 0 +2 1 0 +3 1 0 +0 0 1 +1 0 1 +2 0 1 +3 0 1 +""" +ops = [0, 0] +[[observable.twosite]] +name = "SxSx" +group = 2 +bonds = """ +0 1 0 +1 1 0 +2 1 0 +3 1 0 +0 0 1 +1 0 1 +2 0 1 +3 0 1 +""" +ops = [1, 1] +[[observable.twosite]] +name = "SySy" +group = 3 +bonds = """ +0 1 0 +1 1 0 +2 1 0 +3 1 0 +0 0 1 +1 0 1 +2 0 1 +3 0 1 +""" +ops = [2, 2] + +[evolution] +[[evolution.simple]] +source_site = 0 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 1 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 2 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 3 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 0 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 1 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 2 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 3 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 0 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 1 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 2 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 3 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 0 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 1 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 2 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 3 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" diff --git a/test/data/output_RSVD/RSVD.toml b/test/data/output_RSVD/RSVD.toml new file mode 100644 index 00000000..c141467a --- /dev/null +++ b/test/data/output_RSVD/RSVD.toml @@ -0,0 +1,316 @@ +[parameter] +[parameter.general] +is_real = false +output = 'output_RSVD' +[parameter.simple_update] +tau = 0.01 +num_step = 100 +[parameter.full_update] +tau = 0.01 +num_step = 1 +[parameter.ctm] +dimension = 5 +use_rsvd = true +projector_corner = false + +[tensor] +L_sub = [2, 2] +skew = 0 +[[tensor.unitcell]] +index = [] +physical_dim = 2 +virtual_dim = [2, 2, 2, 2] +initial_state = [0.0] +noise = 0.01 + +[correlation] +r_max = 3 +operators = [[0,0], [0,1]] + +[observable] +[[observable.onesite]] +name = "Sz" +group = 0 +sites = [] +dim = 2 +elements = """ +0 0 0.5 0.0 +1 1 -0.5 0.0 +""" +[[observable.onesite]] +name = "Sx" +group = 1 +sites = [] +dim = 2 +elements = """ +1 0 0.5 0.0 +0 1 0.5 0.0 +""" +[[observable.onesite]] +name = "Sy" +group = 2 +sites = [] +dim = 2 +elements = """ +1 0 0.0 0.5 +0 1 -0.0 -0.5 +""" + +[[observable.twosite]] +name = "bond_hamiltonian" +group = 0 +bonds = """ +0 1 0 +1 1 0 +2 1 0 +3 1 0 +0 0 1 +1 0 1 +2 0 1 +3 0 1 +""" +dim = [2, 2] +elements = """ +0 0 0 0 0.25 0.0 +1 0 1 0 -0.25 0.0 +0 1 1 0 0.5 0.0 +1 0 0 1 0.5 0.0 +0 1 0 1 -0.25 0.0 +1 1 1 1 0.25 0.0 +""" +[[observable.twosite]] +name = "SzSz" +group = 1 +bonds = """ +0 1 0 +1 1 0 +2 1 0 +3 1 0 +0 0 1 +1 0 1 +2 0 1 +3 0 1 +""" +ops = [0, 0] +[[observable.twosite]] +name = "SxSx" +group = 2 +bonds = """ +0 1 0 +1 1 0 +2 1 0 +3 1 0 +0 0 1 +1 0 1 +2 0 1 +3 0 1 +""" +ops = [1, 1] +[[observable.twosite]] +name = "SySy" +group = 3 +bonds = """ +0 1 0 +1 1 0 +2 1 0 +3 1 0 +0 0 1 +1 0 1 +2 0 1 +3 0 1 +""" +ops = [2, 2] + +[evolution] +[[evolution.simple]] +source_site = 0 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 1 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 2 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 3 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 0 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 1 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 2 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.simple]] +source_site = 3 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 0 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 1 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 2 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 3 +source_leg = 2 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 0 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 1 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 2 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" +[[evolution.full]] +source_site = 3 +source_leg = 1 +dimensions = [2, 2, 2, 2] +elements = """ +0 0 0 0 0.9975031223974601 0.0 +1 0 1 0 1.0025156589209967 0.0 +0 1 1 0 -0.005012536523536871 0.0 +1 0 0 1 -0.005012536523536871 0.0 +0 1 0 1 1.0025156589209967 0.0 +1 1 1 1 0.9975031223974601 0.0 +""" diff --git a/test/data/output_RSVD/correlation.dat b/test/data/output_RSVD/correlation.dat new file mode 100644 index 00000000..a08128c5 --- /dev/null +++ b/test/data/output_RSVD/correlation.dat @@ -0,0 +1,61 @@ +# The meaning of each column is the following: +# $1: left_op +# $2: left_site +# $3: right_op +# $4: right_dx +# $5: right_dy +# $6: real +# $7: imag +# The names of operators are the following: +# 0: Sz +# 1: Sx +# 2: Sy + +0 0 0 1 0 -7.32392667575661460e-02 2.34151715175363834e-16 +0 0 1 1 0 -1.30337976488469915e-02 -4.12903877156122571e-17 +0 0 0 2 0 1.72554010890249923e-02 7.87672776725466269e-18 +0 0 1 2 0 8.01440081852875484e-03 2.52420400446688458e-17 +0 0 0 3 0 -3.34613032951389328e-03 1.99731312809506843e-16 +0 0 1 3 0 -1.12964449459852945e-02 -5.38639930659119984e-17 +0 0 0 0 1 -5.72781167132934838e-02 -8.53257967299699964e-17 +0 0 1 0 1 -1.65096228197929469e-02 3.34917618366929945e-17 +0 0 0 0 2 1.06230561128399098e-02 -1.54988950593509495e-17 +0 0 1 0 2 7.96569650566540666e-03 -4.28092186541338309e-17 +0 0 0 0 3 -6.17029511091326545e-04 -7.83126807557056929e-18 +0 0 1 0 3 -1.28288045212802838e-02 5.83332509377625523e-17 +0 1 0 1 0 -7.40191966989294514e-02 3.57533802733460507e-17 +0 1 1 1 0 2.13652377618094979e-03 7.58164307486034170e-17 +0 1 0 2 0 1.30302974233575293e-02 -8.28353759233207556e-17 +0 1 1 2 0 4.30765711219797520e-03 -3.38878764283302300e-17 +0 1 0 3 0 -3.37668707522936718e-03 -9.79018140170540698e-18 +0 1 1 3 0 -3.07012810217392046e-03 -9.16071044899100547e-18 +0 1 0 0 1 -6.85246833238848940e-02 1.49985100477003819e-16 +0 1 1 0 1 -8.44530264089174941e-03 6.07941373523806977e-16 +0 1 0 0 2 1.14669766786817499e-02 -2.23970256218983046e-16 +0 1 1 0 2 4.37217364003373264e-03 -2.30359937292517149e-15 +0 1 0 0 3 -1.66281490097187879e-03 6.06197940363295390e-17 +0 1 1 0 3 -4.81693832191851419e-03 2.32452521958320100e-15 +0 2 0 1 0 -7.67421777014239276e-02 -4.78430103714562640e-16 +0 2 1 1 0 6.10763719888219366e-03 -1.35741432862867843e-15 +0 2 0 2 0 1.60143412905684734e-02 -8.72950250843715625e-18 +0 2 1 2 0 -9.84354555446051438e-03 7.69562518507127665e-17 +0 2 0 3 0 -3.69821059323026044e-03 -4.45010806640855690e-16 +0 2 1 3 0 9.99162752449843199e-03 -2.18579124585843271e-16 +0 2 0 0 1 -5.77942520236587598e-02 2.33985288847030765e-17 +0 2 1 0 1 8.76995080534252042e-03 -8.41031130877468739e-18 +0 2 0 0 2 1.01476568145890574e-02 1.67939499066944365e-17 +0 2 1 0 2 -1.08329302530083930e-02 -2.46844629558017654e-17 +0 2 0 0 3 -6.30900275759428307e-04 -2.30568528017434049e-18 +0 2 1 0 3 6.94578257405916496e-03 8.08641239349770075e-18 +0 3 0 1 0 -7.76019781613517812e-02 5.78842559019323707e-17 +0 3 1 1 0 6.21580953859463686e-03 6.31806643935937738e-17 +0 3 0 2 0 1.48172042935909506e-02 3.22224749790128655e-16 +0 3 1 2 0 -6.55289513177373557e-03 2.44312214470257238e-16 +0 3 0 3 0 -3.73048905812711383e-03 1.48929078125834329e-18 +0 3 1 3 0 9.28188667045837593e-03 2.56796339712087483e-17 +0 3 0 0 1 -6.91966672009472900e-02 3.58936263595607697e-16 +0 3 1 0 1 1.03099603613698888e-02 4.99865312227967816e-15 +0 3 0 0 2 1.23288372195748432e-02 7.02256990475590184e-16 +0 3 1 0 2 -6.90499943402277626e-03 -4.91274724391301249e-15 +0 3 0 0 3 -1.68174419670151401e-03 4.78289342237608812e-17 +0 3 1 0 3 8.47058761681369551e-03 5.27119866204667239e-15 diff --git a/test/data/output_RSVD/correlation_length.dat b/test/data/output_RSVD/correlation_length.dat new file mode 100644 index 00000000..a04e694d --- /dev/null +++ b/test/data/output_RSVD/correlation_length.dat @@ -0,0 +1,11 @@ +# The meaning of each column is the following: +# $1: direction 0: +x, 1: +y +# $2: y (dir=0) or x (dir=1) coorinates +# $3: correlation length xi = 1/e_1 +# $4-: eigenvalues e_i = -log|t_i/t_0| +# where i > 0 and t_i is i-th largest eigenvalue of T + +0 0 6.88695039985187107e-01 1.45202149273720438e+00 1.57319977106406683e+00 1.74778134044166000e+00 +0 1 6.88697943894192699e-01 1.45201537025879923e+00 1.57318870616615114e+00 1.74555305749211609e+00 +1 0 6.28667030345474553e-01 1.59066716040519096e+00 1.72559130373946146e+00 1.92673238689337767e+00 +1 1 6.28642454827198383e-01 1.59072934435342983e+00 1.72591461607902041e+00 1.93003133052151088e+00 diff --git a/test/data/output_RSVD/density.dat b/test/data/output_RSVD/density.dat new file mode 100644 index 00000000..49df18ae --- /dev/null +++ b/test/data/output_RSVD/density.dat @@ -0,0 +1,8 @@ +Energy = -6.19586141059654150e-01 0.00000000000000000e+00 +Sz = 6.24769001866300969e-03 -2.25123136949235366e-15 +Sx = -4.01056653321696516e-02 -6.43392851433750621e-16 +Sy = 4.94186616552133445e-02 8.96572849594022667e-17 +bond_hamiltonian = -6.19586141059654150e-01 5.82610064415346294e-16 +SzSz = -1.38599084645263937e-01 1.00053109826491253e-16 +SxSx = -2.78736112442398543e-01 9.41933653637062370e-16 +SySy = -2.02250943971991642e-01 -3.93820917008925646e-16 diff --git a/test/data/output_RSVD/onesite_obs.dat b/test/data/output_RSVD/onesite_obs.dat new file mode 100644 index 00000000..b0de798e --- /dev/null +++ b/test/data/output_RSVD/onesite_obs.dat @@ -0,0 +1,27 @@ +# The meaning of each column is the following: +# $1: op_group +# $2: site_index +# $3: real +# $4: imag +# The names of op_group are the following: +# 0: Sz +# 1: Sx +# 2: Sy +# -1: norm + +0 0 3.22162213461117258e-02 -3.12488859163444006e-16 +0 1 -1.30846898367870650e-02 6.46273259142999373e-15 +0 2 3.05859935940382202e-02 -3.45704268645410390e-17 +0 3 -2.47267650287108405e-02 -1.51205987833714233e-14 +1 0 2.32851779142767668e-01 -2.29317270277540293e-16 +1 1 -3.45291844588865304e-01 9.49404668869739572e-16 +1 2 -3.90945495777472618e-01 -6.51120601263360452e-16 +1 3 3.42962899894891649e-01 -2.64253820306384156e-15 +2 0 3.51988984805857941e-01 1.17062617806571853e-16 +2 1 -2.23025396767385670e-01 -8.39394956063888793e-16 +2 2 -1.47340746036399545e-01 -3.83650342784042602e-16 +2 3 2.16051804618780652e-01 1.46461182087896856e-15 +-1 0 7.32041456206711683e-01 1.88390969491081250e-14 +-1 1 7.34742666926989529e-01 1.92623694772464660e-14 +-1 2 7.39298899745712612e-01 1.89848137210901768e-14 +-1 3 7.21737171467045968e-01 1.88737914186276612e-14 diff --git a/test/data/output_RSVD/parameters.dat b/test/data/output_RSVD/parameters.dat new file mode 100644 index 00000000..abf60d48 --- /dev/null +++ b/test/data/output_RSVD/parameters.dat @@ -0,0 +1,39 @@ +simple_num_step = [100] +simple_tau = [0.01] +simple_inverse_lambda_cutoff = 1e-12 +simple_gauge_fix = 0 +simple_gauge_maxiter = 100 +simple_gauge_convergence_epsilon = 0.01 + +full_num_step = [1] +full_inverse_projector_cutoff = 1e-12 +full_inverse_precision = 1e-12 +full_convergence_epsilon = 1e-06 +full_iteration_max = 100 +full_gauge_fix = true +full_fastfullupdate = true + +ctm_dimension = 5 +ctm_inverse_projector_cutoff = 1e-12 +ctm_convergence_epsilon = 1e-06 +ctm_iteration_max = 100 +ctm_projector_corner = false +use_rsvd = true +rsvd_oversampling_factor = 2 +meanfield_env = false + +mode = ground state +simple +Lcor = 0 +seed = 11 +is_real = 0 +iszero_tol = 0 +measure = 1 +tensor_load_dir = +tensor_save_dir = +outdir = output_RSVD + +Lsub = [ 2 , 2 ] +skew = 0 + +start_datetime = 2023-12-27T10:08:59+09:00 diff --git a/test/data/output_RSVD/time.dat b/test/data/output_RSVD/time.dat new file mode 100644 index 00000000..4f3b784c --- /dev/null +++ b/test/data/output_RSVD/time.dat @@ -0,0 +1,5 @@ +time all = 2.33961 +time simple update = 0.870278 +time full update = 0.304127 +time environment = 0.930526 +time observable = 0.223058 diff --git a/test/data/output_RSVD/twosite_obs.dat b/test/data/output_RSVD/twosite_obs.dat new file mode 100644 index 00000000..ab19c285 --- /dev/null +++ b/test/data/output_RSVD/twosite_obs.dat @@ -0,0 +1,54 @@ +# The meaning of each column is the following: +# $1: op_group +# $2: source_site +# $3: dx +# $4: dy +# $5: real +# $6: imag +# The names of op_group are the following: +# 0: bond_hamiltonian +# 1: SzSz +# 2: SxSx +# 3: SySy +# -1: norm + +0 0 0 1 -2.60630499880987021e-01 -3.77554044563850987e-16 +0 0 1 0 -3.18036739953568015e-01 3.37491689939201927e-16 +0 1 0 1 -3.19277726261383843e-01 3.82829496040842891e-16 +0 1 1 0 -3.19951227842292463e-01 5.67000081301659176e-16 +0 2 0 1 -2.61779589763910303e-01 -9.84804763400151926e-17 +0 2 1 0 -3.37735337072606723e-01 -3.64491597856203834e-17 +0 3 0 1 -3.20981500125233687e-01 1.37778739134007502e-15 +0 3 1 0 -3.39951943338634266e-01 1.77815279729092824e-16 +1 0 0 1 -5.72781167132934838e-02 -5.87060075949757843e-17 +1 0 1 0 -7.32392667575661321e-02 2.38620163990432912e-16 +1 1 0 1 -6.85246833238848940e-02 1.78986261667761983e-16 +1 1 1 0 -7.40191966989294514e-02 6.94607627085453366e-17 +1 2 0 1 -5.77942520236587390e-02 1.20207100495835063e-17 +1 2 1 0 -7.67421777014239137e-02 -4.49032997642570905e-16 +1 3 0 1 -6.91966672009472761e-02 3.49976489413549227e-16 +1 3 1 0 -7.76019781613518089e-02 5.88870567136387422e-17 +2 0 0 1 -1.16811269234918344e-01 -1.00736489305436127e-16 +2 0 1 0 -1.23347186598962641e-01 3.69517206733165913e-16 +2 1 0 1 -1.50309983908081007e-01 7.05948234065969840e-16 +2 1 1 0 -1.23892345080040461e-01 3.86354694939097078e-16 +2 2 0 1 -1.17098972353629538e-01 5.10376678314275222e-17 +2 2 1 0 -1.66061271335565530e-01 7.97827639584375636e-16 +2 3 0 1 -1.50765352435800914e-01 1.27296357970013980e-15 +2 3 1 0 -1.66658068822595706e-01 2.84822080999510119e-16 +3 0 0 1 -8.65411139327752627e-02 -2.54004994759652003e-16 +3 0 1 0 -1.21450286597039395e-01 -2.68997362691640804e-16 +3 1 0 1 -1.00443059029417983e-01 -6.01564131086598017e-16 +3 1 1 0 -1.22039686063322536e-01 1.09121491143164088e-16 +3 2 0 1 -8.68863653866220331e-02 -9.92194252313746099e-17 +3 2 1 0 -9.49318880356172096e-02 -2.84707353904500902e-16 +3 3 0 1 -1.01019480488485455e-01 -2.02922094874033058e-16 +3 3 1 0 -9.56918963546866397e-02 2.70102033689325960e-17 +-1 0 0 1 5.26210166473529251e-01 1.61745616900077493e-14 +-1 0 1 0 5.34648522376578006e-01 1.46271883494364374e-14 +-1 1 0 1 5.25512620630181448e-01 1.40304434737004158e-14 +-1 1 1 0 5.18886729525302015e-01 1.43357548054723338e-14 +-1 2 0 1 5.19797007408131950e-01 1.60566004936413265e-14 +-1 2 1 0 5.34103204007730481e-01 1.35655375821386315e-14 +-1 3 0 1 5.19326965098691362e-01 1.32532873564628062e-14 +-1 3 1 0 5.18602453020453824e-01 1.35030875370034664e-14