I did a first sketch of an interface that allows for supplying only the normal operator AHA. You expressed a strong preference for keeping the option to supply the forward operator A and perform the back projection as part of the algorithm, even if this differs from the conjugate gradient implementation. For this reason, I am suggesting to use keyword arguments for A and AHA. We would need to clarify in the documentation that one has the option to supply either operator, or both, and that A === nothing, which is the default, reinterprets b as the back projection instead of the signal vector. I don't think it is super intuitive, but I also don't know how to do this better.
Thought? If we agree on an interface, we can add some documentation and port this interface to the other algorithms. But I thought we should discuss such a major (breaking) change before putting in the effort.
Hi @tknopp,
I did a first sketch of an interface that allows for supplying only the normal operator
AHA
. You expressed a strong preference for keeping the option to supply the forward operatorA
and perform the back projection as part of the algorithm, even if this differs from the conjugate gradient implementation. For this reason, I am suggesting to use keyword arguments forA
andAHA
. We would need to clarify in the documentation that one has the option to supply either operator, or both, and thatA === nothing
, which is the default, reinterpretsb
as the back projection instead of the signal vector. I don't think it is super intuitive, but I also don't know how to do this better.Thought? If we agree on an interface, we can add some documentation and port this interface to the other algorithms. But I thought we should discuss such a major (breaking) change before putting in the effort.
-ja