OSCR

Studying dynamic sound source localization in a virtual maze with EEG and psychophysics.

Code ↔ Paper

3 matches between paragraphs of the paper and lines of its authors' code, computed by the harvester (lexical-v1). Click a colored paragraph or line to see its counterpart.

The 3 matches
  1. [1] § Results › Turning decisions ↔ VirtualMaze_BEHAVanalysis.m, lines 1–57 · score 0.71 · alarm sound position, segments indicate, walking direction, incorrect turning decisions, regression, fell
  2. [2] § Results › MMN ↔ VirtualMaze_ERPanalysis.m, lines 85–223 · score 0.67 · Bar graph, FDR corrected, spatial deviation, rectangle, SEM, Grand
  3. [3] § Materials and methods › Data analysis › Statistical analysis ↔ VirtualMaze_ERPanalysis.m, lines 38–81 · score 0.63 · 104–154 ms, 104 ms, M1, M2, window, topographic

Paper

Loaded from Europe PMC by your browser, not stored by OSCR: doi.org · Europe PMC

The paper is loaded when this pane is shown.

The authors' code

MATLAB · 303 lines · 13 KB · no license · 2 matches

  1. %% VirtualMaze_ERPanalysis
  2. %
  3. % Script summarizes ERP analysis in:
  4. % Strauss, H., Grimm, S., Feder, S., Miksch, J., Bendixen, A. (accepted).
  5. % Studying dynamic sound source localization in a virtual maze with EEG and
  6. % psychophysics. Frontiers in Neuroscience
  7. %
  8. % Necessary set/fdt-files are located in the folder ERPdata/
  9. % Figure generation:
  10. % * Figure 3(A-C) Grand-average ERPs for standards, deviants and their difference
  11. % waveforms and MMN topographies for small, medium, and large spatial
  12. % deviations
  13. % * Figure 3(D) Comparison of the grand-average difference waveforms between the
  14. % three angle size conditions
  15. % * Figure 3(E) Bar graph depicting mean amplitudes in the MMN time window for
  16. % deviants and standards with small, medium, and large angles
  17. %
  18. % Statistical Analysis:
  19. % * repeated-measures ANOVA with the factors Stimulus Type (Deviant,
  20. % Standard) and Angle Size (Small, Medium, Large) on mean
  21. % amplitudes at electrode FCz in the MMN time window
  22. % * follow-up t-tests to compare mean amplitudes between deviants and
  23. % standards in the three angle size conditions
  24. % * follow-up t-tests to compare MMN mean amplitudes between small and
  25. % medium, small and large, and medium and large angle sizes
  26. % * repeated-measures ANOVA with the factors Stimulus Type (Deviant,
  27. % Standard) and Angle Size (Small, Medium, Large) on mean
  28. % amplitudes at the mastoid electrodes (M1, M2) in the MMN time window
  29. %
  30. %
  31. % Requirements:
  32. % - EEGLAB toolbox (https://eeglab.org)[Version used: eeglab v2025.0.0]
  33. % - Statistics and Machine Learning Toolbox (for functions ranova.m, fitrm.m)
  34. %% define and add eeglab path
  35. % eeglabPath = 'YOUR EEGLAB PATH';
  36. % addpath(eeglabPath)
  37. eeglab
  38. erppath = './ERPdata/';
  39. conditions = {'dev_small', 'dev_medium', 'dev_large', 'sta_small', 'sta_medium', 'sta_large'};
  40. angles = {'small', 'medium', 'large'};
  41. channel = 'FCz';
  42. channel_M = {'M1', 'M2'};
  43. twin = [104 154];
  44. cols = [212 0 0; 0 0 255; 0, 0, 0; 117 112 179; 217 95 2; 27 158 119]/255;
  45. % load ERP datasets from all conditions (requirement: EEGLab) and collect
  46. % them in the array allERPs (shape: conditions x electrodes x sampling
  47. % points x participants)
  48. for iCond = 1:size(conditions,2)
  49. EEG = pop_loadset('filename', ['ERPs_' conditions{iCond} '.set'], 'filepath', erppath);
  50. allERPs(iCond,:,:,:) = EEG.data;
  51. end
  52. % determine channel number and sampling points of interest
  53. channelNr = find(strcmp(channel,{EEG.chanlocs.labels}));
  54. for c = 1:size(channel_M,2)
  55. channelNr_M(c) = find(strcmp(channel_M{c},{EEG.chanlocs.labels}));
  56. end
  57. twin_pts = (twin-EEG.times(1))*EEG.srate/1000+1;
  58. % extract grand-average traces
  59. devTrace = squeeze(mean(allERPs(1:3,channelNr,:,:),4));
  60. staTrace = squeeze(mean(allERPs(4:6,channelNr,:,:),4));
  61. diffTrace = devTrace - staTrace;
  62. % extract topographic maps in MMN time window
  63. devMap = squeeze(mean(mean(allERPs(1:3,:,twin_pts(1):twin_pts(2),:),3),4));
  64. staMap = squeeze(mean(mean(allERPs(4:6,:,twin_pts(1):twin_pts(2),:),3),4));
  65. diffMap = devMap - staMap;
  66. % extract MMN mean amplitudes at relevant electrodes
  67. MMNamp = squeeze(mean(allERPs(:,channelNr,twin_pts(1):twin_pts(2),:),3))';
  68. MMNamp_M = squeeze(mean(mean(allERPs(:,channelNr_M,twin_pts(1):twin_pts(2),:),2),3))';
  69. meanMMNamp = reshape( mean(MMNamp,1), [3,2]); % mean over participants
  70. semMMNamp = reshape( std(MMNamp,[],1)/sqrt(size(MMNamp,1)), [3 2]); % standard error of mean
  71. %% Figure plots
  72. % Figure 3A-C: Grand-average ERPs for standards, deviants and their difference
  73. % waveform and MMN topographies for small, medium, and large spatial
  74. % deviations
  75. f1 = figure(Name="Figure 3A-C",NumberTitle="off");
  76. for iAngle = 1:3
  77. % calculate FDR-corrected running t test
  78. start_t = 0;
  79. start_t_pts = (start_t-EEG.times(1))*EEG.srate/1000+1;
  80. devTrace_rtt = squeeze(allERPs(iAngle,channelNr,start_t_pts:end,:));
  81. staTrace_rtt = squeeze(allERPs(3+iAngle,channelNr,start_t_pts:end,:));
  82. n_rtt = length(devTrace_rtt);
  83. all_p = nan(1,n_rtt); all_t = nan(1,n_rtt);
  84. for t = 1:n_rtt
  85. [~,all_p(t),~,stats] = ttest(devTrace_rtt(t,:), staTrace_rtt(t,:), 'alpha', 0.05, 'tail', 'both');
  86. all_t(t) = stats.tstat;
  87. end
  88. [all_p_sorted, order] = sort(all_p);
  89. [~,orderI] = sort(order);
  90. q = [1:n_rtt]/n_rtt*0.05;
  91. FDRthresh_sorted = all_p_sorted < q;
  92. FDRthresh = FDRthresh_sorted(orderI);
  93. % plot ERP traces including running t test results
  94. subplot(2,3,iAngle)
  95. axis([-100 500, -4.3 4.3])
  96. hold on
  97. y = ylim; plot([0 0],[y(1) y(2)], 'k', 'LineWidth', 0.5, 'HandleVisibility','off');
  98. rectangle('Position',[twin(1) y(1) twin(2)-twin(1) y(2)-y(1)],'FaceColor',[0.8 0.8 0.8 0.2],'EdgeColor',[0.8 0.8 0.8 0.2]);
  99. x = xlim; plot([x(1) x(2)],[0 0], 'k', 'LineWidth', 0.5, 'HandleVisibility','off');
  100. indTraces = squeeze(mean(allERPs(1:6,channelNr,:,:),2));
  101. for l = 1:3
  102. if l == 1
  103. dataTrace = indTraces(iAngle,:,:);
  104. elseif l == 2
  105. dataTrace = indTraces(iAngle+3,:,:);
  106. elseif l == 3
  107. dataTrace = indTraces(iAngle,:,:) - indTraces(iAngle+3,:,:);
  108. end
  109. sem = squeeze(std(dataTrace,[],3))/sqrt(size(dataTrace,3));
  110. sem = sem(:);
  111. a = ones(size(EEG.times))';
  112. regions(1) = patch('XData', [EEG.times'; EEG.times(end:-1:1)'], ...
  113. 'YData', [squeeze(mean(dataTrace,3))' + sem; squeeze(mean(dataTrace(:,end:-1:1,:),3))'], ...
  114. 'FaceColor', cols(l,:), ...
  115. 'FaceVertexAlphaData', [0.1*a; 0.3*a], ...
  116. 'FaceAlpha', 0.2, 'EdgeColor', 'none',...
  117. 'HandleVisibility','off');
  118. regions(2) = patch('XData', [EEG.times'; EEG.times(end:-1:1)'], ...
  119. 'YData', [squeeze(mean(dataTrace,3))' - sem; squeeze(mean(dataTrace(:,end:-1:1,:),3))'], ...
  120. 'FaceColor', cols(l,:), ...
  121. 'FaceVertexAlphaData', [0.1*a; 0.3*a], ...
  122. 'FaceAlpha', 0.2, 'EdgeColor', 'none',...
  123. 'HandleVisibility','off');
  124. end
  125. plot(EEG.times,devTrace(iAngle,:),'Color',cols(1,:),'LineWidth',1.2)
  126. plot(EEG.times,staTrace(iAngle,:),'Color',cols(2,:),'LineWidth',1.2)
  127. plot(EEG.times,diffTrace(iAngle,:),'k','LineWidth',1.7)
  128. % plot FDR-corrected running t tests
  129. rectangle('Position',[start_t 3.8 EEG.times(end)-start_t 0.3],'FaceColor',[0.8 0.8 0.8],'EdgeColor',[0.8 0.8 0.8]);
  130. for t = 1:n_rtt
  131. if FDRthresh(t)
  132. if all_t(t) > 0 %red for positive T values
  133. rectangle('Position',[ EEG.times(start_t_pts + t - 1)-1 3.8 2 0.3],'FaceColor',[1 0 0],'EdgeColor',[1 0 0]);
  134. else %blue for negative T values
  135. rectangle('Position',[ EEG.times(start_t_pts + t - 1)-1 3.8 2 0.3],'FaceColor',[0 0 1],'EdgeColor',[0 0 1]);
  136. end
  137. end
  138. end
  139. xlabel('Time (ms)')
  140. ylabel('Voltage (µV)')
  141. set(gca, 'YDir', 'Reverse', 'TickDir', 'out');
  142. % plot topographies
  143. subplot(2,3,3+iAngle)
  144. topoplot(diffMap(iAngle,:), EEG.chanlocs, 'maplimits',[-3 3]);
  145. end
  146. set(f1, 'Color','w','Position',[0 370 900 400])
  147. set(findall(gcf,'-property','FontSize'),'FontSize',12)
  148. % exportgraphics(gcf,"Figure3AC.eps",ContentType="vector")
  149. % Figure 3D: Comparison of grand-average difference waveforms for small,
  150. % medium, and large spatial deviations
  151. f2 = figure(Name="Figure 3D",NumberTitle="off");
  152. set(f2, 'Color','w','Position',[0 0 450 350])
  153. axis([-100 500, -4 4])
  154. hold on
  155. y = ylim; plot([0 0],[y(1) y(2)], 'k', 'LineWidth', 0.5, 'HandleVisibility','off');
  156. rectangle('Position',[twin(1) y(1) twin(2)-twin(1) y(2)-y(1)],'FaceColor',[0.8 0.8 0.8 0.2],'EdgeColor',[0.8 0.8 0.8 0.2]);
  157. x = xlim; plot([x(1) x(2)],[0 0], 'k', 'LineWidth', 0.5, 'HandleVisibility','off');
  158. indDiffTraces = squeeze(mean(allERPs(1:3,channelNr,:,:),2)) - squeeze(mean(allERPs(4:6,channelNr,:,:),2));
  159. for l = 1:3
  160. sem = squeeze(std(indDiffTraces(l,:,:),[],3))/sqrt(size(indDiffTraces,3));
  161. sem = sem(:);
  162. a = ones(size(EEG.times))';
  163. regions(1) = patch('XData', [EEG.times'; EEG.times(end:-1:1)'], ...
  164. 'YData', [diffTrace(l,:)' + sem; diffTrace(l,end:-1:1)'], ...
  165. 'FaceColor', cols(l+3,:), ...
  166. 'FaceVertexAlphaData', [0.1*a; 0.3*a], ...
  167. 'FaceAlpha', 0.2, 'EdgeColor', 'none',...
  168. 'HandleVisibility','off');
  169. regions(2) = patch('XData', [EEG.times'; EEG.times(end:-1:1)'], ...
  170. 'YData', [diffTrace(l,:)' - sem; diffTrace(l,end:-1:1)'], ...
  171. 'FaceColor', cols(l+3,:), ...
  172. 'FaceVertexAlphaData', [0.1*a; 0.3*a], ...
  173. 'FaceAlpha', 0.2, 'EdgeColor', 'none',...
  174. 'HandleVisibility','off');
  175. plot(EEG.times,diffTrace(l,:),'Color',cols(l+3,:),'LineWidth',2)
  176. end
  177. xlabel('Time (ms)')
  178. ylabel('Voltage (µV)')
  179. legend('Small', 'Medium', 'Large')
  180. legend boxoff
  181. set(gca, 'YDir', 'Reverse', 'TickDir', 'out');
  182. set(findall(gcf,'-property','FontSize'),'FontSize',14)
  183. % exportgraphics(gcf,"Figure3D.eps",ContentType="vector")
  184. % Figure 3E: Bar graph of mean amplitudes in the MMN time window for deviants
  185. % and standards with small, medium, and large angles
  186. f3 = figure(Name="Figure 3E",NumberTitle="off");
  187. set(f3, 'Color','w','Position',[450 0 450 350])
  188. hold on
  189. b = bar(meanMMNamp);
  190. b(1).FaceColor = cols(1,:); b(1).EdgeColor = cols(1,:);
  191. b(2).FaceColor = cols(2,:); b(2).EdgeColor = cols(2,:);
  192. ylabel('Voltage (µV)')
  193. set(gca, 'YDir', 'Reverse', 'TickDir', 'out', 'XTick', 1:3, 'XTickLabel', {'Small', 'Medium', 'Large'});
  194. errorbar([1:3]-0.14, meanMMNamp(:,1)', semMMNamp(:,1)','k.')
  195. errorbar([1:3]+0.14, meanMMNamp(:,2)', semMMNamp(:,2)','k.')
  196. set(findall(gcf,'-property','FontSize'),'FontSize',14)
  197. % exportgraphics(gcf,"Figure3E.eps",ContentType="vector")
  198. %% Statistical tests
  199. % Repeated-measures ANOVA on frontocentral MMN mean amplitudes
  200. disp('Effects of Angle Size and Stimulus Type on MMN at electrode FCz')
  201. angle = ["small"; "medium"; "large"; "small"; "medium"; "large"];
  202. stimulus = ["deviant"; "deviant"; "deviant"; "standard"; "standard"; "standard"];
  203. within = table(angle,stimulus,VariableNames=["AngleSize", "StimulusType"]);
  204. data = table(MMNamp(:,1), MMNamp(:,2), MMNamp(:,3), MMNamp(:,4), MMNamp(:,5), MMNamp(:,6), 'VariableNames',{'y1' 'y2' 'y3' 'y4' 'y5' 'y6'});
  205. rm = fitrm(data,'y1-y6 ~ 1','WithinDesign',within);
  206. ranovatbl = ranova(rm,'WithinModel',"AngleSize*StimulusType");
  207. ranovatbl.partialEta2 = nan(8,1);
  208. for eff = [3 5 7]
  209. SS = table2array(ranovatbl(eff,1));
  210. ErrSS = table2array(ranovatbl(eff+1,1));
  211. DFeff = table2array(ranovatbl(eff,2));
  212. DFerr = table2array(ranovatbl(eff+1,2));
  213. n2p = SS/(SS+ErrSS);
  214. ranovatbl.partialEta2(eff) = n2p;
  215. end
  216. fprintf('\n\nMMN: rmANOVA\n')
  217. disp(ranovatbl)
  218. disp('')
  219. % Follow-up t-tests: comparing deviant vs. standard ERPs for small, medium
  220. % and large angles
  221. fprintf('\n\nMMN: Pairwise t-test\n')
  222. for iAngle = 1:3
  223. [h,p,ci,stats] = ttest(MMNamp(:,iAngle), MMNamp(:,3+iAngle));
  224. cohen_d = mean(MMNamp(:,iAngle) - MMNamp(:,3+iAngle))/std(MMNamp(:,iAngle) - MMNamp(:,3+iAngle));
  225. if p >= 0.001
  226. fprintf('dev vs. sta %s: t(%i) = %0.3f, p = %0.3f, d = %0.3f\n', angles{iAngle}, stats.df, stats.tstat, p, cohen_d)
  227. else
  228. fprintf('dev vs. sta %s: t(%i) = %0.3f, p < 0.001, d = %0.3f\n', angles{iAngle}, stats.df, stats.tstat, cohen_d)
  229. end
  230. end
  231. % Follow-up t-tests: comparing MMN in small, medium and large angle size
  232. % conditions
  233. fprintf('\n\nMMN difference between angles: Pairwise t-test\n')
  234. pairs = nchoosek(1:3, 2);
  235. for iPair = 1:size(pairs,1)
  236. diff1 = MMNamp(:,pairs(iPair,1)) - MMNamp(:,3+pairs(iPair,1));
  237. diff2 = MMNamp(:,pairs(iPair,2)) - MMNamp(:,3+pairs(iPair,2));
  238. [h,p,ci,stats] = ttest(diff1, diff2);
  239. cohen_d = mean(diff1 - diff2)/std(diff1 - diff2);
  240. if p >= 0.001
  241. fprintf('%s vs. %s: t(%i) = %0.3f, p = %0.3f, d = %0.3f\n', angles{pairs(iPair,1)}, angles{pairs(iPair,2)}, stats.df, stats.tstat, p, cohen_d)
  242. else
  243. fprintf('%s vs. %s: t(%i) = %0.3f, p < 0.001, d = %0.3f\n', angles{pairs(iPair,1)}, angles{pairs(iPair,2)}, stats.df, stats.tstat, cohen_d)
  244. end
  245. end
  246. % Repeated-measures ANOVA on mastoidal MMN mean amplitudes
  247. disp('Effects of Angle Size and Stimulus Type on mastoidal MMN')
  248. angle = ["small"; "medium"; "large"; "small"; "medium"; "large"];
  249. stimulus = ["deviant"; "deviant"; "deviant"; "standard"; "standard"; "standard"];
  250. within = table(angle,stimulus,VariableNames=["AngleSize", "StimulusType"]);
  251. data_M = table(MMNamp_M(:,1), MMNamp_M(:,2), MMNamp_M(:,3), MMNamp_M(:,4), MMNamp_M(:,5), MMNamp_M(:,6), 'VariableNames',{'y1' 'y2' 'y3' 'y4' 'y5' 'y6'});
  252. rm_M = fitrm(data_M,'y1-y6 ~ 1','WithinDesign',within);
  253. ranovatbl_M = ranova(rm_M,'WithinModel',"AngleSize*StimulusType");
  254. ranovatbl_M.partialEta2 = nan(8,1);
  255. for eff = [3 5 7]
  256. SS = table2array(ranovatbl_M(eff,1));
  257. ErrSS = table2array(ranovatbl_M(eff+1,1));
  258. DFeff = table2array(ranovatbl_M(eff,2));
  259. DFerr = table2array(ranovatbl_M(eff+1,2));
  260. n2p = SS/(SS+ErrSS);
  261. ranovatbl_M.partialEta2(eff) = n2p;
  262. end
  263. fprintf('\n\nMMN at Mastoids: rmANOVA\n')
  264. disp(ranovatbl_M)
  265. disp('')

VirtualMaze_ERPanalysis.m, no license · at the source

Overview

Authors: Hanna Strauss1, Sabine Grimm2, Sascha Feder1, Jochen Miksch2, Alexandra Bendixen1
  1. Cognitive Systems Lab, Faculty of Natural Sciences, Institute of Physics, Chemnitz University of Technology, Chemnitz, Germany
  2. Physics of Cognition Group, Faculty of Natural Sciences, Institute of Physics, Chemnitz University of Technology, Chemnitz, Germany
Institutions: Chemnitz University of Technology (Germany)
Journal: Frontiers in neuroscience, volume 20, article 1907950
Dates: received 12 June 2026; accepted 17 August 2026; published online 3 September 2026
Type: Research article · Language: English
License: CC BY
Identifiers: DOI 10.3389/fnins.2026.1907950 · PMID 42756237 · PMCID PMC13582665 · OpenAlex W7207753100
Open access: gold, a free copy (OpenAlex)
Status: code verified
Categories: EEG (modality), human (organism), cognitive (subfield)
Methods: Statistics, Smoothing, state filtering, decompositions, Preprocessing, Evoked potentials, Physiology & signal measures
Keywords: head movement, location deviant, oddball paradigm, predictive coding, self-generation, spatial auditory scene analysis, variable standard
Topic: Neuroscience and Music Perception (Cognitive Neuroscience, Neuroscience), according to OpenAlex
Citations: not cited yet (Europe PMC); 77 references in the paper

Abstract

Auditory scene analysis benefits from spatial separation of the sound sources to be disentangled. Studies characterizing the ability to localize sound sources have revealed that spatial ambiguities can be resolved by slightly moving the head. This implies that the auditory system must take into account how head movements displace the sensors (ears) relative to the sound source, in order to separate the consequences of own movement from actual movement of the sound source. Outside of the typical lab, not only the head can be turned, but also the whole body might move towards or away from the sound source. With modern virtual-reality (VR) technology including near-real-time auditory feedback, it has now become feasible to study the relations between body movement, head movement, and sound localization in a controlled manner. Here we present a VR study in which participants move through a virtual maze to locate a repetitive alarm signal. Participants’ turning decisions provide a behavioral measure of their ability to localize the sound source. In addition, we introduce occasional task-unrelated location deviations in the alarm signal to record an unobtrusive neural measure of localization ability: the Mismatch Negativity (MMN) component extracted from participants’ continuous electroencephalogram (EEG) informs us about participants’ deviance detection at the sensory level. We examine these neural and behavioral correlates of sound localization during simulated locomotion and real head movements. Our results show high behavioral accuracy and the elicitation of a robust MMN component. This indicates faithful extraction of source location although participants move relative to the sound source. Our findings are compatible with a predictive-coding framework, where the effects caused by own movement are taken into account for the interpretation of sensory signals. Yet because the range of physical variation by own movement was narrower than intended, we cannot exclude the possibility that deviance detection rested on simpler sensory mechanisms. We discuss how this constraint can be overcome in future studies to fully exploit our new paradigm for naturalistic, yet controlled studies on sound localization and auditory scene analysis under dynamic listening requirements.

Reproduced under the paper's license (CC BY), from the paper cited above.

Repository

Its files are read in the Code ↔ Paper reader above, with 3 matches between paragraphs and lines of code.

OSF ymgw3

License: none: the authors keep all their rights
State: the link answers, verified on 26 September 2026
Evidence: files inventoried
Languages: MATLAB (2)
Size: 18 files, 2 scripts
Software Heritage: not checked
Found in: “Data availability statement”
Not found: README, license file, CITATION.cff, environment file, tests, continuous integration, documentation
Availability: 1 check, the latest on 26 September 2026: the link answers (HTTP 200)
  • 26 September 2026: the link answers (HTTP 200)
2 files
At the source: osf.io/ymgw3/

The paper's code and data availability statement is in the Data section.

Tracing map

Proposed by the machine: these links were found in the paper and verified at the source, without human review. The map will receive a Zenodo DOI once one of the paper's authors has validated it with their ORCID.

What the map holds:

  • 1 repository of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
  • 2 scripts, each with its path and the digest of its content;
  • 3 matches between paragraphs of the paper and lines of the code (method lexical-v1);
  • neither the text of the paper nor the code itself.

Its JSON (tracing-map.json) is deposited on Zenodo with its DOI once the map is validated.

Data

No dataset and no data link were found in the paper.

Data availability statement

The pre-processed EEG data (single-subject averages) and behavioral data supporting the conclusions of this article are available alongside with the analysis code in a publicly accessible repository (https://osf.io/ymgw3/). The raw EEG data will be made available by the authors upon request, without undue reservation.

Reproduced under the paper's license (CC BY), from the paper cited above.

Versions

The history of this record: each version stored by the harvester or made by a correction of its authors or of the maintainers of its code, and what changed in its facts. The texts of the paper (its abstract, its availability statements) are not part of it; versions that changed only those are not listed.

Version 3, 28 September 2026

  • Funding: added Technische Universität Chemnitz

Version 1, 27 September 2026: the first record

Recorded: type, language, journal, volume, pages, dates, 5 authors, 7 keywords, 70 references.

Cite

This paper

Strauss, H., Grimm, S., Feder, S., Miksch, J., & Bendixen, A. (2026). Studying dynamic sound source localization in a virtual maze with EEG and psychophysics. Frontiers in neuroscience, 20, 1907950. https://doi.org/10.3389/fnins.2026.1907950

BibTeX

@article{strauss2026studying,
author = {Strauss, Hanna and Grimm, Sabine and Feder, Sascha and Miksch, Jochen and Bendixen, Alexandra},
title = {{Studying dynamic sound source localization in a virtual maze with EEG and psychophysics}},
journal = {Frontiers in neuroscience},
year = {2026},
month = sep,
volume = {20},
pages = {1907950},
publisher = {Frontiers Media SA},
issn = {1662-4548},
doi = {10.3389/fnins.2026.1907950},
url = {https://doi.org/10.3389/fnins.2026.1907950},
pmid = {42756237},
pmcid = {PMC13582665}
}

RIS

TY - JOUR
AU - Strauss, Hanna
AU - Grimm, Sabine
AU - Feder, Sascha
AU - Miksch, Jochen
AU - Bendixen, Alexandra
TI - Studying dynamic sound source localization in a virtual maze with EEG and psychophysics
T2 - Frontiers in neuroscience
J2 - Front Neurosci
PY - 2026
DA - 2026/09/03
VL - 20
SP - 1907950
SN - 1662-4548
PB - Frontiers Media SA
DO - 10.3389/fnins.2026.1907950
UR - https://doi.org/10.3389/fnins.2026.1907950
LA - en
ER -

CSL-JSON

{
"id": "10.3389/fnins.2026.1907950",
"type": "article-journal",
"title": "Studying dynamic sound source localization in a virtual maze with EEG and psychophysics",
"container-title": "Frontiers in neuroscience",
"author": [
{
"family": "Strauss",
"given": "Hanna"
},
{
"family": "Grimm",
"given": "Sabine"
},
{
"family": "Feder",
"given": "Sascha"
},
{
"family": "Miksch",
"given": "Jochen"
},
{
"family": "Bendixen",
"given": "Alexandra"
}
],
"container-title-short": "Front Neurosci",
"volume": "20",
"page": "1907950",
"DOI": "10.3389/fnins.2026.1907950",
"PMID": "42756237",
"PMCID": "PMC13582665",
"ISSN": "1662-4548",
"publisher": "Frontiers Media SA",
"URL": "https://doi.org/10.3389/fnins.2026.1907950",
"language": "en",
"issued": {
"date-parts": [
[
2026,
9,
3
]
]
}
}

The tracing map gets a citation of its own once an author has validated it and it has a DOI.

Similar papers

The papers with a page that share the most with this one: the tools found in their code, their categories, datasets, cited references and authors, the rarest counting most.

[1] doi:10.1111/ejn.70670 [code]
Cross-Night Modulation of Change Detection ERPs to Foreign Speech Sound Features During N2 Sleep.
Journal: The European journal of neuroscience
In common: EEGLAB, Statistics and Machine Learning Toolbox, EEG, cognitive, 3 references
[2] doi:10.1038/s41598-026-52434-6 [code]
Alpha oscillatory activity reveals focused-attentional disparity between cochlear implant users and normal hearing listeners.
Journal: Scientific reports
In common: EEG, cognitive, 4 references
[3] doi:10.1111/ejn.70503
Modulation of Predictive Coding in Auditory Paradigms of Varying Complexity in Children With Developmental Language Disorder.
Journal: The European journal of neuroscience
In common: EEG, cognitive, 4 references
[4] doi:10.1016/j.dcn.2026.101780
Atypical auditory cortical processing in ADHD during early and middle childhood.
Journal: Developmental cognitive neuroscience
In common: EEG, 4 references
[5] doi:10.1002/hbm.70368 [code]
The Mismatch Negativity Compared: EEG, SQUID‐MEG, and Novel 4 Helium‐OPMs
Journal: n/a
In common: EEG, cognitive, 3 references
[6] doi:10.3389/fnhum.2026.1763477
Toward precision EEG: assessing the reliability of individual-level ERPs across EEG systems.
Journal: Frontiers in human neuroscience
In common: EEG, 3 references
[7] doi:10.1002/advs.77857 [code]
Brain Network Dynamics of Local and Global Predictive Processing in Aging.
Journal: Advanced science (Weinheim, Baden-Wurttemberg, Germany)
In common: Statistics and Machine Learning Toolbox, cognitive, 3 references
[8] doi:10.1371/journal.pbio.3003966 [code]
Behavioral engagement and stimulus regularities coordinate auditory-prefrontal network activity.
Journal: PLoS biology
In common: Statistics and Machine Learning Toolbox, 3 references
[9] doi:10.1111/psyp.70297 [code]
Heartbeat-Evoked Responses in M/EEG: A Systematic Review of Methods With Suggestions for Analysis and Reporting.
Journal: Psychophysiology
In common: EEG, 4 references
[10] doi:10.1002/hbm.70518
Voluntary Attention Selectively Modulates Omission Responses.
Journal: Human brain mapping
In common: EEG, cognitive, 3 references

Contribute

The authors of this paper can claim it, correct its record and validate its tracing map, and the maintainers of its code (its owner, or a public member of its organization) correct what it says of their repository; anyone signed in can ask for its removal. Every request goes to OSCR's own machine, which answers it; your account page follows them.

Sign in with ORCID to claim this paper as one of its authors, correct its record or validate its tracing map: when the paper's metadata lists your ORCID iD, you are recognized at once. Maintainers of its code: sign in with GitHub, then claim the repository on your account page.

Request its removal

To ask OSCR to remove this record, the copies of its authors' scripts or its tracing map, use the removal request page: signed in, you say who you are, what to remove and why, then review and confirm the request. Published rules decide every request (how).

Discussion, reproductions, activity

Discussion: questions and error reports about this paper and its code, from signed-in readers and its authors. It opens with sign-in.

Reproductions: reports from readers who ran the authors' code: what they reproduced, with which environment, commit and data. It opens with sign-in.

Activity: what happens around this paper: new versions of its record, its map's validation, discussions and reproductions. It opens with sign-in.