Spatial and network principles behind neural generation of locomotion.
The 3 matches · 2 of them tie a paragraph to a whole file, not to given lines: weak matches, whose lines are not tinted
- [1] § Results › Emergent locomotor activity ↔ 02_HelperFunctions/PlotAnimatedNetworkEmgandPC.m, lines 1–92 · score 0.57 · biceps femoris, tibialis anterior, PC, vastus
- [2] § Methods › Estimation of 2D spatial cell type distributions ↔ 00_SpinalNetworkModel/@Network/GetGenesDiffExpSingleCell.m, the whole file · a weak match · score 0.56 · log fold change, genetic, cell, populations, model
- [3] § Methods › Estimation of 2D spatial cell type distributions ↔ 00_SpinalNetworkModel/@Network/GetNeuronsInDiffGeneExpSingleCell.m, the whole file · a weak match · score 0.56 · log fold change, genetic, cell, populations, model
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 · 289 lines · 9.7 KB · CC0-1.0 · 1 match
- function PlotAnimatedNetworkEmgandPC(N,varargin)
- screensize = get(groot,'ScreenSize');
- Save = 0;
- W = N.ConnMat;
- Save = 0;
- RS = 1;
- VA =[-130,50];
- EPos = nan;
- CC = nan;
- trail = 300;
- noiselevel= 0.2;
- pad = 750;
- srt = 1;
- M = 10 ;
- P = 0:size(N.Rates,2)-1;
- Proj = 0;
- Source = true(1,size(N.Rates,2));
- UoI = true(1,size(N.ConnMat,1));
- Moi = categorical({'Iliopsoas','Quadriceps','Vastus Lateralis','Biceps Femoris','Tibialis Anterior','Gastrocnemius'});
- for ii = 1:2:length(varargin)
- switch varargin{ii}
- case 'SavePath'
- SavePath = varargin{ii+1};
- Save = 1;
- case 'SaveName'
- Name = varargin{ii+1};
- case 'MN'
- Moi = categorical(varargin{ii+1})';
- case 'sort'
- srt = varargin{ii+1};
- case 'UoI'
- UoI = varargin{ii+1};
- case 'ElectrodePos'
- EPos =varargin{ii+1};
- case 'Cluster_chan'
- CC = varargin{ii+1};
- case 'Source'
- Source = varargin{ii+1};
- case 'Project'
- Proj = varargin{ii+1};
- end
- end
- if (Save)
- if ~exist(SavePath, 'dir')
- mkdir(SavePath)
- end
- v = VideoWriter([SavePath '/ ' Name],"MPEG-4");
- v.FrameRate = 30;
- v.Quality = 60;
- open(v);
- end
- if(isempty(N.EstimatedRates))
- N.ComputeEstimatedRates;
- end
- if(isempty(N.PC))
- N.ComputePC('Estimated',1,'Source',Source);
- end
- DorPop = unique(N.Types(N.Layers == 'DRG'|N.Layers == '1Sp'| N.Layers == '2Sp0' | N.Layers == '2SpI' | N.Layers == '3Sp' | N.Layers == '4Sp'),'sorted');
- VentrPop = unique(N.Types(N.Layers == '5Spm'|N.Layers == '5SpL'| N.Layers == '6SpM' | N.Layers == '6SL' | N.Layers == '7Sp' | N.Layers == '8Sp' | N.Layers == 'D' | N.Layers == '10Sp' | N.Layers == 'Ps9'),'sorted');
- MN = unique(N.MnID(~isundefined(N.MnID)));
- cmapdorsal = fliplr(autumn(length(DorPop)));
- cmapventralex = flipud(cool(length(VentrPop)));
- cmapventralin = cool(length(VentrPop));
- cmapmn = sky(length(MN));
- C = zeros(size(N.ConnMat,1),3);
- for T = 1:length(DorPop)
- whr = N.Types == DorPop(T);
- C(whr,:) = repmat(cmapdorsal(T,:),[nnz(whr),1]);
- end
- for T = 1:length(VentrPop)
- whr = N.Types == VentrPop(T);
- if(mean(N.Transmit(whr)) < 0)
- C(whr,:) = repmat(cmapventralin(T,:),[nnz(whr),1]);
- else
- C(whr,:) = repmat(cmapventralex(T,:),[nnz(whr),1]);
- end
- end
- for T = 1:length(MN)
- whr = N.MnID == MN(T);
- C(whr,:) = repmat(cmapmn(T,:),[nnz(whr),1]);
- end
- %% Compute EMG signal
- jj = 1;
- EMG = [];
- MoI = categorical();
- Col = [];
- for ii = fliplr(Moi)
- ix = N.MnID==ii & N.Latera > 0;
- if(~nnz(ix))
- continue
- end
- MoI(jj) = ii;
- Col(jj,:) = mean(C(ix,:),1);
- prob = sum(N.Rates(:,ix),2);
- sig = randn(size(prob))*noiselevel.*binornd(1,normcdf(normalize(prob,'zscore')));
- sig = sig.*prob/5 + (randn(size(prob))*noiselevel) ;
- EMG(:,jj) = [(randn(1,pad)*noiselevel) (sig*noiselevel)'] + 10*jj;
- jj = jj+1;
- end
- %% Compute Raster
- if(srt)
- ix = ComputeFiringPhaseSorting(N.Rates(Source,:));
- else
- [~,ix] = sort(N.Position(:,3));
- end
- UoI = UoI(ix);
- RI = N.Rates(1:end,ix);
- RIsp = ((RI-min(RI,[],1)));
- RIsp = RIsp./(max(RIsp,[],1));
- Poiss = poissrnd(RIsp/40,size(RIsp));
- SpikeTrain = [zeros(pad,size(Poiss,2)); logical(Poiss)];
- Rates = GetGaussianFiring(SpikeTrain,50,1000);
- RatesS = Rates(pad+1:end,:);
- RatesS(RatesS==0) = nan;
- SpikeTrain = SpikeTrain(:,UoI);
- location = N.Position(ix,:);
- if(any(~isnan(CC),"all")&&any(~isnan(EPos),"all")&&Proj)
- CC = CC(ix);
- location = [EPos(CC,1) EPos(CC,2) EPos(CC,3)];
- end
- if(Proj)
- UoIp = UoI;
- else
- UoIp = true(1,size(N.ConnMat,1));
- end
- %% Compute online gain
- L = round(range(N.Position(:,2)),-2);
- edges = [-L:250:L];
- tau_V = ones(size(N.ConnMat,1),1)*50;% Slower Excitation
- tau_V(sum(N.ConnMat,1) < 0 & ~(N.Types=='MN')',:) = 25; % Faster Inhibition
- g = abs(diff(movmean(RatesS,10,1),1,1));
- g = movmean(g,500,1);
- g = flipud(movmean(flipud(g),500,1));
- g = (100./tau_V').*g;
- ConnMat= N.ConnMat;
- ConnMatIpsiOr(N.Latera < 0,N.Latera > 0) = 0;
- ConnMatIpsiOr(N.Latera > 0,N.Latera < 0) = 0;
- ConnMatContraOr = N.ConnMat;
- ConnMatContraOr(N.Latera > 0,N.Latera > 0) = 0;
- ConnMatContraOr(N.Latera < 0,N.Latera < 0) = 0;
- %%
- fig = figure(Color=Colors().BergBlack,Position=screensize);
- %% Define Ax1
- ax1 = subplot(3,3,[1 2 4 5 7 8]); % For the 3D
- axis off equal tight
- box on
- view(VA(1),VA(2))
- hold on
- %% Define Ax2
- ax2 = subplot(3,3,3); % For the PC
- axis off equal
- box off
- set(ax2,'Color','none')
- xlim([min(N.PC(:,1)) max(N.PC(:,1))]);
- ylim([min(N.PC(:,2)) max(N.PC(:,2))]);
- zlim([min(N.PC(:,3)) max(N.PC(:,3))]);
- view(-20,-30)
- hold on
- plot3(ax2,[ax2.XLim(1) ax2.XLim(1)],[ax2.YLim(1) ax2.YLim(1)],[ax2.ZLim]-(ax2.ZLim(1)),'Color',Colors().BergWhite,'LineWidth',2);
- plot3(ax2,[ax2.XLim(1) ax2.XLim(1)],[ax2.YLim],[0 0],'Color',Colors().BergWhite,'LineWidth',2);
- plot3(ax2,[ax2.XLim],[ax2.YLim(1) ax2.YLim(1)],[0 0],'Color',Colors().BergWhite,'LineWidth',2);
- title('PCA','FontSize',20,'FontWeight','bold','Color',Colors().BergWhite)
- %% Definee Ax4
- ax4 = subplot(3,3,6); % For the EMG
- axis on square
- set(ax4,'Color','none')
- set(ax4,'YColor',Colors().BergWhite)
- box on
- hold on
- xlim([0 2*pad]);
- ylim([-15 nnz(UoI)+15]);
- plot(ax4,[pad pad],ax4.YLim,'Color',Colors().BergWhite,'LineWidth',2);
- jj = 1;
- yticks([]);
- title('Raster','FontSize',20,'FontWeight','bold','Color',Colors().BergWhite)
- %% Definee Ax3
- ax3 = subplot(3,3,9); % For the EMG
- axis on square
- set(ax3,'Color','none')
- set(ax3,'YColor',Colors().BergWhite)
- box on
- hold on
- xlim([0 1500]);
- ylim([-15 10*size(EMG,2)+15]);
- plot(ax3,[750 750],ax3.YLim,'Color',Colors().BergWhite,'LineWidth',2);
- jj = 1;
- yticks([1:length(MoI)]*10);
- yticklabels(MoI);
- title('EMG','FontSize',20,'FontWeight','bold','Color',Colors().BergWhite)
- % %% Define Ax5
- % ax5 = subplot(3,3,7);
- % xlim([-L L])
- % ylim([-300 300])
- % axis off
- % hold on
- % %% Define Ax6
- % ax6 = subplot(3,3,8);
- % axis off
- % hold on
- % linkaxes([ax5 ax6]);
- %%
- if(~isnan(EPos))
- scatter3(ax1,EPos(:,1),EPos(:,2),EPos(:,3),20,'Marker','square','MarkerEdgeColor',Colors().BergWhite,'MarkerFaceColor',Colors().BergGray05,'MarkerFaceAlpha',0.4,'LineWidth',0.01,'MarkerEdgeAlpha',0.4);
- hold on
- end
- scatter3(ax1,N.Geometry.Position(N.Geometry.Type=="WM",1),N.Geometry.Position(N.Geometry.Type=="WM",2),N.Geometry.Position(N.Geometry.Type=="WM",3),'filled','MarkerFaceAlpha',0.05,'MarkerEdgeColor','none','MarkerFaceColor',Colors().BergGray02);
- for nn = 1:5
- for ii = 1:33:size(RatesS,1)
- f1 = scatter3(ax1,location(UoIp,1),location(UoIp,2),location(UoIp,3),2*RatesS(ii,UoIp),C(UoIp,:),'filled','MarkerFaceAlpha',0.75);
- f2 = plot3(ax2,N.PC(max(1,ii-trail):ii,1),N.PC(max(1,ii-trail):ii,2),N.PC(max(1,ii-trail):ii,3),'LineWidth',4,'Color',sky(1));
- f3 = plot(ax3,circshift(EMG,-ii));
- ConnMatIspi = g(ii,:).*ConnMatIpsiOr;
- % ConnMatContra = g(ii,:).*ConnMatContraOr;
- % diffipsi = GeneratePlot(N,ConnMatIspi,edges);
- % diffcontra= GeneratePlot(N,ConnMatContra,edges);
- % p1 = plot(ax5,edges(1:end-1),diffipsi,'Color',[Colors().BergWhite 0.2],'LineWidth',2);
- % p2 = plot(ax6,edges(1:end-1),diffcontra,'Color',[Colors().BergWhite 0.2],'LineWidth',2);
- if(~isempty(Col))
- colororder(ax3,Col);
- end
- ST = circshift(SpikeTrain,-ii)';
- [ri,ci] = find(ST(:,1:2*pad));
- f4 = scatter(ax4,ci,ri,M,'MarkerFaceColor',Colors().BergGray02,'MarkerFaceAlpha',0.9,'MarkerEdgeColor','none');
- drawnow;
- if(Save)
- f = getframe(fig);
- writeVideo(v,f);
- else
- pause(0.033/RS);
- end
- delete(f1);
- delete(f2);
- delete(f3);
- delete(f4);
- % delete(p1);
- % delete(p2);
- end
- end
- if(Save)
- f = getframe(fig);
- writeVideo(v,f);
- close(v)
- end
- end
- function difference = GeneratePlot(N,ConnMat,edges)
- Ex = N.Transmit > 0;
- In = N.Transmit < 0;
- Dist = bsxfun(@minus,N.Position(:,2),N.Position(:,2)');
- ProjEx = ConnMat(:,Ex);
- ProjIn = ConnMat(:,In);
- DistEx = Dist(:,Ex);
- DistIn = Dist(:,In);
- yin = discretize(DistIn(ProjIn~= 0), edges);
- yex = discretize(DistEx(ProjEx~= 0), edges);
- [GnIn,Min,Cin] = grpstats(ProjIn(ProjIn~=0), yin,["gname","mean","numel"]);
- [GnEx,Mex,Cex] = grpstats(ProjEx(ProjEx~=0), yex,["gname","mean","numel"]);
- MInZ = zeros(length(edges)-1,1);
- MExZ = zeros(length(edges)-1,1);
- CInZ = zeros(length(edges)-1,1);
- CExZ = zeros(length(edges)-1,1);
- MInZ(str2double(GnIn)) = Min;
- MExZ(str2double(GnEx)) = Mex;
- CInZ(str2double(GnIn)) = Cin;
- CExZ(str2double(GnEx)) = Cex;
- difference = abs(MExZ.*CExZ)-abs(MInZ.*CInZ);
- end
PlotAnimatedNetworkEmgandPC.m at commit 0f04204, under CC0-1.0 · at the source
Overview
Abstract
The abstract is not reproduced here: the paper's license (CC BY-NC-ND) does not allow it. Read it in the paper, at the publisher or on Europe PMC.
Repositories
Its files are read in the Code ↔ Paper reader above, with 3 matches between paragraphs and lines of code.
albert597/TRAILMAP
f1349df9e929be6d7d90f6fc2a2ecfbaff4f7347, 18 June 2026Availability: 1 check, the latest on 27 September 2026: the link answers
- 27 September 2026: the link answers
16 files
- inference/
__init__.py , Python, 2 lines - inference/
segment_brain.py , Python, 245 lines - models/
__init__.py , Python, 1 line - models/
model.py , Python, 200 lines - prepare_data.py, Python, 69 lines
- segment_brain_batch.py, Python, 44 lines
- train.py, Python, 62 lines
- training/
__init__.py , Python, 4 lines - training/
data_loader.py , Python, 83 lines - training/
generate_data_set.py , Python, 52 lines - training/
label_processor.py , Python, 23 lines - training/
volume_data_generator.py , Python, 193 lines - utilities/
__init__.py , Python, 1 line - utilities/
utilities.py , Python, 139 lines - LICENSE, License, 21 lines
- README.md, Text, 143 lines
BergLab/SpinalProjectome
0f042045ee2f6d93bbe482127ce2263ada07443f, 24 July 2025Availability: 1 check, the latest on 27 September 2026: the link answers
- 27 September 2026: the link answers
62 files
- 00_SpinalNetworkModel/
@Celltype/ , MATLAB, 151 linesCelltype.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 101 linesAnimatedPlotRates.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 89 linesComputeEigenModesandNull Space.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 49 lines, 1 matchGetGenesDiffExpSingleCel l.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 50 lines, 1 matchGetNeuronsInDiffGeneExpS ingleCell.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 77 linesGetNeuronsInDiffGeneExpS patial.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 280 linesInstantiateNetwork.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 24 linesMakeLesion.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 141 linesNetwork.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 98 linesPlotEMG.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 54 linesPlotGeneLocation.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 120 linesPlotNeurogram.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 41 linesPlotRaster.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 44 linesPlotRates.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 30 linesPolarPlotLogFC.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 20 linesPolarPlotTargets.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 13 linesRegrowPop.m - 00_SpinalNetworkModel/
@Network/ , MATLAB, 84 linesSimulate.m - 00_SpinalNetworkModel/
@NetworkParameters/ , MATLAB, 123 linesNetworkParameters.m - 00_SpinalNetworkModel/
@SpinalCordGenetics/ , MATLAB, 21 linesSpinalCordGenetics.m - 00_SpinalNetworkModel/
@SpinalCordGeometry/ , MATLAB, 268 linesSpinalCordGeometry.m - 02_HelperFunctions/
BalanceConnectivity.m , MATLAB, 17 lines - 02_HelperFunctions/
ComputeFiringPhaseSortin , MATLAB, 40 linesg.m - 02_HelperFunctions/
ComputeInstantFiring.m , MATLAB, 19 lines - 02_HelperFunctions/
ComputePairWiseDistance. , MATLAB, 9 linesm - 02_HelperFunctions/
ComputePopulationDelays. , MATLAB, 10 linesm - 02_HelperFunctions/
ComputePopulationProject , MATLAB, 14 linesionBias.m - 02_HelperFunctions/
GenerateSynapticDistrib. , MATLAB, 73 linesm - 02_HelperFunctions/
GetGaussianFiring.m , MATLAB, 12 lines - 02_HelperFunctions/
GetNetworkColors.m , MATLAB, 31 lines - 02_HelperFunctions/
MakeSummaryFigure.m , MATLAB, 6 lines - 02_HelperFunctions/
PlotAnimatedNetworkEmgan , MATLAB, 289 lines, 1 matchdPC.m - 02_HelperFunctions/
PlotDynamicsConnection3D , MATLAB, 64 lines.m - 02_HelperFunctions/
PlotTransitionRandomStru , MATLAB, 211 linesctured.m - 02_HelperFunctions/
PositionElectrodeAndSamp , MATLAB, 72 linesle3D.m - 02_HelperFunctions/
RescaleConnectivity.m , MATLAB, 8 lines - 02_HelperFunctions/
SimulateAxonProp.m , MATLAB, 168 lines - 04_Utilities/
@Colors/ , MATLAB, 25 linesColors.m - 04_Utilities/
SplitVec.m , MATLAB, 263 lines - 04_Utilities/
adj2inc.m , MATLAB, 96 lines - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 27 lines-master/ Cross.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 24 lines-master/ DecodeChromosome.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 24 lines-master/ DecodePopulation.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 13 lines-master/ EvaluateIndividual.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 24 lines-master/ EvaluatePopulation.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 23 lines-master/ Experiments.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 147 lines-master/ FunctionOptimization.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 27 lines-master/ InitializePopulation.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 26 lines-master/ InsertBestIndividual.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 24 lines-master/ Mutate.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 24 lines-master/ TournamentSelect.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 34 lines-master/ UnitTestCross.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 13 lines-master/ UnitTestDecodeChromosome .m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 15 lines-master/ UnitTestDecodePopulation .m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 21 lines-master/ UnitTestInitializePopula tion.m - 04_Utilities/
genetic-algorithm-matlab , MATLAB, 31 lines-master/ UnitTestInsertBestIndivi dual.m - 04_Utilities/
hline.m , MATLAB, 107 lines - 04_Utilities/
save2pdf.m , MATLAB, 21 lines - 04_Utilities/
vline.m , MATLAB, 107 lines - InstantiateModel.m, MATLAB, 45 lines
- LICENSE, License, 121 lines
- README.md, Text, 158 lines
codeocean:9317742
Availability: 1 check, the latest on 27 September 2026: cannot be verified
- 27 September 2026: cannot be verified
Code availability statement
The paper has a code availability statement. Its license (CC BY-NC-ND) does not allow reproducing it here; in short, from what the harvester recognized in it:
- it points to the authors' code: codeocean:9317742, BergLab/
SpinalProjectome - it says that the code is available on request
Read it in the paper: doi.org/10.1038/s41467-026-74228-0.
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:
- 3 repositories of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
- 74 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
Datasets cited
- geo:GSE184370, at NCBI GEO; found in the text, “Estimation of 2D spatial cell type distributions”
- github.com/
ariellevinelabninds/ , at github.com; found in the text, “Estimation of 2D spatial cell type distributions”seqseek_classify_data
Data availability statement
The paper has a data availability statement. Its license (CC BY-NC-ND) does not allow reproducing it here; in short, from what the harvester recognized in it:
- it says that the data are available on request
Read it in the paper: doi.org/10.1038/s41467-026-74228-0.
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 1, 27 September 2026: the first record
Recorded: type, language, journal, volume, issue, pages, dates, 9 authors, 2 keywords, 9 MeSH terms, 3 funders, 85 references.
Cite
This paper
Komi, S., Winther, A., Houser, G. A., Topilko, T., Sørensen, R., Larsen, S. D., Bonfils, M. C. A., Li, G., & Berg, R. W. (2026). Spatial and network principles behind neural generation of locomotion. Nature communications, 17(1), 7525. https://
BibTeX
@article{komi2026spatial
author = {Komi, Salif and Winther, August and Houser, Grace A and Topilko, Thomas and Sørensen, RJF and Larsen, Silas Dalum and Bonfils, Madelaine C Adamsson and Li, Guanghui and Berg, Rune W},
title = {{Spatial and network principles behind neural generation of locomotion}},
journal = {Nature communications},
year = {2026},
month = jun,
volume = {17},
number = {1},
pages = {7525},
publisher = {Nature Publishing Group},
issn = {2041-1723},
doi = {10.1038/
url = {https://
pmid = {42297824},
pmcid = {PMC13408478}
}
RIS
TY - JOUR
AU - Komi, Salif
AU - Winther, August
AU - Houser, Grace A
AU - Topilko, Thomas
AU - Sørensen, RJF
AU - Larsen, Silas Dalum
AU - Bonfils, Madelaine C Adamsson
AU - Li, Guanghui
AU - Berg, Rune W
TI - Spatial and network principles behind neural generation of locomotion
T2 - Nature communications
J2 - Nat Commun
PY - 2026
DA - 2026/
VL - 17
IS - 1
SP - 7525
SN - 2041-1723
PB - Nature Publishing Group
DO - 10.1038/
UR - https://
LA - en
ER -
CSL-JSON
{
"id": "10.1038/
"type": "article-journal",
"title": "Spatial and network principles behind neural generation of locomotion",
"container-title": "Nature communications",
"author": [
{
"family": "Komi",
"given": "Salif"
},
{
"family": "Winther",
"given": "August"
},
{
"family": "Houser",
"given": "Grace A"
},
{
"family": "Topilko",
"given": "Thomas"
},
{
"family": "Sørensen",
"given": "RJF"
},
{
"family": "Larsen",
"given": "Silas Dalum"
},
{
"family": "Bonfils",
"given": "Madelaine C Adamsson"
},
{
"family": "Li",
"given": "Guanghui"
},
{
"family": "Berg",
"given": "Rune W"
}
],
"container-title-short":
"volume": "17",
"issue": "1",
"page": "7525",
"DOI": "10.1038/
"PMID": "42297824",
"PMCID": "PMC13408478",
"ISSN": "2041-1723",
"publisher": "Nature Publishing Group",
"URL": "https://
"language": "en",
"issued": {
"date-parts": [
[
2026,
6,
15
]
]
}
}
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.21203/rs.3.rs-9914946/v1 [code]
- Neural manifolds in spinal networks that orchestrate walking and stoppingJournal: Research Square (preprint)In common: Signal Processing Toolbox, Statistics and Machine Learning Toolbox, 11 references, 3 authors
- [2] doi:10.1038/s41467-026-76522-3 [code]
- Transcriptomic analysis of spinal V1 interneurons informs their multifunctional role in motor output.Journal: Nature communicationsIn common: NumPy, genetics / omics, mouse, cellular / molecular, 19 references
- [3] doi:10.1038/s42003-026-10957-8 [code]
- Brain defence by the extracellular matrix protein Cochlin.Journal: Communications biologyIn common: Keras, TensorFlow, OpenCV, 4 other tools, mouse, cellular / molecular, 1 reference
- [4] doi:10.1523/jneurosci.1506-25.2026 [code]
- Controlling Spatio-Temporal Sequences of Neural Activity by Local Synaptic Changes.Journal: The Journal of neuroscience : the official journal of the Society for NeuroscienceIn common: NumPy, cellular / molecular, 5 references
- [5] doi:10.3389/fnetp.2026.1853254 [code]
- Recovery in gait and posture: a network-based approach to the assessment of rehabilitation effectiveness after spinal cord injury.Journal: Frontiers in network physiologyIn common: 5 references
- [6] doi:10.1002/epi.70296 [code]
- Fully automated three-dimensional deep learning-based magnetic resonance imaging segmentation of brain cavities in epilepsy surgery.Journal: EpilepsiaIn common: Keras, TensorFlow, OpenCV, 3 other tools
- [7] doi:10.1038/s41597-025-05174-7 [code]
- A large-scale MEG and EEG dataset for object recognition in naturalistic scenesJournal: n/aIn common: Keras, TensorFlow, OpenCV, 3 other tools
- [8] doi:10.3390/biomedicines14081670 [code]
- Limited Detectability of Network Functional Alterations in a Tauopathy Model Using Mouse Primary Cortical Cultures.Journal: BiomedicinesIn common: Keras, TensorFlow, Image Processing Toolbox, 3 other tools, mouse
- [9] doi:10.1038/s41467-026-73106-z [code]
- Respiratory pauses highlight sleep architecture in mice.Journal: Nature communicationsIn common: Keras, TensorFlow, Image Processing Toolbox, 3 other tools, mouse
- [10] doi:10.1038/s41593-026-02376-z [code]
- A framework for comparative analysis of human and mouse cortical neuron dendrites in corresponding brain regions.Journal: Nature neuroscienceIn common: Keras, OpenCV, Image Processing Toolbox, 3 other tools, mouse
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.
Claim this paper
Correct its record
Say what each link of this record is, remove the ones that are not the paper's, add the ones that are missing. The correction becomes a new version of the record, in its Versions section.
Validate its tracing map
You validate the map as this page shows it: 3 repositories of the authors' code, each at its verified commit and with its license, 74 scripts, and 3 matches between paragraphs and code (see the Code and Map sections). It then receives a DOI on Zenodo, with you (your ORCID iD) and OSCR as its creators; the code itself is not deposited.
The map's fingerprint: sha256:3fc0f8179f398152…
Add the badge to its README
The badge links the code to this page. Copy one of these into the README of the paper's code: only you decide where it goes, and nothing is changed for you.
Markdown
[, paste the snippet at the top, then “Commit changes…” and, to review it first, “Create a new branch and start a pull request”. You open the pull request; OSCR asks for no permission.
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.
