pylops
pylops copied to clipboard
Change all operators to classes
Motivation
Currently, several operators are defined through operators. For example, Laplacian depends on SecondDerivative. This is great as it encourages code reuse and standardized operators. However, the way in which it is implemented now is mostly by functions which return a certain operator. I propose that we change all operators to be classes, even if they depend on other operators. This will encourage encapsulation and extensibility.
Definition of done
- Refactor all function-based operators to the classes instead.
- All tests should pass without modification.