Filter.apply_filter never checked to ensure the non-zero masked array had elements (it now does, warns the user and returns 0), or checked if the array contribution in the band was 0 (if so there's no need to do the more expensive integration, this will now also return 0).
Issue Type
Bug
Checklist
[x] I have read the [CONTRIBUTING.md]() -->
[x] I have added docstrings to all methods
[x] I have added sufficient comments to all lines
[x] I have made corresponding changes to the documentation
[x] My changes generate no pep8 errors
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
Filter.apply_filter
never checked to ensure the non-zero masked array had elements (it now does, warns the user and returns 0), or checked if the array contribution in the band was 0 (if so there's no need to do the more expensive integration, this will now also return 0).Issue Type
Checklist