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

Add flexibility in the displacement used in lyapunov #33

Closed
Datseris opened this issue Oct 4, 2017 · 2 comments
Closed

Add flexibility in the displacement used in lyapunov #33

Datseris opened this issue Oct 4, 2017 · 2 comments

Comments

@Datseris
Copy link
Member

Datseris commented Oct 4, 2017

The lyapunov function adds a displacement to the current state to generate a neighboring state simply by adding a displacement like stat2 = state1 + d0 where d0 is a real number.

This can be bad in the case of e.g. Hamiltonian systems if the user is really concerned about energy conservation or where nearby states may have different energy that may lead to e,g, escaping to infinity instead of staying in the attractor. @SebastianM-C maybe you want to say something here.

I suggest the following simple fix: add an extra argument to lyapunov called displacement. This argument must be a function f(state, d0) where given a state and d0 produces a new state that is (approximately) d0 far away from the given state but in the way the user wants. The default value can simply be displacement = +.

To elaborate more on this, there is some discussion in the computation of lyapunov exponent of trying to create a neighboring state where the difference vector is already oriented along the maximal expansion direction. I don't really think this is necessary as orientation happens anyway and very quickly.

@SebastianM-C
Copy link
Member

I added this option in #36. It would be very useful to have a dispatch for Hamiltonian systems, where the displacement function would be automatically provided such that the energy is the same for both trajectories.

@Datseris
Copy link
Member Author

Datseris commented Oct 9, 2017

Closed by #36

@Datseris Datseris closed this as completed Oct 9, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants