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

Implement FTLE #30

Closed
mountaindust opened this issue Dec 2, 2020 · 4 comments
Closed

Implement FTLE #30

mountaindust opened this issue Dec 2, 2020 · 4 comments

Comments

@mountaindust
Copy link
Owner

Being able to solve for FTLEs would provide a generalized framework for computing the FTLE in a large variety of particle behavior scenarios.

@mountaindust
Copy link
Owner Author

Should only need to implement a forward solver, and calculate both the largest and smallest FTLE for repelling and attracting LCSs respectively. See Haller and Sapsis (2011). Also, the Shadden Lab's tutorial has a really easy-to-understand walkthrough on how to compute FTLE!

@mountaindust
Copy link
Owner Author

The latest wrinkle: this is going to require implementing an RK45 solver because scipy.integrate.RK45 does not give access to the norm used when calculating error. It's likely taking a 2-norm over the entire list of position deviations, which blows up the error and results in ridiculously small step sizes (~1e-160). The proper norm is probably something like the max 2-norm of every agent's deviation.

@mountaindust
Copy link
Owner Author

This is being down-graded to medium priority due to stubborn run-time bugs which refuse to give the same result as the VisIt FTLE solver for 2D tracer particles. Visualization of the flow field is needed to aid in debugging.

@mountaindust
Copy link
Owner Author

RK45 solver has been fixed and the results of tracer particles now largely agree with VisIt. FTLE also works for supplied ode generator function. Interaction with immersed boundaries also appears to be working, but is VERY slow. See #42. Just need to test a passed in swarm object!

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

1 participant