Skip to content
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

Composition of transforms #8

Open
hbraunDSP opened this issue Jun 20, 2019 · 1 comment
Open

Composition of transforms #8

hbraunDSP opened this issue Jun 20, 2019 · 1 comment

Comments

@hbraunDSP
Copy link
Contributor

As a GAMPMatlab user I made extensive use of the LinTransCompose() function (I think that was the name). This was part of the modular "Lego-like" design that I really liked about it. I'd like to work on implementing LinTransCompose() for vampyre.

The problem is that as far as I know there is in general no way to calculate the SVD of the product of two matrices short of explicitly calculating their product and then calculating the SVD of that. This would be insane in terms of memory alone for many vampyre use cases. I propose to only provide an SVD for the special case of composition of unitary matrices and set svd_avail=False for others.

The problem with this is that estim.LinEst currently requires svd_avail=True. I'm willing to take that on as well but I may need some help with it; I was mainly an AMP user and only took a cursory look under the hood.

What do you think? Is this a good direction to work?

@hbraunDSP
Copy link
Contributor Author

Alternatively, do we prefer that users add an intermediate node to the graph, sitting in between the two matrices?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant