Skip to content
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

Improved FunctionalAffect alternative #2922

Draft
wants to merge 21 commits into
base: master
Choose a base branch
from

Conversation

BenChung
Copy link
Contributor

@BenChung BenChung commented Aug 3, 2024

Checklist

  • Appropriate tests were added
  • Any code changes were done in a way that does not break public API
  • All documentation related to code changes were updated
  • The new code follows the
    contributor guidelines, in particular the SciML Style Guide and
    COLPRAC.
  • Any new documentation only uses public API

Additional context

This introduces MutatingFunctionalAffect (better name suggestions much appreciated) which presents a higher level interface when compared to FunctionalAffect. In particular, it decouples the inputs and outputs to the affect from the precise problem structure post-simplification.

This isn't quite complete yet; I need to implement it marking unknowns mutating by affects irreducible so that they're always there come runtime. Close, however.

@BenChung
Copy link
Contributor Author

I'm increasingly happy with this implementation; the main caveat to that statement is that the use of ComponentArrays for MutatingFunctionalAffects means that the values passed in and out are homogenously typed (that is they're all float64s, which is not great).

Project.toml Outdated Show resolved Hide resolved
src/systems/callbacks.jl Show resolved Hide resolved
src/systems/callbacks.jl Show resolved Hide resolved
src/systems/callbacks.jl Outdated Show resolved Hide resolved
src/systems/callbacks.jl Outdated Show resolved Hide resolved
src/systems/callbacks.jl Show resolved Hide resolved
@BenChung BenChung marked this pull request as draft September 17, 2024 21:38
@AayushSabharwal
Copy link
Member

This looks like a rebase gone wrong 😅

@BenChung
Copy link
Contributor Author

Yep, alas. I'll fix it with a force push

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants