OSCR

Organization of circuits linking descending input to motor output in the <i>Drosophila</i> Male Adult Nerve Cord connectome.

Code ↔ Paper

16 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 16 matches · 3 of them tie a paragraph to a whole file, not to given lines: weak matches, whose lines are not tinted
  1. [1] § Results › Identification of descending neurons ↔ dn_indirect_connectivity_lateralized/wing_dn_indirect_connectivity_lateralized.R, lines 25–71 · score 0.92 · mVAC, LegNp, NTct, HTct, IntTct, UTct
  2. [2] § Results › Connectome generation and cell typing ↔ dn_indirect_connectivity_lateralized/dn_to_mn_indirect_example_graph.R, lines 44–100 · score 0.85 · efferent ascending, efferent neuron, intrinsic neuron, sensory ascending, sensory neuron, acetylcholine
  3. [3] § Materials and methods › Quantification of contact area between neurons for evaluating putative presence of electrical synapses ↔ electrical_neuron_contact_area/blender_calc_intersection.py, the whole file · a weak match · score 0.76 · mesh intersection areas, hole tolerant, fatten, electrical neurons, Blender, contact
  4. [4] § Results › Identification of motor neurons › Wing and haltere MNs ↔ dn_indirect_connectivity_lateralized/wing_dn_indirect_connectivity_lateralized.R, lines 25–71 · score 0.76 · MNwm35, MNhm42, MNhm43, hg2, iii1, hg1
  5. [5] § Materials and methods › Indirect connectivity strength ↔ dn_indirect_connectivity_lateralized/dn_to_mn_indirect_example_graph.R, lines 1–42 · score 0.75 · Indirect connectivity strength, manual curation, downstream neuron, Cytoscape, graph, sum
  6. [6] § Results › Organizational logic of DNs onto wing circuits › Laterized descending control of steering muscles mediated by the wing contralateral haltere interneurons ↔ dn_indirect_connectivity_lateralized/get_partners_by_multistep_conn_fun.R, lines 71–126 · score 0.73 · exit nerve side, entry nerve side, Adjacency matrix, sensory ascending, sensory neurons, soma side
  7. [7] § Results › Organizational logic of DNs onto wing circuits › Laterized descending control of steering muscles mediated by the wing contralateral haltere interneurons ↔ dn_indirect_connectivity_lateralized/dn_to_mn_indirect_example_graph.R, lines 44–100 · score 0.68 · cHIN, neurotransmitter prediction, sensory ascending, arrowheads, motor neurons, weight
  8. [8] § Results › Organizational logic of DNs onto wing circuits › Laterized descending control of steering muscles mediated by the wing contralateral haltere interneurons ↔ dn_indirect_connectivity_lateralized/wing_dn_indirect_connectivity_lateralized.R, lines 118–161 · score 0.67 · minus contralateral connectivity, chINs, DN MN, indirect connectivity, ipsilateral, sum
  9. [9] § Results › Organizational logic of DNs onto wing circuits › Laterized descending control of steering muscles mediated by the wing contralateral haltere interneurons ↔ electrical_neuron_contact_area/get_mn_and_elec_in_meshes.R, the whole file · a weak match · score 0.65 · putative electrical neurons, upper tectulum, haltere MNs, contact area, volume, interneurons
  10. [10] § Results › Organizational logic of DNs onto wing circuits › Laterized descending control of steering muscles mediated by the wing contralateral haltere interneurons ↔ dn_indirect_connectivity_lateralized/wing_dn_indirect_connectivity_lateralized.R, lines 118–161 · score 0.63 · minus contralateral connectivity, chINs, WTct, indirect connectivity, Ipsilateral, sum
  11. [11] § Results › Organizational logic of DNs onto wing circuits › Laterized descending control of steering muscles mediated by the wing contralateral haltere interneurons ↔ dn_indirect_connectivity_lateralized/dn_to_mn_indirect_example_graph.R, lines 1–42 · score 0.62 · chemical synapse, find neurons, b3, contact, iii3, b1
  12. [12] § Materials and methods › Quantification of contact area between neurons for evaluating putative presence of electrical synapses ↔ electrical_neuron_contact_area/get_mn_and_elec_in_meshes.R, the whole file · a weak match · score 0.61 · putative electrical neurons, neuron mesh, intersection, contact, wing, MNs
  13. [13] § Materials and methods › Indirect connectivity strength ↔ dn_indirect_connectivity_lateralized/get_partners_by_multistep_conn_fun.R, lines 21–68 · score 0.58 · Indirect connectivity strength, upstream neuron, fractions, downstream, DN
  14. [14] § Materials and methods › Motor neuron serial homology matching ↔ effective_connectivity_strength/MANC_effective_connectivity_code.R, lines 26–77 · score 0.53 · front legs, T1 leg, midline, serially, classes, MANC
  15. [15] § Results › DN network analysis › DN to MN connectivity across the VNC ↔ dn_indirect_connectivity_lateralized/get_partners_by_multistep_conn_fun.R, lines 21–68 · score 0.52 · indirect connectivity, connectivity strength, lowest, position, partners, downstream
  16. [16] § Materials and methods › Indirect connectivity strength ↔ dn_indirect_connectivity_lateralized/get_partners_by_multistep_conn_fun.R, lines 71–126 · score 0.52 · nerve side, indirect connections, zero, SNs, fractions, sum

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

R · 162 lines · 11 KB · CC-BY-4.0 · 4 matches

  1. library(neuprintr)
  2. library(malevnc)
  3. #library(gplots)
  4. #library(viridis)
  5. library(ggplot2)
  6. library(dendsort)
  7. library(nat)
  8. #change path to this file as necessary
  9. source(file.path(getwd(), "get_partners_by_multistep_conn_fun.R"))
  10. simple_row_hierarchical_clustering <- function(mat, Rowv = NULL) {
  11. d=dist(mat,method="euclidean")
  12. fit = hclust(d, method="ward.D2")
  13. if (is.null(Rowv)) {
  14. fit = dendsort(fit)
  15. return(mat[fit$order,])
  16. } else {
  17. fit = reorder(as.dendrogram(fit),Rowv)
  18. return(mat[labels(fit),])
  19. }
  20. }
  21. manc_roi_groups = list(NTct = c("NTct(UTct-T1)(L)","NTct(UTct-T1)(R)"), WTct = c("WTct(UTct-T2)(L)","WTct(UTct-T2)(R)"), HTct=c("HTct(UTct-T3)(L)","HTct(UTct-T3)(R)"), IntTct="IntTct", LTct="LTct",
  22. LegNp.T1=c("LegNp(T1)(L)", "LegNp(T1)(R)"), LegNp.T2=c("LegNp(T2)(L)", "LegNp(T2)(R)"), LegNp.T3=c("LegNp(T3)(L)", "LegNp(T3)(R)"),
  23. Ov=c("Ov(L)", "Ov(R)"), ANm="ANm", mVAC=c("mVAC(T1)(L)", "mVAC(T1)(R)", "mVAC(T2)(L)", "mVAC(T2)(R)", "mVAC(T3)(L)", "mVAC(T3)(R)"))
  24. #DN groups that are DNa04, a05 or have similar morphology, to highlight for their role in steering in plots below
  25. all_a04_05 = list(a04=11123, a05=12275, a04_a05_like = c(prior_best_cand_a04=10633, 12155, 12683, 10621, a09=12259))
  26. #subset DNs which have top % input to WTct and HTct
  27. pickRoi=c("WTct", "HTct")
  28. dn_top_percent_wtct = get_neurons_in_roi(unlist(manc_roi_groups[pickRoi]), syn_frac_thres = 0.1, class = "descending neuron", prepost="PRE", by_group = TRUE)
  29. #also needs 100 synapses in target ROI per group
  30. dn_top_percent_wtct_roi_info = neuprint_get_roiInfo(bodyids = dn_top_percent_wtct$bodyid)
  31. dn_top_percent_wtct_roi_info$group = dn_top_percent_wtct$group[match(dn_top_percent_wtct_roi_info$bodyid, dn_top_percent_wtct$bodyid)]
  32. if (length(unlist(manc_roi_groups[pickRoi])>1)) dn_top_percent_wtct_roi_info[[paste0(paste0(pickRoi,collapse='_'),".pre")]] = rowSums(dn_top_percent_wtct_roi_info[paste0(unlist(manc_roi_groups[pickRoi]),".pre")], na.rm = TRUE)
  33. dn_top_percent_wtct_wtct_grp_mean = aggregate(as.formula(paste0(paste0(pickRoi,collapse='_'),".pre ~ group")), data = dn_top_percent_wtct_roi_info, FUN = sum)
  34. dn_top_percent_wtct_roi_info = dn_top_percent_wtct_roi_info[dn_top_percent_wtct_roi_info$group %in% dn_top_percent_wtct_wtct_grp_mean$group[dn_top_percent_wtct_wtct_grp_mean[paste0(paste0(pickRoi,collapse='_'),".pre")] >= 100], ]
  35. dn_top_percent_wtct = dn_top_percent_wtct[dn_top_percent_wtct$group %in% dn_top_percent_wtct_wtct_grp_mean$group[dn_top_percent_wtct_wtct_grp_mean[paste0(paste0(pickRoi,collapse='_'),".pre")] >= 100], ]
  36. #get direct connectivity and indirect conn str of DNs to w-chins of interest and steering MNs
  37. mns_of_interest = c("b1 MN", "b2 MN", "b3 MN", "i1 MN", "i2 MN", "iii1 MN", "iii3 MN", "MNwm35", "hg1 MN", "hg2 MN", "hg3 MN", "hg4 MN", "MNhm42", "MNhm43", "MNhm03")
  38. wchin=c(10073, 10170, 10510, 10667, 10147) #w-chin groups of interest
  39. clio_manc_data = neuprint_list2df(neuprint_fetch_custom(cypher=paste0("MATCH (a:Neuron) WHERE a.group IN [", paste0(wchin, collapse=","), "] OR a.type IN ['", paste0(mns_of_interest, collapse="','"), "'] RETURN a.bodyId AS bodyid, a.class AS class, a.group AS group, a.subclass AS subclass, a.type AS type, a.synonyms AS synonyms, a.rootSide AS root_side, a.somaSide AS soma_side, a.exitNerve AS exit_nerve, a.entry_nerve AS entry_nerve"), timeout=2000))
  40. path_length = 3
  41. clio_manc_data$temp_label = ifelse(clio_manc_data$group %in% wchin,
  42. paste("w-cHIN", clio_manc_data$group),
  43. clio_manc_data$type)
  44. #get indirect connectivity upstream of mns/w-chins, then pick out DNs of interest later
  45. mn_us = get_partners_by_multistep_conn(outputids = unique(clio_manc_data$group), path_length = path_length, syn_frac_thres = 0.01, by_group = TRUE, return_type = "detailed")
  46. mn_us_lr = get_partners_by_multistep_conn(outputids = unique(clio_manc_data$group), path_length = path_length, syn_frac_thres = 0, by_group = TRUE, separate_sides = TRUE, return_type = "detailed")
  47. wing_mn_order = c("b1 MN", "b2 MN", "b3 MN", "i1 MN", "i2 MN", "iii1 MN", "iii3 MN", "MNwm35", "hg1 MN", "hg2 MN", "hg3 MN", "hg4 MN", "tp1 MN", "tp2 MN", "tpn MN", "ps1 MN", "ps2 MN", "DLMn a, b", "DLMn c-f", "DVMn 1a-c", "DVMn 2a, b", "DVMn 3a, b", "10178", "46457", "12009", "11372", "11745", "13024", "MNhm42", "MNhm43", "MNhm03")
  48. wing_mn_and_wchin_order = clio_manc_data$group[match(wing_mn_order, clio_manc_data$type)]
  49. wing_mn_and_wchin_order = c(wing_mn_and_wchin_order, wchin)
  50. #get meta info for all neurons
  51. manc_all_neurons = neuprint_list2df(neuprint_fetch_custom(cypher=paste0("MATCH (a:Neuron) WHERE a.class IS NOT NULL RETURN a.bodyId AS bodyid, a.class AS class, a.group AS group, a.subclass AS subclass, a.type AS type, a.synonyms AS synonyms, a.rootSide AS root_side, a.somaSide AS soma_side, a.exitNerve AS exit_nerve, a.entry_nerve AS entry_nerve, a.origin AS origin"), timeout=2000))
  52. manc_all_neurons = manc_all_neurons[!(manc_all_neurons$class %in% c("Unkown","Unknown", "TBD", "Glia", "glia")),]
  53. #if is SN, use type as group, as group not always defined--this is also done in the get_partners_by_multistep_conn function
  54. manc_all_neurons$group = ifelse(manc_all_neurons$class %in% c("sensory neuron", "sensory ascending", "sensory descending"), manc_all_neurons$type, manc_all_neurons$group)
  55. #if there are multiple groups per type (i.e. likely subtypes), append group to distinguish them
  56. #this is required for the get_matrix_neuron_names function to work properly!
  57. manc_all_neurons$groups_per_type = sapply(manc_all_neurons$type, FUN=function(x) length(unique(manc_all_neurons$group[manc_all_neurons$type %in% x])))
  58. manc_all_neurons$type = ifelse(manc_all_neurons$groups_per_type>1,
  59. paste(manc_all_neurons$type, manc_all_neurons$group),
  60. manc_all_neurons$type)
  61. #manc_all_neurons$type[manc_all_neurons$group %in% wchin] = paste(manc_all_neurons$type[manc_all_neurons$group %in% wchin], manc_all_neurons$group[manc_all_neurons$group %in% wchin])
  62. #function for properly naming neurons in adj matrix for heat area map plotting
  63. #depends on manc_all_neurons being properly retrieved in lines above
  64. get_matrix_neuron_names = function(mat, lr = FALSE) { #lr--is matrix side-separated?
  65. if (lr) {
  66. temp_row_group = gsub("_([LRM]|ND)$", "", rownames(mat))
  67. temp_row_side = ifelse(grepl("_L$", rownames(mat)), "L", ifelse(grepl("_R$", rownames(mat)), "R", "ND"))
  68. temp_col_group = gsub("_([LRM]|ND)$", "", colnames(mat))
  69. temp_col_side = ifelse(grepl("_L$", colnames(mat)), "L", ifelse(grepl("_R$", colnames(mat)), "R", "ND"))
  70. } else {
  71. temp_row_group = rownames(mat)
  72. temp_col_group = colnames(mat)
  73. }
  74. row_names = manc_all_neurons$type[match(temp_row_group, manc_all_neurons$group)]
  75. col_names = manc_all_neurons$type[match(temp_col_group, manc_all_neurons$group)]
  76. if(lr) {
  77. row_names = paste(row_names, temp_row_side, sep = "_")
  78. col_names = paste(col_names, temp_col_side, sep = "_")
  79. }
  80. rownames(mat) = row_names
  81. colnames(mat) = col_names
  82. return(mat)
  83. }
  84. heat_area_plot = function(size_mat, color_mat, xlab, ylab, max_point_size = 10) {
  85. row_order = rownames(size_mat)
  86. col_order = colnames(size_mat)
  87. size_mat = as.data.frame(as.matrix(size_mat))
  88. size_mat$input = rownames(as.matrix(size_mat))
  89. size_mat = tidyr::pivot_longer(data = as.data.frame(size_mat), cols = -"input", names_to ="output", values_to = "conn_str")
  90. size_mat$ipsi_contra = apply(size_mat[,c('input','output')], MARGIN = 1, FUN = function(x) {
  91. if(!(x['input'] %in% rownames(color_mat)) | !(x['output'] %in% colnames(color_mat))) return(NA) else return(color_mat[x['input'],x['output']])
  92. })
  93. size_mat$input = factor(size_mat$input, levels = unique(row_order))
  94. size_mat$output = factor(size_mat$output, levels = unique(col_order))
  95. ggplot(size_mat, aes(x = output, y = input, size = conn_str, color = ipsi_contra)) +
  96. geom_point(shape = 15, stroke = 0) +
  97. scale_size_area(max_size = max_point_size) +
  98. scale_color_gradient2(low = 'blue', mid = 'grey', high = 'red', midpoint = 0, na.value = 'black') +
  99. scale_y_discrete(position = "right") +
  100. scale_x_discrete(guide = guide_axis(angle = 90)) +
  101. theme_minimal()
  102. }
  103. mn_us_dn = vector(mode = "list", length = path_length)
  104. mn_us_dn_ic = vector(mode = "list", length = path_length)
  105. #make plots
  106. #NOTE THAT HIGHEST i IS ACTUALLY LOWEST PATH LENGTH
  107. for (i in path_length:1) {
  108. mn_us_dn[[i]] = mn_us[[i]][manc_all_neurons$class[match(rownames(mn_us[[i]]), manc_all_neurons$group)] %in% "descending neuron", ]
  109. #rearrange by hierarchical clustering
  110. mn_us_dn[[i]] = simple_row_hierarchical_clustering(mn_us_dn[[i]])
  111. #make ipsi-contra index, for each side, take ipsilateral connectivity minus contralateral over sum
  112. temp_group = gsub("_([LRM]|ND)$", "", rownames(mn_us_lr[[i]]))
  113. #check if dn groups have both L and R sides, if not exclude from ipsi-contra analysis
  114. temp_row_groups_of_interest = sapply(rownames(mn_us_dn[[i]]), FUN = function(x) all(paste0(x, c("_L","_R")) %in% rownames(mn_us_lr[[i]])))
  115. #reverse side for chINs, as we care about the output side which is contralateral to soma
  116. temp_chin_groups = gsub("_([LRM]|ND)$", "", colnames(mn_us_lr[[i]]))
  117. temp_chin_groups_side = ifelse(grepl("_L$", colnames(mn_us_lr[[i]])), "L", ifelse(grepl("_R$", colnames(mn_us_lr[[i]])), "R", NA))
  118. temp_chin_groups_side[temp_chin_groups %in% wchin] =
  119. ifelse(temp_chin_groups_side[temp_chin_groups %in% wchin] == "L", "R", "L")
  120. temp_mn_us_lr = mn_us_lr[[i]]
  121. colnames(temp_mn_us_lr) = paste(temp_chin_groups, temp_chin_groups_side, sep = "_")
  122. #calculate ipsilateral vs contralateral connectivity bias
  123. #fails if any one group does not have both L and R sides
  124. temp_ipsi_contra_mat = sapply(names(temp_row_groups_of_interest)[temp_row_groups_of_interest], FUN = function(x) sapply(colnames(mn_us_dn[[i]]), function(y)
  125. (temp_mn_us_lr[paste0(x,"_L"), paste0(y,"_L")] - temp_mn_us_lr[paste0(x,"_L"), paste0(y,"_R")]
  126. + temp_mn_us_lr[paste0(x,"_R"), paste0(y,"_R")] - temp_mn_us_lr[paste0(x,"_R"), paste0(y,"_L")])/
  127. (temp_mn_us_lr[paste0(x,"_L"), paste0(y,"_L")] + temp_mn_us_lr[paste0(x,"_L"), paste0(y,"_R")]
  128. + temp_mn_us_lr[paste0(x,"_R"), paste0(y,"_R")] + temp_mn_us_lr[paste0(x,"_R"), paste0(y,"_L")])
  129. ))
  130. mn_us_dn_ic[[i]] = t(temp_ipsi_contra_mat)
  131. #reorder rows to put a04/05 and similar at top, reorder columns to specified order
  132. mn_us_dn[[i]] = mn_us_dn[[i]][order(rownames(mn_us_dn[[i]]) %in% unlist(all_a04_05)),
  133. order(match(colnames(mn_us_dn[[i]]), wing_mn_and_wchin_order))]
  134. #color dns that aren't within WTct DN set red
  135. temp_row_color = ifelse(rownames(mn_us_dn[[i]]) %in% dn_top_percent_wtct$group, "black", "red")
  136. mn_us_dn[[i]] = get_matrix_neuron_names(mn_us_dn[[i]])
  137. mn_us_dn_ic[[i]] = get_matrix_neuron_names(mn_us_dn_ic[[i]])
  138. #png(file=paste0("dn_mn_adj_ipsi_contra_path_len_",i-path_length+1,"_", Sys.Date(),".png"), height=800, width=600)
  139. pdf(file=paste0("dn_mn_adj_ipsi_contra_path_len_",path_length-i+1,"_", Sys.Date(),".pdf"), height = 800/72, width = 500/72)
  140. print(heat_area_plot(size_mat = mn_us_dn[[i]], color_mat = mn_us_dn_ic[[i]], xlab = "output", ylab = "input", max_point_size = 8))
  141. dev.off()
  142. }

wing_dn_indirect_connectivity_lateralized.R at commit 56723c6, under CC-BY-4.0 · at the source

Overview

Authors: Han SJ Cheong1,2, Katharina Eichler3, Tomke Stürner3,4, Samuel K Asinof1, Andrew S Champion3,4, Elizabeth C Marin3, Tess B Oram1, Marissa Sumathipala1, Lalanti Venkatasubramanian3,4, Shigehiro Namiki5, Igor Siwanowicz1, Marta Costa3, Stuart Berg1, Janelia FlyEM Project Team1, Gregory SXE Jefferis3,4, Gwyneth M Card1,2
  1. Janelia Research Campus, Howard Hughes Medical Institute, Ashburn, United States
  2. Zuckerman Institute, Columbia University, New York, United States
  3. Drosophila Connectomics Group, Department of Zoology, University of Cambridge, Cambridge, United Kingdom
  4. Neurobiology Division, MRC Laboratory of Molecular Biology, Cambridge, United Kingdom
  5. Research Center for Advanced Science and Technology, University of Tokyo, Tokyo, Japan
Journal: eLife, volume 13, article RP96084
Dates: published online 20 July 2026
Type: Research article · Language: English
License: CC BY
Identifiers: DOI 10.7554/elife.96084 · PMID 42474298 · PMCID PMC13384506 · OpenAlex W4392917783
Open access: gold, a free copy (OpenAlex)
Status: code verified
Categories: drosophila (organism), systems (subfield)
Methods: Evoked potentials, Graphs
Keywords: D. melanogaster
MeSH: Connectome*, Drosophila*, Drosophila melanogaster*, Motor Neurons*, Nerve Net*, Neural Pathways*, Animals, Brain, Male, Neurons (* major topic)
Topic: Neurobiology and Insect Physiology Research (Cellular and Molecular Neuroscience, Neuroscience), according to OpenAlex
Funding: Wellcome Trust (10.35802/220343, 220343, 220343/Z/20/Z, 221300/Z/20/Z, 10.35802/221300, 221300); MRC-LMB (MC-U105188491); Deutsche Forschungsgemeinschaft (Walter-Benjamin-Fellowship STU 793/2-1); National Science Foundation (2127379)
Citations: cited by 7 papers (Europe PMC); 156 references in the paper
Research resources: RRID:AB_2314866, rabbit anti-GFP polyclonal antibody RRID:AB_2534023, RRID:AB_2633280, sheep anti-GFP polyclonal antibody RRID:AB_619712, OL0070B RRID:BDSC_68348, SS04158 RRID:BDSC_75812, SS04161 RRID:BDSC_75814, SS01069 RRID:BDSC_75828, SS01049 RRID:BDSC_75833, SS01059 RRID:BDSC_75834, SS01060 RRID:BDSC_75835, SS01066 RRID:BDSC_75838, SS01075 RRID:BDSC_75841, SS01078 RRID:BDSC_75842, SS00731 RRID:BDSC_75862, SS00732 RRID:BDSC_75863, SS02378 RRID:BDSC_75872, SS00865 RRID:BDSC_75877, SS02392 RRID:BDSC_75878, SS02395 RRID:BDSC_75881, SS02256 RRID:BDSC_75885, SS02383 RRID:BDSC_75888, SS00934 RRID:BDSC_75890, SS01567 RRID:BDSC_75894, SS01545 RRID:BDSC_75900, SS01540 RRID:BDSC_75903, SS01557 RRID:BDSC_75908, SS01570 RRID:BDSC_75913, SS01582 RRID:BDSC_75915, SS01589 RRID:BDSC_75919, SS01051 RRID:BDSC_75921, SS02393 RRID:BDSC_75933, SS02276 RRID:BDSC_75934, SS02542 RRID:BDSC_75941, SS02384 RRID:BDSC_75958, SS00923 RRID:BDSC_75977, SS02891 RRID:BDSC_76005, SS27721 RRID:BDSC_79602, SS01053 RRID:BDSC_86728, SS01058 RRID:BDSC_86737, SS01070 RRID:BDSC_86741, SS01583 RRID:BDSC_86747, RRID:BDSC_87282, RRID:BDSC_87928, RRID:BDSC_88289, RRID:BDSC_88290, RRID:BDSC_88295, RRID:BDSC_88339, RRID:BDSC_88348, RRID:BDSC_88379, SS00730 RRID:BDSC_88574, RRID:BDSC_88728, RRID:BDSC_88784, SS38113 RRID:BDSC_88869, SS01562 RRID:BDSC_88990, R RRID:SCR_001905, Fiji RRID:SCR_002285, Cytoscape RRID:SCR_003032, Python RRID:SCR_008394, Blender RRID:SCR_008606, Icy RRID:SCR_010587, Photoshop RRID:SCR_014199

Abstract

In most animals, a small number of descending neurons (DNs) connect the brain to circuits and motor neurons (MNs) in the nerve cord. To understand how brain signals generate behavior, it is critical to understand the organization of the neural pathways linking DNs to MNs. In companion papers, we introduced a densely reconstructed connectome of the Drosophila Male Adult Nerve Cord (MANC; Takemura et al., 2024), including cell types and developmental lineages (Marin et al., 2024), which provides complete connectivity of the ventral nerve cord (VNC) at synaptic resolution. Here, we present a first look at the organization of the networks connecting DNs to MNs. We first proofread and curated all DNs and MNs, then systematically matched their morphology to light microscopy data. We report both broad organizational patterns of the entire network and fine-scale analysis of selected circuits of interest. We discover that direct DN-MN connections are infrequent and identify neuron communities putatively linked to control of different motor systems, including walking, flight steering and power generation, and coordinated action of wings and legs. Our analyses generate hypotheses for future functional experiments and empowers others to investigate these and other circuits of the VNC in richer mechanistic detail.

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.

gmcard/Cheong_et_al_2024_eLife

License: CC-BY-4.0
State: the link answers, verified on 27 September 2026
Evidence: files inventoried
Commit: 56723c657797601fe692d8e6c89610ecc2c97cf5, 3 July 2026
Languages: R (5), Python (3)
Size: 14 files, 8 scripts
Software Heritage: not archived
Found in: “Data availability”
Holds: README, license file
Not found: CITATION.cff, environment file, tests, continuous integration, documentation
Tools: ggplot2 (2 files), tidyverse (2 files), cowplot (1 file), ggpubr (1 file), igraph (1 file)
Availability: 1 check, the latest on 27 September 2026: the link answers
  • 27 September 2026: the link answers
10 files

Zenodo 20532929

License: CC-BY-4.0
State: the link answers, verified on 27 September 2026
Evidence: files inventoried
Size: 1 file
Software Heritage: not checked
Found in: “Data availability”
Not found: README, license file, CITATION.cff, environment file, tests, continuous integration, documentation
Tools: ggplot2 (2 files), tidyverse (2 files), cowplot (1 file), ggpubr (1 file), igraph (1 file)
Availability: 1 check, the latest on 27 September 2026: the link answers (HTTP 200)
  • 27 September 2026: the link answers (HTTP 200)
9 files

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:

  • 2 repositories of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
  • 16 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

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

Data availability

The MANC connectome, including annotations of DNs and MNs described in this work, are publically available at https://neuprint.janelia.org. Most connectome analyses were carried out using the natverse suite of tools (Bates et al., 2020) in the R statistical programming language (https://www.r-project.org). Bayesian graph traversal was carried out using the navis Python library (https://zenodo.org/records/8191725). Key annotations for DNs and MNs, match information to neurons identified at the light level, neurotransmitter-related gene expression in DNs (FISH), connectome-wide Infomap network clustering results and contact area between putative electrical interneurons and MNs are available as supplementary files. Code for novel analyses generated in this work (effective connectivity strength, lateralized indirect connectivity, and contact area between neurons) are available at https://github.com/gmcard/Cheong_et_al_2024_eLife (copy archived at Cheong, 2026) and https://doi.org/10.5281/zenodo.20532929.

The following dataset was generated:

Cheong HSJ, Eichler K, Asinof SK, Champion AS, Marin EC, Oram TB, Sumathipala M, Namiki S, Siwanowicz I, Costa M, Berg S, Janelia FlyEM Project Team. Jefferis GSXE, Card GM. 2026. Analysis code for Cheong et al., 2024 (eLife) Zenodo.

The following previously published dataset was used:

Takemura S-Y. Hayworth KJ, Huang GB, Januszewski M, Lu Z, Marin EC, Preibisch S, Xu CS, Bogovic J, Champion AS, Cheong HSJ, Costa M, Eichler K, Katz W, Knecht C, Li F, Morris BJ, Ordish C, Rivlin PK, Schlegel P, Shinomiya K, Stürner T, Zhao T, Badalamente G, Bailey D, Brooks P, Canino BS, Clements J, Cook M, Duclos O, Dunne CR, Fairbanks K, Fang S, Finley-May S, Francis A, George R, Gkantia M, Harrington K, Hopkins GP, Hsu J, Hubbard PM, Javier A, Kainmueller D, Korff W, Kovalyak J, Krzemiński D, Lauchie SA, Lohff A, Maldonado C, Manley EA, Mooney C, Neace E, Nichols M, Ogundeyi O, Okeoma N, Paterson T, Phillips E, Phillips EM, Ribeiro C, Ryan SM, Rymer JT, Scott AK, Scott AL, Shepherd D, Shinomiya A, Smith C, Smith N, Suleiman A, Takemura S, Talebi I, Tamimi IF, Trautman ET, Umayam L, Walsh JJ, Yang T, Rubin GM, Scheffer LK, Funke J, Saalfeld S, Hess HF, Plaza SM, Card GM, Berg S. 2024. A Connectome of the Male Drosophila Ventral Nerve Cord. neuPRINT. MANC

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

Recorded: type, language, journal, volume, pages, dates, 16 authors, 1 keyword, 10 MeSH terms, 4 funders, 151 references, 62 RRIDs.

Cite

This paper

Cheong, H. S., Eichler, K., Stürner, T., Asinof, S. K., Champion, A. S., Marin, E. C., Oram, T. B., Sumathipala, M., Venkatasubramanian, L., Namiki, S., Siwanowicz, I., Costa, M., Berg, S., FlyEM Project Team, J., Jefferis, G. S., & Card, G. M. (2026). Organization of circuits linking descending input to motor output in the &lt;i&gt;Drosophila&lt;/i&gt; Male Adult Nerve Cord connectome. eLife, 13, RP96084. https://doi.org/10.7554/elife.96084

BibTeX

@article{cheong2026organization,
author = {Cheong, Han SJ and Eichler, Katharina and Stürner, Tomke and Asinof, Samuel K and Champion, Andrew S and Marin, Elizabeth C and Oram, Tess B and Sumathipala, Marissa and Venkatasubramanian, Lalanti and Namiki, Shigehiro and Siwanowicz, Igor and Costa, Marta and Berg, Stuart and FlyEM Project Team, Janelia and Jefferis, Gregory SXE and Card, Gwyneth M},
title = {{Organization of circuits linking descending input to motor output in the \&lt;i\&gt;Drosophila\&lt;/i\&gt; Male Adult Nerve Cord connectome}},
journal = {eLife},
year = {2026},
month = jul,
volume = {13},
pages = {RP96084},
publisher = {eLife Sciences Publications, Ltd},
issn = {2050-084X},
doi = {10.7554/elife.96084},
url = {https://doi.org/10.7554/elife.96084},
pmid = {42474298},
pmcid = {PMC13384506}
}

RIS

TY - JOUR
AU - Cheong, Han SJ
AU - Eichler, Katharina
AU - Stürner, Tomke
AU - Asinof, Samuel K
AU - Champion, Andrew S
AU - Marin, Elizabeth C
AU - Oram, Tess B
AU - Sumathipala, Marissa
AU - Venkatasubramanian, Lalanti
AU - Namiki, Shigehiro
AU - Siwanowicz, Igor
AU - Costa, Marta
AU - Berg, Stuart
AU - FlyEM Project Team, Janelia
AU - Jefferis, Gregory SXE
AU - Card, Gwyneth M
TI - Organization of circuits linking descending input to motor output in the &lt;i&gt;Drosophila&lt;/i&gt; Male Adult Nerve Cord connectome
T2 - eLife
J2 - eLife
PY - 2026
DA - 2026/07/20
VL - 13
SP - RP96084
SN - 2050-084X
PB - eLife Sciences Publications, Ltd
DO - 10.7554/elife.96084
UR - https://doi.org/10.7554/elife.96084
LA - en
ER -

CSL-JSON

{
"id": "10.7554/elife.96084",
"type": "article-journal",
"title": "Organization of circuits linking descending input to motor output in the &lt;i&gt;Drosophila&lt;/i&gt; Male Adult Nerve Cord connectome",
"container-title": "eLife",
"author": [
{
"family": "Cheong",
"given": "Han SJ"
},
{
"family": "Eichler",
"given": "Katharina"
},
{
"family": "Stürner",
"given": "Tomke"
},
{
"family": "Asinof",
"given": "Samuel K"
},
{
"family": "Champion",
"given": "Andrew S"
},
{
"family": "Marin",
"given": "Elizabeth C"
},
{
"family": "Oram",
"given": "Tess B"
},
{
"family": "Sumathipala",
"given": "Marissa"
},
{
"family": "Venkatasubramanian",
"given": "Lalanti"
},
{
"family": "Namiki",
"given": "Shigehiro"
},
{
"family": "Siwanowicz",
"given": "Igor"
},
{
"family": "Costa",
"given": "Marta"
},
{
"family": "Berg",
"given": "Stuart"
},
{
"family": "FlyEM Project Team",
"given": "Janelia"
},
{
"family": "Jefferis",
"given": "Gregory SXE"
},
{
"family": "Card",
"given": "Gwyneth M"
}
],
"container-title-short": "eLife",
"volume": "13",
"page": "RP96084",
"DOI": "10.7554/elife.96084",
"PMID": "42474298",
"PMCID": "PMC13384506",
"ISSN": "2050-084X",
"publisher": "eLife Sciences Publications, Ltd",
"URL": "https://doi.org/10.7554/elife.96084",
"language": "en",
"issued": {
"date-parts": [
[
2026,
7,
20
]
]
}
}

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/s41586-026-10735-w [code]
Distributed control circuits across a brain-and-cord connectome.
Journal: Nature
In common: igraph, ggpubr, ggplot2, 1 other tool, drosophila, 40 references, 3 authors
[2] doi:10.1038/s41467-026-72152-x [code]
Centralized brain networks controlling antennal grooming coordination.
Journal: Nature communications
In common: drosophila, systems, 19 references
[3] doi:10.1038/s41586-026-10797-w [code]
A global molecular code for birth order and neuronal identity in Drosophila.
Journal: Nature
In common: igraph, ggplot2, tidyverse, drosophila, 7 references, 2 authors
[4] doi:10.3389/fnsys.2026.1822122 [code]
Convergence-divergence circuits for multimodal integration of innate and learned opponent valences.
Journal: Frontiers in systems neuroscience
In common: igraph, systems, 13 references
[5] doi:10.1038/s41467-026-72057-9 [code]
Sex-specific behavioral feedback modulates sensorimotor processing and drives flexible social behavior.
Journal: Nature communications
In common: drosophila, systems, 7 references
[6] doi:10.1038/s41593-026-02388-9 [code]
Hippocampal CA3 connectomics reveals a gradient of mossy fiber inputs and selective feedforward inhibition onto pyramidal cells.
Journal: Nature neuroscience
In common: igraph, systems, 3 references, author Gregory S. X. E. Jefferis
[7] doi:10.1371/journal.pbio.3003959 [code]
Recurrent synapses between CO2-sensitive olfactory sensory neurons enable robust CO2 detection in Aedes aegypti mosquitoes.
Journal: PLoS biology
In common: drosophila, 7 references
[8] doi:10.1016/j.isci.2026.115624 [code]
The Drosophila connectome reveals axo-axonic synapses on descending neurons.
Journal: iScience
In common: drosophila, 6 references
[9] doi:10.1038/s41586-026-10526-3
Transcription factor codes patterning neuronal groundplans of the cerebrum.
Journal: Nature
In common: drosophila, 5 references
[10] doi:10.3389/fnins.2026.1848222 [code]
A high-dimensional atlas of parvalbumin interneuron soma morphology in mouse visual and somatosensory cortex.
Journal: Frontiers in neuroscience
In common: cowplot, ggpubr, ggplot2, 1 other tool, systems, 1 reference

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.