-
-
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
docs: update NEWS.md with v9 update notes #2466
Conversation
NEWS.md
Outdated
- ModelingToolkit.jl now exports common definitions of `t` (time independent variable) | ||
and `D` (the first derivative with respect to `t`). Any models made using ModelingToolkit.jl | ||
should leverage these common definitions. There are three variants: | ||
- `t` and `D` use DynamicQuantities.jl units. |
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.
- `t` and `D` use DynamicQuantities.jl units. | |
- `t` and `D` use DynamicQuantities.jl units. This is the default for standard library components. |
The discrete-time system docs will be linked to once they exist |
NEWS.md
Outdated
- To restore the old behavior, use `ModelingToolkit.@set sys.index_cache = nothing` before creating | ||
a problem, and after calling `structural_simplify`. |
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.
Is this really the best way to do this, not a keyword argument in structural simplify?
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.
I'll add the kwarg then. @mtkbuild
will not support 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.
@mtkbuild
should get a simplify=true, split=true
.
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.
The key is that if we don't take control of this, then it won't be deprecatable.
ba9284e
to
bf7518b
Compare
- All systems will perform parameter splitting by default. Problems created using ModelingToolkit.jl | ||
systems will have a custom struct instead of a `Vector` of parameters. The internals of this | ||
type are undocumented and subject to change without notice or a breaking release. Parameter values | ||
can be queried, updated or manipulated using SciMLStructures.jl or SymbolicIndexingInterface.jl. | ||
This also requires that the symbolic type of a parameter match its assigned value. For example, |
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.
- All systems will perform parameter splitting by default. Problems created using ModelingToolkit.jl
systems will have a custom struct instead of aVector
of parameters. The internals of this
type are undocumented and subject to change without notice or a breaking release. Parameter values
can be queried, updated or manipulated using SciMLStructures.jl or SymbolicIndexingInterface.jl.
This also requires that the symbolic type of a parameter match its assigned value. For example,
Surely this must be documented and standardized for use in the DifferentialEquations solvers? For example, JumpProcesses requires that parameters are stored in a linearly indexable collection in its internal solvers (for MassActionJumps). Mixed parameter types could previously be achieved via MTK by using tuples to store parameters.
Is it no longer the case that JumpProcesses can assume parameter objects are linearly indexable within solvers?
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.
(Sorry for my confusion, still trying to parse out how this new parameter handling will/does work!)
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.
Is it no longer the case that JumpProcesses can assume parameter objects are linearly indexable within solvers?
It should have never assumed that. That's never really been true. We've always supported arbitrary structs in the solvers.
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.
this must be documented and standardized for use in the DifferentialEquations solvers?
It got more standardized recently https://docs.sciml.ai/SciMLStructures/dev/interface/.
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.
We should talk JumpProcesses after this all gets out there. There's things we need to do, but there's so much going on here that I didn't want to overlap the two.
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.
I'm all for improving the interface there. Initializing and updating MassActionJumps for parameter changes right now is clunky... Plus there are the issues of making the library stochastic AD compatible (as much as possible).
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.
SciMLStructures Tunable canonicalizations are kind of the key to making arbitrary parameters work much better, but there's more to think about with MAJs. Maybe let's do a call the 3 of us on Friday? I want to get this merged independently of that though.
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.
(I'd like to invest a big chunk of time towards the later towards the end of the semester / over the summer as part of our NSF grant.)
Checklist
contributor guidelines, in particular the SciML Style Guide and
COLPRAC.
Additional context
Add any other context about the problem here.