Distinct sensorimotor encoding in tuft dendrites and somata associated with action, correction, and learning.
The 5 matches
- [1] § Methods › Behavioral paradigm ↔ Figures/Fig1.ipynb, lines 1037–1153 · score 0.70 · post shift early, post shift late, pre shift early, pre shift late, trajectory, phases
- [2] § Results › Contingency-dependent motor skill learning ↔ Figures/Fig1.ipynb, lines 254–291 · score 0.54 · Motor Error Right, Decision Error Right, post shift, pre shift, lickport, cameras
- [3] § Results › Contingency-dependent motor skill learning ↔ Figures/Fig1.ipynb, lines 254–291 · score 0.53 · motor error, decision errors, post shift, pre shift, came, lickports
- [4] § Methods › Trial-alignment and ROI grouping ↔ Figures/Fig5.ipynb, lines 2016–2161 · score 0.52 · trial traces, GO cue, CA, contact, CL, lick
- [5] § Methods › Behavioral paradigm ↔ Figures/js_manuscript_final.py, lines 720–851 · score 0.51 · BPOD State, delay, day, position, behavior, animals
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 · 1,316 lines · 47 KB · MIT · 3 matches
- # %% [markdown]
- # # init
- # %%
- import os
- import sys
- import copy
- import glob
- import numpy as np
- import matplotlib.pyplot as plt
- from tqdm.auto import tqdm
- import pickle
- from scipy import stats
- import importlib
- import time
- import tifffile as tf
- import shutil
- from matplotlib.backends.backend_pdf import PdfPages
- import json
- import seaborn as sns
- #Some Figure Preferences
- plt.rcParams['font.family'] = 'sans-serif'
- plt.rcParams['font.sans-serif'] = ['Arial']
- plt.rcParams['pdf.fonttype'] = 42 # embed fonts in PDF (Type 42)
- plt.rcParams['axes.unicode_minus'] = False # use ASCII minus sign
- plt.rcParams['mathtext.default'] = 'regular'
- #IMPORTANT two options for setting paths here:
- #OPTION 1: Automatically determine the parent directory of the notebook's directory
- try:
- import ipynbname
- NOTEBOOK_PATH = ipynbname.path()
- PARENT_DIR = NOTEBOOK_PATH.parent.parent # parent of the notebook's directory
- DATA_DIR = os.path.join(PARENT_DIR, "Data")
- print("NOTEBOOK_PATH: " + str(NOTEBOOK_PATH))
- except:
- print("UNABLE TO DETERMINE CURRENT SCRIPT LOCAITON PLEASE PROVIDE PATHS MANUALLY")
- #OPTION 2: Manually set PARENT_DIR and DATA_DIR if needed
- # PARENT_DIR = ".../Scheib_2026/"
- # DATA_DIR = ".../Scheib_2026/Data/"
- # DATA_DIR = os.path.join(PARENT_DIR,'data')
- FIG_EXPORT_DIR = os.path.join(PARENT_DIR, "figurePanels", "Fig1")
- PDF_export_active = False
- if PDF_export_active:
- os.makedirs(FIG_EXPORT_DIR, exist_ok=True)
- print("PARENT_DIR: " + str(PARENT_DIR))
- print("DATA_DIR: " + str(DATA_DIR))
- print("FIG_EXPORT_DIR: " + str(FIG_EXPORT_DIR))
- #IMPORTANT: The following class and function are used to conditionally save figures to PDF based on the PDF_export_active flag.
- # If PDF_export_active is True, figures will be saved to the specified path; if False, the savefig calls will be ignored.
- class _NoPdf:
- """Null stand-in for PdfPages: accepts savefig calls and writes nothing."""
- def __enter__(self): return self
- def __exit__(self, *exc): return False
- def savefig(self, *args, **kwargs): pass
- def maybe_pdf(path, active=None):
- active = PDF_export_active if active is None else active
- return PdfPages(path) if active else _NoPdf()
- #OPTIONAL Load from specific directory if needed (uncomment the following lines)
- if os.path.exists(os.path.join(NOTEBOOK_PATH, "js_manuscript_final.py")):
- print('FOUND js_manuscript_final.py')
- path = os.path.join(NOTEBOOK_PATH, "js_manuscript_final.py")
- spec = importlib.util.spec_from_file_location("jsm", path)
- jsm = importlib.util.module_from_spec(spec)
- spec.loader.exec_module(jsm)
- print(jsm.__file__)
- else:
- #IMPORTANT Load the manuscript functions from PYTHONPATH
- import js_manuscript_final as jsm
- #OPTIONAL Reload the module to ensure the latest version is used
- %load_ext autoreload
- %autoreload 2
- # %%
- #IMPORTANT Load the masterData dictionary, preferably from the data repo reduced file size versions
- masterData = jsm.masterData_loading(DATA_DIR)
- # mdDir = '.../mainDS'
- # mdTitle = 'allSlim3'
- # masterData = pickle.load(open(fr'{mdDir}/{mdTitle}.p', 'rb'))
- anms = list(masterData.keys())
- #General params
- trialStart = 0.15
- sampleEnd = trialStart+1.2
- delayEnd = sampleEnd+1.25
- anatKeys = ['dendrites', 'somas']
- frs = [44.6, 22.8]
- # %%
- dffKeys = []
- factors = [4,2]
- Z = 'std_only'
- phases2 = ['pre', 'preShift_early', 'preShift_late', 'post', 'late', 'day-1_beg', 'day-1_mid', 'day-1_end', 'shiftDay_post', 'shiftDay_pre', 'early']
- windowSize = []
- allAnmParams = jsm.get_allAnmParams(masterData, anms, frs, factors, Z, phases2, dffKeys)
- # %% [markdown]
- # # quick stats
- # %%
- anm_nSess = []
- anm_nSessPre = []
- anm_nSessPost = []
- anm_nTrials = []
- anm_nTrialsPre = []
- anm_nTrialsPost = []
- for a, anm in enumerate(anms):
- anmData = allAnmParams[anm]
- tracker = anmData['tracker']
- days = np.unique(tracker[:,0])
- anm_nSess.append(len(days))
- anm_nSessPre.append(np.sum(days<0))
- anm_nSessPost.append(np.sum(days>=0))
- anmNT = [np.sum(tracker[:,0]==day) for day in days]
- anmNTPre = [np.sum(tracker[:,0]==day) for day in days if day <0]
- anmNTPost = [np.sum(tracker[:,0]==day) for day in days if day >= 0]
- anm_nTrials.append(anmNT)
- anm_nTrialsPre.append(anmNTPre)
- anm_nTrialsPost.append(anmNTPost)
- print('median nSessions: ', f'{np.median(anm_nSess)}')
- print('median nSessions Pre: ', f'{np.median(anm_nSessPre)}', f'{np.std(anm_nSessPre):.03f}')
- print('median nSessions Post: ', f'{np.median(anm_nSessPost)}')
- print('')
- print('median nTrials: ', f'{np.median(np.hstack(anm_nTrials))}')
- print('median nTrials Pre: ', f'{np.median(np.hstack(anm_nTrialsPre))}')
- print('median nTrials Post: ', f'{np.median(np.hstack(anm_nTrialsPost))}')
- # %%
- print('nAnms:', len(anm_nSessPost))
- print('nAnms with postShift:', np.sum(np.hstack(anm_nSessPost)!=0))
- # %%
- nanimals = []
- nsessions = []
- nTrials = []
- for a, anm in enumerate(anms):
- print("=============================")
- print(f'{anm}')
- anmData = allAnmParams[anm]
- tracker = anmData['tracker']
- anm_sessions = []
- anm_trials = []
- for p, phase in enumerate(['preShift_early', 'preShift_late', 'early', 'late']):
- mask = anmData['shiftMask'][phase]
- if 'early' in phase:
- print('----')
- print(f' {phase} mask/total {np.sum(mask==True)}/{len(mask)}')
- if np.sum(mask)>0:
- anm_sessions.append(len(np.unique(tracker[mask,0])))
- anm_trials.append(np.sum(mask))
- else:
- anm_trials.append(np.nan)
- anm_sessions.append(np.nan)
- nsessions.append(anm_sessions)
- nTrials.append(anm_trials)
- nsessions = np.vstack(nsessions)
- nTrials = np.vstack(nTrials)
- print("=============================")
- print('sessions:', np.nanmedian(nsessions, axis = 0), '+/-', np.nanstd(nsessions, axis = 0))
- print('trials', np.nanmedian(nTrials, axis = 0), '+/-', np.nanstd(nTrials, axis = 0))
- # %%
- print('median nSessions: ', f'{np.nanmedian(nsessions, axis = 0)}')
- print('median nSessions Pre: ', f'{np.median(anm_nSessPre)}', f'{np.std(anm_nSessPre):.03f}')
- print('median nSessions Post: ', f'{np.median(anm_nSessPost)}')
- print('')
- print('median nTrials: ', f'{np.median(np.hstack(anm_nTrials))}')
- print('median nTrials Pre: ', f'{np.median(np.hstack(anm_nTrialsPre))}')
- print('median nTrials Post: ', f'{np.median(np.hstack(anm_nTrialsPost))}')
- # %% [markdown]
- # # example 1 images and angle calc descriptions
- # %%
- anm = 'B00002213999'
- days = ['240320', '240321', '240322', '240323', '240324', '240325', '240326', '240327', '240328']
- # %%
- anmData = masterData[anm]['behavior']
- licks = jsm.get_contacts(anmData['trajs'])
- cTimes = jsm.get_cTimes2(anmData)
- tracker = jsm.get_tracker(anmData)
- azi,ele = jsm.get_aziEle(anmData, licks)
- azi = azi+90
- cDists = jsm.get_relDistances(azi, ele, tracker)
- me, de, CB = jsm.get_errors_LDA(azi, ele, tracker, returnLDA = True)
- recDays = np.hstack([anmData['mats'][m]['Info']['SessionDate'] for m in range(len(anmData['mats']))])
- uniqueDays = np.unique(tracker[:,0])
- for i in range(len(recDays)):
- print(uniqueDays[i], recDays[i])
- rp = anmData['port_locs']['pre_shift']['right']
- print(f'Right {rp}')
- lp = anmData['port_locs']['pre_shift']['left']
- print(f'Left {lp}')
- # %%
- dayIdx = 4
- idx1 = 1532 # CR
- idx2 = 1531 # MER
- idx3 = 1546 # DER
- t1 = tracker[idx1,1]
- t2 = tracker[idx2,1]
- t3 = tracker[idx3,1]
- trials = [t1,t2,t3]
- camIDs = ['20160684', '20302479']
- # %%
- try:
- os.mkdir(os.path.join(DATA_DIR,'examples','fig1_behav_examples'))
- except FileExistsError:
- pass
- try:
- os.mkdir(os.path.join(DATA_DIR,'examples','fig1_behav_examples',anm))
- except FileExistsError:
- pass
- try:
- os.mkdir(os.path.join(DATA_DIR,'examples','fig1_behav_examples',anm,days[dayIdx]))
- except FileExistsError:
- pass
- try:
- os.mkdir(os.path.join(DATA_DIR,'examples','fig1_behav_examples',anm,days[dayIdx],'run1'))
- except FileExistsError:
- pass
- exampleDir = os.path.join(DATA_DIR,'examples','fig1_behav_examples',anm,days[dayIdx],'run1')
- print(f'exampleDir: {exampleDir}')
- dayRaw = jsm.unpickler(exampleDir,'rawBehavior')
- if os.path.exists(f'{exampleDir}/{camIDs[1]}_trial_{t1+1}_0.tiff'):
- print('Loading files from exampleDir')
- c1 = tf.TiffFile(f'{exampleDir}/{camIDs[1]}_trial_{t1+1}_0.tiff').asarray()
- c2 = tf.TiffFile(f'{exampleDir}/{camIDs[1]}_trial_{t2+1}_0.tiff').asarray()
- c3 = tf.TiffFile(f'{exampleDir}/{camIDs[1]}_trial_{t3+1}_0.tiff').asarray()
- bottomCam = tf.TiffFile(f'{exampleDir}/{camIDs[1]}_trial_{t1+1}_0.tiff').asarray()
- sideCam = tf.TiffFile(f'{exampleDir}/{camIDs[0]}_trial_{t1+1}_0-1.tiff').asarray()
- # %%
- fontsize = 12
- figName = 'Fig1_ErrorType_lickports.pdf'
- bottCont = [0,200]
- fig, axs = plt.subplots(1,3,tight_layout = True, figsize = [5,2])
- imgs = [c1,c2,c3]
- trackings = [dayRaw['side'], dayRaw['bottom']]
- titles = ['Correct Right', 'Motor Error Right', 'Decision Error Right']
- trials = [t1,t2,t3]
- frames = [132,355,315]
- for a, ax in enumerate(axs):
- ax.imshow(imgs[a][frames[a],:,:], vmin = bottCont[0],vmax=bottCont[1], cmap = 'Greys_r',interpolation='none')
- ax.spines[['top','right','left','bottom']].set_visible(False)
- ax.set_xticks([])
- ax.set_yticks([])
- pColors = [(0,0,1),(1,0,0)]
- for s, side in enumerate(['right', 'left']):
- preLoc = anmData['port_locs']['pre_shift'][side][:2]/anmData['cameraCal']['bottomCam']
- print(f'{s} {side} {preLoc}')
- postLoc = anmData['port_locs']['post_shift'][side][:2]/anmData['cameraCal']['bottomCam']
- locs = [preLoc, postLoc]
- linestyles = [':','-']
- alphas = [0.3,0.9]
- for l, loc in enumerate(locs):
- ax.plot([loc[0]]*2, [-loc[1],-loc[1]+80], color = pColors[s], alpha = alphas[l], linestyle = linestyles[l], linewidth = 1)
- ax.set_title(titles[a],fontsize=fontsize)
- ax.set_ylim([100,300])
- ax.set_xlim([0,200])
- ax.invert_xaxis()
- jsm.set_dynamic_suptitle(fig,figName+"\n"+str(FIG_EXPORT_DIR),margin = 0.1,\
- fontsize=fontsize,color=(0,0,0),va='bottom')
- plt.show()
- with maybe_pdf(os.path.join(FIG_EXPORT_DIR,figName)) as pdf:
- pdf.savefig(fig,bbox_inches='tight',pad_inches=0.05,dpi=600) # saves the current figure into a pdf page
- # %%
- fig, axs = plt.subplots(2,1,tight_layout = True, figsize = [3,4])
- imgs = [sideCam, bottomCam]
- trackings = [dayRaw['side'], dayRaw['bottom']]
- sideCont = [0,70]
- bottCont = [0,200]
- trials = [t1]*2
- frames = [132]*2
- backFrames = 45
- for a, ax in enumerate(axs):
- print(imgs[a].shape)
- if a == 0:
- ax.imshow(imgs[a][frames[a],:,:], vmin = sideCont[0],vmax = sideCont[1], cmap = 'Greys_r',interpolation='none')
- else:
- ax.imshow(imgs[a][frames[a],:,:], vmin = bottCont[0],vmax = bottCont[1], cmap = 'Greys_r',interpolation='none')
- pColors = [(0,0,1),(1,0,0)]
- for s, side in enumerate(['right', 'left']):
- loc = anmData['port_locs']['post_shift'][side][:2]/anmData['cameraCal']['bottomCam']
- print(f'{s} {side} {loc}')
- ax.plot([loc[0]]*2, [-loc[1],-loc[1]+80], color = pColors[s], alpha = 0.9, linestyle = '-', linewidth = 1)
- ax.scatter(trackings[a][trials[a]][0,frames[a]],trackings[a][trials[a]][1,frames[a]], c = 'orange')
- ax.scatter(trackings[a][trials[a]][0,frames[a]-backFrames:frames[a]],trackings[a][trials[a]][1,frames[a]-backFrames:frames[a]],
- c = np.arange(45), cmap = 'rainbow', alpha = 0.8, s = 5)
- ax.spines[['top','right','left','bottom']].set_visible(False)
- ax.set_xticks([])
- ax.set_yticks([])
- if a == 1:
- ax.set_ylim([100,300])
- ax.set_xlim([200,0])
- else:
- ax.set_xlim([150,350])
- ax.set_ylim([300,100])
- fontsize = 12
- figName = 'Fig1_lick tracking.pdf'
- jsm.set_dynamic_suptitle(fig,figName+"\n"+str(FIG_EXPORT_DIR),margin = 0.1,\
- fontsize=fontsize,color=(0,0,0),va='bottom')
- plt.show()
- with maybe_pdf(os.path.join(FIG_EXPORT_DIR,figName)) as pdf:
- pdf.savefig(fig,bbox_inches='tight',pad_inches=0.05,dpi=600) # saves the current figure into a pdf page
- # %% [markdown]
- # # 3D lick projections
- # %%
- anm = 'B00002213889'
- anmData = masterData[anm]['behavior']
- tracker = jsm.get_tracker(anmData)
- licks = jsm.get_contacts(anmData['trajs'])
- cTimes = jsm.get_cTimes2(anmData)
- azi,ele = jsm.get_aziEle(anmData, licks)
- azi = azi+90
- cDists = jsm.get_relDistances(azi, ele, tracker)
- lickAngles = jsm.get_lickAngle(azi, ele, CB)
- preMask = allAnmParams[anm]['shiftMask']['pre']
- postMask = jsm.get_behaviorShiftMask(tracker, 'post')
- me, de, CB = jsm.get_errors_LDA(azi, ele, tracker, returnLDA = True)
- recDays = np.hstack([anmData['mats'][m]['Info']['SessionDate'] for m in range(len(anmData['mats']))])
- uniqueDays = np.unique(tracker[:,0])
- for i in range(len(recDays)):
- print(uniqueDays[i], recDays[i])
- # %%
- figName = 'Fig1_Alt_lick_surface_all_traj.pdf'
- colors = [(0,0,1),(1,0,0), (0,0,0)]
- labels = ['Right', 'Left']
- # U, V, W components for 3 axes: [x_dir, y_dir, z_dir]
- u_dirs = [2, 0, 0]
- v_dirs = [0, 2, 0]
- w_dirs = [0, 0, 2]
- axshift_x = 0
- axshift_y = 3
- axshift_z = 2
- exportSides = [0,1]
- fontsize = 12
- figsize = [10,3]
- fig = plt.figure(figsize = figsize)
- ax1 = fig.add_subplot(131, projection = '3d')
- ax2 = fig.add_subplot(132, projection = '3d')
- ax3 = fig.add_subplot(133, projection = '3d')
- plt.subplots_adjust(wspace=0.001, hspace=0.001)
- mouth = anmData['mouth']
- rp = anmData['port_locs']['pre_shift']['right']
- lp = anmData['port_locs']['pre_shift']['left']
- rad = jsm.identify_rad_3d(anmData, fraction = 1) #set a different rad with 'fraction'
- radI = jsm.get_radIdxs_3d(anmData, licks, rad, count_if_noCross = False)
- sm = tracker[:,0] < 0
- drad = radI[sm]
- dc = licks[sm,:,:]
- dt = tracker[sm,:]
- elevs = [90,30,0]
- azims = [-90,150,0]
- for a, ax in enumerate([ax1,ax2,ax3]):
- ax.view_init(elev = elevs[a], azim = azims[a])
- ax.scatter(mouth[0], mouth[1], mouth[2], color = (0,0,0), s = 50, edgecolor = (0.75,0.75,0.75), alpha = 0.6,label="Mouth",zorder=10)
- ax.scatter(rp[0], rp[1], rp[2], color = colors[0], s = 50, edgecolor = (0.75,0.75,0.75), marker = '^',label=labels[0]+" Port",zorder=10)
- ax.scatter(lp[0], lp[1], lp[2], color = colors[1], s = 50, edgecolor = (0.75,0.75,0.75), marker = '^',label=labels[1]+" Port",zorder=10)
- counts = np.zeros((len(exportSides)),dtype=int)
- for t in range(dt.shape[0]):
- for s, sideCode in enumerate(exportSides):
- if dt[t,2]==sideCode:
- if np.isfinite(drad[t]):
- counts[s] +=1
- i = int(drad[t])
- ax.plot(dc[t,:i,0], dc[t,:i,1], dc[t,:i,2], alpha = 0.02, color = colors[s])
- for s, sideCode in enumerate(exportSides):
- print(f'{labels[s]} {counts[s]}')
- r = rad
- u = np.linspace(-np.pi, -2*np.pi, 100)
- v = np.linspace(-np.pi, -np.pi/2, 100)
- x = (r * np.outer(np.cos(u), np.sin(v)))
- y = (r * np.outer(np.sin(u), np.sin(v)))
- z = (r * np.outer(np.ones(np.size(u)), np.cos(v)))
- ax.plot_surface(x+mouth[0], y+mouth[1], z+mouth[2], color=(0,0,0), alpha=0.1)
- jsm.set_axes_equal(ax)
- ax.set_axis_off()
- ax.set_facecolor('none')
- # Plot the arrows
- # ax.quiver(X, Y, Z, U, V, W, ...)
- ax.quiver(mouth[0]+axshift_x, mouth[1]+axshift_y, mouth[2]+axshift_z, u_dirs[0], v_dirs[0], w_dirs[0], \
- color=(0.5,0.5,0.5), label='L/R',linewidth=1,arrow_length_ratio=0)
- # ax.quiver(mouth[0]+axshift_x, mouth[1]+axshift_y, mouth[2]+axshift_z, -1*u_dirs[0], v_dirs[0], w_dirs[0], \
- # color=colors[0], label='Right',linewidth=1,arrow_length_ratio=0)
- ax.quiver(mouth[0]+axshift_x, mouth[1]+axshift_y, mouth[2]+axshift_z, u_dirs[1], -1*v_dirs[1], w_dirs[1], \
- color=(0.5,0.5,0.5), label='A/P',linewidth=1,arrow_length_ratio=0)
- ax.quiver(mouth[0]+axshift_x, mouth[1]+axshift_y, mouth[2]+axshift_z, u_dirs[2], v_dirs[2], w_dirs[2], \
- color=(0.5,0.5,0.5), label='D/V',linewidth=1,arrow_length_ratio=0)
- ax.plot(mouth[0]+axshift_x, mouth[1]+axshift_y, mouth[2]+axshift_z,'.',color=(0,0,0),markersize=8)
- if a == 2:
- ax.legend(frameon=False,fontsize=fontsize,bbox_to_anchor=(1.01, 1), loc='upper left')
- ax1.invert_xaxis()
- ax1.invert_yaxis()
- ax3.invert_yaxis()
- jsm.set_dynamic_suptitle(fig,figName+"\n"+str(FIG_EXPORT_DIR),margin = 0.1,\
- fontsize=fontsize,color=(0,0,0),va='bottom')
- plt.show()
- with maybe_pdf(os.path.join(FIG_EXPORT_DIR,figName)) as pdf:
- pdf.savefig(fig,bbox_inches='tight',pad_inches=0.05,dpi=600) # saves the current figure into a pdf page
- # %%
- %matplotlib inline
- figName = 'Fig1_Alt_lick_locations_pre.pdf'
- gridspec_kw=dict(
- left=0.05,
- right=0.95,
- bottom=0.05,
- top=0.95,
- wspace=0.2,
- hspace=0.2
- )
- fontsize = 8
- ms = 4
- figSize = [2.2,3]
- xlim1 = [-155,-25]
- xlim1 = [-50,50]
- xlim2 = [-50,50]
- xticks1 = [-150,-125,-100,-75,-50,-25]
- xticks1 = [-50,-25,0,25,50]
- xticks2 = [-50,-25,0,25,50]
- ylim2 = [0,0.1]
- ylim2 = [0,0.4]
- yticks1 = [-10,-20,-30,-40,-50,-60]
- ylim1 = [-60,-10]
- #titles = ['Pre-Shift', 'Post-Shift']
- sColors = [(0,0,1),(1,0,0)]
- labels = ['Right', 'Left']
- azi_shift = 0#90
- histMeth = 'kde'#'pdf'# 'kde' #pdf
- binWidth = 5
- binRange = [-65,65]
- loc='lower left'
- sm = tracker[:,0] < 0
- rTs = np.where(tracker[sm,2]==0)[0]
- rT = rTs[10]#10
- lTs = np.where(tracker[sm,2]==1)[0]
- lT = lTs[10]#10
- fig, axs = jsm.clean_subplots(3,1,figsize=figSize,gridspec_kw=gridspec_kw)
- axs = axs.flatten()
- w = CB.coef_[0]
- C = CB.intercept_[0]
- A, B = w[0], w[1]
- exampleTrials = [rT, lT]
- xOffsets = [-10,-20]
- ax = axs[0]
- for t in range(2):
- mask = np.logical_and(tracker[:,0]<0, tracker[:,2]==t)
- print(f'{labels[t]} n = {np.sum(mask==True)}')
- for ii,i in enumerate(list(np.argwhere(mask==True))):
- if ii == 0:
- ax.plot(azi[i]+azi_shift, ele[i], '.', ms = ms, color = sColors[t], alpha=0.1,label=labels[t], linestyle='None', markeredgewidth=0, markeredgecolor='none')
- else:
- ax.plot(azi[i]+azi_shift, ele[i], '.', ms = ms, color = sColors[t], alpha=0.1, linestyle='None', markeredgewidth=0, markeredgecolor='none')
- ax.set_xlim(xlim1)
- ax.set_xticks(xticks1)
- ax.set_yticks(yticks1)
- ax.tick_params(axis='both', which='major', labelsize=14)
- ax.set_ylim(ylim1)
- ax.set_ylabel('Elevation (°)',fontsize=fontsize,labelpad=0)
- ax.set_xlabel('Azimuth (°)',fontsize=fontsize,labelpad=0)
- xrng = np.linspace(ax.get_xlim()[0], ax.get_xlim()[1], 200)
- yrng = (-A/B) * xrng - (C/B)
- ymin, ymax = ax.get_ylim()
- if abs(B) < 1e-12:
- xline = -C / A
- ax.plot([xline+azi_shift, xline+azi_shift], [ymin+5, ymax-5], ls = ':',color=(0,0,0), linewidth = 2,label='Choice\nBoundary')
- else:
- x1 = (ymin + (C/B)) / (-A/B)
- x2 = (ymax + (C/B)) / (-A/B)
- ax.plot([x1+azi_shift, x2+azi_shift], [ymin+5, ymax-5], ls = ':',color=(0,0,0), linewidth = 1,label = 'Choice\nBoundary')
- ax.legend(frameon=False,fontsize=fontsize,loc=loc,handlelength=0.75, markerscale=0.75, handletextpad=0.2, labelspacing=0.1, borderpad=0.3)
- ax = axs[1]
- if histMeth == 'kde':
- sns.kdeplot(lickAngles[np.logical_and(tracker[:,0]<0, tracker[:,2]==0)]*-1, alpha = 0.3, color = (0,0,1), ax = axs[1], fill = True)
- sns.kdeplot(lickAngles[np.logical_and(tracker[:,0]<0, tracker[:,2]==1)]*-1, alpha = 0.3, color = (1,0,0), ax = axs[1], fill = True)
- elif histMeth == 'pdf':
- tempData = lickAngles[np.logical_and(tracker[:,0]<0, tracker[:,2]==0)]*-1
- tempStat = jsm.summary_stats(tempData,nBins=0,binWidth=binWidth,temp_minVal=binRange[0],temp_maxVal=binRange[1],\
- calcHist=True, verbose=False, allow_overages = False, splitZeroBin = False, \
- calc_hist_log10 = False, calc_cumulative_hist = False, calc_norm_hist = False, calc_cumulative_freq = False, calc_pdf = True,
- save_input = False, force_dType=False, dType='float32', exclude_NaNs = True, warningsOn = True)
- ax.fill_between(tempStat['binCenters'], np.zeros_like(tempStat['binCenters']), tempStat['pdf'], color = (0,0,1), alpha = 0.3,edgecolor = 'none')
- ax.plot(tempStat['binCenters'],tempStat['pdf'], color = (0,0,1), lw = 1,ls='-',label = 'Pre-Shift R')
- tempData = lickAngles[np.logical_and(tracker[:,0]<0, tracker[:,2]==1)]*-1
- tempStat = jsm.summary_stats(tempData,nBins=0,binWidth=binWidth,temp_minVal=binRange[0],temp_maxVal=binRange[1],\
- calcHist=True, verbose=False, allow_overages = False, splitZeroBin = False, \
- calc_hist_log10 = False, calc_cumulative_hist = False, calc_norm_hist = False, calc_cumulative_freq = False, calc_pdf = True,
- save_input = False, force_dType=False, dType='float32', exclude_NaNs = True, warningsOn = True)
- ax.fill_between(tempStat['binCenters'], np.zeros_like(tempStat['binCenters']), tempStat['pdf'], color = (1,0,0), alpha = 0.3,edgecolor = 'none')
- ax.plot(tempStat['binCenters'],tempStat['pdf'], color = (1,0,0), lw = 1,ls='-',label = 'Pre-Shift L')
- ax.legend(frameon=False,fontsize=fontsize,loc=loc,handlelength=0.75, markerscale=0.75, handletextpad=0.2, labelspacing=0.1, borderpad=0.3)
- ax.set_xlabel('Lick Angle (°; relative to CB)',fontsize=fontsize,labelpad=0)
- ax.set_ylabel('Density',fontsize=fontsize)
- ax.set_xlim(xlim2)
- ax.set_xticks(xticks2)
- for ax in axs:
- ax.spines[['top','right']].set_visible(False)
- ax.tick_params(axis='both', which='major', labelsize=fontsize)
- ax.tick_params(axis='x', which='major', labelsize=fontsize,pad= 2) #
- ax.tick_params(axis='y', which='major', labelsize=fontsize,pad= 1) #
- axs[2].cla()
- axs[2].axis('off')
- plt.show()
- with maybe_pdf(os.path.join(FIG_EXPORT_DIR,figName)) as pdf:
- pdf.savefig(fig,bbox_inches='tight',pad_inches=0.05,dpi=600) # saves the current figure into a pdf page
- # %%
- figName = 'Fig1_Alt_postShift_errorDistributions_splitError.pdf'
- gridspec_kw=dict(
- left=0.05,
- right=0.95,
- bottom=0.05,
- top=0.95,
- wspace=0.2,
- hspace=0.2
- )
- fontsize = 8
- ms1 = 3
- ms2 = 5
- figSize = [2.2,3]
- xlim1 = [-155,-25]
- xlim1 = [-50,50]
- xlim2 = [-50,50]
- xticks1 = [-150,-125,-100,-75,-50,-25]
- xticks1 = [-50,-25,0,25,50]
- xticks2 = [-50,-25,0,25,50]
- yticks1 = [-10,-20,-30,-40,-50,-60]
- ylim1 = [-60,-10]
- ylim2 = [0,0.6]
- #sColors = [(0,0,1),(1,0,0)]
- sColors = [(0,0,1), (0,0,0.5), (1,0,0), (0.5,0.5,0.5)]
- labels = ['CR', 'MER', 'CL', 'DER']
- azi_shift = 0
- histMeth = 'pdf'# 'kde' #pdf
- binWidth = 5
- binRange = [-65,65]
- loc='lower left'
- linewidth = 1
- fig, axs = jsm.clean_subplots(3,1,figsize=figSize,gridspec_kw=gridspec_kw)
- axs = axs.flatten()
- w = CB.coef_[0]
- C = CB.intercept_[0]
- A, B = w[0], w[1]
- xOffsets = [0,-10]
- meMask = np.logical_and(np.logical_and(postMask, me), tracker[:,2]==5)
- deMask = np.logical_and(np.logical_and(postMask, de), tracker[:,2]==5)
- clMask = np.logical_and(postMask, tracker[:,2]==1)
- crMask = np.logical_and(postMask, tracker[:,2]==0)
- masks = [crMask, meMask, clMask, deMask]
- markers = ['.','x','.','x']
- alphas = [.1,.5,.1,.5]
- sizes = [4,6,4,6]
- handels = []
- ax = axs[0]
- indicies = [0,2]
- for t in indicies:
- mask = masks[t]
- if markers[t] == 'x':
- for ii,i in enumerate(list(np.argwhere(mask==True))):
- if ii == 0:
- ax.plot(azi[i]+azi_shift, ele[i], markers[t], ms = sizes[t], color = sColors[t], alpha=alphas[t],label=labels[t], linestyle='None', markeredgewidth=0, markeredgecolor='none')
- else:
- ax.plot(azi[i]+azi_shift, ele[i], markers[t], ms = sizes[t], color = sColors[t], alpha=alphas[t], linestyle='None', markeredgewidth=0, markeredgecolor='none')
- else:
- for ii,i in enumerate(list(np.argwhere(mask==True))):
- if ii == 0:
- ax.plot(azi[i]+azi_shift, ele[i], markers[t], ms = sizes[t], color = sColors[t], alpha=alphas[t],label=labels[t], linestyle='None', markeredgewidth=0, markeredgecolor='none')
- else:
- ax.plot(azi[i]+azi_shift, ele[i], markers[t], ms = sizes[t], color = sColors[t], alpha=alphas[t], linestyle='None', markeredgewidth=0, markeredgecolor='none')
- # handels.append(sct)
- print(f'{labels[t]} {np.sum(mask==True)}')
- ax.set_xlim(xlim1)
- ax.set_xticks(xticks1)
- ax.set_yticks(yticks1)
- ax.tick_params(axis='both', which='major', labelsize=fontsize)
- ax.set_ylim(ylim1)
- ax.set_ylabel('Elevation (°)',fontsize=fontsize,labelpad=0)
- ax.set_xlabel('Azimuth (°)',fontsize=fontsize,labelpad=0)
- xrng = np.linspace(ax.get_xlim()[0], ax.get_xlim()[1], 200)
- yrng = (-A/B) * xrng - (C/B)
- ymin, ymax = ax.get_ylim()
- if abs(B) < 1e-12:
- xline = -C / A
- ax.plot([xline+azi_shift, xline+azi_shift], [ymin+5, ymax-5], ls = ':',color=(0,0,0), linewidth = 2,label='CB')
- else:
- x1 = (ymin + (C/B)) / (-A/B)
- x2 = (ymax + (C/B)) / (-A/B)
- LDALine, = ax.plot([x1+azi_shift, x2+azi_shift], [ymin+5, ymax-5], ls = ':',color=(0,0,0), linewidth = 1,label = 'CB')
- ax.text(xlim1[0],ylim1[1],'Post-Shift',color = (0,0,0),fontsize=fontsize,ha='left',va='top')
- ax.legend(frameon=False,fontsize=fontsize,loc=loc,handlelength=0.75, markerscale=0.75, handletextpad=0.2, labelspacing=0.1, borderpad=0.3)
- ax = axs[1]
- indicies = [1,3]
- for t in indicies:
- mask = masks[t]
- if markers[t] == 'x':
- sct = ax.scatter(azi[mask]+azi_shift, ele[mask], s=sizes[t], c=sColors[t], alpha=alphas[t], marker = markers[t], label = labels[t])
- else:
- sct = ax.scatter(azi[mask]+azi_shift, ele[mask], s=sizes[t], c=sColors[t], alpha=alphas[t], marker = markers[t], label = labels[t],edgecolor=None)
- handels.append(sct)
- print(f'{labels[t]} {np.sum(mask==True)}')
- ax.set_xlim(xlim1)
- ax.set_xticks(xticks1)
- ax.set_yticks(yticks1)
- ax.tick_params(axis='both', which='major', labelsize=fontsize)
- ax.set_ylim(ylim1)
- ax.set_ylabel('Elevation (°)',fontsize=fontsize,labelpad=0)
- ax.set_xlabel('Azimuth (°)',fontsize=fontsize,labelpad=0)
- xrng = np.linspace(ax.get_xlim()[0], ax.get_xlim()[1], 200)
- yrng = (-A/B) * xrng - (C/B)
- ymin, ymax = ax.get_ylim()
- if abs(B) < 1e-12:
- xline = -C / A
- ax.plot([xline+azi_shift, xline+azi_shift], [ymin+5, ymax-5], ls = ':',color=(0,0,0), linewidth = 2,label='CB')
- else:
- x1 = (ymin + (C/B)) / (-A/B)
- x2 = (ymax + (C/B)) / (-A/B)
- LDALine, = ax.plot([x1+azi_shift, x2+azi_shift], [ymin+5, ymax-5], ls = ':',color=(0,0,0), linewidth = 1,label = 'CB')
- ax.text(xlim1[0],ylim1[1],'Post-Shift',color = (0,0,0),fontsize=fontsize,ha='left',va='top')
- ax.legend(frameon=False,fontsize=fontsize,loc=loc,handlelength=0.75, markerscale=0.75, handletextpad=0.2, labelspacing=0.1, borderpad=0.3)
- ax = axs[2]
- loc='upper right'
- masks = [crMask, clMask, meMask, deMask]
- labels = ['CR','CL','MER','DER']
- linestyles = ['-','-','-','-']
- colors = [(0,0,1),(1,0,0),(0,0,.5),(.1,.1,.1)]
- alphas = [.9,.9,.3,.3]
- fills = [False,False,True,True]
- for m, mask in enumerate(masks):
- if histMeth == 'kde':
- sns.kdeplot(cDists[mask]*-1, alpha = alphas[m], color = colors[m], ax = axs[1], fill = fills[m], lw = linewidth)
- ax.plot(-100,-100,'-',lw=linewidth,color=colors[m],label=labels[m])
- elif histMeth == 'pdf':
- tempStat = jsm.summary_stats(cDists[mask]*-1,nBins=0,binWidth=binWidth,temp_minVal=binRange[0],temp_maxVal=binRange[1],\
- calcHist=True, verbose=False, allow_overages = False, splitZeroBin = False, \
- calc_hist_log10 = False, calc_cumulative_hist = False, calc_norm_hist = False, calc_cumulative_freq = False, calc_pdf = True,
- save_input = False, force_dType=False, dType='float32', exclude_NaNs = True, warningsOn = True)
- if fills[m]:
- ax.fill_between(tempStat['binCenters'], np.zeros_like(tempStat['binCenters']), tempStat['pdf'], color = colors[m], alpha = alphas[m],edgecolor = 'none')
- ax.plot(tempStat['binCenters'],tempStat['pdf'], color = colors[m], lw = linewidth,ls=linestyles[m],label = labels[m])
- ax.set_xlabel('Lick Angle (°; relative to CB)',fontsize=fontsize,labelpad=0)
- ax.set_ylabel('Density',fontsize=fontsize,labelpad=0)
- ax.set_xticks(xticks2)
- ax.legend(frameon=False,fontsize=fontsize,loc=loc,handlelength=0.75, markerscale=0.75, handletextpad=0.2, labelspacing=0.1, borderpad=0.3)
- ax.set_ylim(ylim2)
- ax.set_xlim(xlim2)
- for ax in axs:
- ax.spines[['top','right']].set_visible(False)
- ax.tick_params(axis='both', which='major', labelsize=fontsize)
- ax.tick_params(axis='x', which='major', labelsize=fontsize,pad= 2) #
- ax.tick_params(axis='y', which='major', labelsize=fontsize,pad= 1) #
- plt.show()
- with maybe_pdf(os.path.join(FIG_EXPORT_DIR,figName)) as pdf:
- pdf.savefig(fig,bbox_inches='tight',pad_inches=0.05,dpi=600) # saves the current figure into a pdf page
- # %% [markdown]
- # # all animal lick angles and motor errors across shift
- # %% [markdown]
- # ### setup
- # %%
- for anm in anms:
- anmData = allAnmParams[anm]
- for i,mod in enumerate(['f','c', 's']):
- azi = anmData[f'{mod}Azi']
- ele = anmData[f'{mod}Ele']
- lda = anmData['lda']
- lickAngles = jsm.get_lickAngle(azi, ele, lda)
- anmData[f'{mod}Angles'] = lickAngles
- # %% [markdown]
- # ### summary stats
- # %%
- ### % MER/ DER
- stats = {'pre_percMER': [], 'pre_percDER': [], 'post_percMER': [], 'post_percDER': []}
- statKeys = stats.keys()
- for anm in anms:
- anmData = allAnmParams[anm]
- tracker = anmData['tracker']
- me = anmData['me']
- de = anmData['de']
- for p, phase in enumerate(['pre','post']):
- rMask = (tracker[:,2]==0)|(tracker[:,2]==5)
- pMask = anmData['shiftMask'][phase]
- prMask = (pMask)&(rMask)
- percME = np.sum((me)&(prMask))/np.sum(prMask)
- percDE = np.sum((de)&(prMask))/np.sum(prMask)
- stats[f'{phase}_percMER'].append(percME)
- stats[f'{phase}_percDER'].append(percDE)
- # fig, axs = plt.subplots(1,2,figsize = [5,3],tight_layout = True, sharey = True)
- colors = ['darkred', 'darkblue']
- errLabels = ['DER', 'MER']
- for a, ax in enumerate(axs):
- if a == 0:
- phase = 'pre'
- else:
- phase = 'post'
- pMer = stats[f'{phase}_percMER']
- pDer = stats[f'{phase}_percDER']
- errs = [pDer, pMer]
- for e, err in enumerate(errs):
- median = np.nanmedian(err)
- print(phase, errLabels[e], f'{median:.03f}')
- sem = np.nanstd(err)/np.sqrt(np.sum(np.isfinite(err)))
- # ax.bar(e, median, yerr = sem, color = colors[e], alpha = 0.5)
- # %%
- ### test for modality
- from sklearn.mixture import GaussianMixture
- errAngles = {'pre_MER': [], 'pre_DER': [], 'post_MER': [], 'post_DER': []}
- statKeys = errAngles.keys()
- for anm in anms:
- anmData = allAnmParams[anm]
- tracker = anmData['tracker']
- me = anmData['me']
- de = anmData['de']
- angles = anmData['cAngles']
- for p, phase in enumerate(['pre','post']):
- rMask = (tracker[:,2]==0)|(tracker[:,2]==5)
- pMask = anmData['shiftMask'][phase]
- prMask = (pMask)&(rMask)
- meAngles = angles[(me)&(prMask)]
- deAngles = angles[(de)&(prMask)]
- errAngles[f'{phase}_MER'].append(meAngles)
- errAngles[f'{phase}_DER'].append(deAngles)
- modeTests = {}
- random_state = 73
- # fig, axs = plt.subplots(1,2,figsize = [5,3],tight_layout = True, sharey = True)
- colors = ['darkred', 'darkblue']
- errLabels = ['DER', 'MER']
- for p, phase in enumerate(['pre','post']):
- X = np.hstack([np.hstack(errAngles[f'{phase}_MER']), np.hstack(errAngles[f'{phase}_DER'])])*-1
- X = X[np.isfinite(X)]
- _,bins = np.histogram(X, bins =100)
- X = X.reshape(-1,1)
- # Fit models
- gmm1 = GaussianMixture(n_components=1, random_state=random_state)
- gmm2 = GaussianMixture(n_components=2, random_state=random_state)
- gmm1.fit(X)
- gmm2.fit(X)
- # Compute BIC
- bic1 = gmm1.bic(X)
- bic2 = gmm2.bic(X)
- delta_bic = bic1 - bic2 # positive favors 2-component
- # Extract parameters for interpretability
- means = gmm2.means_.flatten()
- variances = gmm2.covariances_.flatten()
- weights = gmm2.weights_.flatten()
- # Sort components by mean
- order = np.argsort(means)
- means = means[order]
- variances = variances[order]
- weights = weights[order]
- # Optional: Ashman's D
- ashman_d = np.abs(means[1] - means[0]) / np.sqrt(0.5 * (variances[0] + variances[1]))
- output = {
- "bic_1_component": bic1,
- "bic_2_component": bic2,
- "delta_bic": delta_bic,
- "preferred_model": "2-component" if delta_bic > 0 else "1-component",
- "means": means,
- 'mid_point': np.mean(means),
- "variances": variances,
- "weights": weights,
- "ashman_d": ashman_d
- }
- modeTests[phase] = output
- for phase in ['pre','post']:
- print(f'{phase}: ')
- print(modeTests[phase])
- print('')
- # %%
- statsL = {'pre_percMEL': [], 'pre_percDEL': [], 'pre_ratio': [],
- 'post_percMEL': [], 'post_percDEL': [], 'post_ratio': []}
- statLKeys = statsL.keys()
- for anm in anms:
- anmData = allAnmParams[anm]
- tracker = anmData['tracker']
- me = anmData['me']
- de = anmData['de']
- for p, phase in enumerate(['pre','post']):
- lMask = (tracker[:,2]==1)|(tracker[:,2]==6)
- pMask = anmData['shiftMask'][phase]
- plMask = (pMask)&(lMask)
- percME = np.sum((me)&(plMask))/np.sum(plMask)
- percDE = np.sum((de)&(plMask))/np.sum(plMask)
- statsL[f'{phase}_percMEL'].append(percME)
- statsL[f'{phase}_percDEL'].append(percDE)
- nAny = (np.sum(((me)|(de))&(plMask)))
- statsL[f'{phase}_ratio'].append(nAny/np.sum(plMask))
- # %%
- statsAny = {'pre_percME': [], 'pre_percDE': [], 'pre_ratio': [], 'pre_err_toCorrect': [],
- 'post_percME': [], 'post_percDE': [], 'post_ratio': [], 'post_err_toCorrect': []}
- statsAnyKeys = statsAny.keys()
- for anm in anms:
- anmData = allAnmParams[anm]
- tracker = anmData['tracker']
- me = anmData['me']
- de = anmData['de']
- for p, phase in enumerate(['pre','post']):
- aMask = tracker[:,2]<10 #only clean trials (no EL)
- pMask = anmData['shiftMask'][phase]
- paMask = (pMask)&(aMask)
- percME = np.sum((me)&(paMask))/np.sum(paMask)
- percDE = np.sum((de)&(paMask))/np.sum(paMask)
- statsAny[f'{phase}_percME'].append(percME)
- statsAny[f'{phase}_percDE'].append(percDE)
- nAny = (np.sum(((me)|(de))&(paMask)))
- ratio = np.sum((de)&(paMask))/nAny
- statsAny[f'{phase}_ratio'].append(ratio)
- statsAny[f'{phase}_err_toCorrect'].append(nAny/np.sum(paMask))
- # %%
- ### response times
- pre = []
- post = []
- change = []
- for anm in anms:
- anmData = allAnmParams[anm]
- tracker = anmData['tracker']
- preMask = anmData['shiftMask']['pre']
- postMask = anmData['shiftMask']['post']
- goCues = anmData['goCues']
- cTimes = anmData['cTimes']
- rxTime = cTimes-goCues
- pre.append(np.nanmean(rxTime[preMask]))
- post.append(np.nanmean(rxTime[postMask]))
- if np.sum(postMask>0):
- change.append(np.nanmean(rxTime[postMask])-np.nanmean(rxTime[preMask]))
- print('pre: ', f'{np.nanmedian(pre):.03f}')
- print('post: ', f'{np.nanmedian(post):.03f}')
- # print('change: ', f'{np.nanmean(post)-np.nanmean(pre):.03f}')
- print('change: ', f'{np.nanmean(change):.03f}', f'{np.nanstd(change):.03f}')
- # %% [markdown]
- # ### figure panels
- # %%
- figName = 'Fig1_allAnmLickDistro_alt.pdf'
- ttypes = ['Right','Left','Motor','Decision']
- colors = [(0,0,1),(1,0,0),(0,0,.5),(.1,.1,.1)]
- alphas = [.7,.7,.7,.7]
- fills = [False, False, True, True]
- lws = [0.5,0.5,0.5,0.5]
- fontsize = 8
- figsize = [4,3]
- titles = ['Pre-Shift', 'Post-Shift']
- CI = 68
- error = 'std'
- # ylim = [-7,3]
- ylim = [-3,7]
- xlim = [-50,50]
- xticks = [-50,-25,0,25,50]
- if error == 'CI':
- errorLabel = "mean±"+str(CI)+"% CI"
- elif error == 'sem':
- errorLabel = "mean±SEM"
- elif error == 'std':
- errorLabel = "mean±SD"
- nBoot = 10000
- fig,axs = jsm.clean_subplots(2,2,figsize,constrained_layout=True,sharey = True, sharex=True)
- for q in range(2):
- # ax = axs[q]
- allAnmDistros = [[],[],[],[]]
- for a, anm in enumerate(anms):
- anmData = allAnmParams[anm]
- if q == 0:
- phaseMask = allAnmParams[anm]['shiftMask']['pre']
- else:
- phaseMask = allAnmParams[anm]['shiftMask']['post']
- tracker = allAnmParams[anm]['tracker']#jsm.get_tracker(anmData)
- azi = allAnmParams[anm]['cAzi']+90
- ele = allAnmParams[anm]['cEle']
- me, de, CB = jsm.get_errors_LDA(azi, ele, tracker, returnLDA = True)
- dists = jsm.get_lickAngle(azi, ele, CB)
- CR = tracker[:,2]==0
- CL = tracker[:,2]==1
- me = (allAnmParams[anm]['me'])&(tracker[:,2]==5)
- de = (allAnmParams[anm]['de'])&(tracker[:,2]==5)
- ttypeMasks = [CR,CL,me,de]
- distros = []
- for m, mask in enumerate(ttypeMasks):
- allAnmDistros[m].append(dists[(mask)&(phaseMask)])
- flatDistros = np.hstack([np.hstack(allAnmDistros[i]) for i in range(len(allAnmDistros))])
- _,bins = np.histogram(flatDistros[np.isfinite(flatDistros)], bins = 30)
- for d, distro in enumerate(allAnmDistros):
- if d<2:
- ax = axs[0,q]
- ax.set_title(titles[q]+': Correct',fontsize=fontsize+2)
- else:
- ax = axs[1,q]
- ax.set_title(titles[q]+': Right-Trial Errors',fontsize=fontsize+2)
- sns.histplot(np.hstack(distro)*-1, color = colors[d], alpha = alphas[d], ax = ax, bins = bins, stat = 'probability', linewidth=lws[d],label=ttypes[d])
- print(f'{titles[q]} {ttypes[d]} median {np.nanmedian(np.hstack(distro)*-1):.1f} std {np.nanstd(np.hstack(distro)*-1):.1f} mean {np.nanmean(np.hstack(distro)*-1):.1f} ± {np.nanstd(np.hstack(distro)*-1)/np.sqrt(np.sum(np.isfinite(np.hstack(distro)*-1))):.1f} (n = {np.nansum(np.isfinite(np.hstack(distro)))})')
- for ax in axs.flatten():
- ax.legend(frameon=False,fontsize=fontsize,loc='upper right',handlelength=0.75, markerscale=0.75, handletextpad=0.2, labelspacing=0.1, borderpad=0.3)
- ax.set_xlabel('Lick Angle\n(°; relative to CB)',fontsize=fontsize)
- ax.set_ylabel('Probability',fontsize=fontsize)
- ax.set_xticks(xticks)
- ax.set_xlim(xlim)
- for ax in axs.flatten():
- ax.spines[['top','right']].set_visible(False)
- ax.tick_params(axis='both', which='major', labelsize=fontsize) #
- ax.tick_params(axis='x', which='major', labelsize=fontsize,pad= 2) #
- ax.tick_params(axis='y', which='major', labelsize=fontsize,pad= 1) #
- plt.show()
- with maybe_pdf(os.path.join(FIG_EXPORT_DIR,figName)) as pdf:
- pdf.savefig(fig,bbox_inches='tight',pad_inches=0.05,dpi=600) # saves the current figure into a pdf page
- # %%
- figName = 'Fig1_avg_lick_by_shift_R_ONLY.pdf'
- gridspec_kw=dict(
- left=0.05,
- right=0.95,
- bottom=0.05,
- top=0.95,
- wspace=0.2,
- hspace=0.2
- )
- colors = [(1,0,0),(0,0,1)]
- fontsize = 8
- figsize = [4,1]
- titles = ['First\nContact Lick','First Lick\nRegardless\nof Contact']
- CI = 68
- error = 'std'
- if error == 'CI':
- errorLabel = "mean±"+str(CI)+"% CI"
- elif error == 'sem':
- errorLabel = "mean±SEM"
- elif error == 'std':
- errorLabel = "mean±SD"
- nBoot = 10000
- yticks = [-6,-4,-2,0,2,4,6]
- ylim = [-6,6]
- allBooted = []
- fig,axs = jsm.clean_subplots(1,2,figsize,constrained_layout=True,sharey = False, sharex=True, gridspec_kw = gridspec_kw)
- axs = list(np.squeeze(axs))
- for q in range(2):
- ax = axs[q]
- ax.axhline(0,color = (0,0,0), linestyle = '-', lw = 1, alpha = 0.5)
- ax.axvline(1.5,color = (0,0,0), linestyle = '-', lw = 1, alpha = 0.5)
- base = {'Left': np.zeros([len(anms), 4]), 'Right': np.zeros([len(anms), 4])}
- for a, anm in enumerate(anms):
- anmData = allAnmParams[anm]
- if q == 0:
- dists = allAnmParams[anm]['cAngles']
- else:
- dists = allAnmParams[anm]['fAngles']
- tracker = anmData['tracker']
- me = anmData['me']
- preMask =np.logical_or(allAnmParams[anm]['shiftMask']['preShift_early'], allAnmParams[anm]['shiftMask']['preShift_late'])
- preRMask = np.logical_and(np.logical_and(preMask, ~allAnmParams[anm]['aw']),
- np.logical_or(tracker[:,2]==0,np.logical_and(me,tracker[:,2]==5)))
- preR = np.nanmean(dists[preRMask])
- preLMask = np.logical_and(np.logical_and(preMask, ~allAnmParams[anm]['aw']),
- np.logical_or(tracker[:,2]==1,np.logical_and(me,tracker[:,2]==6)))
- preL = np.nanmean(dists[preLMask])
- anmR = np.zeros(4)
- anmL = np.zeros(4)
- for p, phase in enumerate(['preShift_early','preShift_late','early','late']):
- pMask = np.logical_and(allAnmParams[anm]['shiftMask'][phase], ~allAnmParams[anm]['aw'])
- pT = tracker[pMask,:]
- pME = me[pMask]
- pDists = dists[pMask]
- rMask = np.logical_or(pT[:,2]==0,np.logical_and(pME,pT[:,2]==5))
- lMask = np.logical_or(pT[:,2]==1,np.logical_and(pME,pT[:,2]==6))
- anmR[p] = np.nanmean(pDists[rMask])-preR
- anmL[p] = np.nanmean(pDists[lMask])-preL
- base['Left'][a,:] = (anmL)*-1
- base['Right'][a,:] = (anmR)*-1
- base['Left'] = np.vstack(base['Left'])
- base['Right'] = np.vstack(base['Right'])
- booted = {'Left': np.zeros([nBoot,4]), 'Right': np.zeros([nBoot,4])}
- for i in range(nBoot):
- bAnms = np.random.choice(np.arange(len(anms)), len(anms))
- booted['Left'][i,:] = np.nanmean(base['Left'][bAnms,:],axis = 0)
- booted['Right'][i,:] = np.nanmean(base['Right'][bAnms,:],axis = 0)
- for i,side in enumerate(['Left', 'Right']):
- if side == 'Right':
- data = booted[side] #boot, phase
- mean = np.nanmean(data,axis = 0)
- std = np.nanstd(data,axis = 0, ddof = 1)
- low,high = np.nanpercentile(data, [100-(CI+((100-CI)/2)),(CI+((100-CI)/2))], axis = 0)
- if error == 'CI':
- mainPlot = med
- errorLow = low
- errorHigh = high
- elif error == 'sem':
- mainPlot = mean
- errorLow = mean-sem
- errorHigh = mean+sem
- elif error == 'std':
- mainPlot = mean
- errorLow = mean-std
- errorHigh = mean+std
- ax.fill_between(np.arange(4), errorLow, errorHigh, color = (0,0,0), alpha = 0.3,edgecolor = 'none')
- ax.plot(['Pre-Shift\nEarly','Pre-Shift\nLate','Post-Shift\nEarly','Post-Shift\nLate'], mainPlot, '.-', lw = 1, ms = 5, color = (0,0,0), label = f'{side}')
- ax.text(0,ylim[1],titles[q],ha='left',va='top',fontsize=fontsize)
- allBooted.append(booted)
- for a,ax in enumerate(axs):
- x = 0
- y = .95
- ax.set_ylabel(f'Δ Exit Trajectory (°)',fontsize=fontsize)
- ax.legend(frameon=False,fontsize=fontsize,loc = 'lower right')
- ax.spines[['top','right']].set_visible(False)
- ax.set_ylim(ylim)
- ax.set_yticks(yticks)
- ax.tick_params(axis='x', which='major', labelsize=fontsize,pad= 2) #
- ax.tick_params(axis='y', which='major', labelsize=fontsize,pad= 1) #
- plt.show()
- with maybe_pdf(os.path.join(FIG_EXPORT_DIR,figName)) as pdf:
- pdf.savefig(fig,bbox_inches='tight',pad_inches=0.05,dpi=600) # saves the current figure into a pdf page
- # %%
- for b, booted in enumerate(allBooted):
- print(titles[b])
- for side in ['Right', 'Left']:
- data = booted[side] # shape: (nBoot, 4)
- # Post-shift late (index 3)
- post_late = data[:, 3]
- mean = np.mean(post_late)
- std = np.std(post_late, ddof=1)
- # bootstrap p-value (two-sided)
- p = 2 * min(np.mean(post_late > 0), np.mean(post_late < 0))
- print(f"{side} post-shift late: {mean:.2f} ± {std:.2f}°, p = {p:.4f}")
- print('')
- # %%
- figName = 'Fig1_motor_error_fraction.pdf'
- fontsize = 8
- figsize = [4,1]
- titles = ['First Licks', 'Contact Licks']
- # colors = [(0,0.5,0)]
- colors = [(0,0,0)]
- CI = 68
- error = 'std'
- if error == 'CI':
- errorLabel = "mean±"+str(CI)+"% CI"
- elif error == 'std':
- errorLabel = "mean±SD"
- ylim = [-0.02,0.51]
- yticks = [0,0.1,0.2,0.3,0.4,0.5]
- fig,axs = jsm.clean_subplots(1,2,figsize,constrained_layout=True,sharey = False, sharex=True, gridspec_kw = gridspec_kw)
- axs = list(np.squeeze(axs))
- fig.delaxes(axs[1])
- ax = axs[0]
- nBoot = 10000
- base = np.zeros([len(anms),4])
- _nAnms = 0
- for a, anm in enumerate(anms):
- anmData = allAnmParams[anm]
- tracker = anmData['tracker']
- me = anmData['me']
- anmR = np.zeros(4)
- _nAnms+=1
- for p, phase in enumerate(['preShift_early','preShift_late','early','late']):
- pMask = np.logical_and(allAnmParams[anm]['shiftMask'][phase], ~allAnmParams[anm]['aw'])
- pT = tracker[pMask,:]
- pME = me[pMask]
- meMask = np.logical_and(pME,pT[:,2]==5)
- rMask = np.logical_or(pT[:,2]==0,meMask)
- ratio = np.sum(meMask)/np.sum(rMask)
- anmR[p] = ratio
- print(f'{anm} {phase} pMask/total {np.sum(pMask==True)}/{len(pMask)} meMask/rMask = {np.sum(meMask)}/{np.sum(rMask)}')
- base[a,:] = anmR
- print('nAnms:', _nAnms)
- total = np.zeros([nBoot,4])
- for i in range(nBoot):
- bAnms = np.random.choice(np.arange(len(anms)), len(anms))
- total[i,:] = np.nanmean(base[bAnms,:], axis = 0)
- i=0
- mean = np.nanmean(total, axis=0)
- med = np.nanmedian(total, axis = 0)
- std = np.nanstd(total,axis = 0, ddof = 1)
- sem = std / np.sqrt(total.shape[0])
- low,high = np.nanpercentile(total, [100-(CI+((100-CI)/2)),(CI+((100-CI)/2))], axis = 0)
- if error == 'CI':
- mainPlot = med
- errorLow = low
- errorHigh = high
- elif error == 'sem':
- mainPlot = mean
- errorLow = mean-sem
- errorHigh = mean+sem
- elif error == 'std':
- mainPlot = mean
- errorLow = mean-std
- errorHigh = mean+std
- # bootstrap p-value (two-sided)
- print(total.shape)
- preEarly = total[:,0]
- p = 2 * min(np.nanmean(preEarly > 0), np.nanmean(preEarly < 0))
- print(f"preEarly p = {p:.8f}")
- preLate = total[:,1]
- p = 2 * min(np.nanmean(preLate > 0), np.nanmean(preLate < 0))
- print(f"preLate p = {p:.8f}")
- postEarly = total[:,2]
- p = 2 * min(np.nanmean(postEarly > 0), np.nanmean(postEarly < 0))
- print(f"postEarly p = {p:.8f}")
- postLate = total[:,3]
- p = 2 * min(np.nanmean(postLate > 0), np.nanmean(postLate < 0))
- print(f"postLate p = {p:.8f}")
- ax.axhline(0,color = (0,0,0), linestyle = '-', lw = 1, alpha = 0.5)
- ax.axvline(1.5,color = (0,0,0), linestyle = '-', lw = 1, alpha = 0.5)
- ax.set_ylim(ylim)
- ax.set_yticks(yticks)
- ax.fill_between(np.arange(4), errorLow, errorHigh, color = colors[i], alpha = 0.5,edgecolor='none')
- ax.plot(['Pre-Shift\nEarly','Pre-Shift\nLate','Post-Shift\nEarly','Post-Shift\nLate'], mainPlot, '.-', lw = 1, ms = 5, color = colors[i])
- ax.set_ylabel('Motor Error Frequency',fontsize=fontsize)
- ax.spines[['top','right']].set_visible(False)
- ax.tick_params(axis='both', which='major', labelsize=fontsize-2) #
- ax.tick_params(axis='x', which='major', labelsize=fontsize,pad= 2) #
- ax.tick_params(axis='y', which='major', labelsize=fontsize,pad= 1) #
- plt.show()
- with maybe_pdf(os.path.join(FIG_EXPORT_DIR,figName)) as pdf:
- pdf.savefig(fig,bbox_inches='tight',pad_inches=0.05,dpi=600) # saves the current figure into a pdf page
- # %%
- nBoot = 10000
- base = np.zeros([len(anms),2])
- _nAnms = 0
- for a, anm in enumerate(anms):
- anmData = allAnmParams[anm]
- tracker = anmData['tracker']
- me = anmData['me']
- anmR = np.zeros(2)
- _nAnms+=1
- for p, phase in enumerate(['pre','post']):
- pMask = np.logical_and(allAnmParams[anm]['shiftMask'][phase], ~allAnmParams[anm]['aw'])
- pT = tracker[pMask,:]
- pME = me[pMask]
- meMask = np.logical_and(pME,pT[:,2]==5)
- rMask = np.logical_or(pT[:,2]==0,meMask)
- ratio = np.sum(meMask)/np.sum(rMask)
- anmR[p] = ratio
- print(f'{anm} {phase} pMask/total {np.sum(pMask==True)}/{len(pMask)} meMask/rMask = {np.sum(meMask)}/{np.sum(rMask)}')
- base[a,:] = anmR
- print('nAnms:', _nAnms)
- total = np.zeros([nBoot,2])
- for i in range(nBoot):
- bAnms = np.random.choice(np.arange(len(anms)), len(anms))
- total[i,:] = np.nanmean(base[bAnms,:], axis = 0)
- # %%
- diff = total[:,0] - total[:,1]
- p = float(np.clip( 2 * min(np.mean(diff > 0), np.mean(diff < 0)), 1 / nBoot, 1.0))
- print(f'pre {np.nanmedian(total[:,0]):.2f} post {np.nanmedian(total[:,1]):.2f}')
- print(f"pre v post p = {p:.4f}")
- # %%
Fig1.ipynb at commit f2a6377, under MIT · at the source
Overview
Abstract
Frontal cortex plays critical roles in action control and motor skill learning. Within the layer 1 apical tuft dendrites of layer 5 (L5) neurons in the frontal cortex, precise input patterns and back-propagating action potentials can trigger powerful regenerative events that may be essential for flexible computation and learning. However, it remains unclear whether tuft activity in frontal cortical L5 circuits encodes sensorimotor information that differs from the information conveyed by their outputs to downstream targets. Using longitudinal two-photon calcium imaging, we investigated sensorimotor encoding in the apical tuft dendrites and somata of L5 extratelencephalic neurons in the frontal cortex of mice during learning of a discrete change to a cued dexterous action. During learning, movement errors either triggered corrective action or did not, allowing us to dissociate error signals from signals selective for corrective action. Somatic activity tracked both instructional cues and action, whereas tuft activity predominantly tracked instructional cues. Movement errors during learning revealed additional distinct tuft activity that was selectively associated with corrective actions. Furthermore, learning induced divergent changes in the response gain and net selectivity of tuft dendrites compared to somata. Our measurements uncover systematic differences between the tuft dendrites and somata in sensorimotor selectivity, sensitivity to corrective action, and functional plasticity, providing a foundation for investigating the contributions of dendritic computation to motor skill learning.
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 5 matches between paragraphs and lines of code.
kerlin-lab/TStracker
59448770c29c2330c7749c6ca9b421837c5024e4, 29 June 2020Availability: 1 check, the latest on 26 September 2026: the link answers
- 26 September 2026: the link answers
497 files
- src/
DevelopmentSuite/ , C/C++, 285 lineslib/ BigTiff/ Linux/ include/ t4.h - src/
DevelopmentSuite/ , C/C++, 55 lineslib/ BigTiff/ Linux/ include/ tif_config.h - src/
DevelopmentSuite/ , C/C++, 205 lineslib/ BigTiff/ Linux/ include/ tif_dir.h - src/
DevelopmentSuite/ , C/C++, 525 lineslib/ BigTiff/ Linux/ include/ tif_fax3.h - src/
DevelopmentSuite/ , C/C++, 64 lineslib/ BigTiff/ Linux/ include/ tif_predict.h - src/
DevelopmentSuite/ , C/C++, 682 lineslib/ BigTiff/ Linux/ include/ tiff.h - src/
DevelopmentSuite/ , C/C++, 214 lineslib/ BigTiff/ Linux/ include/ tiffcomp.h - src/
DevelopmentSuite/ , C/C++, 106 lineslib/ BigTiff/ Linux/ include/ tiffconf.h - src/
DevelopmentSuite/ , C/C++, 521 lineslib/ BigTiff/ Linux/ include/ tiffio.h - src/
DevelopmentSuite/ , C/C++, 408 lineslib/ BigTiff/ Linux/ include/ tiffiop.h - src/
DevelopmentSuite/ , C/C++, 9 lineslib/ BigTiff/ Linux/ include/ tiffvers.h - src/
DevelopmentSuite/ , C/C++, 173 lineslib/ BigTiff/ Linux/ include/ uvcode.h - src/
DevelopmentSuite/ , C/C++, 1 linelib/ BigTiff/ Linux/ include/ version.h - src/
DevelopmentSuite/ , C, 693 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ ansi2knr.c - src/
DevelopmentSuite/ , C/C++, 132 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ cderror.h - src/
DevelopmentSuite/ , C, 181 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ cdjpeg.c - src/
DevelopmentSuite/ , C/C++, 184 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ cdjpeg.h - src/
DevelopmentSuite/ , C, 606 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ cjpeg.c - src/
DevelopmentSuite/ , C, 402 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ ckconfig.c - src/
DevelopmentSuite/ , C, 616 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ djpeg.c - src/
DevelopmentSuite/ , C, 433 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ example.c - src/
DevelopmentSuite/ , C, 280 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcapimin.c - src/
DevelopmentSuite/ , C, 161 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcapistd.c - src/
DevelopmentSuite/ , C, 449 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jccoefct.c - src/
DevelopmentSuite/ , C, 459 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jccolor.c - src/
DevelopmentSuite/ , C, 387 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcdctmgr.c - src/
DevelopmentSuite/ , C, 909 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jchuff.c - src/
DevelopmentSuite/ , C/C++, 47 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jchuff.h - src/
DevelopmentSuite/ , C, 72 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcinit.c - src/
DevelopmentSuite/ , C, 293 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcmainct.c - src/
DevelopmentSuite/ , C, 664 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcmarker.c - src/
DevelopmentSuite/ , C, 590 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcmaster.c - src/
DevelopmentSuite/ , C, 106 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcomapi.c - src/
DevelopmentSuite/ , C/C++, 45 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jconfig.h - src/
DevelopmentSuite/ , C, 610 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcparam.c - src/
DevelopmentSuite/ , C, 833 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcphuff.c - src/
DevelopmentSuite/ , C, 354 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcprepct.c - src/
DevelopmentSuite/ , C, 519 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jcsample.c - src/
DevelopmentSuite/ , C, 388 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jctrans.c - src/
DevelopmentSuite/ , C, 395 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdapimin.c - src/
DevelopmentSuite/ , C, 275 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdapistd.c - src/
DevelopmentSuite/ , C, 151 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdatadst.c - src/
DevelopmentSuite/ , C, 212 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdatasrc.c - src/
DevelopmentSuite/ , C, 736 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdcoefct.c - src/
DevelopmentSuite/ , C, 396 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdcolor.c - src/
DevelopmentSuite/ , C/C++, 176 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdct.h - src/
DevelopmentSuite/ , C, 269 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jddctmgr.c - src/
DevelopmentSuite/ , C, 651 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdhuff.c - src/
DevelopmentSuite/ , C/C++, 201 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdhuff.h - src/
DevelopmentSuite/ , C, 381 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdinput.c - src/
DevelopmentSuite/ , C, 512 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdmainct.c - src/
DevelopmentSuite/ , C, 1,360 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdmarker.c - src/
DevelopmentSuite/ , C, 557 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdmaster.c - src/
DevelopmentSuite/ , C, 400 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdmerge.c - src/
DevelopmentSuite/ , C, 668 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdphuff.c - src/
DevelopmentSuite/ , C, 290 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdpostct.c - src/
DevelopmentSuite/ , C, 478 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdsample.c - src/
DevelopmentSuite/ , C, 143 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jdtrans.c - src/
DevelopmentSuite/ , C, 254 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jerror.c - src/
DevelopmentSuite/ , C/C++, 291 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jerror.h - src/
DevelopmentSuite/ , C, 168 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jfdctflt.c - src/
DevelopmentSuite/ , C, 224 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jfdctfst.c - src/
DevelopmentSuite/ , C, 283 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jfdctint.c - src/
DevelopmentSuite/ , C, 242 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jidctflt.c - src/
DevelopmentSuite/ , C, 368 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jidctfst.c - src/
DevelopmentSuite/ , C, 389 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jidctint.c - src/
DevelopmentSuite/ , C, 398 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jidctred.c - src/
DevelopmentSuite/ , C/C++, 91 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jinclude.h - src/
DevelopmentSuite/ , C, 167 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jmemansi.c - src/
DevelopmentSuite/ , C, 638 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jmemdos.c - src/
DevelopmentSuite/ , C, 289 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jmemmac.c - src/
DevelopmentSuite/ , C, 1,118 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jmemmgr.c - src/
DevelopmentSuite/ , C, 276 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jmemname.c - src/
DevelopmentSuite/ , C, 109 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jmemnobs.c - src/
DevelopmentSuite/ , C/C++, 198 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jmemsys.h - src/
DevelopmentSuite/ , C/C++, 366 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jmorecfg.h - src/
DevelopmentSuite/ , C/C++, 392 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jpegint.h - src/
DevelopmentSuite/ , C/C++, 1,096 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jpeglib.h - src/
DevelopmentSuite/ , C, 504 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jpegtran.c - src/
DevelopmentSuite/ , C, 856 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jquant1.c - src/
DevelopmentSuite/ , C, 1,310 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jquant2.c - src/
DevelopmentSuite/ , C, 179 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jutils.c - src/
DevelopmentSuite/ , C/C++, 14 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ jversion.h - src/
DevelopmentSuite/ , C, 439 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ rdbmp.c - src/
DevelopmentSuite/ , C, 253 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ rdcolmap.c - src/
DevelopmentSuite/ , C, 38 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ rdgif.c - src/
DevelopmentSuite/ , C, 496 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ rdjpgcom.c - src/
DevelopmentSuite/ , C, 458 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ rdppm.c - src/
DevelopmentSuite/ , C, 387 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ rdrle.c - src/
DevelopmentSuite/ , C, 332 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ rdswitch.c - src/
DevelopmentSuite/ , C, 500 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ rdtarga.c - src/
DevelopmentSuite/ , C, 928 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ transupp.c - src/
DevelopmentSuite/ , C/C++, 135 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ transupp.h - src/
DevelopmentSuite/ , C, 442 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ wrbmp.c - src/
DevelopmentSuite/ , C, 399 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ wrgif.c - src/
DevelopmentSuite/ , C, 583 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ wrjpgcom.c - src/
DevelopmentSuite/ , C, 268 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ wrppm.c - src/
DevelopmentSuite/ , C, 305 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ wrrle.c - src/
DevelopmentSuite/ , C, 253 lineslib/ BigTiff/ Linux/ libjpeg/ jpeg-6b/ wrtarga.c - src/
DevelopmentSuite/ , C, 149 lineslib/ BigTiff/ Linux/ libz/ zlib123/ adler32.c - src/
DevelopmentSuite/ , C, 79 lineslib/ BigTiff/ Linux/ libz/ zlib123/ compress.c - src/
DevelopmentSuite/ , C, 423 lineslib/ BigTiff/ Linux/ libz/ zlib123/ crc32.c - src/
DevelopmentSuite/ , C/C++, 441 lineslib/ BigTiff/ Linux/ libz/ zlib123/ crc32.h - src/
DevelopmentSuite/ , C, 1,736 lineslib/ BigTiff/ Linux/ libz/ zlib123/ deflate.c - src/
DevelopmentSuite/ , C/C++, 331 lineslib/ BigTiff/ Linux/ libz/ zlib123/ deflate.h - src/
DevelopmentSuite/ , C, 565 lineslib/ BigTiff/ Linux/ libz/ zlib123/ example.c - src/
DevelopmentSuite/ , C, 1,026 lineslib/ BigTiff/ Linux/ libz/ zlib123/ gzio.c - src/
DevelopmentSuite/ , C, 623 lineslib/ BigTiff/ Linux/ libz/ zlib123/ infback.c - src/
DevelopmentSuite/ , C, 318 lineslib/ BigTiff/ Linux/ libz/ zlib123/ inffast.c - src/
DevelopmentSuite/ , C/C++, 11 lineslib/ BigTiff/ Linux/ libz/ zlib123/ inffast.h - src/
DevelopmentSuite/ , C/C++, 94 lineslib/ BigTiff/ Linux/ libz/ zlib123/ inffixed.h - src/
DevelopmentSuite/ , C, 1,368 lineslib/ BigTiff/ Linux/ libz/ zlib123/ inflate.c - src/
DevelopmentSuite/ , C/C++, 115 lineslib/ BigTiff/ Linux/ libz/ zlib123/ inflate.h - src/
DevelopmentSuite/ , C, 329 lineslib/ BigTiff/ Linux/ libz/ zlib123/ inftrees.c - src/
DevelopmentSuite/ , C/C++, 55 lineslib/ BigTiff/ Linux/ libz/ zlib123/ inftrees.h - src/
DevelopmentSuite/ , C, 322 lineslib/ BigTiff/ Linux/ libz/ zlib123/ minigzip.c - src/
DevelopmentSuite/ , C, 1,219 lineslib/ BigTiff/ Linux/ libz/ zlib123/ trees.c - src/
DevelopmentSuite/ , C/C++, 128 lineslib/ BigTiff/ Linux/ libz/ zlib123/ trees.h - src/
DevelopmentSuite/ , C, 61 lineslib/ BigTiff/ Linux/ libz/ zlib123/ uncompr.c - src/
DevelopmentSuite/ , C/C++, 332 lineslib/ BigTiff/ Linux/ libz/ zlib123/ zconf.h - src/
DevelopmentSuite/ , C/C++, 332 lineslib/ BigTiff/ Linux/ libz/ zlib123/ zconf.in.h - src/
DevelopmentSuite/ , C/C++, 1,357 lineslib/ BigTiff/ Linux/ libz/ zlib123/ zlib.h - src/
DevelopmentSuite/ , C, 318 lineslib/ BigTiff/ Linux/ libz/ zlib123/ zutil.c - src/
DevelopmentSuite/ , C/C++, 269 lineslib/ BigTiff/ Linux/ libz/ zlib123/ zutil.h - src/
DevelopmentSuite/ , C, 440 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ mkg3states.c - src/
DevelopmentSuite/ , C, 132 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ mkversion.c - src/
DevelopmentSuite/ , C/C++, 285 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ t4.h - src/
DevelopmentSuite/ , C, 519 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_acorn.c - src/
DevelopmentSuite/ , C, 274 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_apple.c - src/
DevelopmentSuite/ , C, 243 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_atari.c - src/
DevelopmentSuite/ , C, 267 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_aux.c - src/
DevelopmentSuite/ , C, 119 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_close.c - src/
DevelopmentSuite/ , C, 150 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_codec.c - src/
DevelopmentSuite/ , C, 275 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_color.c - src/
DevelopmentSuite/ , C, 286 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_compress.c - src/
DevelopmentSuite/ , C/C++, 55 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_config.h - src/
DevelopmentSuite/ , C, 1,384 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_dir.c - src/
DevelopmentSuite/ , C/C++, 205 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_dir.h - src/
DevelopmentSuite/ , C, 874 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_dirinfo.c - src/
DevelopmentSuite/ , C, 1,981 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_dirread.c - src/
DevelopmentSuite/ , C, 1,771 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_dirwrite.c - src/
DevelopmentSuite/ , C, 117 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_dumpmode.c - src/
DevelopmentSuite/ , C, 73 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_error.c - src/
DevelopmentSuite/ , C, 111 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_extension.c - src/
DevelopmentSuite/ , C, 1,566 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_fax3.c - src/
DevelopmentSuite/ , C/C++, 525 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_fax3.h - src/
DevelopmentSuite/ , C, 1,253 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_fax3sm.c - src/
DevelopmentSuite/ , C, 67 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_flush.c - src/
DevelopmentSuite/ , C, 2,598 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_getimage.c - src/
DevelopmentSuite/ , C, 1,942 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_jpeg.c - src/
DevelopmentSuite/ , C, 1,606 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_luv.c - src/
DevelopmentSuite/ , C, 1,084 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_lzw.c - src/
DevelopmentSuite/ , C, 179 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_msdos.c - src/
DevelopmentSuite/ , C, 144 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_next.c - src/
DevelopmentSuite/ , C, 2,629 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_ojpeg.c - src/
DevelopmentSuite/ , C, 722 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_open.c - src/
DevelopmentSuite/ , C, 293 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_packbits.c - src/
DevelopmentSuite/ , C, 1,342 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_pixarlog.c - src/
DevelopmentSuite/ , C, 626 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_predict.c - src/
DevelopmentSuite/ , C/C++, 64 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_predict.h - src/
DevelopmentSuite/ , C, 658 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_print.c - src/
DevelopmentSuite/ , C, 652 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_read.c - src/
DevelopmentSuite/ , C, 294 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_strip.c - src/
DevelopmentSuite/ , C, 271 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_swab.c - src/
DevelopmentSuite/ , C, 158 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_thunder.c - src/
DevelopmentSuite/ , C, 273 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_tile.c - src/
DevelopmentSuite/ , C, 334 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_unix.c - src/
DevelopmentSuite/ , C, 33 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_version.c - src/
DevelopmentSuite/ , C, 74 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_warning.c - src/
DevelopmentSuite/ , C, 225 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_win3.c - src/
DevelopmentSuite/ , C, 419 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_win32.c - src/
DevelopmentSuite/ , C, 726 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_write.c - src/
DevelopmentSuite/ , C, 378 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tif_zip.c - src/
DevelopmentSuite/ , C/C++, 682 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tiff.h - src/
DevelopmentSuite/ , C/C++, 214 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tiffcomp.h - src/
DevelopmentSuite/ , C/C++, 106 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tiffconf.h - src/
DevelopmentSuite/ , C/C++, 521 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tiffio.h - src/
DevelopmentSuite/ , C/C++, 408 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tiffiop.h - src/
DevelopmentSuite/ , C/C++, 9 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ tiffvers.h - src/
DevelopmentSuite/ , C/C++, 173 lineslib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ uvcode.h - src/
DevelopmentSuite/ , C/C++, 1 linelib/ BigTiff/ Linux/ tiff-4.1/ libtiff/ version.h - src/
DevelopmentSuite/ , C, 12 lineslib/ BigTiff/ Linux/ tiff-4.1/ port/ dummy.c - src/
DevelopmentSuite/ , C, 124 lineslib/ BigTiff/ Linux/ tiff-4.1/ port/ getopt.c - src/
DevelopmentSuite/ , C, 58 lineslib/ BigTiff/ Linux/ tiff-4.1/ port/ lfind.c - src/
DevelopmentSuite/ , C, 50 lineslib/ BigTiff/ Linux/ tiff-4.1/ port/ strcasecmp.c - src/
DevelopmentSuite/ , C, 109 lineslib/ BigTiff/ Linux/ tiff-4.1/ port/ strtoul.c - src/
DevelopmentSuite/ , C, 843 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ bmp2tiff.c - src/
DevelopmentSuite/ , C, 432 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ fax2ps.c - src/
DevelopmentSuite/ , C, 462 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ fax2tiff.c - src/
DevelopmentSuite/ , C, 515 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ gif2tiff.c - src/
DevelopmentSuite/ , C, 424 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ pal2rgb.c - src/
DevelopmentSuite/ , C, 350 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ ppm2tiff.c - src/
DevelopmentSuite/ , C, 303 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ ras2tiff.c - src/
DevelopmentSuite/ , C/C++, 42 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ rasterfile.h - src/
DevelopmentSuite/ , C, 640 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ raw2tiff.c - src/
DevelopmentSuite/ , C, 357 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ rgb2ycbcr.c - src/
DevelopmentSuite/ , C, 328 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ sgi2tiff.c - src/
DevelopmentSuite/ , C, 309 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ sgisv.c - src/
DevelopmentSuite/ , C, 632 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ thumbnail.c - src/
DevelopmentSuite/ , C, 460 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiff2bw.c - src/
DevelopmentSuite/ , C, 5,310 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiff2pdf.c - src/
DevelopmentSuite/ , C, 2,100 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiff2ps.c - src/
DevelopmentSuite/ , C, 486 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiff2rgba.c - src/
DevelopmentSuite/ , C, 632 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiffcmp.c - src/
DevelopmentSuite/ , C, 1,730 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiffcp.c - src/
DevelopmentSuite/ , C, 325 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiffdither.c - src/
DevelopmentSuite/ , C, 778 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiffdump.c - src/
DevelopmentSuite/ , C, 455 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiffgt.c - src/
DevelopmentSuite/ , C, 460 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiffinfo.c - src/
DevelopmentSuite/ , C, 895 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiffmedian.c - src/
DevelopmentSuite/ , C, 309 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiffset.c - src/
DevelopmentSuite/ , C, 276 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ tiffsplit.c - src/
DevelopmentSuite/ , C, 161 lineslib/ BigTiff/ Linux/ tiff-4.1/ tools/ ycbcr.c - src/
DevelopmentSuite/ , C, 693 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ ansi2knr.c - src/
DevelopmentSuite/ , C/C++, 132 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ cderror.h - src/
DevelopmentSuite/ , C, 181 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ cdjpeg.c - src/
DevelopmentSuite/ , C/C++, 184 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ cdjpeg.h - src/
DevelopmentSuite/ , C, 606 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ cjpeg.c - src/
DevelopmentSuite/ , C, 402 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ ckconfig.c - src/
DevelopmentSuite/ , C, 616 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ djpeg.c - src/
DevelopmentSuite/ , C, 433 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ example.c - src/
DevelopmentSuite/ , C, 280 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcapimin.c - src/
DevelopmentSuite/ , C, 161 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcapistd.c - src/
DevelopmentSuite/ , C, 449 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jccoefct.c - src/
DevelopmentSuite/ , C, 459 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jccolor.c - src/
DevelopmentSuite/ , C, 387 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcdctmgr.c - src/
DevelopmentSuite/ , C, 909 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jchuff.c - src/
DevelopmentSuite/ , C/C++, 47 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jchuff.h - src/
DevelopmentSuite/ , C, 72 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcinit.c - src/
DevelopmentSuite/ , C, 293 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcmainct.c - src/
DevelopmentSuite/ , C, 664 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcmarker.c - src/
DevelopmentSuite/ , C, 590 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcmaster.c - src/
DevelopmentSuite/ , C, 106 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcomapi.c - src/
DevelopmentSuite/ , C/C++, 45 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jconfig.h - src/
DevelopmentSuite/ , C, 610 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcparam.c - src/
DevelopmentSuite/ , C, 833 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcphuff.c - src/
DevelopmentSuite/ , C, 354 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcprepct.c - src/
DevelopmentSuite/ , C, 519 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jcsample.c - src/
DevelopmentSuite/ , C, 388 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jctrans.c - src/
DevelopmentSuite/ , C, 395 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdapimin.c - src/
DevelopmentSuite/ , C, 275 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdapistd.c - src/
DevelopmentSuite/ , C, 151 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdatadst.c - src/
DevelopmentSuite/ , C, 212 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdatasrc.c - src/
DevelopmentSuite/ , C, 736 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdcoefct.c - src/
DevelopmentSuite/ , C, 396 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdcolor.c - src/
DevelopmentSuite/ , C/C++, 176 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdct.h - src/
DevelopmentSuite/ , C, 269 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jddctmgr.c - src/
DevelopmentSuite/ , C, 651 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdhuff.c - src/
DevelopmentSuite/ , C/C++, 201 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdhuff.h - src/
DevelopmentSuite/ , C, 381 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdinput.c - src/
DevelopmentSuite/ , C, 512 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdmainct.c - src/
DevelopmentSuite/ , C, 1,360 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdmarker.c - src/
DevelopmentSuite/ , C, 557 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdmaster.c - src/
DevelopmentSuite/ , C, 400 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdmerge.c - src/
DevelopmentSuite/ , C, 668 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdphuff.c - src/
DevelopmentSuite/ , C, 290 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdpostct.c - src/
DevelopmentSuite/ , C, 478 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdsample.c - src/
DevelopmentSuite/ , C, 143 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jdtrans.c - src/
DevelopmentSuite/ , C, 254 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jerror.c - src/
DevelopmentSuite/ , C/C++, 291 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jerror.h - src/
DevelopmentSuite/ , C, 168 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jfdctflt.c - src/
DevelopmentSuite/ , C, 224 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jfdctfst.c - src/
DevelopmentSuite/ , C, 283 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jfdctint.c - src/
DevelopmentSuite/ , C, 242 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jidctflt.c - src/
DevelopmentSuite/ , C, 368 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jidctfst.c - src/
DevelopmentSuite/ , C, 389 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jidctint.c - src/
DevelopmentSuite/ , C, 398 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jidctred.c - src/
DevelopmentSuite/ , C/C++, 91 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jinclude.h - src/
DevelopmentSuite/ , C, 167 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jmemansi.c - src/
DevelopmentSuite/ , C, 638 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jmemdos.c - src/
DevelopmentSuite/ , C, 289 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jmemmac.c - src/
DevelopmentSuite/ , C, 1,118 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jmemmgr.c - src/
DevelopmentSuite/ , C, 276 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jmemname.c - src/
DevelopmentSuite/ , C, 109 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jmemnobs.c - src/
DevelopmentSuite/ , C/C++, 198 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jmemsys.h - src/
DevelopmentSuite/ , C/C++, 366 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jmorecfg.h - src/
DevelopmentSuite/ , C/C++, 392 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jpegint.h - src/
DevelopmentSuite/ , C/C++, 1,096 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jpeglib.h - src/
DevelopmentSuite/ , C, 504 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jpegtran.c - src/
DevelopmentSuite/ , C, 856 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jquant1.c - src/
DevelopmentSuite/ , C, 1,310 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jquant2.c - src/
DevelopmentSuite/ , C, 179 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jutils.c - src/
DevelopmentSuite/ , C/C++, 14 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ jversion.h - src/
DevelopmentSuite/ , C, 439 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ rdbmp.c - src/
DevelopmentSuite/ , C, 253 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ rdcolmap.c - src/
DevelopmentSuite/ , C, 38 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ rdgif.c - src/
DevelopmentSuite/ , C, 496 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ rdjpgcom.c - src/
DevelopmentSuite/ , C, 458 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ rdppm.c - src/
DevelopmentSuite/ , C, 387 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ rdrle.c - src/
DevelopmentSuite/ , C, 332 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ rdswitch.c - src/
DevelopmentSuite/ , C, 500 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ rdtarga.c - src/
DevelopmentSuite/ , C, 928 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ transupp.c - src/
DevelopmentSuite/ , C/C++, 135 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ transupp.h - src/
DevelopmentSuite/ , C, 442 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ wrbmp.c - src/
DevelopmentSuite/ , C, 399 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ wrgif.c - src/
DevelopmentSuite/ , C, 583 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ wrjpgcom.c - src/
DevelopmentSuite/ , C, 268 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ wrppm.c - src/
DevelopmentSuite/ , C, 305 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ wrrle.c - src/
DevelopmentSuite/ , C, 253 lineslib/ BigTiff/ Windows/ libjpeg/ jpeg-6b/ wrtarga.c - src/
DevelopmentSuite/ , C, 149 lineslib/ BigTiff/ Windows/ libz/ zlib123/ adler32.c - src/
DevelopmentSuite/ , C, 79 lineslib/ BigTiff/ Windows/ libz/ zlib123/ compress.c - src/
DevelopmentSuite/ , C, 423 lineslib/ BigTiff/ Windows/ libz/ zlib123/ crc32.c - src/
DevelopmentSuite/ , C/C++, 441 lineslib/ BigTiff/ Windows/ libz/ zlib123/ crc32.h - src/
DevelopmentSuite/ , C, 1,736 lineslib/ BigTiff/ Windows/ libz/ zlib123/ deflate.c - src/
DevelopmentSuite/ , C/C++, 331 lineslib/ BigTiff/ Windows/ libz/ zlib123/ deflate.h - src/
DevelopmentSuite/ , C, 565 lineslib/ BigTiff/ Windows/ libz/ zlib123/ example.c - src/
DevelopmentSuite/ , C, 1,026 lineslib/ BigTiff/ Windows/ libz/ zlib123/ gzio.c - src/
DevelopmentSuite/ , C, 623 lineslib/ BigTiff/ Windows/ libz/ zlib123/ infback.c - src/
DevelopmentSuite/ , C, 318 lineslib/ BigTiff/ Windows/ libz/ zlib123/ inffast.c - src/
DevelopmentSuite/ , C/C++, 11 lineslib/ BigTiff/ Windows/ libz/ zlib123/ inffast.h - src/
DevelopmentSuite/ , C/C++, 94 lineslib/ BigTiff/ Windows/ libz/ zlib123/ inffixed.h - src/
DevelopmentSuite/ , C, 1,368 lineslib/ BigTiff/ Windows/ libz/ zlib123/ inflate.c - src/
DevelopmentSuite/ , C/C++, 115 lineslib/ BigTiff/ Windows/ libz/ zlib123/ inflate.h - src/
DevelopmentSuite/ , C, 329 lineslib/ BigTiff/ Windows/ libz/ zlib123/ inftrees.c - src/
DevelopmentSuite/ , C/C++, 55 lineslib/ BigTiff/ Windows/ libz/ zlib123/ inftrees.h - src/
DevelopmentSuite/ , C, 322 lineslib/ BigTiff/ Windows/ libz/ zlib123/ minigzip.c - src/
DevelopmentSuite/ , C, 1,219 lineslib/ BigTiff/ Windows/ libz/ zlib123/ trees.c - src/
DevelopmentSuite/ , C/C++, 128 lineslib/ BigTiff/ Windows/ libz/ zlib123/ trees.h - src/
DevelopmentSuite/ , C, 61 lineslib/ BigTiff/ Windows/ libz/ zlib123/ uncompr.c - src/
DevelopmentSuite/ , C/C++, 332 lineslib/ BigTiff/ Windows/ libz/ zlib123/ zconf.h - src/
DevelopmentSuite/ , C/C++, 332 lineslib/ BigTiff/ Windows/ libz/ zlib123/ zconf.in.h - src/
DevelopmentSuite/ , C/C++, 1,357 lineslib/ BigTiff/ Windows/ libz/ zlib123/ zlib.h - src/
DevelopmentSuite/ , C, 318 lineslib/ BigTiff/ Windows/ libz/ zlib123/ zutil.c - src/
DevelopmentSuite/ , C/C++, 269 lineslib/ BigTiff/ Windows/ libz/ zlib123/ zutil.h - src/
DevelopmentSuite/ , C, 440 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ mkg3states.c - src/
DevelopmentSuite/ , C, 132 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ mkversion.c - src/
DevelopmentSuite/ , C/C++, 285 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ t4.h - src/
DevelopmentSuite/ , C, 519 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_acorn.c - src/
DevelopmentSuite/ , C, 274 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_apple.c - src/
DevelopmentSuite/ , C, 243 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_atari.c - src/
DevelopmentSuite/ , C, 267 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_aux.c - src/
DevelopmentSuite/ , C, 119 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_close.c - src/
DevelopmentSuite/ , C, 150 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_codec.c - src/
DevelopmentSuite/ , C, 275 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_color.c - src/
DevelopmentSuite/ , C, 286 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_compress.c - src/
DevelopmentSuite/ , C/C++, 55 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_config.h - src/
DevelopmentSuite/ , C, 1,384 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_dir.c - src/
DevelopmentSuite/ , C/C++, 205 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_dir.h - src/
DevelopmentSuite/ , C, 874 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_dirinfo.c - src/
DevelopmentSuite/ , C, 1,981 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_dirread.c - src/
DevelopmentSuite/ , C, 1,771 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_dirwrite.c - src/
DevelopmentSuite/ , C, 117 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_dumpmode.c - src/
DevelopmentSuite/ , C, 73 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_error.c - src/
DevelopmentSuite/ , C, 111 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_extension.c - src/
DevelopmentSuite/ , C, 1,566 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_fax3.c - src/
DevelopmentSuite/ , C/C++, 525 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_fax3.h - src/
DevelopmentSuite/ , C, 1,253 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_fax3sm.c - src/
DevelopmentSuite/ , C, 67 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_flush.c - src/
DevelopmentSuite/ , C, 2,598 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_getimage.c - src/
DevelopmentSuite/ , C, 1,942 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_jpeg.c - src/
DevelopmentSuite/ , C, 1,606 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_luv.c - src/
DevelopmentSuite/ , C, 1,084 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_lzw.c - src/
DevelopmentSuite/ , C, 179 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_msdos.c - src/
DevelopmentSuite/ , C, 144 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_next.c - src/
DevelopmentSuite/ , C, 2,629 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_ojpeg.c - src/
DevelopmentSuite/ , C, 722 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_open.c - src/
DevelopmentSuite/ , C, 293 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_packbits.c - src/
DevelopmentSuite/ , C, 1,342 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_pixarlog.c - src/
DevelopmentSuite/ , C, 626 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_predict.c - src/
DevelopmentSuite/ , C/C++, 64 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_predict.h - src/
DevelopmentSuite/ , C, 658 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_print.c - src/
DevelopmentSuite/ , C, 652 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_read.c - src/
DevelopmentSuite/ , C, 294 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_strip.c - src/
DevelopmentSuite/ , C, 271 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_swab.c - src/
DevelopmentSuite/ , C, 158 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_thunder.c - src/
DevelopmentSuite/ , C, 273 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_tile.c - src/
DevelopmentSuite/ , C, 334 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_unix.c - src/
DevelopmentSuite/ , C, 33 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_version.c - src/
DevelopmentSuite/ , C, 74 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_warning.c - src/
DevelopmentSuite/ , C, 225 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_win3.c - src/
DevelopmentSuite/ , C, 419 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_win32.c - src/
DevelopmentSuite/ , C, 726 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_write.c - src/
DevelopmentSuite/ , C, 378 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tif_zip.c - src/
DevelopmentSuite/ , C/C++, 682 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tiff.h - src/
DevelopmentSuite/ , C/C++, 214 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tiffcomp.h - src/
DevelopmentSuite/ , C/C++, 106 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tiffconf.h - src/
DevelopmentSuite/ , C/C++, 521 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tiffio.h - src/
DevelopmentSuite/ , C/C++, 408 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tiffiop.h - src/
DevelopmentSuite/ , C/C++, 9 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ tiffvers.h - src/
DevelopmentSuite/ , C/C++, 173 lineslib/ BigTiff/ Windows/ tiff-4.1/ libtiff/ uvcode.h - src/
DevelopmentSuite/ , C, 12 lineslib/ BigTiff/ Windows/ tiff-4.1/ port/ dummy.c - src/
DevelopmentSuite/ , C, 124 lineslib/ BigTiff/ Windows/ tiff-4.1/ port/ getopt.c - src/
DevelopmentSuite/ , C, 58 lineslib/ BigTiff/ Windows/ tiff-4.1/ port/ lfind.c - src/
DevelopmentSuite/ , C, 50 lineslib/ BigTiff/ Windows/ tiff-4.1/ port/ strcasecmp.c - src/
DevelopmentSuite/ , C, 109 lineslib/ BigTiff/ Windows/ tiff-4.1/ port/ strtoul.c - src/
DevelopmentSuite/ , C, 843 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ bmp2tiff.c - src/
DevelopmentSuite/ , C, 432 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ fax2ps.c - src/
DevelopmentSuite/ , C, 462 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ fax2tiff.c - src/
DevelopmentSuite/ , C, 515 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ gif2tiff.c - src/
DevelopmentSuite/ , C, 424 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ pal2rgb.c - src/
DevelopmentSuite/ , C, 350 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ ppm2tiff.c - src/
DevelopmentSuite/ , C, 303 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ ras2tiff.c - src/
DevelopmentSuite/ , C/C++, 42 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ rasterfile.h - src/
DevelopmentSuite/ , C, 640 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ raw2tiff.c - src/
DevelopmentSuite/ , C, 357 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ rgb2ycbcr.c - src/
DevelopmentSuite/ , C, 328 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ sgi2tiff.c - src/
DevelopmentSuite/ , C, 309 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ sgisv.c - src/
DevelopmentSuite/ , C, 632 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ thumbnail.c - src/
DevelopmentSuite/ , C, 460 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiff2bw.c - src/
DevelopmentSuite/ , C, 5,310 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiff2pdf.c - src/
DevelopmentSuite/ , C, 2,100 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiff2ps.c - src/
DevelopmentSuite/ , C, 486 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiff2rgba.c - src/
DevelopmentSuite/ , C, 632 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiffcmp.c - src/
DevelopmentSuite/ , C, 1,730 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiffcp.c - src/
DevelopmentSuite/ , C, 325 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiffdither.c - src/
DevelopmentSuite/ , C, 778 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiffdump.c - src/
DevelopmentSuite/ , C, 455 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiffgt.c - src/
DevelopmentSuite/ , C, 460 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiffinfo.c - src/
DevelopmentSuite/ , C, 895 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiffmedian.c - src/
DevelopmentSuite/ , C, 309 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiffset.c - src/
DevelopmentSuite/ , C, 276 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ tiffsplit.c - src/
DevelopmentSuite/ , C, 161 lineslib/ BigTiff/ Windows/ tiff-4.1/ tools/ ycbcr.c - src/
DevelopmentSuite/ , C++, 368 linessrc/ Linux/ BasicGUITimestamp/ main.cpp - src/
DevelopmentSuite/ , C++, 424 linessrc/ Linux/ GUISaveVideoWithTimestam p/ main.cpp - src/
DevelopmentSuite/ , C++, 340 linessrc/ Linux/ Testing_Utilities/ ImagePtr2CVMat/ main.cpp - src/
DevelopmentSuite/ , C++, 153 linessrc/ Linux/ Testing_Utilities/ OpenCV/ Test_Mat/ TestMat.cpp - src/
DevelopmentSuite/ , C++, 25 linessrc/ Linux/ Testing_Utilities/ OpenCV/ Test_OpenCV/ DisplayImage.cpp - src/
DevelopmentSuite/ , C++, 197 linessrc/ Linux/ Testing_Utilities/ OpenCV/ Test_Video_Writer/ main.cpp - src/
DevelopmentSuite/ , C++, 513 linessrc/ Linux/ Testing_Utilities/ SpinView/ AcquisitionTest/ Acquisition.cpp - src/
DevelopmentSuite/ , C++, 8 linessrc/ Linux/ Testing_Utilities/ SpinView/ AcquisitionTest/ stdafx.cpp - src/
DevelopmentSuite/ , C/C++, 13 linessrc/ Linux/ Testing_Utilities/ SpinView/ AcquisitionTest/ stdafx.h - src/
DevelopmentSuite/ , C++, 503 linessrc/ Linux/ Testing_Utilities/ SpinView/ ImageSize/ main.cpp - src/
DevelopmentSuite/ , C++, 8 linessrc/ Linux/ Testing_Utilities/ SpinView/ ImageSize/ stdafx.cpp - src/
DevelopmentSuite/ , C/C++, 13 linessrc/ Linux/ Testing_Utilities/ SpinView/ ImageSize/ stdafx.h - src/
DevelopmentSuite/ , C++, 522 linessrc/ Linux/ Testing_Utilities/ SpinView/ ImageTimestamp/ main.cpp - src/
DevelopmentSuite/ , C++, 8 linessrc/ Linux/ Testing_Utilities/ SpinView/ ImageTimestamp/ stdafx.cpp - src/
DevelopmentSuite/ , C/C++, 13 linessrc/ Linux/ Testing_Utilities/ SpinView/ ImageTimestamp/ stdafx.h - src/
DevelopmentSuite/ , C++, 513 linessrc/ Linux/ Testing_Utilities/ SpinView/ SampleProj/ main.cpp - src/
DevelopmentSuite/ , C++, 8 linessrc/ Linux/ Testing_Utilities/ SpinView/ SampleProj/ stdafx.cpp - src/
DevelopmentSuite/ , C/C++, 13 linessrc/ Linux/ Testing_Utilities/ SpinView/ SampleProj/ stdafx.h - src/
DevelopmentSuite/ , Shell, 19 linessrc/ Linux/ Testing_Utilities/ SpinView/ newProj.sh - src/
DevelopmentSuite/ , C++, 368 linessrc/ Windows/ BasicGUITimestamp/ main.cpp - src/
DevelopmentSuite/ , C++, 424 linessrc/ Windows/ GUISaveVideoWithTimestam p/ main.cpp - src/
DevelopmentSuite/ , C++, 153 linessrc/ Windows/ OpenCV/ Test_Mat/ TestMat.cpp - src/
DevelopmentSuite/ , C++, 25 linessrc/ Windows/ OpenCV/ Test_OpenCV/ DisplayImage.cpp - src/
DevelopmentSuite/ , C++, 206 linessrc/ Windows/ OpenCV/ Test_OpenCV_QtGUI/ main.cpp - src/
DevelopmentSuite/ , C++, 206 linessrc/ Windows/ OpenCV/ Test_Video_Writer/ main.cpp - src/
DevelopmentSuite/ , C++, 92 linessrc/ Windows/ SpinSimpleGUI_MFC/ FrameRateCounter.cpp - src/
DevelopmentSuite/ , C/C++, 41 linessrc/ Windows/ SpinSimpleGUI_MFC/ FrameRateCounter.h - src/
DevelopmentSuite/ , C++, 191 linessrc/ Windows/ SpinSimpleGUI_MFC/ MainFrm.cpp - src/
DevelopmentSuite/ , C/C++, 59 linessrc/ Windows/ SpinSimpleGUI_MFC/ MainFrm.h - src/
DevelopmentSuite/ , C++, 163 linessrc/ Windows/ SpinSimpleGUI_MFC/ SpinnakerMFC.cpp - src/
DevelopmentSuite/ , C/C++, 45 linessrc/ Windows/ SpinSimpleGUI_MFC/ SpinnakerMFC.h - src/
DevelopmentSuite/ , C++, 526 linessrc/ Windows/ SpinSimpleGUI_MFC/ SpinnakerMFCDoc.cpp - src/
DevelopmentSuite/ , C/C++, 103 linessrc/ Windows/ SpinSimpleGUI_MFC/ SpinnakerMFCDoc.h - src/
DevelopmentSuite/ , C++, 190 linessrc/ Windows/ SpinSimpleGUI_MFC/ SpinnakerMFCView.cpp - src/
DevelopmentSuite/ , C/C++, 65 linessrc/ Windows/ SpinSimpleGUI_MFC/ SpinnakerMFCView.h - src/
DevelopmentSuite/ , C/C++, 21 linessrc/ Windows/ SpinSimpleGUI_MFC/ resource.h - src/
DevelopmentSuite/ , C++, 5 linessrc/ Windows/ SpinSimpleGUI_MFC/ stdafx.cpp - src/
DevelopmentSuite/ , C/C++, 77 linessrc/ Windows/ SpinSimpleGUI_MFC/ stdafx.h - src/
PythonUtilities/ , Python, 39 linesPyTiffMetaDumper.py - src/
PythonUtilities/ , Python, 72 linesPyTiffMissFrameAnalyzer. py - src/
PythonUtilities/ , Python, 20 linespyTiffCombine.py - src/
TStracker/ , C++, 299 linesCVDisplay.cpp - src/
TStracker/ , C/C++, 80 linesCVDisplay.h - src/
TStracker/ , C++, 30 linesCamRecorder.cpp - src/
TStracker/ , C/C++, 46 linesCamRecorder.h - src/
TStracker/ , C++, 59 linesImageAcquirer.cpp - src/
TStracker/ , C/C++, 84 linesImageAcquirer.h - src/
TStracker/ , C++, 182 linesImageDistributor.cpp - src/
TStracker/ , C/C++, 45 linesImageDistributor.h - src/
TStracker/ , C++, 76 linesImageInfo.cpp - src/
TStracker/ , C/C++, 74 linesImageInfo.h - src/
TStracker/ , C++, 152 linesImageMiner.cpp - src/
TStracker/ , C/C++, 37 linesImageMiner.h - src/
TStracker/ , C++, 219 linesImageSaver.cpp - src/
TStracker/ , C/C++, 96 linesImageSaver.h - src/
TStracker/ , C++, 190 linesImageSaverTSQ.cpp - src/
TStracker/ , C/C++, 104 linesImageSaverTSQ.h - src/
TStracker/ , C++, 64 linesInputDialog.cpp - src/
TStracker/ , C/C++, 38 linesInputDialog.h - src/
TStracker/ , C++, 43 linesRunOperator.cpp - src/
TStracker/ , C/C++, 35 linesRunOperator.h - src/
TStracker/ , C++, 103 linesTSImage.cpp - src/
TStracker/ , C/C++, 74 linesTSImage.h - src/
TStracker/ , C++, 130 linesTStracker.cpp - src/
TStracker/ , C/C++, 98 linesTStracker.h - src/
TStracker/ , C++, 285 linesTStrackerMFC.cpp - src/
TStracker/ , C/C++, 79 linesTStrackerMFC.h - src/
TStracker/ , C++, 546 linesTStrackerThread.cpp - src/
TStracker/ , C/C++, 93 linesTStrackerThread.h - src/
TStracker/ , C/C++, 17 linesTStrackerType.h - src/
TStracker/ , C/C++, 140 linesThreadSafeQueue.h - src/
TStracker/ , C/C++, 68 linesThreadSafeVariable.h - src/
TStracker/ , C++, 114 linesTiffWriter.cpp - src/
TStracker/ , C/C++, 62 linesTiffWriter.h - src/
TStracker/ , C/C++, 2,431 linescvui.h - src/
TStracker/ , C/C++, 140 linesenc_temp_folder/ 36bac3c1293bcc7b48e1e1d2 2e0d717/ ThreadSafeQueue.h - src/
TStracker/ , C++, 223 linesenc_temp_folder/ 37f765cf4db665bf4c799776 3b9eb/ ImageSaverTSQ.cpp - src/
TStracker/ , C++, 105 linesenc_temp_folder/ 94fe25be286fb2694a882aca db07b76/ TSImage.cpp - src/
TStracker/ , C++, 157 linesenc_temp_folder/ c4b6d1add71c44349eed958e fb35e14e/ ImageMiner.cpp - src/
TStracker/ , C++, 9 linesmain.cpp - src/
TStracker/ , C/C++, not shown hererc/ resource.h - src/
TStracker/ , C/C++, 21 linesstdafx.h - src/
TStracker/ , C++, 38 linesutils.cpp - src/
TStracker/ , C/C++, 24 linesutils.h - README.md, Text, 75 lines
kerlin-lab/tongue-classification
26ad49e4226f06f27ab859abf1b400da45959053, 4 September 2026Availability: 1 check, the latest on 26 September 2026: the link answers
- 26 September 2026: the link answers
5 files
- dataloader.py, Python, 43 lines
- main.py, Python, 72 lines
- model.py, Python, 194 lines
- scripts/
make_data.sh , Shell, 34 lines - README.md, Text, 68 lines
kerlin-lab/Scheib_2026
f2a637754d671d35920faf9ba949c39039b705aa, 26 August 2026Availability: 1 check, the latest on 26 September 2026: the link answers
- 26 September 2026: the link answers
9 files
- Figures/
Fig1.ipynb , Jupyter, 1,316 lines, 3 matches - Figures/
Fig2.ipynb , Jupyter, 223 lines - Figures/
Fig3.ipynb , Jupyter, 905 lines - Figures/
Fig4.ipynb , Jupyter, 1,995 lines - Figures/
Fig5.ipynb , Jupyter, 2,293 lines, 1 match - Figures/
Fig6.ipynb , Jupyter, 2,693 lines - Figures/
js_manuscript_final.py , Python, 4,308 lines, 1 match - LICENSE, License, 21 lines
- README.md, Text, 403 lines
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:
- 3 repositories of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
- 507 scripts, each with its path and the digest of its content;
- 5 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
Code and data intermediates used in the generation of this manuscript, as well as raw and registered 2P imaging data for one example somata imaging session and one example dendrite imaging session, are available at https://
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, 14 authors, 5 keywords, 6 MeSH terms, 2 funders, 104 references, 9 RRIDs.
Cite
This paper
Scheib, J., Newman, Z. L., Gable, J., Farinella, D. M., Head, M., Bliese, S., Dougen, B., Jayakumar, H., Young, S., Miller, N., Al Khoury, R., Tran, H. K., Dinh, T., & Kerlin, A. (2026). Distinct sensorimotor encoding in tuft dendrites and somata associated with action, correction, and learning. eLife, 15, RP111876. https://
BibTeX
@article{scheib2026disti
author = {Scheib, Jackson and Newman, Zachary L and Gable, Jacob and Farinella, Deano M and Head, Mitchell and Bliese, Savannah and Dougen, Benjamin and Jayakumar, Harishankar and Young, Sarah and Miller, Nicole and Al Khoury, Robert and Tran, Huan Kim and Dinh, Tien and Kerlin, Aaron},
title = {{Distinct sensorimotor encoding in tuft dendrites and somata associated with action, correction, and learning}},
journal = {eLife},
year = {2026},
month = sep,
volume = {15},
pages = {RP111876},
publisher = {eLife Sciences Publications, Ltd},
issn = {2050-084X},
doi = {10.7554/
url = {https://
pmid = {42683605},
pmcid = {PMC13537764}
}
RIS
TY - JOUR
AU - Scheib, Jackson
AU - Newman, Zachary L
AU - Gable, Jacob
AU - Farinella, Deano M
AU - Head, Mitchell
AU - Bliese, Savannah
AU - Dougen, Benjamin
AU - Jayakumar, Harishankar
AU - Young, Sarah
AU - Miller, Nicole
AU - Al Khoury, Robert
AU - Tran, Huan Kim
AU - Dinh, Tien
AU - Kerlin, Aaron
TI - Distinct sensorimotor encoding in tuft dendrites and somata associated with action, correction, and learning
T2 - eLife
J2 - Elife
PY - 2026
DA - 2026/
VL - 15
SP - RP111876
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": "Distinct sensorimotor encoding in tuft dendrites and somata associated with action, correction, and learning",
"container-title": "eLife",
"author": [
{
"family": "Scheib",
"given": "Jackson"
},
{
"family": "Newman",
"given": "Zachary L"
},
{
"family": "Gable",
"given": "Jacob"
},
{
"family": "Farinella",
"given": "Deano M"
},
{
"family": "Head",
"given": "Mitchell"
},
{
"family": "Bliese",
"given": "Savannah"
},
{
"family": "Dougen",
"given": "Benjamin"
},
{
"family": "Jayakumar",
"given": "Harishankar"
},
{
"family": "Young",
"given": "Sarah"
},
{
"family": "Miller",
"given": "Nicole"
},
{
"family": "Al Khoury",
"given": "Robert"
},
{
"family": "Tran",
"given": "Huan Kim"
},
{
"family": "Dinh",
"given": "Tien"
},
{
"family": "Kerlin",
"given": "Aaron"
}
],
"container-title-short":
"volume": "15",
"page": "RP111876",
"DOI": "10.7554/
"PMID": "42683605",
"PMCID": "PMC13537764",
"ISSN": "2050-084X",
"publisher": "eLife Sciences Publications, Ltd",
"URL": "https://
"language": "en",
"issued": {
"date-parts": [
[
2026,
9,
2
]
]
}
}
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-74869-1 [code]
- Complementary roles of cell-type-specific plasticity in shaping neocortical dynamics for learning action timing.Journal: Nature communicationsIn common: mouse, 12 references
- [2] doi:10.1126/sciadv.adz4123 [code]
- Highly attenuated dendritic propagation of isolated synaptic potentials in vivo.Journal: Science advancesIn common: mouse, 10 references
- [3] doi:10.1016/j.celrep.2026.117419 [code]
- Conserved role of primary motor cortex in the control of prehension in mice and macaques.Journal: Cell reportsIn common: statsmodels, seaborn, scikit-learn, 4 other tools, mouse, 6 references
- [4] doi:10.1016/j.isci.2026.117010 [code]
- Deep learning-assisted mapping of dendritic spines using sequential 2D two-photon calcium imaging.Journal: iScienceIn common: tifffile, PyTorch, seaborn, 5 other tools, 5 references
- [5] doi: [code]
- Real-time closed-loop feedback system for mouse mesoscale cortical signal and movement controlJournal: eLifeIn common: tifffile, Pillow, statsmodels, 6 other tools, mouse, 4 references
- [6] doi:10.1016/j.isci.2026.116206 [code]
- Gut distension evokes rapid neural dynamics in vagal and hindbrain populations of larval zebrafish.Journal: iScienceIn common: tifffile, Pillow, statsmodels, 7 other tools, 3 references
- [7] doi:10.1038/s41467-026-74460-8 [code]
- Spike-based alignment learning solves the weight transport problem.Journal: Nature communicationsIn common: PyTorch, seaborn, scikit-learn, 4 other tools, 5 references
- [8] doi:10.7554/elife.109717 [code]
- Retrosplenial cortex enables context-dependent goal-directed sensorimotor transformation.Journal: eLifeIn common: tifffile, Pillow, statsmodels, 6 other tools, mouse, 3 references
- [9] doi:10.1002/advs.202520773 [code]
- Mild Focal Cooling Decouples Dendrites to Reconfigure Cortical Output.Journal: Advanced science (Weinheim, Baden-Wurttemberg, Germany)In common: SciPy, Matplotlib, NumPy, mouse, 7 references
- [10] doi:10.1371/journal.pcbi.1014571 [code]
- SynAPSeg: A novel dataset and image analysis framework for deep learning-based synapse detection and quantification.Journal: PLoS computational biologyIn common: tifffile, Pillow, statsmodels, 7 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: 3 repositories of the authors' code, each at its verified commit and with its license, 507 scripts, and 5 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:0a7bd3204edfc329…
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.
