-
Notifications
You must be signed in to change notification settings - Fork 35
Broadcast #780
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
Conversation
Codecov Report
@@ Coverage Diff @@
## master #780 +/- ##
==========================================
+ Coverage 78.74% 78.79% +0.05%
==========================================
Files 35 35
Lines 3044 3061 +17
==========================================
+ Hits 2397 2412 +15
- Misses 647 649 +2
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
@ckingdon95 I worked on this today and removed a lot of the control flow and the try/catch. It should work properly now, could you take a look at the changes and see if you think there is a better way to simplify or move common cases out of loops etc.? It would be good to get some fresh eyes on it :) |
@ckingdon95 the doctests are being dumb right now so I removed them, but I added an Issue to add them back as soon as I can! If this looks good we can merge it and tag a new version soon. I'll keep a close eye on performance going forward as well. |
docs/src/tutorials/tutorial_3.md
Outdated
The next step is to run DICE using the provided API for the package: | ||
|
||
```jldoctest tutorial2; output = false, filter = r".*"s | ||
```julai |
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.
"julia"?
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.
oh shoot yes thanks, let me make sure the tests all pass then I'll ping you again
This PR handles the issue shown by #779 in the underlying function
_perturb_param!
called within@defsim
. Broadly the issue arises when there is a need to use broadcasting. This is problematic because (1) broadcast assignment ofTimestepIndex
toTimestepArray
does not have the proper underlying methods and (2) it is not always clear whether there is a need for.=
or=
even when there is no time index.The current solution control-flow can be described as follows. It is more complex/deep than I'd like, but it's the simplest I have for now. NOTE FLIP Y AND N ON HAS TIME INDEX FORK