-
Notifications
You must be signed in to change notification settings - Fork 41
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
Unexpected Behavior with truncerr(η)
and p=Inf
Truncation Scheme
#150
Comments
Good catch; it seems like the documentation is not in line with the implementation here, and that I guess that at some point, the implementation switched from relative to absolute error, as it is quite easy to get to relative error by simply multiplying the absolute error with Is it ok to simply update the documentation to resolve this issue? |
My comment is not entirely correct, as |
Now I set TensorMap(ℝ^9 ← ℝ^9):
10.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
0.0 9.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
0.0 0.0 8.0 0.0 0.0 0.0 0.0 0.0 0.0
0.0 0.0 0.0 7.0 0.0 0.0 0.0 0.0 0.0
0.0 0.0 0.0 0.0 6.0 0.0 0.0 0.0 0.0
0.0 0.0 0.0 0.0 0.0 5.0 0.0 0.0 0.0
0.0 0.0 0.0 0.0 0.0 0.0 4.0 0.0 0.0
0.0 0.0 0.0 0.0 0.0 0.0 0.0 3.0 0.0
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 2.0
|
with
With |
I got it, thanks. |
I expected the truncation scheme using
truncerr(η)
withp = Inf
to behave such that "every singular value is larger thanη * max(S)
". However, I observed a different behavior with the following example:The output for
S
is:Given that
η * max(S) = 10.01
, I expected that singular values smaller than 10.01 would be discarded. However, in this case, only the singular values = 1.0
is discarded.Could you please provide more clarification on how the truncation scheme for
truncerr
works, especially when usingp = Inf
? Specifically, why is only the smallest singular value discarded in this case?The text was updated successfully, but these errors were encountered: