NeuroStat / neuRosim

An R package to simulate fMRI Data Including Activated Data, Noise Data and Resting State Data
GNU General Public License v2.0
11 stars 6 forks source link

Fix task-related noise generation in simVOLfmri #1

Closed effigies closed 6 years ago

effigies commented 6 years ago

Task-related noise should have no effect on inactive voxels.

Generate a random set of active voxels:

pattern <- array(runif(100), dim=c(10, 10, 1)) <= 0.2

Simulate a single pulse, HRF peaking at volume 3:

coords <- which(pattern, arr.ind=TRUE)
clist <- list()
for (i in 1:length(coords[,1])) {
    clist[[i]] <- t(matrix(coords[i,]))
}
image <- neuRosim::simprepSpatial(sum(pattern), clist, form='manual', radius=1)
design <- neuRosim::simprepTemporal(10, onsets=0, durations=0.5, TR=2.5,
                          effectsize=10)
vol <- neuRosim::simVOLfmri(design=design, image=image, nscan=4, TR=2.5,
                  noise='task-related', SNR=2, dim=c(10, 10, 1))

Compare images:

image(pattern[,,1])
image(vol[,,1,3])

active_voxels task_related_noise