Spatial richness of neural magnetic fields.
The 5 matches
- [1] § 4 Methods › 4.5 Morphology reconstruction modified algorithm ↔ Ziad_MorphologyReconstruction4.ipynb, lines 330–403 · score 0.72 · axon hillock, best fit, outliers, closest, perpendicular, opposite
- [2] § 4 Methods › 4.5 Morphology reconstruction modified algorithm ↔ Ziad_MorphologyReconstruction5.ipynb, lines 333–406 · score 0.72 · axon hillock, best fit, outliers, closest, perpendicular, opposite
- [3] § 2 Results › 2.2 Neural signal scaling ↔ Ada_09_09_24_main.ipynb, lines 184–269 · score 0.67 · ball stick, soma diameter, axon diameter, axon length, segment, threshold
- [4] § 4 Methods › 4.2 Similarity calculation and template creation ↔ ZIAD_PointSpread.ipynb, lines 199–259 · score 0.57 · nearest neighbors, rotated coordinates
- [5] § 4 Methods › 4.3 Spike sorting recording generation ↔ MEArecTemplate/generators/spiketraingenerator.py, lines 125–167 · score 0.53 · refractory period, spike train, Poisson, neurons, cell
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 · 935 lines · 31 KB · CC-BY-4.0 · 1 match
- # %%
- from sklearn import svm, datasets
- from sklearn.linear_model import HuberRegressor
- from sklearn.neighbors import NearestNeighbors
- from scipy.spatial import distance
- import time
- import numpy as np
- import MEArecTemplate as mr
- from pathlib import Path
- import MEAutility as mu
- import LFPy
- import matplotlib.pyplot as plt
- # %%
- %run ZIAD_MEARecHelperFunctions.ipynb
- # %%
- # Get all signals from the grid of electrodes that exceed a certain threshold
- def get_strong_signals(data, elec_x, elec_y, thresh):
- data = data/np.max(abs(data))
- coords = []
- targets = []
- for i in range(len(data)):
- if np.max(abs(data[i])) >= thresh:
- coords.append([elec_x[i], elec_y[i]])
- # Target is 1 if signal is positive, 0 if negative
- targets.append(np.max(data[i]) > abs(np.min(data[i])))
- return np.array(coords), np.array(targets)
- def get_electrodes(mea_name):
- mea_cells_folder = '/Users/Ziad/.config/mearec/1.7.2/cell_models/MEArecLinearCells/'
- cell_name = 'L5_TTPC1_cADpyr232_1'
- cell_model_folder = Path(Path(mea_cells_folder) / cell_name)
- cell = mr.return_bbp_cell(cell_model_folder, end_T=1000, dt=0.03125, start_T=0)
- mea = mu.return_mea(mea_name)
- electrodes = LFPy.RecExtElectrode(cell, probe=mea)
- return electrodes
- def get_electrodes2(mea_name):
- m_idx = mea_name.find('MEA')
- count = int(np.sqrt(int(mea_name[:m_idx])))
- pitch = int(mea_name[m_idx+3:])
- max_coord = (count - 1)*pitch/2.0
- coords = np.arange(-1*max_coord, max_coord+1, pitch)
- elec_x = []
- elec_y = []
- for xcoord in coords:
- for ycoord in coords:
- elec_x.append(xcoord)
- elec_y.append(ycoord)
- return np.array(elec_x), np.array(elec_y)
- def make_meshgrid(x, y, h=.5):
- x_min, x_max = x.min() - 1, x.max() + 1
- y_min, y_max = y.min() - 1, y.max() + 1
- xx, yy = np.meshgrid(np.arange(x_min, x_max, h), np.arange(y_min, y_max, h))
- return xx, yy
- def plot_contours(ax, clf, xx, yy, **params):
- Z = clf.predict(np.c_[xx.ravel(), yy.ravel()])
- Z = Z.reshape(xx.shape)
- out = ax.contourf(xx, yy, Z, **params)
- return out, Z
- def load_cell(template_id, tempgen):
- # Load cell and position and rotation info
- mea_cells_folder = '/Users/Ziad/.config/mearec/1.7.2/cell_models/MEArecLinearCells/'
- cell_name = 'L5_TTPC1_cADpyr232_1'
- cell_model_folder = Path(Path(mea_cells_folder) / cell_name)
- T = 1000
- dt = 0.03125
- cell = mr.return_bbp_cell(cell_model_folder, end_T=T, dt=dt, start_T=0)
- pos = tempgen.locations[template_id]
- rot = tempgen.rotations[template_id]
- cell = mr.ziad_flatten_geometry(cell, pos, rot, 10)
- cell.set_pos(pos[0], pos[1], pos[2])
- cell.set_rotation(rot[0], rot[1], rot[2])
- return cell
- def get_apic_dist(template_id, all_y, all_z, clf, verbose=False):
- coords = np.zeros((2, np.shape(all_y)[1]))
- coords[0] = all_y[template_id]
- coords[1] = all_z[template_id]
- dists = abs(clf.decision_function(coords.T))/np.linalg.norm(clf.coef_)
- if verbose:
- print(dists)
- return np.mean(dists), np.std(dists)
- def get_apic_dist_real(template_id, all_y, all_z, xx, yy, clf, boundary = [], verbose=False):
- coords = np.zeros((np.shape(all_y)[1], 2))
- coords[:, 0] = all_y[template_id]
- coords[:, 1] = all_z[template_id]
- if len(boundary) == 0:
- dists = distance.cdist(coords, get_boundary_coords(xx, yy, clf), 'euclidean')
- else:
- dists = distance.cdist(coords, boundary, 'euclidean')
- dists = np.min(dists, axis=1)
- # if verbose:
- # print(dists)
- # plt.hist(dists, bins=30)
- return np.mean(dists), np.std(dists), dists
- def get_boundary_coords(xx, yy, clf):
- Z = clf.predict(np.c_[xx.ravel(), yy.ravel()])
- Z = Z.reshape(xx.shape)
- boundary = []
- for i in range(len(xx)):
- for j in range(1, len(xx[0])):
- if j > 0:
- if Z[i, j] != Z[i, j-1]:
- #print("hit1")
- midx = (xx[i, j] + xx[i, j-1]) / 2
- midy = yy[i, j]
- boundary.append([midx, midy])
- if i > 0:
- if Z[i, j] != Z[i-1, j]:
- #print("hit2")
- midx = xx[i, j]
- midy = (yy[i, j] + yy[i-1, j]) / 2
- boundary.append([midx, midy])
- #print(boundary)
- boundary = np.array(boundary)
- return boundary
- def generate_noise(snr, sig, shape):
- noise = np.random.normal(size=shape)
- sig_pwr = np.sum(sig**2)
- noise_pwr = sig_pwr/(10**(snr/10))
- noise_coeff = np.sqrt(noise_pwr/np.sum(noise**2))
- noise = noise*noise_coeff
- new_noise_pwr = np.sum(noise**2)
- #print("SNR: ", 10*np.log10(sig_pwr/noise_pwr))
- return noise
- def estimate_axon_hillock(signals, elec_x, elec_y, return_med = False):
- mags_pwr = np.sqrt(np.sum(signals**2, axis=1))
- mags_strong_indices = np.argsort(-1*mags_pwr)[:4]
- mags_relative_pwr = mags_pwr[mags_strong_indices] / np.sum(mags_pwr[mags_strong_indices])
- new_x = np.sum(elec_x[mags_strong_indices] * mags_relative_pwr)
- new_y = np.sum(elec_y[mags_strong_indices] * mags_relative_pwr)
- # Returns coordinates of other strong points
- if return_med:
- new_coords = []
- indices = np.arange(10, 100, 10)
- #indices = np.arange(4, 17, 4)
- for index in indices:
- mags_med_indices = np.argsort(-1*mags_pwr)[index:index+4]
- mags_relative_pwr_med = mags_pwr[mags_med_indices] / np.sum(mags_pwr[mags_med_indices])
- med_x = np.sum(elec_x[mags_med_indices] * mags_relative_pwr_med)
- med_y = np.sum(elec_y[mags_med_indices] * mags_relative_pwr_med)
- new_coords.append([med_x, med_y])
- return new_x, new_y, np.array(new_coords)
- return new_x, new_y
- def get_lbf_points(signals, indices, elec_x, elec_y):
- mags_pwr = np.sqrt(np.sum(signals**2, axis=1))
- new_coords = []
- #indices = np.arange(10, 100, 10)
- #indices = np.arange(4, 17, 4)
- for index in indices:
- mags_med_indices = np.argsort(-1*mags_pwr)[index:index+4]
- mags_relative_pwr_med = mags_pwr[mags_med_indices] / np.sum(mags_pwr[mags_med_indices])
- med_x = np.sum(elec_x[mags_med_indices] * mags_relative_pwr_med)
- med_y = np.sum(elec_y[mags_med_indices] * mags_relative_pwr_med)
- new_coords.append([med_x, med_y])
- return np.array(new_coords)
- def cast_lbf_to_boundary(lbf_coords, boundary):
- dists = distance.cdist(lbf_coords, boundary, 'euclidean')
- min_coord_idxs = np.argmin(dists, axis=1)
- cast_coords = boundary[min_coord_idxs]
- return cast_coords
- def calc_lbf(ah_x, ah_y, point_coords, loss_func, weight, eps = 1.35):
- x = np.zeros((len(point_coords[:, 0]) + 1,))
- y = np.zeros((len(point_coords[:, 1]) + 1,))
- x[0] = ah_x
- y[0] = ah_y
- x[1:] = point_coords[:, 0]
- y[1:] = point_coords[:, 1]
- weights = np.ones((len(x),))
- weights[0] = weight
- if loss_func == 'Huber':
- huber = HuberRegressor(epsilon = eps)
- try:
- huber.fit(x[:, None], y, sample_weight = weights)
- except ValueError as e:
- print(f"Value error with eps = {eps} - retrying with different epsilon")
- return -1e8, -1e8
- y1 = huber.predict([[0]])
- y2 = huber.predict([[1]])
- m = (y2 - y1)
- b = y1
- elif loss_func == 'Normal':
- m, b = np.polyfit(x, y, 1, w = weights)
- return m, b
- def load_cell(template_id, tempgen):
- # Load cell and position and rotation info
- mea_cells_folder = '/Users/Ziad/.config/mearec/1.7.2/cell_models/MEArecLinearCells/'
- cell_name = 'L5_TTPC1_cADpyr232_1'
- cell_model_folder = Path(Path(mea_cells_folder) / cell_name)
- T = 1000
- dt = 0.03125
- cell = mr.return_bbp_cell(cell_model_folder, end_T=T, dt=dt, start_T=0)
- pos = tempgen.locations[template_id]
- rot = tempgen.rotations[template_id]
- cell = mr.ziad_flatten_geometry(cell, pos, rot, 10)
- cell.set_pos(pos[0], pos[1], pos[2])
- cell.set_rotation(rot[0], rot[1], rot[2])
- return cell
- def remove_outliers(n_neighbors, cast_coords, max_range):
- # Remove outliers
- nbrs = NearestNeighbors(n_neighbors=n_neighbors, algorithm='ball_tree').fit(cast_coords)
- distances, indices = nbrs.kneighbors(cast_coords)
- avg_dists = np.mean(distances[:, 1:], axis=1)
- cast_coords_no_outliers = []
- for i in range(len(avg_dists)):
- if avg_dists[i] < max_range:
- cast_coords_no_outliers.append(cast_coords[i])
- return np.array(cast_coords_no_outliers)
- def gen_modified_coords(clf, signals, elec_x, elec_y, xx, yy, coords, params):
- min_dist = params['min_dist']
- max_dist = params['max_dist']
- num_points = params['num_points']
- opp_dist = params['opp_dist']
- # Get boundary estimation (true/false values assigned to dense coordinate map) and cast to boolean
- Z = clf.predict(np.c_[xx.ravel(), yy.ravel()])
- Z = Z.reshape(xx.shape)
- Z = (Z != 0)
- # Estimate axon hillock as well as direction of neuron
- ah_x, ah_y, new_coords = estimate_axon_hillock(signals, elec_x, elec_y, return_med = True)
- # Calculate line of best fit - assign half the points to be identical (axon hillock)
- mult = 2
- fit_coords = np.zeros((len(new_coords)*(mult+1), 2))
- fit_coords[:len(new_coords)*mult, 0] = ah_x
- fit_coords[:len(new_coords)*mult, 1] = ah_y
- fit_coords[len(new_coords)*mult:, 0] = new_coords[:, 0]
- fit_coords[len(new_coords)*mult:, 1] = new_coords[:, 1]
- m, b = np.polyfit(fit_coords[:, 0], fit_coords[:, 1], 1)
- # Find points above line
- q = yy > (xx*m + b)
- # Determine whether points above line are mostly in category 0 or 1 of SVM
- greater_than_category = np.sum(q & Z)/np.sum(q) > 0.5
- # Generate points close to axon_hillock along line of best fit at specified distances
- nearby_dists = np.linspace(min_dist, max_dist, num_points)
- # Find closest point to (ah_x, ah_y) on line
- b2 = ah_y + ah_x/m
- ah_x2 = (b2 - b)/(m + 1/m)
- ah_y2 = m*ah_x2 + b
- # Get nearby points along line of best fit
- nearby_x = nearby_dists/np.sqrt(1 + m**2) + ah_x2
- nearby_y = m*nearby_x + b
- # Get one point one either side of each of those points along the line perpendicular to line of best fit
- b_vals = nearby_y + nearby_x/m
- opposite_dists = np.arange(-1*opp_dist, opp_dist + 0.1, 2*opp_dist)
- opposite_x = np.add.outer(opposite_dists/np.sqrt(1 + (1/m)**2), nearby_x)
- b_vals = np.ones(np.shape(opposite_x)) * b_vals
- opposite_y = -1*opposite_x / m + b_vals
- # Generate modified coordinates and targets
- mod_coords = np.zeros((len(coords)+np.shape(opposite_x)[1]*np.shape(opposite_x)[0], 2))
- mod_coords[:len(coords), :] = coords
- mod_coords[len(coords):len(coords)+len(opposite_x[0]), 0] = opposite_x[0, :]
- mod_coords[len(coords):len(coords)+len(opposite_x[0]), 1] = opposite_y[0, :]
- mod_coords[len(coords) + len(opposite_x[0]):len(coords)+len(opposite_x[0])*2, 0] = opposite_x[1, :]
- mod_coords[len(coords) + len(opposite_x[0]):len(coords)+len(opposite_x[0])*2, 1] = opposite_y[1, :]
- mod_targets = np.zeros((len(mod_coords),))
- mod_targets[:len(targets)] = targets[:]
- mod_targets[len(targets):np.shape(opposite_x)[1] + len(targets)] = not greater_than_category
- mod_targets[len(targets) + np.shape(opposite_x)[1]:np.shape(opposite_x)[1]*2 + len(targets)] = greater_than_category
- return mod_coords, mod_targets
- def gen_modified_coords2(clf, signals, elec_x, elec_y, xx, yy, coords, boundary, params):
- min_dist = params['min_dist']
- max_dist = params['max_dist']
- num_points = params['num_points']
- opp_dist = params['opp_dist']
- weight = params['weight']
- eps = params['epsilon']
- max_range = params['max_range']
- # Get boundary estimation (true/false values assigned to dense coordinate map) and cast to boolean
- Z = clf.predict(np.c_[xx.ravel(), yy.ravel()])
- Z = Z.reshape(xx.shape)
- Z = (Z != 0)
- ah_x, ah_y, new_coords = estimate_axon_hillock(signals, elec_x, elec_y, return_med = True)
- indices = np.arange(4, 200, 4)
- new_coords = get_lbf_points(signals, indices, elec_x, elec_y)
- cast_coords = cast_lbf_to_boundary(new_coords, boundary)
- cast_coords = remove_outliers(4, cast_coords, max_range)
- m, b = calc_lbf(ah_x, ah_y, cast_coords, 'Normal', weight, eps = eps)
- # for i in range(3):
- # m, b = calc_lbf(ah_x, ah_y, cast_coords, 'Huber', weight, eps = eps)
- # if m != -1e8 and b != -1e8:
- # break
- # else:
- # eps += 0.05
- # if m == -1e8 and b == -1e8:
- # m, b = calc_lbf(ah_x, ah_y, cast_coords, 'Normal', weight, eps = eps)
- q = yy > (xx*m + b)
- greater_than_category = np.sum(q & Z)/np.sum(q) > 0.5
- # Points close to axon_hillock along line of best fit
- nearby_dists = np.linspace(min_dist, max_dist, num_points)
- #nearby_dists = np.arange(-5, 5.1, 0.01)*5
- # Find closest point to (ah_x, ah_y) on line
- b2 = ah_y + ah_x/m
- ah_x2 = (b2 - b)/(m + 1/m)
- ah_y2 = m*ah_x2 + b
- #print(ah_x, ah_x2)
- # Get nearby points along line of best fit
- nearby_x = nearby_dists/np.sqrt(1 + m**2) + ah_x2
- nearby_y = m*nearby_x + b
- #print(np.sqrt((nearby_x - ah_x2)**2 + (nearby_y - (ah_y2))**2))
- # Get one point one either side of each of those points along the line perpendicular to line of best fit
- b_vals = nearby_y + nearby_x/m
- opposite_dists = np.arange(-2, 2.1, 4)*5
- opposite_x = np.add.outer(opposite_dists/np.sqrt(1 + (1/m)**2), nearby_x)
- b_vals = np.ones(np.shape(opposite_x)) * b_vals
- opposite_y = -1*opposite_x / m + b_vals
- # Re-calculate SVM with modified coordinates
- mod_coords = np.zeros((len(coords)+np.shape(opposite_x)[1]*np.shape(opposite_x)[0], 2))
- mod_coords[:len(coords), :] = coords
- mod_coords[len(coords):len(coords)+len(opposite_x[0]), 0] = opposite_x[0, :]
- mod_coords[len(coords):len(coords)+len(opposite_x[0]), 1] = opposite_y[0, :]
- mod_coords[len(coords) + len(opposite_x[0]):len(coords)+len(opposite_x[0])*2, 0] = opposite_x[1, :]
- mod_coords[len(coords) + len(opposite_x[0]):len(coords)+len(opposite_x[0])*2, 1] = opposite_y[1, :]
- mod_targets = np.zeros((len(mod_coords),))
- mod_targets[:len(targets)] = targets[:]
- mod_targets[len(targets):np.shape(opposite_x)[1] + len(targets)] = not greater_than_category
- mod_targets[len(targets) + np.shape(opposite_x)[1]:np.shape(opposite_x)[1]*2 + len(targets)] = greater_than_category
- return mod_coords, mod_targets
- # %%
- # Run for all cells
- snrs = [40, 20, 0]
- mea_names = ['400MEA50', '400MEA75', '400MEA100']
- file_prefix = 'mag_templates_flattened_morphology_L5_TTPC1_cADpyr232_1_n300_'
- for snr in snrs:
- for mea_name in mea_names:
- # Parameters
- #mea_name = '400MEA50'
- thresh = 0.0
- #snr = 40
- iters_per_cell = 1
- C = 0.1
- gamma = 0.1
- cells = range(300)
- print(snr, mea_name)
- # Load template
- #templates_file = f'ziad_mearec_templates/mag_templates_flattened_morphology_L5_TTPC1_cADpyr232_1_n300_{mea_name}.h5'
- #tempgen = mr.tools.load_templates(templates_file, verbose=False)
- # Get apical dendrite coordinates and extracellular magnetic fields
- with open(f'{file_prefix}{mea_name}.npy', 'rb') as f:
- all_y = np.load(f)
- all_z = np.load(f)
- mags = np.load(f)
- # Main loop
- elec_x, elec_y = get_electrodes2(mea_name)
- xx, yy = make_meshgrid(np.array(elec_x), np.array(elec_y))
- dists = np.zeros((len(cells), iters_per_cell))
- dists_std = np.zeros((len(cells), iters_per_cell))
- dists_list = []
- dists_std_list = []
- fails = 0
- for n, template_id in enumerate(cells):
- #print("Template ID: ", template_id)
- for itr in range(iters_per_cell):
- #start = time.time()
- #elec_x, elec_y = get_electrodes2(mea_name)
- #cell = load_cell(template_id, tempgen)
- # Generate noise according to SNR parameter
- noise = generate_noise(snr, mags[template_id], np.shape(mags[template_id]))
- # Extract signals with magnitude that exceeds threshold
- signals = mags[template_id] + noise
- coords, targets = get_strong_signals(signals, elec_x, elec_y, thresh)
- # Estimate axon hillock based on strongest signals
- #ah_x, ah_y = estimate_axon_hillock(mags[template_id] + noise, elec_x, elec_y)
- #real_x = all_y[template_id][0]
- #real_y = all_z[template_id][0]
- #est_dist = np.sqrt((real_x - ah_x)**2 + (real_y - ah_y)**2)
- #print("Estimated axon hillock distance: ", est_dist)
- # Apply SVM to coordinates of strong signals
- model = svm.SVC(kernel="rbf")
- clf = model.fit(coords, targets)
- boundary = get_boundary_coords(xx, yy, clf)
- # Generate modified coordinates and calculate new SVM
- params = {}
- params['min_dist'] = -25
- params['max_dist'] = 25
- params['num_points'] = 1000
- params['opp_dist'] = 10
- params['weight'] = 100
- params['epsilon'] = 1.2
- params['max_range'] = 50
- mod_coords, mod_targets = gen_modified_coords2(clf, signals, elec_x, elec_y, xx, yy, coords, boundary, params)
- mod_model = svm.SVC(kernel='rbf')
- mod_clf = mod_model.fit(mod_coords, mod_targets)
- mod_boundary = get_boundary_coords(xx, yy, mod_clf)
- boundaries = [boundary, mod_boundary]
- # if len(boundary) != 0:
- # dist, std, all_dists = get_apic_dist_real(template_id, all_y, all_z, xx, yy, clf, boundary = boundary)
- # print("Original dist: ", dist)
- if len(mod_boundary) != 0:
- dist, std, all_dists = get_apic_dist_real(template_id, all_y, all_z, xx, yy, clf, boundary = mod_boundary)
- #print("Modified dist: ", dist)
- for i in range(len(all_dists)):
- print(all_dists[i], end='\t')
- #print()
- else:
- dist = 10000000
- std = 1000000
- print()
- #print('Dist: ', dist)
- if dist < 10000000:
- dists[n, itr] = dist
- dists_std[n, itr] = std
- dists_list.append(dist)
- dists_std_list.append(std)
- else:
- fails += 1
- #print("Time: ", time.time()-start)
- # %%
- for i in range(3):
- print(i)
- if i == 1:
- break
- # %%
- # Compute modified SVM for single cell
- file_prefix = 'mag_templates_flattened_morphology_L5_TTPC1_cADpyr232_1_n300_'
- mea_name = '400MEA50'
- snr = 40
- thresh = 0
- template_id = 8
- plot = True
- # Modified SVM parameters
- params = {}
- params['min_dist'] = -25
- params['max_dist'] = 25
- params['num_points'] = 100
- params['opp_dist'] = 10
- # Load actual coordinates of cell
- with open(f'{file_prefix}{mea_name}.npy', 'rb') as f:
- all_y = np.load(f)
- all_z = np.load(f)
- mags = np.load(f)
- # Get electrode coordinates
- elec_x, elec_y = get_electrodes2(mea_name)
- xx, yy = make_meshgrid(np.array(elec_x), np.array(elec_y))
- # Generate noise according to SNR parameter
- noise = generate_noise(snr, mags[template_id], np.shape(mags[template_id]))
- # Extract signals with magnitude that exceeds threshold
- signals = mags[template_id] + noise
- coords, targets = get_strong_signals(signals, elec_x, elec_y, thresh)
- # Apply SVM to coordinates of strong signals
- model = svm.SVC(kernel="rbf")
- clf = model.fit(coords, targets)
- boundary = get_boundary_coords(xx, yy, clf)
- dist, std, all_dists = get_apic_dist_real(template_id, all_y, all_z, xx, yy, clf, boundary = boundary)
- print("Original dist: ", dist)
- # Plot original SVM
- tempgen = mr.tools.load_templates('ziad_mearec_templates/' + file_prefix + mea_name + '.h5', verbose=False)
- cell = load_cell(template_id, tempgen)
- if plot:
- fig, ax = plotcell_1plane_morph(cell, 1000, 1000)
- ax.set_xlim([-600, 600])
- ax.set_ylim([-600, 600])
- #out, Z = plot_contours(ax, clf, xx, yy, cmap=plt.cm.coolwarm, alpha=0.8)
- Z = clf.predict(np.c_[xx.ravel(), yy.ravel()])
- Z = Z.reshape(xx.shape)
- Z = (Z != 0)
- # Generate modified coordinates
- # mod_coords, mod_targets = gen_modified_coords(clf, signals, elec_x, elec_y, xx, yy, coords, params)
- # mod_model = svm.SVC(kernel='rbf')
- # mod_clf = mod_model.fit(mod_coords, mod_targets)
- # Estimate axon hillock and plot
- ah_x, ah_y, new_coords = estimate_axon_hillock(signals, elec_x, elec_y, return_med = True)
- if plot:
- ax.scatter(ah_x, ah_y, color='green')
- ax.scatter(new_coords[:, 0], new_coords[:, 1], color='black')
- # mult = 2
- # fit_coords = np.zeros((len(new_coords)*(mult+1), 2))
- # fit_coords[:len(new_coords)*mult, 0] = ah_x
- # fit_coords[:len(new_coords)*mult, 1] = ah_y
- # fit_coords[len(new_coords)*mult:, 0] = new_coords[:, 0]
- # fit_coords[len(new_coords)*mult:, 1] = new_coords[:, 1]
- # m, b = np.polyfit(fit_coords[:, 0], fit_coords[:, 1], 1)
- weight = 100
- eps = 1.25
- indices = np.arange(4, 200, 4)
- new_coords = get_lbf_points(signals, indices, elec_x, elec_y)
- cast_coords = cast_lbf_to_boundary(new_coords, boundary)
- ax.scatter(cast_coords[:, 0], cast_coords[:, 1], color='red')
- # Remove outliers
- nbrs = NearestNeighbors(n_neighbors=4, algorithm='ball_tree').fit(cast_coords)
- distances, indices = nbrs.kneighbors(cast_coords)
- avg_dists = np.mean(distances[:, 1:], axis=1)
- max_range = 50
- cast_coords_no_outliers = []
- for i in range(len(avg_dists)):
- if avg_dists[i] < max_range:
- cast_coords_no_outliers.append(cast_coords[i])
- cast_coords = np.array(cast_coords_no_outliers)
- ax.scatter(cast_coords[:, 0], cast_coords[:, 1], color='purple')
- m, b = calc_lbf(ah_x, ah_y, cast_coords, 'Huber', weight, eps = eps)
- line_x_coords = np.linspace(np.min(elec_x), np.max(elec_x), 400)
- if plot:
- ax.plot(line_x_coords, m*line_x_coords + b, color = 'blue')
- m2, b2 = calc_lbf(ah_x, ah_y, cast_coords, 'Normal', weight)
- line_x_coords = np.linspace(np.min(elec_x), np.max(elec_x), 400)
- if plot:
- ax.plot(line_x_coords, m2*line_x_coords + b2, color = 'orange')
- # weight = 1000
- # fit_coords = np.zeros((len(new_coords)+1, 2))
- # fit_coords[0, 0] = ah_x
- # fit_coords[0, 1] = ah_y
- # fit_coords[1:, 0] = new_coords[:, 0]
- # fit_coords[1:, 1] = new_coords[:, 1]
- # weights = np.ones((len(new_coords)+1,))
- # weights[0] = weight
- # m, b = np.polyfit(fit_coords[:, 0], fit_coords[:, 1], 1, w = weights)
- # line_x_coords = np.linspace(np.min(elec_x), np.max(elec_x), 400)
- # if plot:
- # ax.plot(line_x_coords, m*line_x_coords + b, color = 'orange')
- # q = yy > (xx*m + b)
- # print(np.unique(Z))
- # greater_than_category = np.sum(q & Z)/np.sum(q) > 0.5
- # # Points close to axon_hillock along line of best fit
- # nearby_dists = np.arange(-5, 5.1, 0.01)*5
- # # Find closest point to (ah_x, ah_y) on line
- # b2 = ah_y + ah_x/m
- # ah_x2 = (b2 - b)/(m + 1/m)
- # ah_y2 = m*ah_x2 + b
- # print(ah_x, ah_x2)
- # # Get nearby points along line of best fit
- # nearby_x = nearby_dists/np.sqrt(1 + m**2) + ah_x2
- # nearby_y = m*nearby_x + b
- # print(np.sqrt((nearby_x - ah_x2)**2 + (nearby_y - (ah_y2))**2))
- # # Get one point one either side of each of those points along the line perpendicular to line of best fit
- # b_vals = nearby_y + nearby_x/m
- # opposite_dists = np.arange(-2, 2.1, 4)*5
- # opposite_x = np.add.outer(opposite_dists/np.sqrt(1 + (1/m)**2), nearby_x)
- # b_vals = np.ones(np.shape(opposite_x)) * b_vals
- # opposite_y = -1*opposite_x / m + b_vals
- # if plot:
- # ax.plot(opposite_x[0, :], opposite_y[0, :], color='purple')
- # ax.plot(opposite_x[1, :], opposite_y[1, :], color='green')
- # # ax.contourf(xx, yy, q, alpha = 0.4)
- # # Re-calculate SVM with modified coordinates
- # mod_coords = np.zeros((len(coords)+np.shape(opposite_x)[1]*np.shape(opposite_x)[0], 2))
- # mod_coords[:len(coords), :] = coords
- # mod_coords[len(coords):len(coords)+len(opposite_x[0]), 0] = opposite_x[0, :]
- # mod_coords[len(coords):len(coords)+len(opposite_x[0]), 1] = opposite_y[0, :]
- # mod_coords[len(coords) + len(opposite_x[0]):len(coords)+len(opposite_x[0])*2, 0] = opposite_x[1, :]
- # mod_coords[len(coords) + len(opposite_x[0]):len(coords)+len(opposite_x[0])*2, 1] = opposite_y[1, :]
- # mod_targets = np.zeros((len(mod_coords),))
- # mod_targets[:len(targets)] = targets[:]
- # mod_targets[len(targets):np.shape(opposite_x)[1] + len(targets)] = not greater_than_category
- # mod_targets[len(targets) + np.shape(opposite_x)[1]:np.shape(opposite_x)[1]*2 + len(targets)] = greater_than_category
- # sample_weights = np.ones((len(mod_targets),))
- # sample_weights[len(targets):] = 1
- # mod_model = svm.SVC(kernel="rbf")
- # mod_clf = mod_model.fit(mod_coords, mod_targets)
- # mod_boundary = get_boundary_coords(xx, yy, mod_clf)
- # dist, std, all_dists_mod = get_apic_dist_real(template_id, all_y, all_z, xx, yy, clf, boundary = mod_boundary)
- # print("Modified dist: ", dist)
- # if plot:
- # fig, ax = plotcell_1plane_morph(cell, 1000, 1000)
- # out, Z = plot_contours(ax, mod_clf, xx, yy, cmap=plt.cm.coolwarm, alpha=0.8)
- # print("Original Dists: ", all_dists[:10])
- # print("Modified Dists: ", all_dists_mod[:10])
- # %%
- a = []
- a.append([2, 0])
- a.append([4, 3])
- a.append([0, 0])
- print(np.shape(np.array(a)))
- # %%
- nbrs = NearestNeighbors(n_neighbors=4, algorithm='ball_tree').fit(cast_coords)
- distances, indices = nbrs.kneighbors(cast_coords)
- avg_dists = np.mean(distances[:, 1:], axis=1)
- print(np.shape(avg_dists))
- print(np.shape(avg_dists[avg_dists < 50]))
- print(indices)
- # %%
- fig, ax = plotcell_1plane_morph(cell, 1000, 1000)
- #out, Z = plot_contours(ax, clf, xx, yy, cmap=plt.cm.coolwarm, alpha=0.8)
- weight = 100
- indices = np.arange(4, 200, 4)
- new_coords = get_lbf_points(signals, indices, elec_x, elec_y)
- cast_coords = cast_lbf_to_boundary(new_coords, boundary)
- ax.scatter(cast_coords[:, 0], cast_coords[:, 1], color='red')
- m, b = calc_lbf(ah_x, ah_y, cast_coords, 'Huber', weight, eps = 1.1)
- print(m, b)
- line_x_coords = np.linspace(-250, 150, 400)
- if plot:
- plt.plot(line_x_coords, m*line_x_coords + b, color = 'blue')
- m, b = calc_lbf(ah_x, ah_y, cast_coords, 'Normal', weight)
- print(m, b)
- line_x_coords = np.linspace(np.min(elec_x), np.max(elec_x), 400)
- if plot:
- plt.plot(line_x_coords, m*line_x_coords + b, color = 'orange')
- plt.xlim([-475, 475])
- plt.ylim([-475, 475])
- # %%
- np.max(elec_x)
- # %%
- line_x_coords = np.linspace(np.min(elec_x), np.max(elec_x), 400)
- m, b = calc_lbf(ah_x, ah_y, fit_coords[1:, :], 'Huber', 1000)
- plt.plot(line_x_coords, m*line_x_coords + b, color = 'orange')
- m, b = calc_lbf(ah_x, ah_y, fit_coords[1:, :], 'Normal', 1000)
- plt.plot(line_x_coords, m*line_x_coords + b, color = 'green')
- # %%
- print(all_y[template_id, 0], all_z[template_id, 0])
- soma = np.zeros((1, 2))
- soma[0] = [all_y[template_id, 0], all_z[template_id, 0]]
- print(boundary)
- dist = distance.cdist(soma, boundary)
- print(np.min(dist), np.argmin(dist))
- # %%
- print(all_y[template_id, 0], all_z[template_id, 0])
- soma = np.zeros((1, 2))
- soma[0] = [all_y[template_id, 0], all_z[template_id, 0]]
- print(boundary)
- dist = distance.cdist(soma, mod_boundary)
- print(np.min(dist), np.argmin(dist))
- # %%
- plt.plot(all_dists)
- plt.plot(all_dists_mod)
- # %%
- a = np.zeros((3, 2))
- a[0] = [0, 0]
- a[1] = [2, 1]
- a[2] = [-3, 2]
- b = np.zeros((2, 2))
- b[0] = [4, 5]
- b[1] = [-4, 0]
- np.min(distance.cdist(a, b), axis=1)
- #get_apic_dist_real(template_id, all_y, all_z, xx, yy, clf, boundary = boundary)
- # %%
- nearby_dists = np.arange(-5, 5.1, 1)
- # Find closest point to (ah_x, ah_y) on line
- b2 = ah_y + ah_x/m
- ah_x2 = (b2 - b)/(m + 1/m)
- ah_y2 = m*ah_x2 + b
- print(ah_x, ah_x2)
- # Get nearby points along line of best fit
- nearby_x = nearby_dists/np.sqrt(1 + m**2) + ah_x2
- nearby_y = m*nearby_x + b
- print(np.sqrt((nearby_x - ah_x2)**2 + (nearby_y - (ah_y2))**2))
- # Get one point one either side of each of those points along the line perpendicular to line of best fit
- b_vals = nearby_y + nearby_x/m
- opposite_dists = np.arange(-2, 2.1, 4)
- print(nearby_x)
- opposite_x = np.add.outer(opposite_dists/np.sqrt(1 + (1/m)**2), nearby_x)
- b_vals = np.ones(np.shape(opposite_x)) * b_vals
- opposite_y = -1*opposite_x / m + b_vals
- print(opposite_y)
- # %%
- np.shape(targets)
- # %%
- mod_coords
- # %%
- mod_targets = np.zeros((len(mod_coords),))
- mod_targets[:len(targets)] = targets[:]
- mod_targets[len(targets):np.shape(opposite_x)[1] + len(targets)] = not greater_than_category
- mod_targets[len(targets) + np.shape(opposite_x)[1]:np.shape(opposite_x)[1]*2 + len(targets)] = greater_than_category
- print(mod_targets[400:])
- # %%
- greater_than_category
- # %%
- with open(f'mag_templates_flattened_morphology_L5_TTPC1_cADpyr232_1_n300_400MEA50.npy', 'rb') as f:
- all_y = np.load(f)
- all_z = np.load(f)
- mags = np.load(f)
- elec_x, elec_y = get_electrodes2('400MEA50')
- # %%
- mags_pwr = np.sqrt(np.sum(mags[0]**2, axis=1))
- mags_strong_indices = np.argsort(-1*mags_pwr)[:4]
- mags_relative_pwr = mags_pwr[mags_strong_indices] / np.sum(mags_pwr[mags_strong_indices])
- new_x = np.sum(elec_x[mags_strong_indices] * mags_relative_pwr)
- new_y = np.sum(elec_y[mags_strong_indices] * mags_relative_pwr)
- print(new_x, new_y)
- # %%
- elec_x[mags_strong_indices] * mags_relative_pwr
- # %% [markdown]
- # ### IGNORE EVERYTHING BELOW THIS POINT
- # %%
- dists_list = np.array(dists_list)
- dists_std_list = np.array(dists_std_list)
- print("Mean distance: ", np.mean(dists_list))
- print("Mean std of dist: ", np.sqrt(np.mean(dists_std_list**2)))
- print("Num fails: ", fails)
- # %%
- np.sqrt(np.mean(dists_std[:, 0]**2))
- # %%
- for i in range(len(dists)):
- mean_total = 0
- var_total = 0
- count = 0
- for j in range(len(dists[0])):
- if dists[i, j] < 1000000:
- mean_total += dists[i, j]
- var_total += dists_std[i, j]**2
- count += 1
- print(mean_total/count, '\t', np.sqrt(var_total/count))
- # %%
- dists[0, 1] = 60
- dists[0, 2] = 1000000
- dists_std[0] = 12
- # %%
- elec_y
- # %%
- electrodes = get_electrodes('400MEA75')
- elec_x = electrodes.y
- elec_y = electrodes.z
- # %%
- len(elec_x)
- # %%
- a, b = get_electrodes2('400MEA75')
- # %%
- len(a)
- # %%
- np.arange(-1*max_coord, max_coord+1, pitch)
- # %%
- l1 = 100
- l2 = 300
- a = np.random.random(l1)
- b = np.random.random(l2)
- c = np.zeros(l1+l2)
- c[:l1] = a
- c[l1:] = b
- print(np.std(a))
- print(np.std(b))
- print(np.std(c))
- # %%
- print(np.sqrt((np.std(a)**2*(l1-1) + np.std(b)**2*(l2-1))/(l1+l2-2)))
- print(np.sqrt((np.std(a)**2*(l1) + np.std(b)**2*(l2))/(l1+l2)))
- # %%
- w = 1e-3
- r = 1e-3
- I = 10000e-9
- N = 100
- mu_r = 1000
- f = 1e3
- B_flux = w*np.log((r+w)/r)*I*2e-7
- print(B_flux)
- print(I*2e-7/(r+w/2))
- emf = N*mu_r*B_flux*f
- print(emf*1e9, 'nV')
- # %%
Ziad_MorphologyReconstruction4.ipynb, under CC-BY-4.0 · at the source
Overview
Abstract
Brain implants that measure neural magnetic fields, rather than electrical potentials, are expected to confer significant clinical advantages related to implant longevity and signal fidelity due to the elimination of the electrode-tissue interface. However, the informational differences between neural electrical potentials and magnetic fields remain poorly understood. Using a mathematical formalism based on neuronal current sources, we directly establish the complementary informational content of extracellular magnetic fields and electrical potentials. This formalism also reveals that extracellular magnetic fields generated by spiking neurons inherently exhibit one order lower spatial polarity than electric fields, resulting in more favorable distance-scaling characteristics. We then use computational modeling to illustrate how dense networks of neurons are easier to distinguish and spike sort on the basis of their magnetic, rather than electrical, spike templates. Lastly, we show how the solenoidal nature of neural magnetic fields facilitates approximate morphological reconstruction, even with sparse sensor arrays. Our findings highlight the unique experimental advantages of neural magnetic field sensing, motivating the development of compact, low-noise devices capable of meeting the stringent sensitivity requirements for cortical recordings.
Reproduced under the paper's license (CC BY), from the paper cited above.
Repository
Its files are read in the Code ↔ Paper reader above, with 5 matches between paragraphs and lines of code.
figshare 32061105
Availability: 1 check, the latest on 28 September 2026: the link answers (HTTP 200)
- 28 September 2026: the link answers (HTTP 200)
410 files
- ADA_Scaling_Morph.ipynb, Jupyter, 667 lines
- Ada_09_09_24_main.ipynb, Jupyter, 1,018 lines, 1 match
- Ada_09_09_24_stick.ipynb
, Jupyter, 361 lines - MEArecTemplate/
__init__.py , Python, 12 lines - MEArecTemplate/
cell_models/ , NEURON, 171 linesbbp/ L5_BP_bAC217_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_BP_bAC217_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_BP_bAC217_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_BP_bAC217_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_BP_bAC217_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_BP_bAC217_1/ mechanisms/ Ca.mod - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_BP_bAC217_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_BP_bAC217_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_BP_bAC217_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_BP_bAC217_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_BP_bAC217_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_BP_bAC217_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_BP_bAC217_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_BP_bAC217_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_BP_bAC217_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_BP_bAC217_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_BP_bAC217_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_BP_bAC217_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_BP_bAC217_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_BP_bAC217_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_BP_bAC217_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_BP_bAC217_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_BP_bAC217_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_BP_bAC217_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_BP_bAC217_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_BP_bAC217_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_BP_bAC217_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_BP_bAC217_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_BP_bAC217_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 171 linesbbp/ L5_BTC_bAC217_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_BTC_bAC217_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_BTC_bAC217_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_BTC_bAC217_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_BTC_bAC217_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ Ca.mod - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_BTC_bAC217_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_BTC_bAC217_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_BTC_bAC217_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_BTC_bAC217_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_BTC_bAC217_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_BTC_bAC217_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_BTC_bAC217_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_BTC_bAC217_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_BTC_bAC217_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_BTC_bAC217_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_BTC_bAC217_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 187 linesbbp/ L5_ChC_cACint209_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_ChC_cACint209_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_ChC_cACint209_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_ChC_cACint209_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_ChC_cACint209_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ Ca.mod - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_ChC_cACint209_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_ChC_cACint209_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_ChC_cACint209_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_ChC_cACint209_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_ChC_cACint209_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_ChC_cACint209_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_ChC_cACint209_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_ChC_cACint209_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_ChC_cACint209_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_ChC_cACint209_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_ChC_cACint209_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 171 linesbbp/ L5_DBC_bAC217_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_DBC_bAC217_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_DBC_bAC217_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_DBC_bAC217_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_DBC_bAC217_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ Ca.mod - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_DBC_bAC217_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_DBC_bAC217_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_DBC_bAC217_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_DBC_bAC217_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_DBC_bAC217_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_DBC_bAC217_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_DBC_bAC217_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_DBC_bAC217_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_DBC_bAC217_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_DBC_bAC217_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_DBC_bAC217_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 171 linesbbp/ L5_LBC_bAC217_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_LBC_bAC217_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_LBC_bAC217_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_LBC_bAC217_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_LBC_bAC217_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ Ca.mod - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_LBC_bAC217_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_LBC_bAC217_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_LBC_bAC217_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_LBC_bAC217_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_LBC_bAC217_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_LBC_bAC217_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_LBC_bAC217_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_LBC_bAC217_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_LBC_bAC217_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_LBC_bAC217_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_LBC_bAC217_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 171 linesbbp/ L5_MC_bAC217_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_MC_bAC217_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_MC_bAC217_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_MC_bAC217_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_MC_bAC217_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_MC_bAC217_1/ mechanisms/ Ca.mod - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_MC_bAC217_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_MC_bAC217_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_MC_bAC217_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_MC_bAC217_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_MC_bAC217_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_MC_bAC217_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_MC_bAC217_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_MC_bAC217_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_MC_bAC217_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_MC_bAC217_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_MC_bAC217_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_MC_bAC217_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_MC_bAC217_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_MC_bAC217_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_MC_bAC217_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_MC_bAC217_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_MC_bAC217_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_MC_bAC217_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_MC_bAC217_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_MC_bAC217_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_MC_bAC217_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_MC_bAC217_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_MC_bAC217_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 171 linesbbp/ L5_NBC_bAC217_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_NBC_bAC217_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_NBC_bAC217_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_NBC_bAC217_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_NBC_bAC217_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ Ca.mod - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_NBC_bAC217_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_NBC_bAC217_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_NBC_bAC217_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_NBC_bAC217_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_NBC_bAC217_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_NBC_bAC217_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_NBC_bAC217_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_NBC_bAC217_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_NBC_bAC217_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_NBC_bAC217_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_NBC_bAC217_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 187 linesbbp/ L5_NGC_bNAC219_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_NGC_bNAC219_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_NGC_bNAC219_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_NGC_bNAC219_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_NGC_bNAC219_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ Ca.mod - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_NGC_bNAC219_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_NGC_bNAC219_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_NGC_bNAC219_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_NGC_bNAC219_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_NGC_bNAC219_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_NGC_bNAC219_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_NGC_bNAC219_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_NGC_bNAC219_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_NGC_bNAC219_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_NGC_bNAC219_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_NGC_bNAC219_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 187 linesbbp/ L5_SBC_bNAC219_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_SBC_bNAC219_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_SBC_bNAC219_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_SBC_bNAC219_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_SBC_bNAC219_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ Ca.mod - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_SBC_bNAC219_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_SBC_bNAC219_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_SBC_bNAC219_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_SBC_bNAC219_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_SBC_bNAC219_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_SBC_bNAC219_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_SBC_bNAC219_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_SBC_bNAC219_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_SBC_bNAC219_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_SBC_bNAC219_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_SBC_bNAC219_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 159 linesbbp/ L5_STPC_cADpyr232_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_STPC_cADpyr232_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_STPC_cADpyr232_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_STPC_cADpyr232_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_STPC_cADpyr232_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ Ca_HVA.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_STPC_cADpyr232_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_STPC_cADpyr232_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_STPC_cADpyr232_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_STPC_cADpyr232_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_STPC_cADpyr232_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_STPC_cADpyr232_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_STPC_cADpyr232_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_STPC_cADpyr232_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_STPC_cADpyr232_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_STPC_cADpyr232_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_STPC_cADpyr232_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 159 linesbbp/ L5_TTPC1_cADpyr232_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_TTPC1_cADpyr232_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_TTPC1_cADpyr232_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_TTPC1_cADpyr232_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_TTPC1_cADpyr232_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ Ca_HVA.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_TTPC1_cADpyr232_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_TTPC1_cADpyr232_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_TTPC1_cADpyr232_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_TTPC1_cADpyr232_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_TTPC1_cADpyr232_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_TTPC1_cADpyr232_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_TTPC1_cADpyr232_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_TTPC1_cADpyr232_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_TTPC1_cADpyr232_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_TTPC1_cADpyr232_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_TTPC1_cADpyr232_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 159 linesbbp/ L5_TTPC2_cADpyr232_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_TTPC2_cADpyr232_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_TTPC2_cADpyr232_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_TTPC2_cADpyr232_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_TTPC2_cADpyr232_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ Ca_HVA.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_TTPC2_cADpyr232_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_TTPC2_cADpyr232_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_TTPC2_cADpyr232_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_TTPC2_cADpyr232_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_TTPC2_cADpyr232_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_TTPC2_cADpyr232_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_TTPC2_cADpyr232_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_TTPC2_cADpyr232_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_TTPC2_cADpyr232_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_TTPC2_cADpyr232_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_TTPC2_cADpyr232_1/ template.hoc - MEArecTemplate/
cell_models/ , NEURON, 159 linesbbp/ L5_UTPC_cADpyr232_1/ biophysics.hoc - MEArecTemplate/
cell_models/ , NEURON, 31 linesbbp/ L5_UTPC_cADpyr232_1/ constants.hoc - MEArecTemplate/
cell_models/ , NEURON, 157 linesbbp/ L5_UTPC_cADpyr232_1/ creategui.hoc - MEArecTemplate/
cell_models/ , NEURON, 115 linesbbp/ L5_UTPC_cADpyr232_1/ createsimulation.hoc - MEArecTemplate/
cell_models/ , NEURON, 91 linesbbp/ L5_UTPC_cADpyr232_1/ init.hoc - MEArecTemplate/
cell_models/ , NEURON, 36 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ CaDynamics_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ Ca_HVA.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ Ca_LVAst.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ Ih.mod - MEArecTemplate/
cell_models/ , NEURON, 61 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ Im.mod - MEArecTemplate/
cell_models/ , NEURON, 72 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ K_Pst.mod - MEArecTemplate/
cell_models/ , NEURON, 68 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ K_Tst.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ NaTa_t.mod - MEArecTemplate/
cell_models/ , NEURON, 79 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ NaTs2_t.mod - MEArecTemplate/
cell_models/ , NEURON, 85 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ Nap_Et2.mod - MEArecTemplate/
cell_models/ , NEURON, 329 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ ProbAMPANMDA_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 328 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ ProbGABAAB_EMS.mod - MEArecTemplate/
cell_models/ , NEURON, 56 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ SK_E2.mod - MEArecTemplate/
cell_models/ , NEURON, 55 linesbbp/ L5_UTPC_cADpyr232_1/ mechanisms/ SKv3_1.mod - MEArecTemplate/
cell_models/ , NEURON, 44 linesbbp/ L5_UTPC_cADpyr232_1/ morphology.hoc - MEArecTemplate/
cell_models/ , NEURON, 29 linesbbp/ L5_UTPC_cADpyr232_1/ mosinit.hoc - MEArecTemplate/
cell_models/ , NEURON, 93 linesbbp/ L5_UTPC_cADpyr232_1/ ringplot.hoc - MEArecTemplate/
cell_models/ , Python, 189 linesbbp/ L5_UTPC_cADpyr232_1/ run.py - MEArecTemplate/
cell_models/ , Python, 253 linesbbp/ L5_UTPC_cADpyr232_1/ run_RmpRiTau.py - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_UTPC_cADpyr232_1/ run_RmpRiTau_py.sh - MEArecTemplate/
cell_models/ , Shell, 2 linesbbp/ L5_UTPC_cADpyr232_1/ run_hoc.sh - MEArecTemplate/
cell_models/ , Shell, 7 linesbbp/ L5_UTPC_cADpyr232_1/ run_py.sh - MEArecTemplate/
cell_models/ , NEURON, 364 linesbbp/ L5_UTPC_cADpyr232_1/ synapses/ synapses.hoc - MEArecTemplate/
cell_models/ , NEURON, 259 linesbbp/ L5_UTPC_cADpyr232_1/ template.hoc - MEArecTemplate/
cli.py , Python, 608 lines - MEArecTemplate/
generation_tools.py , Python, 264 lines - MEArecTemplate/
generators/ , Python, 3 lines__init__.py - MEArecTemplate/
generators/ , Python, 346 linesrecgensteps.py - MEArecTemplate/
generators/ , Python, 1,751 linesrecordinggenerator.py - MEArecTemplate/
generators/ , Python, 1,319 linesrecordinggenerator_2.py - MEArecTemplate/
generators/ , Python, 299 lines, 1 matchspiketraingenerator.py - MEArecTemplate/
generators/ , Python, 275 linestemplategenerator.py - MEArecTemplate/
simulate_cells.py , Python, 1,922 lines - MEArecTemplate/
tests/ , Python, 1 line__init__.py - MEArecTemplate/
tests/ , Python, 788 linestest_generators.py - MEArecTemplate/
tools.py , Python, 3,725 lines - MEArecTemplate/
tools_2.py , Python, 3,677 lines - MEArecTemplate/
version.py , Python, 1 line - ZIAD_BootstrapConditionN
umber.ipynb , Jupyter, 77 lines - ZIAD_ConditionAnalysis.i
pynb , Jupyter, 208 lines - ZIAD_ConditionAnalysis2.
ipynb , Jupyter, 329 lines - ZIAD_ConditionAnalysis_E
x.ipynb , Jupyter, 228 lines - ZIAD_MEARecHelperFunctio
ns.ipynb , Jupyter, 535 lines - ZIAD_MEARotationFunction
s.ipynb , Jupyter, 204 lines - ZIAD_MorphologyReconstru
ction.ipynb , Jupyter, 302 lines - ZIAD_NeuralScaling_Grid.
ipynb , Jupyter, 789 lines - ZIAD_NeuralScaling_Morph
o.ipynb , Jupyter, 522 lines - ZIAD_PointSpread.ipynb, Jupyter, 259 lines, 1 match
- Ziad_MEArecMagnetic.ipyn
b , Jupyter, 1,576 lines - Ziad_MorphologyReconstru
ction2.ipynb , Jupyter, 429 lines - Ziad_MorphologyReconstru
ction3.ipynb , Jupyter, 428 lines - Ziad_MorphologyReconstru
ction4.ipynb , Jupyter, 935 lines, 1 match - Ziad_MorphologyReconstru
ction5.ipynb , Jupyter, 1,318 lines, 1 match
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:
- 1 repository of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
- 410 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
Data and code can be accessed 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 2, 28 September 2026
- Funding: added National Science Foundation; Stanford Bio-X; Wu Tsai Neurosciences Institute, Stanford University: SG4-19; National Science Foundation Graduate Research Fellowship Program
Version 1, 28 September 2026: the first record
Recorded: type, language, journal, volume, issue, pages, dates, 2 authors, 9 MeSH terms, 57 references.
Cite
This paper
Ali, Z., & Poon, A. S. Y. (2026). Spatial richness of neural magnetic fields. PLoS computational biology, 22(5), e1014283. https://
BibTeX
@article{ali2026spatial,
author = {Ali, Ziad and Poon, Ada S Y},
title = {{Spatial richness of neural magnetic fields}},
journal = {PLoS computational biology},
year = {2026},
month = may,
volume = {22},
number = {5},
pages = {e1014283},
publisher = {PLOS},
issn = {1553-734X},
doi = {10.1371/
url = {https://
pmid = {42172273},
pmcid = {PMC13196990}
}
RIS
TY - JOUR
AU - Ali, Ziad
AU - Poon, Ada S Y
TI - Spatial richness of neural magnetic fields
T2 - PLoS computational biology
J2 - PLoS Comput Biol
PY - 2026
DA - 2026/
VL - 22
IS - 5
SP - e1014283
SN - 1553-734X
PB - PLOS
DO - 10.1371/
UR - https://
LA - en
ER -
CSL-JSON
{
"id": "10.1371/
"type": "article-journal",
"title": "Spatial richness of neural magnetic fields",
"container-title": "PLoS computational biology",
"author": [
{
"family": "Ali",
"given": "Ziad"
},
{
"family": "Poon",
"given": "Ada S Y"
}
],
"container-title-short":
"volume": "22",
"issue": "5",
"page": "e1014283",
"DOI": "10.1371/
"PMID": "42172273",
"PMCID": "PMC13196990",
"ISSN": "1553-734X",
"publisher": "PLOS",
"URL": "https://
"language": "en",
"issued": {
"date-parts": [
[
2026,
5,
22
]
]
}
}
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.1016/j.isci.2026.115488 [code]
- An integrated &
lt;i& gt;i& lt;/ i& gt; & lt;i& gt;n vitro& lt;/ i& gt; platform and biophysical modeling approach for studying synaptic transmission in isolated neuronal pairs. Journal: iScienceIn common: LFPy, Elephant, Neo, 7 other tools, 2 references - [2] doi:10.7554/elife.110588 [code]
- Opening the black box toward a modular approach to spike sorting.Journal: eLifeIn common: Neo, SpikeInterface, h5py, 4 other tools, 3 references
- [3] doi:10.1093/bioinformatics/btag328 [code]
- eFEL: electrophysiology feature extraction library.Journal: Bioinformatics (Oxford, England)In common: Neo, NEURON, h5py, 4 other tools, 2 references
- [4] doi:10.1371/journal.pcbi.1014730 [code]
- A unified model of short- and long-term plasticity: Effects on network connectivity and information capacity.Journal: PLoS computational biologyIn common: Elephant, Neo, SymPy, 4 other tools, computational modeling (no new data)
- [5] doi:10.1016/j.patter.2026.101590 [code]
- Density-based longitudinal neuron tracking in high-density electrophysiological recordings.Journal: Patterns (New York, N.Y.)In common: Neo, SpikeInterface, h5py, 4 other tools, 2 references
- [6] doi: [code]
- Naturalistic behavior and self-generated neural activity predictive of self-correctionJournal: bioRxiv : the preprint server for biologyIn common: Elephant, Neo, SpikeInterface, 4 other tools
- [7] doi:10.7554/elife.103046 [code]
- Dichotomy between extracellular signatures of active dendritic chemical synapses and gap junctions.Journal: eLifeIn common: LFPy, NEURON, Matplotlib, 1 other tool, 3 references
- [8] doi:10.1371/journal.pcbi.1014304 [code]
- Linking reduced prefrontal microcircuit inhibition in schizophrenia to EEG biomarkers in silico.Journal: PLoS computational biologyIn common: LFPy, NEURON, scikit-learn, 3 other tools, 1 reference
- [9] doi:10.7554/elife.110170 [code]
- Efficient and reproducible pipelines for spike sorting large-scale electrophysiology data.Journal: eLifeIn common: SpikeInterface, NumPy, 5 references
- [10] doi:10.1186/s12974-026-03890-4 [code]
- Neuronal toll-like receptor-4 regulation of matrix metalloproteinase-9 activity mediates dentate circuit dysfunction after traumatic brain injury.Journal: Journal of neuroinflammationIn common: Neo, SpikeInterface, h5py, 4 other tools
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: 1 repository of the authors' code, each at its verified commit and with its license, 410 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:b9be1855e7158266…
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
[.
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.
