neurodsp-tools / neurodsp

Digital signal processing for neural time series.
https://neurodsp-tools.github.io/
Apache License 2.0
288 stars 62 forks source link

[ENH] - Add functionality for managing sim params and simulating multiple signals together #329

Closed TomDonoghue closed 2 months ago

TomDonoghue commented 7 months ago

In the Aperiodic Method project, I was simulating large groups of signals while both systematically iterating across parameter values and/or sampling from parameter distributions. In order to do so, I had to develop some utilities for managing simulation parameters and simulating groups of time series together.

This PR suggests adding that functionality directly into NDSP. It is all quite general, and I think fits well within the sim module. The code added here is basically the code that is demo'd in the aperiodic methods project here (which might be a good starting point to get a feel for how this approach looks / works): https://aperiodicmethods.github.io/notebooks/12-TimeSimsParameters.html

I've also sketched out some tutorials, which give a broad overview of the general approach / how this code works.

TomDonoghue commented 2 months ago

I think everything pertaining specifically to the updates here is addressed, so I'm going to merge this in now to move forward with integrating this new approach into a project. We should test this whole approach out a bit more before tagging the next version release.