-
-
Notifications
You must be signed in to change notification settings - Fork 210
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
Allowing a function to be called multiple times with different inputs #627
Draft
nicholaskl97
wants to merge
49
commits into
SciML:master
Choose a base branch
from
nicholaskl97:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from 1 commit
Commits
Show all changes
49 commits
Select commit
Hold shift + click to select a range
ed280a6
Modified 1D approx test to show get_argument bug
nicholaskl97 1c0f0d0
Updated get_argument for eval with multiple inputs
nicholaskl97 63e0ddc
Forced get_argument when strategy != Quadrature
nicholaskl97 4e7b1b8
Test file for fixing get_argument
nicholaskl97 8a612dc
Test file for debugging symbolic_discretize
nicholaskl97 83e2475
transform_expression uses indvars now
nicholaskl97 13df657
Some test files
nicholaskl97 b17f92b
Merge branch 'master' into get_argument-fix
nicholaskl97 e885f45
Reverted get_argument to original state
nicholaskl97 74a2749
Removed temporary debug files
nicholaskl97 d0df2a3
Updated _vcat to accept multiple arguments
nicholaskl97 41a75f6
get_argument returns all args no just first per eq
nicholaskl97 c5d9960
Added implicit 1D and another 2D test case
nicholaskl97 64b56de
generate gridtrain trainsets based of pde vars
nicholaskl97 55fa847
added OptimJL and OptimOptimisers
nicholaskl97 b7e3d7a
get_bounds works with new transform_expression
nicholaskl97 fb199e4
Added test of ODE with hard constraint ic
nicholaskl97 2572dbf
_vcat now fills out scalar inputs to match batches
nicholaskl97 3e36fbe
cord now only has variables that show up in the eq
nicholaskl97 d115eae
GridTraining train_sets now work on the GPU
nicholaskl97 abb85a8
_vcat maintains Array types when filling
nicholaskl97 c7d3dc5
Formatting change
nicholaskl97 d9da546
StochasticTraining now actually uses bcs_points
nicholaskl97 18338d3
get_bounds uses bcs_points
nicholaskl97 cee31db
get_bounds uses get_variables
nicholaskl97 ea1c3b0
Merge branch 'master' into master
nicholaskl97 be3abf1
Increased test number of points
nicholaskl97 308454c
get_bounds is now okay with eqs with no variables
nicholaskl97 09b6cf6
symbolic_utilities doesn't need LinearAlgebra
nicholaskl97 6e4206b
Merge remote-tracking branch 'origin/master' into get_argument-fix
nicholaskl97 55d142a
Can now handle Ix(u(x,1)) and not just Ix(u(x,y))
nicholaskl97 a9b6b47
import ComponentArrays used in training_strategies
nicholaskl97 f815469
Added import ComponentArrays statements
nicholaskl97 5889a1b
Revert "Added import ComponentArrays statements"
nicholaskl97 424a7ef
Revert "import ComponentArrays used in training_strategies"
nicholaskl97 d581889
Revert "added OptimJL and OptimOptimisers"
nicholaskl97 edcb1a7
Replaced Lux.ComponentArray with using Co...Arrays
nicholaskl97 b07ae13
Formatted with JuliaFormtter
nicholaskl97 7a1e0b5
Docstrings were counting against code coverage
nicholaskl97 7f527c7
Improperly used docstrings changed to comments
nicholaskl97 530d50e
Added comments for _vcat
nicholaskl97 48c8b04
Merge remote-tracking branch 'origin/master' into get_argument-fix
nicholaskl97 e4f1536
Updated docstring for build_symbolic_loss_function
nicholaskl97 238b315
Reductions needed inits for cases like u(0)=0
nicholaskl97 44f3a28
Formatted with JuliaFormatter
nicholaskl97 fc7d36c
Added a new integral test
nicholaskl97 550ab40
Merge remote-tracking branch 'origin/master' into get_argument-fix
nicholaskl97 4dcf2a8
Merge remote-tracking branch 'origin/master'
nicholaskl97 00f07fc
Merge remote-tracking branch 'origin/master'
nicholaskl97 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
why are those made and then not used?
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.
They're not used in this case any more. I think they may be used in the integral case, but that might not be true either. I can look through the different cases to see if they are ever used and remove them if not.
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.
Yeah it looks like deprecated code now so it would be good to just remove it
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.
So, currently,
cord1 = vcat(...)
is being used for integral equations only and in my efforts to see if it's possible to remove it, I've found something I broke that wasn't being tested for the integral equations, so I'm can work more on fixing that next week. In particular, I'll look for a fix that removes any need for those lines.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.
Another thing I realized as I was working on this was that$\int u(\sin x) dx$ . However, $u'(\sin x)$ , not $\frac{d}{dx}\left[ u(\sin x) \right] = u'(\sin x) \cos x$ . They're interpreted this way because that's how the numeric integral and numeric derivative functions were already written. However, it feels a little inconsistent with the way the integral was interpreted; it's instead consistent with an interpretation of $U(\sin x)$ , where $U$ is an antiderivative of $u$ .
Ix(u(sin(x))
will now be interpreted asDx(u(sin(x))
is (under my current changes) being interpreted asIx(u(sin(x))
asIt feels to me like$\int u(\sin x) dx$ and $\frac{d}{dx}\left[ u(\sin x) \right]$ , but then I don't know how you would actually specify $U(\sin x)$ or $u'(\sin x)$ , or if you should even be allowed to. (I'm fine not letting people use $U(\sin x)$ since it's not uniquely defined, but it feels like they should be able to use $u'(\sin x)$ .)
Ix(u(sin(x))
isDx(u(sin(x))
isThoughts?
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.
That's not correct and would not play nicely. It should give the same result as what happens when basic symbolic interactions are done: