Clarification request for ComposedOperator
I think that there are two different ways to interpret the meaning of "ComposedOperator", and I'm not sure if both of them are supported by Nifty at the moment:
Scenario 1: Say you have an input field F living on an RGSpace. If you want to apply an FFT, then some scaling, and then an inverse FFT again to this field, is it possible to combine these three operators into a single ComposedOperator? It doesn't seem that this works at the moment, because the "domain" property of such a ComposedOperator returns a triple of spaces, and the input field only lives on a single space.
Scenario 2: You have a field living on a product of spaces, and you want to run several operators on that field, every one operating on an individual space of the field. This seems to be the anticipated scenario for ComposedOperator at the moment.
Is scenario 1 also needed in the real world? I have a feeling that it is; if true, we should provide another "composed operator" for this use case and make sure (by means of good naming, documentation and tests in the operator constructors) that they are not confused.
(I'm mentioning this because until yesterday I was convinced that ComposedOperator also worked for scenario 1...)