-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Subspace expansion does not seem to properly choose cutoff #51
Comments
Hi, @mtfishman I do not know exactly what is the best intended behavior here. |
Yes that's correct, the current implementation only expands the bond dimension, it never truncates to a smaller bond dimension than you already have, so if you already have smaller singular values than your cutoff than those would remain after the subspace expansion. Perhaps what is happening in your case is that the bond dimension gets saturated early on when the singular values are not small, but then later in the calculation after more iterations/sweeps the singular values get smaller but with the current limitations of the implementation they don't get truncated away. Could you show the output of We could add a separate step which truncates the infinite MPS according to the singular values. It simply involves doing the SVD of the Over all, I am hoping to make all of this more automated, where you just set a |
I'm not sure whether this is expected behavior,
but when choosing a large
cutoff
for the subspace expansion (e.g. 10^-3), and a largemaxdim
,the current subspace expansion will still max out the bond dimension until
maxdim
is reached, even though cutoff is already reached. So, subspace expansion will go beyond the cutoff of 10^-3 and report anS[end,end] = 10^-11
.This seems to happen mostly when
outer_iters
is large (I chose 20).The way I understand the routine, it should automatically truncate down to the largest possible bond dimension that still suffices for the given cutoff.
The text was updated successfully, but these errors were encountered: