-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Channel mobility metrics #28
Channel mobility metrics #28
Conversation
Codecov Report
@@ Coverage Diff @@
## develop #28 +/- ##
===========================================
+ Coverage 87.25% 88.48% +1.23%
===========================================
Files 10 11 +1
Lines 1106 1251 +145
===========================================
+ Hits 965 1107 +142
- Misses 141 144 +3
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @elbeejay
This is really great, thanks for contributing it! The notebook is a cool way to show it off, too.
I am wondering about the name of the module though (mobility
). I'm not objecting, just trying to think about other metrics we will add. Probably a handful for shoreline mobility. Channel network metrics. Shoreline position/shape metrics. I think these all fall into something like planform metrics
but we already have the Planform
object housed in plan.py
, and I'd like to keep those separate. I supposed mobility
is probably broad enough it could encompass enough functions to make a complete module, but where do the shoreline_position metrics go then? Just thinking out loud here.
Please open issues for the items in your "does not do" checklist, where appropriate.
Codecov Report
@@ Coverage Diff @@
## develop #28 +/- ##
===========================================
+ Coverage 87.25% 88.48% +1.23%
===========================================
Files 10 11 +1
Lines 1106 1251 +145
===========================================
+ Hits 965 1107 +142
- Misses 141 144 +3
Continue to review full report at Codecov.
|
cc76f7c
to
07186f3
Compare
This would go after #27.
Summary
This PR provides at least an initial take at adding channel mobility metrics to the
deltametrics
framework. Nothing fancy was done, so we can have a discussion about tying these functions in more tightly todeltametrics
objects (right now they are much more 'standalone' than other modules we have). But the 4 metrics added are the following:Dry fraction decay per Cazanacli et al 2002
Channel Planform Overlap per Wickert et al 2013
Reworking Fraction per Wickert et al 2013
Channel Abandonment per Liang et al 2016
A demo of the current functionality is available here. This PR does not include any substantial documentation beyond linking up the API reference, but in the future the plan would be to create documentation resembling that colab notebook.
Details
More specifically, this PR adds the following:
This PR does not do the following:
calc_
"metric name here" is the nicest way to name a function)basevalues
andtime_windows
), in the future we could build-in the time 'units' viaxarray
So like I said, I'm very flexible on changing the structure of these functions to better mesh with the deltametrics API, it was just not obvious to me what the best way of doing that would be. Part of my hesitation about writing a complex API / additional documentation is just due to the uncertainty around the merge order (will this go before or after #23 which breaks some bits of the API, either way I think the conflicts can be resolved without too much fuss). In conclusion, despite the shortcomings of this PR, I think it is still a step forward.