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

Adaptive stochastic functionality #73

Open
maedoc opened this issue Apr 3, 2024 · 0 comments
Open

Adaptive stochastic functionality #73

maedoc opened this issue Apr 3, 2024 · 0 comments

Comments

@maedoc
Copy link
Member

maedoc commented Apr 3, 2024

There are a few related functionalities to adaptive stochastic schemes, which can be done with the Heun scheme we're accustomed to,

dx1 = f(x)
x1 = x + dt*dx1  # Euler predictor
dx2 = f(x1)
x2 = x + dt/2*(dx1 + dx2)  # Heun corrector
  • error estimate, e.g. sum(square(x1 - x2))
  • reject steps with error larger than some tolerance err > tol
  • update step size dt *= tol / err and try again
  • using Brownian bridge to "interpolate" the stochastic process between known sample values
    • also useful for looking at convergence of scheme w/ dt

Covered in detail by Rackauckas & Nie and their followup paper on stability optimized methods. The older Lamba technique is a useful warm up.

We might additionally want to support different dts per state variables per node, due to explicit time scale separations. It is also likely we should take into account different noise models per state variable, since applying the same noise to every state variable is not tenable for complex models.

@maedoc maedoc changed the title Adaptive stochastic scheme Adaptive stochastic functionality Apr 3, 2024
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

No branches or pull requests

1 participant