All creation/degradation can be divided into two kinds of degradation type:
add noise to the input catalog
make cuts/selections
I propose to call the first one "noisifier" or "noiseAdder", and the second one "selector"
Here are the baby steps:
Create noisifier.py, and a noisifier class in it. The noisifier should have function to check the length of the input and output to be the same. There should be a dummy noisifier that add no noise to it.
Create selector.py, and a selector class in it.
Add a deprecation warning to degrader class in the degrader.py. We won't remove degrader.py until all subclasses has finished migrating to the new parent classes.
All creation/degradation can be divided into two kinds of degradation type:
I propose to call the first one "noisifier" or "noiseAdder", and the second one "selector"
Here are the baby steps: