rERP | EEG visualisation | EEG Simulations | BIDS pipeline | Decode EEG data | Statistical testing |
---|---|---|---|---|---|
A Julia package to simulate multivariate time series, e.g. model-based ERPs, fMRI activity, pupil dilation etc. UnfoldSim.jl provides multi-channel support via EEG-forward models. Moreover, it is possible to simulate overlapping event-related activity and to add noise of a certain type e.g. Pink noise.
Many tutorials, guides, how-tos and references are available in the documentation!
Click to expand
The recommended way to install julia is juliaup. It allows you to, e.g., easily update Julia at a later point, but also test out alpha/beta versions etc.
TL:DR; If you dont want to read the explicit instructions, just copy the following command
AppStore -> JuliaUp, or winget install julia -s msstore
in CMD
curl -fsSL https://install.julialang.org | sh
in any shell
using Pkg
Pkg.add("UnfoldSim")
using UnfoldSim
data, events = UnfoldSim.predef_eeg(; n_repeats = 1, noiselevel = 0.8)
Produces continuous "EEG" with PinkNoise and some overlap between 20 events (2 conditions * 10 levels of the continuous variable).
using UnfoldSim
using Random
# Start by defining the design / events data frame
design =
SingleSubjectDesign(; conditions = Dict(:condA => ["levelA", "levelB"])) |>
d -> RepeatDesign(d, 10);
# Next define a ground truth signal + relation to events/design with Wilkinson formulas
signal = LinearModelComponent(;
basis = [0, 0, 0, 0.5, 1, 1, 0.5, 0, 0],
formula = @formula(0 ~ 1 + condA),
β = [1, 0.5],
);
# finally, define some inter-onset distribution and noise, and simulate data!
data, events = simulate(
Random.MersenneTwister(1),
design,
signal,
UniformOnset(; offset = 5, width = 4),
PinkNoise(),
);
All simulation ingredients (design, components, onsets, noise) can be easily modified and you can simply plugin your own!
Contributions of any kind are very welcome. Please have a look at CONTRIBUTING.md for guidance on contributing to UnfoldSim.jl.
Maanik Marathe 📖 💻 |
Benedikt Ehinger 🐛 💻 📖 🤔 🚇 🚧 👀 |
Luis 🐛 💻 📖 🤔 |
Judith Schepers 🤔 🐛 📖 ✅ 💻 |
Vladimir Mikheev 🐛 |
Manpa Barman 🚇 |
René Skukies 📖 |
This project follows the all-contributors specification. Please reach out, if you have contributed to UnfoldSim.jl but we have not listed you as a contributor yet.
TBA
Funded by Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under Germany´s Excellence Strategy – EXC 2075 – 390740016. Furthermore, the authors thank the International Max Planck Research School for Intelligent Systems (IMPRS-IS) for supporting Judith Schepers.