Principles of gamma synchrony predict figure-ground perception in texture stimuli.
The 16 matches · 1 of them tie a paragraph to a whole file, not to given lines: a weak match, whose lines are not tinted
- [1] § Results › Synchrony principles govern static figure-ground perception ↔ scripts/simulation/parameter_exploration.py, lines 140–210 · score 0.83 · parameter space exploration, min max normalization, weighted Jaccard, V1 model, behavioral Arnold tongue, model parameter
- [2] § Methods › Behavioral experiments › Tasks and procedure ↔ experiment.m, lines 239–388 · score 0.69 · inter trial interval, fixation window, gaze, pressing
- [3] § Results › Plasticity-induced changes in synchrony quantitatively predict perceptual learning ↔ scripts/plotting/figure_five.py, lines 316–375 · score 0.68 · min max normalized, noise ceiling, confidence intervals, bars, mixed, Arnold tongue
- [4] § Methods › Behavioral experiments › Tasks and procedure ↔ setupEyeTracker.m, the whole file · a weak match · score 0.68 · eye tracker, Bit, Eyelink, Windows, resolution, Fixation
- [5] § Methods › Oscillator model of V1 › Intrinsic frequency ↔ src/v1_model.py, lines 101–146 · score 0.66 · threshold linear, receptive field, diameter, Gaussian, eccentricity, pixel
- [6] § Results › Plasticity-induced changes in synchrony quantitatively predict perceptual learning ↔ scripts/plotting/figure_five.py, lines 22–58 · score 0.61 · noise ceiling, weighted Jaccard, behavioral Arnold tongue, correlations, model
- [7] § Results › Synchrony principles govern static figure-ground perception ↔ notebooks/statistics_session1.ipynb, lines 95–102 · score 0.61 · frequency detuning, human ability, determine synchrony, coupled oscillators, texture stimuli, coupling strength
- [8] § Methods › Oscillator model of V1 › Adaptive coupling ↔ scripts/simulation/crossval_estimation.py, lines 206–274 · score 0.61 · cross validation, weighted Jaccard, coarse, synchrony, model
- [9] § Methods › Behavioral experiments › Stimuli ↔ src/model_utils.py, lines 52–81 · score 0.60 · polar angle, visual field, eccentricity
- [10] § Results › Synchrony principles govern static figure-ground perception ↔ scripts/simulation/crossval_prediction.py, lines 156–253 · score 0.58 · min max normalization, weighted Jaccard, diagonally, optimal, Arnold tongue, correlations
- [11] § Results ↔ src/model_utils.py, lines 52–81 · score 0.57 · complex logarithmic, visual field, transformation, eccentricity, cortical, space
- [12] § Results › Plasticity-induced changes in synchrony quantitatively predict perceptual learning ↔ scripts/simulation/crossval_estimation.py, lines 322–367 · score 0.55 · cross validation, behavioral Arnold tongue, optimizing, fold, weighted, fitting
- [13] § Results ↔ experiment.m, lines 31–38 · score 0.53 · Eye tracking, fixation point, deviation, blocks, stimuli
- [14] § Results › Synchrony principles govern static figure-ground perception ↔ notebooks/statistics_session1.ipynb, lines 65–93 · score 0.52 · hierarchical logistic regression, model synchrony
- [15] § Results ↔ scripts/simulation/crossval_estimation.py, lines 206–274 · score 0.52 · cross validation, upper bound, locking, weighted, simulated, stimuli
- [16] § Results › Synchrony principles govern static figure-ground perception ↔ notebooks/statistics_session1.ipynb, lines 65–93 · score 0.51 · hierarchical logistic regression, statistical model, coarseness, Synchrony
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
Jupyter notebook · 279 lines · 8 KB · MIT · 3 matches
- # %% [markdown]
- # ### Setup
- # %%
- # Add the parent directory of the current working directory to the Python path at runtime.
- # In order to import modules from the src directory.
- import os
- import sys
- current_dir = os.getcwd()
- parent_dir = os.path.dirname(current_dir)
- sys.path.insert(0, parent_dir)
- # %%
- import numpy as np
- import pandas as pd
- import bambi as bmb
- import arviz as az
- from prettytable import PrettyTable
- from sklearn.metrics import r2_score
- from src.stat_utils import *
- from src.anl_utils import load_data, get_session_data
- # %% [markdown]
- # ### Load and prepare data
- # %%
- sim_results_folder = '../results/simulation'
- data_folder = '../data'
- sync_at_file = os.path.join(sim_results_folder, 'first_session_arnold_tongues.npy')
- effective_fr_file = os.path.join(sim_results_folder, 'first_session_effective_firing_rates.npy')
- emp_at_file = os.path.join(data_folder, 'Experiment.csv')
- # %%
- # Load the simulations results and the empirical data
- sync_results = np.load(sync_at_file)
- sync_results_vector = sync_results.mean(axis=0).flatten()
- effective_results = np.load(effective_fr_file)
- effective_vector = effective_results.mean(axis=0).flatten()
- reference = effective_results[:,:,-1]
- delta_results = effective_results - np.expand_dims(reference, 2)
- delta_vector = delta_results.mean(axis=0).flatten()
- # Get the data for the first session
- data = load_data(emp_at_file)
- data = get_session_data(data, 1)
- # Map synchrony values to each condition in DataFrame
- data['Synchrony'] = data['Condition'].apply(lambda x: sync_results_vector[x-1])
- data['EffectiveFiring'] = data['Condition'].apply(lambda x: effective_vector[x-1])
- data['DeltaFiring'] = data['Condition'].apply(lambda x: delta_vector[x-1])
- data_valid = data[data['ContrastHeterogeneity'] != 1].copy()
- # Z-score relevant columns
- data = zscore_data(data, ['ContrastHeterogeneity', 'GridCoarseness', 'Synchrony', 'EffectiveFiring'])
- data_valid = zscore_data(data_valid, ['Synchrony', 'EffectiveFiring', 'DeltaFiring'])
- # %% [markdown]
- # ### Define statistical models
- # %%
- # Features-only hierarchical logistic regression
- model_features = bmb.Model(
- "Correct ~ 1 + ContrastHeterogeneity * GridCoarseness + (1 + ContrastHeterogeneity * GridCoarseness|SubjectID)",
- data=data,
- family="bernoulli"
- )
- # Model synchrony (mechanism)
- model_sync = bmb.Model(
- "Correct ~ 1 + Synchrony + (1 + Synchrony | SubjectID)",
- data=data,
- family="bernoulli"
- )
- model_effective = bmb.Model(
- "Correct ~ 1 + EffectiveFiring + (1 + EffectiveFiring | SubjectID)",
- data=data,
- family="bernoulli"
- )
- model_delta = bmb.Model(
- "Correct ~ 1 + DeltaFiring + (1 + DeltaFiring | SubjectID)",
- data=data_valid,
- family="bernoulli"
- )
- # %% [markdown]
- # Are the factors that determine synchrony among coupled oscillators (frequency detuning and coupling strength) predictive of human ability to segregate a rectangular figure from its background in texture stimuli?
- # %%
- idata_features = model_features.fit(
- draws=2000, tune=2000, target_accept=0.95,
- idata_kwargs={"log_likelihood": True}, progressbar=False
- )
- # %%
- predictors = ["ContrastHeterogeneity", "GridCoarseness", "ContrastHeterogeneity:GridCoarseness"]
- directions = ['less', 'less', 'greater']
- posterior = posterior_table(idata_features, predictors, directions)
- odds_ratios = OR_table(idata_features, predictors)
- print("One-sided posterior probabilities:")
- print(posterior)
- print("\nOdds ratios:")
- print(odds_ratios)
- az.summary(idata_features, var_names=predictors, hdi_prob=0.95)
- # %% [markdown]
- # Does the synchronization behavior of a biophysical model of V1 predict human ability to segregate a rectangular figure from its background in texture stimuli?
- # %%
- idata_sync = model_sync.fit(
- draws=2000, tune=2000, target_accept=0.95,
- idata_kwargs={"log_likelihood": True}, progressbar=False
- )
- # %%
- predictors = ["Synchrony"]
- directions = ['greater']
- posterior = posterior_table(idata_sync, predictors, directions)
- odds_ratios = OR_table(idata_sync, predictors)
- print("One-sided posterior probabilities:")
- print(posterior)
- print("\nOdds ratios:")
- print(odds_ratios)
- az.summary(idata_sync, var_names=predictors, hdi_prob=0.95)
- # %% [markdown]
- # Does firing rate explain figure-ground perception? Does it do equally well as synchrony?
- #
- # Step 1: Does pure firing rate in the figure explain figure-ground perception?
- # %%
- idata_effective = model_effective.fit(
- draws=2000, tune=2000, target_accept=0.95,
- idata_kwargs={"log_likelihood": True}, progressbar=False
- )
- # %%
- predictors = ["EffectiveFiring"]
- directions = ['greater']
- posterior = posterior_table(idata_effective, predictors, directions)
- odds_ratios = OR_table(idata_effective, predictors)
- print("One-sided posterior probabilities:")
- print(posterior)
- print("\nOdds ratios:")
- print(odds_ratios)
- az.summary(idata_effective, var_names=predictors, hdi_prob=0.95)
- # %%
- from scipy.special import expit
- post = az.extract(idata_effective, var_names=["Intercept", "EffectiveFiring"], combined=True)
- b0 = np.asarray(post["Intercept"]).ravel() # population intercept draws
- b_firing = np.asarray(post["EffectiveFiring"]).ravel() # population slope draws (per 1 SD if you z-scored)
- # Probability change for a 1 SD increase in Effective Firing Rate
- p0 = expit(b0)
- p1 = expit(b0 + b_firing) #
- delta_p = p1 - p0
- # Summaries
- h = az.hdi(delta_p, hdi_prob=0.95)
- out = {
- "mean_Δp": float(delta_p.mean()),
- "HDI_95%_low": float(h[0]),
- "HDI_95%_high": float(h[1]),
- "P(Δp>0)": float((delta_p > 0).mean()),
- "P(|Δp|<0.02)": float((np.abs(delta_p) < 0.02).mean())
- }
- print(out)
- # %% [markdown]
- # Does the difference in firing between figure and background explain figure-ground perception?
- # This assumes some additional downstream mechanisms that compares firing rates in different stimulus regions (not explicitly modeled)
- # %%
- idata_delta = model_delta.fit(
- draws=2000, tune=2000, target_accept=0.95,
- idata_kwargs={"log_likelihood": True}, progressbar=False
- )
- # %%
- predictors = ["DeltaFiring"]
- directions = ['less']
- posterior = posterior_table(idata_delta, predictors, directions)
- odds_ratios = OR_table(idata_delta, predictors)
- print("One-sided posterior probabilities:")
- print(posterior)
- print("\nOdds ratios:")
- print(odds_ratios)
- az.summary(idata_delta, var_names=predictors, hdi_prob=0.95)
- # %% [markdown]
- # Compare firing rate difference to synchrony. First refit synchrony model only on valid part of data.
- # %%
- model_sync_valid = bmb.Model(
- "Correct ~ 1 + Synchrony + (1 + Synchrony | SubjectID)",
- data=data_valid,
- family="bernoulli"
- )
- idata_sync_valid = model_sync_valid.fit(
- draws=2000, tune=2000, target_accept=0.95,
- idata_kwargs={"log_likelihood": True}, progressbar=False
- )
- # %%
- model_effective_valid = bmb.Model(
- "Correct ~ 1 + EffectiveFiring + (1 + EffectiveFiring | SubjectID)",
- data=data_valid,
- family="bernoulli"
- )
- idata_effective_valid = model_effective_valid.fit(
- draws=2000, tune=2000, target_accept=0.95,
- idata_kwargs={"log_likelihood": True}, progressbar=False
- )
- # %%
- # Compare models (LOO)
- az.compare({
- "synchrony": idata_sync_valid,
- "effective firing rate": idata_effective_valid,
- "delta firing rate": idata_delta,
- }, method="BB-pseudo-BMA")
- # %% [markdown]
- # ### Design Analysis
- # %%
- rng = np.random.default_rng(1709026616) # Seed for reproducibility
- num_simulations = 50
- num_subjects_list = [4, 6, 8, 10]
- num_available_draws = len(az.extract(idata_features, var_names=["Intercept"]).to_dataframe())
- results = []
- for num_subjects in num_subjects_list:
- for sim in range(num_simulations):
- draw_index = rng.integers(num_available_draws)
- df_simulated, true_betas = simulate_dataset_from_draw(
- idata_features, data, draw_index, num_subjects, rng=rng
- )
- sim_result = analyze_simulated(df_simulated, true_betas)
- sim_result["num_subjects"] = num_subjects
- sim_result["simulation"] = sim
- results.append(sim_result)
- results_df = pd.DataFrame(results)
- # %%
- summary = summarize_design_analysis(results_df)
- print(summary)
statistics_session1.ipynb at commit 127ff3a, under MIT · at the source
Overview
- Department of Cognitive Neuroscience, Faculty of Psychology and Neuroscience Maastricht University Maastricht Netherlands
- Science of Intelligence, Research Cluster of Excellence Berlin Germany
- Maastricht Centre for Systems Biology (MaCSBio), Maastricht University Maastricht Netherlands
- Institute for Theoretical Biology, Department of Biology, Humboldt-Universität zu Berlin Berlin Germany
- Maastricht Brain Imaging Centre, Faculty of Psychology and Neuroscience, Maastricht University Maastricht Netherlands
Abstract
Gamma synchrony is ubiquitous in visual cortex, but whether it contributes to perceptual grouping remains contentious based on observations that gamma frequency is not consistent across stimulus features and that gamma synchrony depends on distances between image elements. These stimulus dependencies have been argued to challenge the idea that the visual system groups image elements by synchronizing the neural assemblies that encode them. Here, we argue instead that these dependencies may shape synchrony in perceptually meaningful ways. Indeed, according to the theory of weakly coupled oscillators (TWCO), synchrony-based grouping mechanisms require stimulus dependence. Synchronization among coupled oscillators depends on frequency dissimilarity and coupling strength, which in early visual cortex relate to local feature dissimilarity and physical distance, respectively. We manipulated these factors in a texture segregation experiment wherein human observers identified the orientation of a figure defined by reduced contrast heterogeneity compared to the background. Human performance followed TWCO predictions both qualitatively and quantitatively, as formalized in a computational model. Moreover, we found that when enriched with a Hebbian learning rule, our model also predicted human learning effects: Increases in model gamma synchrony due to perceptual learning predicted improvements in texture segregation across sessions. Taken together, our data suggest that the stimulus-dependence of gamma synchrony captures local image statistics and is linked to the stimulus-dependence of texture segregation, and that the effect of visual experience on gamma synchrony provides a viable perceptual learning mechanism for training-induced improvements in texture segregation. Our results suggest that gamma synchrony with its inherent stimulus dependencies can provide a plausible mechanistic basis for perceptual grouping and visual scene segmentation.
Reproduced under the paper's license (CC BY), from the paper cited above.
Repositories
Its files are read in the Code ↔ Paper reader above, with 16 matches between paragraphs and lines of code.
ccnmaastricht/TextureStimuli-FigureGround
1e6889b3cd89e1d7bea784ea41e2b91a64db49b9, 2 December 2024Availability: 1 check, the latest on 29 September 2026: the link answers
- 29 September 2026: the link answers
9 files
- Project_Stimulus.m, MATLAB, 33 lines
- StimuliGeneration.m, MATLAB, 336 lines
- draw_dot.m, MATLAB, 9 lines
- experiment.m, MATLAB, 399 lines, 2 matches
- gazePlots.m, MATLAB, 26 lines
- screen_setup.m, MATLAB, 32 lines
- setupEyeTracker.m, MATLAB, 78 lines, 1 match
- LICENSE, License, 21 lines
- README.md, Text, 57 lines
ccnmaastricht/NeuralSynchrony-FigureGround
127ff3a044577a35c2bf5bf30530daac1d190963, 9 April 2026Availability: 1 check, the latest on 29 September 2026: the link answers
- 29 September 2026: the link answers
32 files
- notebooks/
benchmarks.ipynb , Jupyter, 100 lines - notebooks/
figure_ground.ipynb , Jupyter, 313 lines - notebooks/
gee_results.ipynb , Jupyter, 83 lines - notebooks/
intrinsic_effective_comp , Jupyter, 172 linesarison.ipynb - notebooks/
statistics_learning.ipyn , Jupyter, 244 linesb - notebooks/
statistics_model_predict , Jupyter, 36 linesions_results.ipynb - notebooks/
statistics_session1.ipyn , Jupyter, 279 lines, 3 matchesb - notebooks/
suppl_sensitivity_analys , Jupyter, 367 linesis.ipynb - notebooks/
suppl_single_subject_res , Jupyter, 87 linesults.ipynb - scripts/
analysis/ , Python, 178 linesbehavioral_arnold_tongue .py - scripts/
info/ , Python, 46 linessystem.py - scripts/
plotting/ , Python, 375 lines, 2 matchesfigure_five.py - scripts/
plotting/ , Python, 96 linesfigure_four.py - scripts/
plotting/ , Python, 78 linesfigure_one.py - scripts/
plotting/ , Python, 84 linesfigure_three.py - scripts/
plotting/ , Python, 94 linesfigure_two.py - scripts/
simulation/ , Python, 367 lines, 3 matchescrossval_estimation.py - scripts/
simulation/ , Python, 308 lines, 1 matchcrossval_prediction.py - scripts/
simulation/ , Python, 209 linesfirst_session_simulation s.py - scripts/
simulation/ , Python, 275 lineshigh_resolution_simulati ons.py - scripts/
simulation/ , Python, 210 lines, 1 matchparameter_exploration.py - scripts/
statistics/ , Python, 164 linesquantitative_model_predi ctions.py - src/
__init__.py , Python, 1 line - src/
anl_utils.py , Python, 330 lines - src/
model_utils.py , Python, 101 lines, 2 matches - src/
plot_utils.py , Python, 256 lines - src/
sim_utils.py , Python, 188 lines - src/
stat_utils.py , Python, 354 lines - src/
stimulus_generator.py , Python, 119 lines - src/
v1_model.py , Python, 168 lines, 1 match - LICENSE, License, 21 lines
- README.md, Text, 100 lines
Code availability
The code for data acquisition can be accessed at https://
Reproduced under the paper's license (CC BY), from the paper cited above.
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:
- 2 repositories of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
- 37 scripts, each with its path and the digest of its content;
- 16 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
- zenodo:10817187, at Zenodo; found in “Data availability”
Data availability
All data generated or analyzed during this study are openly accessible at https://
The following dataset was generated:
KarimianM RobertsMJ De WeerdP SendenM 2024Human Psychophysics Dataset on Figure Ground Segregation in Texture StimuliZenodo10.5281/
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 1, 29 September 2026: the first record
Recorded: type, language, journal, volume, pages, dates, 4 authors, 6 keywords, 5 MeSH terms, 108 references.
Cite
This paper
Karimian, M., Roberts, M. J., De Weerd, P., & Senden, M. (2026). Principles of gamma synchrony predict figure-ground perception in texture stimuli. eLife, 14, RP105482. https://
BibTeX
@article{karimian2026pri
author = {Karimian, Maryam and Roberts, Mark Jonathan and De Weerd, Peter and Senden, Mario},
title = {{Principles of gamma synchrony predict figure-ground perception in texture stimuli}},
journal = {eLife},
year = {2026},
month = apr,
volume = {14},
pages = {RP105482},
publisher = {eLife Sciences Publications, Ltd},
issn = {2050-084X},
doi = {10.7554/
url = {https://
pmid = {41961073},
pmcid = {PMC13068434}
}
RIS
TY - JOUR
AU - Karimian, Maryam
AU - Roberts, Mark Jonathan
AU - De Weerd, Peter
AU - Senden, Mario
TI - Principles of gamma synchrony predict figure-ground perception in texture stimuli
T2 - eLife
J2 - eLife
PY - 2026
DA - 2026/
VL - 14
SP - RP105482
SN - 2050-084X
PB - eLife Sciences Publications, Ltd
DO - 10.7554/
UR - https://
LA - en
ER -
CSL-JSON
{
"id": "10.7554/
"type": "article-journal",
"title": "Principles of gamma synchrony predict figure-ground perception in texture stimuli",
"container-title": "eLife",
"author": [
{
"family": "Karimian",
"given": "Maryam"
},
{
"family": "Roberts",
"given": "Mark Jonathan"
},
{
"family": "De Weerd",
"given": "Peter"
},
{
"family": "Senden",
"given": "Mario"
}
],
"container-title-short":
"volume": "14",
"page": "RP105482",
"DOI": "10.7554/
"PMID": "41961073",
"PMCID": "PMC13068434",
"ISSN": "2050-084X",
"publisher": "eLife Sciences Publications, Ltd",
"URL": "https://
"language": "en",
"issued": {
"date-parts": [
[
2026,
4,
10
]
]
}
}
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.7554/elife.100605 [code]
- Age-related changes in ‘cortical’ 1/
f dynamics are linked to cardiac activity Journal: n/aIn common: Bambi, ArviZ, statsmodels, 6 other tools - [2] doi:10.7554/elife.108408 [code]
- Frequency and laminar profile of feature-specific visual activity revealed by interleaved EEG-fMRI.Journal: eLifeIn common: statsmodels, Statistics and Machine Learning Toolbox, seaborn, 4 other tools, 3 references
- [3] doi:10.1038/s41467-026-71725-0 [code]
- Interactions across hemispheres in prefrontal cortex reflect global cognitive processing.Journal: Nature communicationsIn common: Psychtoolbox, Statistics and Machine Learning Toolbox, scikit-learn, 4 other tools, 2 references
- [4] doi:10.1038/s42003-026-10957-8 [code]
- Brain defence by the extracellular matrix protein Cochlin.Journal: Communications biologyIn common: ArviZ, statsmodels, Statistics and Machine Learning Toolbox, 6 other tools
- [5] doi:10.1126/sciadv.aea3919 [code]
- Hierarchical brain dynamics supporting visual perceptual transitions.Journal: Science advancesIn common: Psychtoolbox, Statistics and Machine Learning Toolbox, seaborn, 4 other tools, 2 references
- [6] doi:10.1038/s41467-026-75662-w [code]
- Distinct Roles of Deep and Superficial Cortical Layers in Tone Prediction, Comparison, and Adaptation in Human Auditory Cortices.Journal: Nature communicationsIn common: Psychtoolbox, statsmodels, Statistics and Machine Learning Toolbox, 6 other tools
- [7] 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 communicationsIn common: Psychtoolbox, statsmodels, Statistics and Machine Learning Toolbox, 6 other tools
- [8] doi:10.1038/s41467-026-72940-5 [code]
- Cerebellar growth is associated with domain-specific cerebral maturation and socio-linguistic behavior.Journal: Nature communicationsIn common: ArviZ, statsmodels, seaborn, 5 other tools
- [9] doi:10.1162/imag.a.1269 [code]
- From early to contemporary normative modeling: Mapping individual differences in neurophysiological signals.Journal: Imaging neuroscience (Cambridge, Mass.)In common: ArviZ, statsmodels, seaborn, 5 other tools
- [10] doi:10.3389/fncom.2026.1786996 [code]
- Schumann-anchored golden ratio organization of human neural oscillations.Journal: Frontiers in computational neuroscienceIn common: statsmodels, seaborn, scikit-learn, 4 other tools, 2 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.
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: 2 repositories of the authors' code, each at its verified commit and with its license, 37 scripts, and 16 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:dbaf164811474d99…
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.
