pytorch-minimize icon indicating copy to clipboard operation
pytorch-minimize copied to clipboard

Support for complex tensors in LSMR

Open tvercaut opened this issue 3 years ago • 0 comments

As illustrated in the scipy unit tests, the scipy implementation of LSMR supports complex matrices: https://github.com/scipy/scipy/blob/main/scipy/sparse/linalg/_isolve/tests/test_lsmr.py

The version in pytorch-minimize currently does not as the real scalar numbers are created from the dtype of b rather than the equivalent real version.

A quick try to adapt it seems to work as shown here: https://github.com/cai4cai/torchsparsegradutils/blob/main/torchsparsegradutils/utils/lsmr.py

It also passes the ported scipy unit tests: https://github.com/cai4cai/torchsparsegradutils/blob/main/tests/test_lsmr.py

tvercaut avatar Dec 05 '22 10:12 tvercaut