Skip to content

Add eDMD example: Extended Dynamic Mode Decomposition over nonlinear dictionaries#915

Open
DchavezGH wants to merge 5 commits intofieldtrip:masterfrom
DchavezGH:master
Open

Add eDMD example: Extended Dynamic Mode Decomposition over nonlinear dictionaries#915
DchavezGH wants to merge 5 commits intofieldtrip:masterfrom
DchavezGH:master

Conversation

@DchavezGH
Copy link
Copy Markdown

This pull request adds a new example page to the FieldTrip website demonstrating the use of Extended Dynamic Mode Decomposition (eDMD) for multi-channel neural data analysis (MEG, EEG, and iEEG).

The example introduces a FieldTrip-integrated implementation of eDMD that supports nonlinear observable dictionaries, including Random Fourier Features, Hermite polynomials, polynomial dictionaries, and the identity observable (classical DMD).

The example is placed in Other, but may also fit well in Spectral analysis. Feedback and suggestions are welcome.

Update eDMD documentation with installation and usage details.
Updated eDMD documentation to include installation instructions, usage examples, and output structures.
@schoffelen
Copy link
Copy Markdown
Member

Awesome @DchavezGH David! Thanks for pushing this forward. In the mean time, you may have seen that I tagged you on one of our new issues, which sparked from a more or less simultaneous expression of interest to contribute to the toolbox from two different sides (yours and another one). Robert @robertoostenveld and I discussed this (quite) a bit more, and although we haven't reached a final resolution, we are thinking of proposing a slightly different course of action. The executive summary of this is, that the proposed markdown file in this PR will stay in your repo, and that we will link to your repository from the fieldtrip website. Perhaps, you can give the below a read, and let us know what you think about it, in the referenced github issue.

Robert wrote the following e-mail to the other interested party (Joseph):

Jan-Mathijs and I have actually recently been discussing how to deal with user contributions like yours, and this, and GEDAI where we are now summarizing these and list some ideas.

In the past we tried to incorporate everything in FieldTrip proper, or give it a place in fieldtrip/contrib, but we never managed to find a satisfactory solution as good as the EEGLAB plugin system. Our contemplations also made us realize that times have changed. Some 20 years ago - when we started with FieldTrip - platforms like GitHub did not yet exist, hosting a website with documentation was non-trivial, and we did have the infrastructure to incorporate contributions in our codebase and documentation system, hence we had good reasons to facilitate people’s contributions that way. However, times change, and nowadays we realize the disadvantage of us incorporating code into FT is that in the long run we often become responsible for maintenance of code and documentation that we don’t know that well ourselves, and also that credit (and thereby also incentives to maintain) do not optimally go to the original contributors.

We therefore are thinking about trying out something else and would value your opinion about that. But before me typing that here in this email: are you on github and if so, would you mind posting your email below (specifically the part that I have marked RED) in the issue fieldtrip/fieldtrip#2578? That allows me to outline the plan in public, you can think about it and provide us feedback, and we can discuss such that I can more easily get others involved (like the maintainers from other toolboxes like SPM that are also thinking about these things).

@DchavezGH
Copy link
Copy Markdown
Author

I am happy with the idea of keeping the code and documentation in my own repository and linking to it from the FieldTrip website. I agree that this makes long-term maintenance and development easier.

My intention with both the original FieldTrip pull request (fieldtrip/fieldtrip#2573) and this one was mainly to make the method visible and accessible to FieldTrip users. I think linking to my repository from FieldTrip's page would achieve that just as well.

I have now updated my repository with the documentation and example that I originally prepared for the website:
https://github.com/DchavezGH/ft_edmdanalysis

Please let me know if there is a preferred way to link to external toolboxes or if there is anything else I should adapt to make this fit well within FieldTrip.

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

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants