Skip to content

Return value of the vector field at t0 without recomputation #741

Description

@BenjaminDAnjou

So I know that it's not possible to return the values of the vector field at the save times without recomputation, because in general diffrax interpolates to obtain the solution.

But shouldn't it at least possible to save the vector field at t0 without recomputation, either at the level of diffeqsolve() or at the level of step()? I am not aware of a differential equation solver that does not compute the vector field at t0.

For now, I can get around this for FSAL solvers, which contain the vector field in the solver_state. But that requires implementing a bit of annoying logic, and doesn't work for non-FSAL solvers.

So I was wondering if it was conceivable to return some output vector_field_at_t0 in the solution, or to output the value of the vector field at t0 at each step()? Or, more generally, to store the output of AbstractTerm methods at t0?

I suspect that this would be annoying to implement. But the vector field is an important quantity that I'm sure many people would like to access. So if it's available at the t0 of every step, and there is a clean way to output it, it might be worth it, and so I just wanted to put the idea out there.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions