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

Support stateful and/or time-dependent manipulators #203

Closed
kyllingstad opened this issue Mar 12, 2019 · 1 comment
Closed

Support stateful and/or time-dependent manipulators #203

kyllingstad opened this issue Mar 12, 2019 · 1 comment
Labels
enhancement New feature or request

Comments

@kyllingstad
Copy link
Member

Possible solutions, off the top of my head:

  1. Always update at each time step when a manipulator is present. (Simplest, but feels a bit crude.)
  2. Add a parameter to simulator::set_xxx_manipulator() that allows client code to specify whether the value should be updated at each time step or only when there are incoming values. (Does the client code always know which to choose, though?)
  3. Add some machinery in both algorithm and simulator implementations whereby an algorithm can tell a simulator whether each of its variables is connected. (Overengineered?)

This is starting to feel like a design choice. Until we hash out a master plan for the intended usage of these manipulator functions - i.e. how often will they be called, how good of an idea is statefulness etc., and as long as there are no current stateful manipulator function implementations, I'm OK with tackling this in a future issue.

The manipulator functions don't get the current time, nor the step size, at the moment, so more changes are needed to support that case.

Another input to this debate is the cse::manipulator class, which gets notified each time a step commences. This could also be taken advantage of when it comes to time dependent manipulations.

Originally posted by @eidekrist in #189 (comment)

@kyllingstad kyllingstad added the enhancement New feature or request label Mar 12, 2019
@restenb restenb self-assigned this Oct 7, 2019
@eidekrist
Copy link
Member

Closed by #522

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

No branches or pull requests

3 participants