-
Notifications
You must be signed in to change notification settings - Fork 53
Open
Description
Summarizing some of the ideas and discussions around #230
- Have the MatrixAlgebraKit functions overloaded and working for
AbstractTensorMap
, more or less the way it is implemented right now. - The specializations for
DiagonalTensorMap
would ideally not be needed, and moved into MatrixAlgebraKit - The old functions
leftorth
,rightorth
andtsvd
could remain in their current form, but have deprecation warnings and simply pass on to the new ones - The old structs
SDD
,QR
, ... might just have to be removed, since I'm not sure what the correct way is to deprecate a struct - The old truncation schemes might have to be removed?
- Separate out the factorization tests from the regular tensor tests, and have a bit more of them. Currently we are testing various cases of 5-leg tensors, which is both expensive because they become quite large, and very inconvenient to write new tests with these exact same spaces. In principle, there are some edge cases (empty tensors, 1 leg tensors, etc) that are relevant, and otherwise none of this really depends on the number of legs, so we can probably make these tests both lighter and cover more grounds
- At some point we would probably also have to actually investigate some multithreading for all of these things, but I'm not sure if we want to immediately add this, since its a very annoying thing to handle: for many cases BLAS is just very efficient with its threading, so it is very easy to make things slower by adding more multithreading, and the actual good approach depends heavily on the distribution of block sizes
- Update the docs to reflect all of the changes
- Test truncated eigenvalue decomposition, and check if this works with autodiff
ogauthe
Metadata
Metadata
Assignees
Labels
No labels