OSCR

Environmental Enrichment Preserves Retrosplenial Parvalbumin Density and Cognitive Function in Female 5xFAD Mice.

Code ↔ Paper

4 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 4 matches
  1. [1] § Materials and Methods › Imaging and image analysis › Functional connectivity analyses ↔ Terstege2023A/analyses/wholebrain/WholeBrainAnalysis.m, lines 1–64 · score 0.64 · Allen Mouse Brain, masks, microscope, neuroanatomical, Atlas, Fos
  2. [2] § Materials and Methods › Imaging and image analysis › Functional connectivity analyses ↔ Terstege2022A/WholeBrain/MATLAB/WholeBrainAnalysis_v101.m, lines 1–60 · score 0.63 · Allen Mouse Brain, masks, microscope, neuroanatomical, Atlas, Fos
  3. [3] § Materials and Methods › Statistics and data visualization ↔ Terstege2022A/WholeBrain/MATLAB/WholeBrainAnalysis_v101.m, lines 213–353 · score 0.52 · functional connectivity, graphs, Circle, Pearson, MATLAB, networks
  4. [4] § Results › Enriched housing conditions are sufficient to maintain healthy local activity and global functional connectivity of the RSC in female 5xFAD mice ↔ Terstege2022A/WholeBrain/MATLAB/WholeBrainAnalysis_v101.m, lines 213–353 · score 0.51 · correlation coefficient, functional connectivity, Circle, Pearson, networks, global

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 · 442 lines · 17 KB · CC-BY-4.0 · 3 matches

  1. %% WholeBrainAnalysis.m
  2. %
  3. % Whole Brain Analysis
  4. %
  5. % It is recommended that users read through the documentation in full
  6. % prior to using this analysis. This applies to each section in the code.
  7. % Sections are to be ran sequentially.
  8. %
  9. % All outputs can be accessed through the structure element "WB" in the
  10. % MATLAB workspace
  11. %
  12. % *GENERAL INFORMATION*
  13. %
  14. % WholeBrainAnalysis.m was developed for the compilation and analysis of
  15. % datasets collected using the Whole Brain software suite developed by
  16. % Daniel Furth (http://www.wholebrainsoftware.org) and incorporates a
  17. % modification using scripts and plugins
  18. % (https://github.com/dterstege/CavalieriPointMask) developed by
  19. % Dylan Terstege.
  20. %
  21. % Whole Brain is a neuroanatomical information system. Neuroanatomical
  22. % data obtained from microscope images is encoded and stored in
  23. % stereotactic coordinate form within the Allen Mouse Brain Atlas.
  24. % The software suite can be accessed at http://www.wholebrainsoftware.org
  25. %
  26. %
  27. % Additional Whole Brain scripts can be obtained from Dylan Terstege upon
  28. % request.
  29. %
  30. % Can be saved and re-loaded at any time using Processes X and Y, found
  31. % at the end of this script.
  32. %
  33. % NOTE: Avoid using spaces in any file, folder, or variable names. MATLAB
  34. % doesn't handle this well and in many cases the program will throw an
  35. % error in response.
  36. %
  37. % INPUTS:
  38. % "cells.csv" files: naming structure is not of particular
  39. % importance, but these files should contain the number of segmented
  40. % LABELS per region. This is a raw Whole Brain output. In the example
  41. % of c-Fos mapping, this is the number of c-fos+ cells per region.
  42. % "grids.csv" files: naming structure is not of particular
  43. % importance, but these files hsoudl contain the number of segmented
  44. % POINTS per region. This is a raw Whole Brain output. These points
  45. % are counted from the Cavalier Point Masks
  46. %
  47. % Requires "WB_Atlas.mat" to be in the MATLAB path
  48. %
  49. % *DEVELOPER INFORMATION*
  50. %
  51. % Version 1.0.1
  52. %
  53. %
  54. % Created 11/06/2021 Dylan Terstege (https://github.com/dterstege)
  55. % Epp Lab, University of Calgary (https://epplab.com)
  56. % Contact: [email hidden]
  57. welcomemessage = [' *** Running Whole Brain Analysis *** ', newline, ' Version 1.0.1',newline, newline, 'This program was written and developed by Dylan Terstege'];
  58. disp(welcomemessage);
  59. clear welcomemessage
  60. %% 01. Initialization
  61. % During this process, data will be loaded into the MATLAB structure
  62. % element 'WB' for later use. This step in the analysis is reasonable
  63. % hands-on and requires the user to point the script to several
  64. % directories and input animal IDs. The results of this data loading
  65. % can be found under the 'inputs' element within 'WB'
  66. %
  67. % Requires "WB_Atlas.mat" to be in the MATLAB path
  68. %
  69. % There are several variables which the user should adjust prior to
  70. % starting the analysis. These are listed below
  71. %
  72. % Group Information:
  73. % Input number of groups
  74. % default: groupnum = 2
  75. % Input group identifiers
  76. % default: groups = ["CTRL" "MWT"]
  77. % Input number of animals per group
  78. % default: pergroup = [10 10]
  79. % Input individual IDs
  80. % defaults:
  81. % IDs.CTRL = ["DT42br" "DT44br" "DT45w" "DT63" "DT64" "DT65" "DT71" "DT76" "DT92" "DT93"];
  82. % IDs.MWT = ["DT11" "DT12" "DT12bl" "DT12br" "DT13" "DT14" "DT15" "DT16w" "DT17br" "DT23"];
  83. %
  84. % Image Specifications:
  85. % Input area factor
  86. % default: areafactor = 0.56286606
  87. %clear structure to start fresh
  88. clear WB
  89. %input number of groups
  90. WB.info.groupnum = 2;
  91. %input group identifiers
  92. WB.info.groups = ["CTRL" "MWT"]; %manually adjust, no spaces
  93. %input number of animals per group
  94. WB.info.pergroup = [10 10]; %manually adjust
  95. %input individual IDs
  96. %make sure group names appear in same order as inputted in the group
  97. %identifiers variable
  98. WB.info.IDs.CTRL = ["DT42br" "DT44br" "DT45w" "DT63" "DT64" "DT65" "DT71" "DT76" "DT92" "DT93"];
  99. WB.info.IDs.MWT = ["DT11" "DT12" "DT12bl" "DT12br" "DT13" "DT14" "DT15" "DT16w" "DT17br" "DT23"];
  100. %area factor
  101. WB.info.areafactor = 0.56286606; % ((dist/pix)*(pix/point))^2
  102. %load full whole brain atlas
  103. WB.info.fullatlas = load('WB_Atlas.mat');
  104. %load whole brain output files
  105. for ii=1:WB.info.groupnum(1)
  106. for iii=1:WB.info.pergroup(ii)
  107. %import raw data
  108. %import cells
  109. prompt=strcat("Select parent folder for mouse ",(WB.info.IDs.(WB.info.groups(ii))(iii))," in ",WB.info.groups(ii)," group:");
  110. disp(prompt);
  111. parentpath=uigetdir; %identify parent directory
  112. cellpath=fullfile(parentpath,'cell');
  113. celldir=dir(cellpath); %set directory
  114. cellcsv={celldir(:).name}; %scan directory
  115. cellcsv(ismember(cellcsv,{'.','..'}))=[]; %filter
  116. cellcsv=cellcsv(~startsWith(cellcsv,'._')); %removes dot underscore files
  117. csvindex=contains(cellcsv,'.csv'); %identify csv
  118. cellcsv=cellcsv(csvindex); %list csv files
  119. cellcount=numel(cellcsv); %count csv
  120. WB.inputs.(WB.info.groups(ii)).(char(WB.info.IDs.(WB.info.groups(ii))(iii))).cells=NaN(numel(WB.info.fullatlas.WB_Atlas),cellcount);
  121. for iiii=1:cellcount
  122. data=readcell(char(fullfile(cellpath,cellcsv(iiii)))); %load cell file
  123. regions=data(2:end,2); %identify regions in file
  124. counts=data(2:end,3);
  125. [~,k]=intersect(WB.info.fullatlas.WB_Atlas,regions); %find index of regions in file with full atlas
  126. WB.inputs.(WB.info.groups(ii)).(char(WB.info.IDs.(WB.info.groups(ii))(iii))).cells(k,iiii)=cell2mat(counts);
  127. end
  128. %import grids
  129. gridpath=fullfile(parentpath,'grid');
  130. griddir=dir(gridpath); %set directory
  131. gridcsv={griddir(:).name}; %scan directory
  132. gridcsv(ismember(gridcsv,{'.','..'}))=[]; %filter
  133. gridcsv=gridcsv(~startsWith(gridcsv,'._')); %removes dot underscore files
  134. csvindex=contains(gridcsv,'.csv'); %identify csv
  135. gridcsv=gridcsv(csvindex); %list csv files
  136. gridcount=numel(gridcsv); %count csv
  137. WB.inputs.(WB.info.groups(ii)).(char(WB.info.IDs.(WB.info.groups(ii))(iii))).areas=NaN(numel(WB.info.fullatlas.WB_Atlas),gridcount);
  138. for iiii=1:gridcount
  139. data=readcell(char(fullfile(gridpath,gridcsv(iiii)))); %load grid file
  140. regions=data(2:end,2); %identify regions in file
  141. area=cell2mat(data(2:end,3));
  142. area=area*(WB.info.areafactor);
  143. [~,k]=intersect(WB.info.fullatlas.WB_Atlas,regions); %find index of regions in file with full atlas
  144. WB.inputs.(WB.info.groups(ii)).(char(WB.info.IDs.(WB.info.groups(ii))(iii))).areas(k,iiii)=area;
  145. end
  146. end
  147. end
  148. %process successful
  149. %clean up variable space
  150. clearvars -except WB
  151. %process complete
  152. disp('Process 1. Initialization Complete');
  153. %% 02. Regional Label Density
  154. % During this process, the density of the segmented label will be
  155. % calculated using a user-defined atlas organization. This process is
  156. % completely hands-off once the atlas has been created and added to the
  157. % MATLAB path. Its name should be inputed to the script in place of the
  158. % default atlas.
  159. %
  160. % Requires "User_Atlas_98reg.mat", or whatever the user names it, to be in the
  161. % MATLAB path
  162. %
  163. % User must have the WB structure in their workspace prior to starting
  164. % this process
  165. %load user atlas
  166. WB.info.useratlas = load('User_Atlas_98reg.mat'); %adjust as needed
  167. regnum=((numel(WB.info.useratlas.User_Atlas_98reg))/3)-1; %number of regions %adjust as needed
  168. regiondims=cell2mat(WB.info.useratlas.User_Atlas_98reg(2:end,2:3)); %identifies where regions start and end %adjust as needed
  169. for ii=1:WB.info.groupnum(1)
  170. %create output arrays
  171. WB.outputs.(WB.info.groups(ii)).totalcells=NaN(regnum,WB.info.pergroup(ii)); %NaN array
  172. WB.outputs.(WB.info.groups(ii)).totalarea=NaN(regnum,WB.info.pergroup(ii)); %NaN array
  173. WB.outputs.(WB.info.groups(ii)).density=NaN(regnum,WB.info.pergroup(ii)); %NaN array
  174. for iii=1:WB.info.pergroup(ii)
  175. cells=nansum(WB.inputs.(WB.info.groups(ii)).(char(WB.info.IDs.(WB.info.groups(ii))(iii))).cells,2); %total number of segmented labels in each region
  176. areas=nansum(WB.inputs.(WB.info.groups(ii)).(char(WB.info.IDs.(WB.info.groups(ii))(iii))).areas,2); %total area of each region
  177. for iiii=1:regnum %sequentially run through regions in custom atlas organization
  178. temp=regiondims(iiii,:); %isolate dimensions of region
  179. tempcell=sum(cells(temp(1):temp(2),1)); %isolate and sum row(s) within region bounds
  180. temparea=sum(areas(temp(1):temp(2),1)); %isolate and sum row(s) within region bounds
  181. tempdensity=tempcell/temparea; %calculate density
  182. WB.outputs.(WB.info.groups(ii)).totalcells(iiii,iii)=tempcell; %save cells
  183. WB.outputs.(WB.info.groups(ii)).totalarea(iiii,iii)=temparea; %save area
  184. WB.outputs.(WB.info.groups(ii)).density(iiii,iii)=tempdensity; %save density
  185. end
  186. %corrections
  187. idx=((WB.outputs.(WB.info.groups(ii)).totalarea)==0);
  188. WB.outputs.(WB.info.groups(ii)).totalcells(idx)=0;
  189. WB.outputs.(WB.info.groups(ii)).density(idx)=nan;
  190. end
  191. end
  192. %clean up variable space
  193. clearvars -except WB
  194. %process complete
  195. disp('Process 2. Regional Label Density Complete');
  196. %% 03. Basic Network Analyses
  197. % During this process, pairwise correlation matrices will be generated
  198. % from the segmented label densities from
  199. %
  200. % Required packages in MATLAB path:
  201. % fdr_bh.m (https://www.mathworks.com/matlabcentral/fileexchange/27418-fdr_bh)
  202. % degrees_und.m (https://sites.google.com/site/bctnet/)
  203. %
  204. % Outputs:
  205. % - Correlation Matrices
  206. % Pearson's R
  207. % p-value matrix
  208. % - Binarized Adjacency Matrix
  209. % - Survival curve of functional connections with increased Pearson's
  210. % threshold
  211. %
  212. % User must have the WB structure in their workspace prior to starting
  213. % this process
  214. %
  215. % NOTE: 'NaN' values in density matrix will have major implications on the
  216. % correlation matrices. Be sure to consider these values very carefully
  217. % during interpretation of results. NaN occurs when a region was not
  218. % registered for an animal
  219. %user input variables
  220. %thresholding
  221. % significance threshold for pariwise correlations
  222. WB.info.networks.threshold.pthresh = 0.0005;
  223. % false discovery rate threshold for pariwise correlations
  224. WB.info.networks.threshold.fdrthresh = 0.05;
  225. % cutoff for binarizing matrix
  226. WB.info.networks.threshold.binary = 0.95;
  227. %correlation strength survival
  228. % minimum value to look at
  229. WB.info.networks.corrstrength.startR=0.00;
  230. % maximum value to look at
  231. WB.info.networks.corrstrength.lastR=1.00;
  232. % resolution of analysis
  233. WB.info.networks.corrstrength.stepSize=0.01;
  234. %analysis
  235. for ii=1:WB.info.groupnum(1)
  236. %load files
  237. dens=WB.outputs.(WB.info.groups(ii)).density;
  238. [cormat,pVal]=corr(dens','Type','Pearson'); %pearson pairwise correlation coefficient
  239. %save un-thresholded data
  240. WB.outputs.(WB.info.groups(ii)).networks.correlationmatrix.unthresholded=cormat;
  241. WB.outputs.(WB.info.groups(ii)).networks.correlationmatrix.pvalues=pVal;
  242. %optional: save correlation matrix heatmap
  243. %correlation matrix image
  244. figure('visible','off');
  245. clims=[-1 1];
  246. imagesc(cormat,clims);
  247. colorbar;
  248. colormap(redbluecmap);
  249. set(gcf,'Position',get(0,'Screensize'));
  250. axis('square');
  251. set(gca,'YTick',[]);
  252. set(gca,'XTick',[]);
  253. figname=strcat(WB.info.groups(ii),'_correlation.png');
  254. saveas(gcf,figname); %makes graph image
  255. close gcf
  256. %threshold
  257. cormat(pVal>=(WB.info.networks.threshold.pthresh))=0;
  258. fdr=fdr_bh(pVal,WB.info.networks.threshold.fdrthresh);
  259. cormat(fdr==0)=0;
  260. WB.outputs.(WB.info.groups(ii)).networks.correlationmatrix.thresholded=cormat;
  261. %optional: save adjacency matrix
  262. %adjacency matrix image
  263. figure('visible','off');
  264. clims=[-1 1];
  265. imagesc(cormat,clims);
  266. colorbar;
  267. colormap(redbluecmap);
  268. set(gcf,'Position',get(0,'Screensize'));
  269. axis('square');
  270. set(gca,'YTick',[]);
  271. set(gca,'XTick',[]);
  272. figname=strcat(WB.info.groups(ii),'_adjacency.png');
  273. saveas(gcf,figname); %makes graph image
  274. close gcf
  275. %correlation strength survival
  276. numsteps=((WB.info.networks.corrstrength.lastR)-(WB.info.networks.corrstrength.startR))/(WB.info.networks.corrstrength.stepSize);
  277. corsurvivalcurve=zeros(numsteps,1);
  278. tempR=WB.info.networks.corrstrength.startR;
  279. for iii=1:numsteps
  280. temp=cormat;
  281. temp(temp<tempR & temp>(-(tempR)))=0; %threshold
  282. temp(temp>tempR | temp<(-(tempR)))=1; %threshold
  283. deg=degrees_und(temp);
  284. totalconnections=sum(deg)/2; %number of connections
  285. corsurvivalcurve(iii)=totalconnections;
  286. tempR=tempR+(WB.info.networks.corrstrength.stepSize); %adjust threshold to next step
  287. end
  288. WB.outputs.(WB.info.groups(ii)).networks.corrstrengthsurvival=corsurvivalcurve;
  289. %binarize to undirected adjacency matrix
  290. cormat(cormat<(WB.info.networks.threshold.binary) & cormat>-(WB.info.networks.threshold.binary))=0;
  291. cormat(cormat>(WB.info.networks.threshold.binary) | cormat<-(WB.info.networks.threshold.binary))=1;
  292. %optional: save adjacency matrix circle plot
  293. G=graph(cormat,'upper','omitselfloops');
  294. figure('visible','off');h=plot(G,'layout','circle'); h.MarkerSize=2;
  295. regnames=WB.info.useratlas.(char(fieldnames(WB.info.useratlas)))(2:end,1);
  296. labelnode(h,(1:size(cormat,1)),regnames);
  297. set(gcf,'Position',get(0,'Screensize'));
  298. axis('square');
  299. set(gca,'YTick',[]);
  300. set(gca,'XTick',[]);
  301. figname=strcat(WB.info.groups(ii),'_circleplot.png');
  302. saveas(gcf,figname); %makes graph image
  303. close gcf
  304. %general network parameters
  305. %density
  306. dens=density_und(cormat);
  307. %degree
  308. deg=(degrees_und(cormat))';
  309. %global efficiency
  310. ge=efficiency_bin(cormat);
  311. %clustering coefficient
  312. cc=clustering_coef_bu(cormat);
  313. %save outputs
  314. WB.outputs.(WB.info.groups(ii)).networks.degrees=deg;
  315. WB.outputs.(WB.info.groups(ii)).networks.density=dens;
  316. WB.outputs.(WB.info.groups(ii)).networks.globalefficiency=ge;
  317. WB.outputs.(WB.info.groups(ii)).networks.clusteringcoeff=cc;
  318. end
  319. %clean up variable space
  320. clearvars -except WB
  321. %process complete
  322. disp('Process 3. Basic Network Analyses Complete');
  323. %% 4. Other Network Analyses
  324. % User must have the WB structure in their workspace prior to starting
  325. % this process
  326. %
  327. % Analyses:
  328. % Centrality
  329. % Targeted Node Deletion
  330. % requires targeteddeletioncurve.m (https://github.com/dterstege/TargetedNodeDeletionToolbox)
  331. % Markov Clustering
  332. % requires mcl.m and deduce_mcl_clusters.m (https://github.com/AndrasHartmann/MMCL)
  333. % Small-World-Like Properties
  334. % requires smallworldassessment.m (https://github.com/dterstege/SmallWorldAssessment)
  335. %analysis
  336. for ii=1:WB.info.groupnum(1)
  337. %load files
  338. amat=WB.outputs.(WB.info.groups(ii)).networks.correlationmatrix.thresholded;
  339. cormat=WB.outputs.(WB.info.groups(ii)).networks.correlationmatrix.unthresholded;
  340. thresh=WB.info.networks.threshold.binary;
  341. regnames=WB.info.useratlas.(char(fieldnames(WB.info.useratlas)))(2:end,1);
  342. %Katz Centrality
  343. n=size(amat,2);
  344. x0=zeros(n,1);
  345. x1=repmat((1/n),n,1);
  346. alpha=0.1; %dampening factor - adjust as needed
  347. beta=1.0; %exogenous vector
  348. t=2; %precision - adjust as needed
  349. eps=1/(10^t);
  350. iter=0;
  351. while (sum(abs(x0-x1))>eps)
  352. x0=x1;
  353. x1=(alpha*x1.*amat)+beta;
  354. iter=iter+1;
  355. end
  356. x1(x1==1)=NaN;
  357. cent=sum(x1,2,'omitnan');
  358. WB.outputs.(WB.info.groups(ii)).networks.centrality=cent;
  359. %Targeted Node Deletion
  360. [GC,E]=targeteddeletioncurve(cormat,thresh);
  361. WB.outputs.(WB.info.groups(ii)).networks.targeteddeletion.efficiency=E;
  362. WB.outputs.(WB.info.groups(ii)).networks.targeteddeletion.giantcomponent=GC;
  363. %markov clusters
  364. sbeG=mcl(amat, 0, 0, 0, 0, n); %no self loops
  365. [numclusts,clustmembers]=deduce_mcl_clusters(sbeG,regnames);
  366. WB.outputs.(WB.info.groups(ii)).networks.markov.numberofclusters=numclusts;
  367. WB.outputs.(WB.info.groups(ii)).networks.markov.clustermembers=clustmembers;
  368. %Small World Properties
  369. [SW,~,C,CR,E,ER]=smallworldassessment(amat,thresh);
  370. %save
  371. WB.outputs.(WB.info.groups(ii)).networks.smallworld.status=SW;
  372. WB.outputs.(WB.info.groups(ii)).networks.smallworld.clustering=C;
  373. WB.outputs.(WB.info.groups(ii)).networks.smallworld.randomclustering=CR;
  374. WB.outputs.(WB.info.groups(ii)).networks.smallworld.efficiency=E;
  375. WB.outputs.(WB.info.groups(ii)).networks.smallworld.randomefficiency=ER;
  376. end
  377. %clean up variable space
  378. clearvars -except WB
  379. %process complete
  380. disp('Process 4. Other Network Analyses Complete');
  381. %% X. Save Structure to .mat File
  382. %keep file for easy data access later
  383. save('WB.mat','-struct','WB');
  384. disp('Process X. Save Structure to a .mat File Complete');
  385. %% Y. Load .mat File
  386. % navigate to folder containing 'WB.mat'
  387. load('WB.mat')
  388. w=whos;
  389. for ii=1:length(w)
  390. WB.(w(ii).name)=eval(w(ii).name);
  391. clear w(ii).name
  392. end
  393. %clean up variable space
  394. clearvars -except WB
  395. disp('Process Y. Load .mat File Complete');

WholeBrainAnalysis_v101.m, under CC-BY-4.0 · at the source

Overview

  1. Department of Cell Biology and Anatomy, Hotchkiss Brain Institute, Cumming School of Medicine, University of Calgary, Calgary, Alberta T2N 4N1, Canada
Institutions: University of Calgary (Canada); Hotchkiss Brain Institute (Canada)
Dates: received 4 March 2025; accepted 5 January 2026; published online 3 February 2026; in print 4 March 2026
Type: Research article · Language: English
License: CC BY
Identifiers: DOI 10.1523/jneurosci.0455-25.2026 · PMID 41633836 · PMCID PMC12962780 · OpenAlex W7127321809
Open access: hybrid, a free copy (OpenAlex)
Status: code verified
Categories: behavior only (modality), human (organism), mouse (organism), Alzheimer's / dementia (population), cognitive (subfield)
Methods: Connectivity, Statistics, Smoothing, state filtering, decompositions
Keywords: Alzheimer's disease, enriched housing, perineuronal nets, retrosplenial cortex
MeSH: Alzheimer Disease*, Cognition*, Environment*, Gyrus Cinguli*, Parvalbumins*, Amyloid beta-Protein Precursor, Animals, Disease Models, Animal, Female, Housing, Animal, Humans, Interneurons, Mice, Mice, Transgenic, Perineuronal Nets, Plant Lectins, Receptors, N-Acetylglucosamine (* major topic)
Topic: Alzheimer's disease research and treatments (Physiology, Medicine), according to OpenAlex
Citations: cited by 1 paper (Europe PMC); 103 references in the paper
Research resources: RRID:Addgene_28306

Abstract

The rate of cognitive decline in Alzheimer's disease (AD) varies considerably from person to person. Numerous epidemiological studies point to the protective effects of cognitive, social, and physical enrichment as potential mediators of cognitive decline in AD; however, there is much debate as to the mechanism underlying these protective effects. The retrosplenial cortex (RSC) is one of the earliest brain regions with impaired functions during AD pathogenesis, and its activity is affected by cognitive, social, and physical stimulation, making it a particularly interesting region to investigate the influences of an enriched lifestyle on AD pathogenesis. In the current study, we use the 5xFAD mouse mode of AD to examine the impact of enriched housing conditions on cognitive function in AD and the viability of a particularly vulnerable cell population within the RSC—parvalbumin interneurons (PV-INs). Enriched housing conditions improved cognitive performance in female 5xFAD mice. These changes in cognitive performance coincided with restored functional connectivity of the RSC and preserved PV-IN density within this region. Along with preserved PV-IN density, there was an increase in the density of Wisteria floribunda agglutinin-positive perineuronal nets (WFA+ PNNs) across the RSC of 5xFAD mice housed in enriched conditions. Direct manipulation of WFA+ PNNs revealed that these extracellular matrix structures protect PV-INs from amyloid toxicity and may be the mechanisms underlying the protective effects of enrichment. Together, these results provide support for the WFA+ PNN-mediated maintenance of PV-INs in the RSC as a potential mechanism mediating the protective effects of enrichment against cognitive decline in AD.

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 4 matches between paragraphs and lines of code.

Zenodo 17569435

License: CC-BY-4.0
State: the link answers, verified on 30 September 2026
Evidence: files inventoried
Size: 1 file
Software Heritage: not checked
Found in: the text, “Statistics and data visualization”
Not found: README, license file, CITATION.cff, environment file, tests, continuous integration, documentation
Availability: 1 check, the latest on 30 September 2026: the link answers (HTTP 200)
  • 30 September 2026: the link answers (HTTP 200)
15 files

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;
  • 14 scripts, each with its path and the digest of its content;
  • 4 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

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, 30 September 2026: the first record

Recorded: type, language, journal, volume, issue, pages, dates, 2 authors, 4 keywords, 17 MeSH terms, 103 references, 1 RRID.

Cite

This paper

Terstege, D. J., & Epp, J. R. (2026). Environmental Enrichment Preserves Retrosplenial Parvalbumin Density and Cognitive Function in Female 5xFAD Mice. The Journal of neuroscience : the official journal of the Society for Neuroscience, 46(9), e0455252026. https://doi.org/10.1523/jneurosci.0455-25.2026

BibTeX

@article{terstege2026environmental,
author = {Terstege, Dylan J and Epp, Jonathan R},
title = {{Environmental Enrichment Preserves Retrosplenial Parvalbumin Density and Cognitive Function in Female 5xFAD Mice}},
journal = {The Journal of neuroscience : the official journal of the Society for Neuroscience},
year = {2026},
month = mar,
volume = {46},
number = {9},
pages = {e0455252026},
publisher = {Society for Neuroscience},
issn = {0270-6474},
doi = {10.1523/jneurosci.0455-25.2026},
url = {https://doi.org/10.1523/jneurosci.0455-25.2026},
pmid = {41633836},
pmcid = {PMC12962780}
}

RIS

TY - JOUR
AU - Terstege, Dylan J
AU - Epp, Jonathan R
TI - Environmental Enrichment Preserves Retrosplenial Parvalbumin Density and Cognitive Function in Female 5xFAD Mice
T2 - The Journal of neuroscience : the official journal of the Society for Neuroscience
J2 - J Neurosci
PY - 2026
DA - 2026/03/04
VL - 46
IS - 9
SP - e0455252026
SN - 0270-6474
PB - Society for Neuroscience
DO - 10.1523/jneurosci.0455-25.2026
UR - https://doi.org/10.1523/jneurosci.0455-25.2026
LA - en
ER -

CSL-JSON

{
"id": "10.1523/jneurosci.0455-25.2026",
"type": "article-journal",
"title": "Environmental Enrichment Preserves Retrosplenial Parvalbumin Density and Cognitive Function in Female 5xFAD Mice",
"container-title": "The Journal of neuroscience : the official journal of the Society for Neuroscience",
"author": [
{
"family": "Terstege",
"given": "Dylan J"
},
{
"family": "Epp",
"given": "Jonathan R"
}
],
"container-title-short": "J Neurosci",
"volume": "46",
"issue": "9",
"page": "e0455252026",
"DOI": "10.1523/jneurosci.0455-25.2026",
"PMID": "41633836",
"PMCID": "PMC12962780",
"ISSN": "0270-6474",
"publisher": "Society for Neuroscience",
"URL": "https://doi.org/10.1523/jneurosci.0455-25.2026",
"language": "en",
"issued": {
"date-parts": [
[
2026,
3,
4
]
]
}
}

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.1038/s41467-026-73474-6 [code]
Dual platform spatial transcriptomics reveals parvalbumin interneuron subtype vulnerability in mouse models of Alzheimer's disease.
Journal: Nature communications
In common: Alzheimer's / dementia, mouse, 6 references, 2 authors
[2] doi:10.1038/s41467-026-74565-0 [code]
The functional neurobiology of dispositions towards negative emotions.
Journal: Nature communications
In common: Brain Connectivity Toolbox, fdr_bh (Benjamini-Hochberg FDR), Signal Processing Toolbox, 1 other tool, cognitive
[3] doi:10.1038/s41467-026-71151-2 [code]
Common and distinct neural correlates of social interaction processing and theory of mind in narratives.
Journal: Nature communications
In common: Brain Connectivity Toolbox, fdr_bh (Benjamini-Hochberg FDR), Signal Processing Toolbox, 1 other tool, cognitive
[4] doi:10.1002/hbm.70577 [code]
Disgust Propensity, Not Disgust Sensitivity, Shapes the Reactivity of a Subjective Disgust Circuit in Humans.
Journal: Human brain mapping
In common: Brain Connectivity Toolbox, fdr_bh (Benjamini-Hochberg FDR), Signal Processing Toolbox, 1 other tool
[5] doi:10.1038/s41386-026-02426-x [code]
A frontotemporal dementia-like phenotype in schizophrenia: links to striatal dopamine and iron accumulation.
Journal: Neuropsychopharmacology : official publication of the American College of Neuropsychopharmacology
In common: Brain Connectivity Toolbox, fdr_bh (Benjamini-Hochberg FDR), Statistics and Machine Learning Toolbox, Alzheimer's / dementia
[6] doi:10.1002/hbm.70533 [code]
Trait-Relevant Tasks Improve Personality Prediction From Structural-Functional Brain Network Coupling.
Journal: Human brain mapping
In common: Brain Connectivity Toolbox, fdr_bh (Benjamini-Hochberg FDR), Statistics and Machine Learning Toolbox, cognitive
[7] doi:10.1016/j.dcn.2026.101789 [code]
Feasibility of precision functional mapping in youth multi-echo fMRI data.
Journal: Developmental cognitive neuroscience
In common: Brain Connectivity Toolbox, fdr_bh (Benjamini-Hochberg FDR), Statistics and Machine Learning Toolbox
[8] doi:10.1111/jnc.70503
Astrocytic Regulation of Aberrant Perineuronal Net Formation in Mecp2-Null Neocortex.
Journal: Journal of neurochemistry
In common: mouse, 3 references
[9] doi:10.1093/brain/awaf443 [code]
Cellular signatures underlying functional resilience in presymptomatic frontotemporal dementia.
Journal: Brain : a journal of neurology
In common: fdr_bh (Benjamini-Hochberg FDR), Statistics and Machine Learning Toolbox, Alzheimer's / dementia, 1 reference
[10] 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: Brain Connectivity Toolbox, Signal Processing Toolbox, Statistics and Machine Learning Toolbox, cognitive

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.