-
Notifications
You must be signed in to change notification settings - Fork 84
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extracting synapses placement along depth axis #344
Comments
‘sections': ['apical'], 'distance_range': [0.0, 1.0e20], ‘sections': ['apical'], 'distance_range': [50.0, 1.0e20], ‘sections': ['apical'], 'distance_range': [100.0, 1.0e20], ‘sections': ['apical'], 'distance_range': [150.0, 1.0e20], ‘sections': ['apical'], 'distance_range': [200.0, 1.0e20], ‘sections': ['apical'], 'distance_range': [300.0, 1.0e20], |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Dear all,
hope this issue finds you all well.
I've been experimenting with extracting the synaptic placement along the morphology of a neuron, following the guidelines outlined in your workshop (https://github.com/AllenInstitute/bmtk-workshop/blob/main/Ch2_single_cell/2.%20Single%20Cell.ipynb).
I've observed some results that seem odd (at least to me).
I've built a network composed of a single pyramidal neuron:
`scnn1a = NetworkBuilder('cell')
scnn1a.add_nodes(
# required
N=1,
model_type='biophysical',
model_template='ctdb:Biophys1.hoc',
model_processing='aibs_perisomatic',
dynamics_params='471819401_fit.json',
morphology='Ntsr1-Cre_Ai14-181184.02.02.01_491771181_m.swc',
rotation_angle_xaxis=0.0,
rotation_angle_yaxis=0.0,
rotation_angle_zaxis=-3.847567702,
x=0.0,
y=0.0,
z=0.0
)
scnn1a.build()
scnn1a.save(output_dir='network') `
This neuron receives excitatory inputs in the apical dendrites from an external neuronal family:
`virt_exc = NetworkBuilder('virt_exc')
virt_exc.add_nodes(
N=200,
model_type='virtual',
ei_type='exc'
)
conns = virt_exc.add_edges(
source=virt_exc.nodes(),
target=scnn1a.nodes(),
connection_rule=12,
model_template='Exp2Syn',
dynamics_params='AMPA_ExcToExc.json',
delay=2.0,
syn_weight=0.01
)
conns.add_properties(
['afferent_section_id', 'afferent_section_pos', 'afferent_swc_id', 'afferent_swc_pos', 'coord_x', 'coord_y', 'coord_z'],
rule=rand_syn_locations,
rule_params={
'sections': ['apical'],
'distance_range': [0.0, 1.0e20],
'morphology_dir': 'components/morphologies',
'dL': 1.0,
‘return_coords':True
},
dtypes=[int, float, int, float, float, float, float]
)
virt_exc.build()
virt_exc.save(output_dir='network')`
I attempted to modify the distance_range for synaptic placement, gradually moving the lower limit further away from the soma of the pyramidal neuron.
Consequently, I have attempted to access the distribution of synapses along the depth axis, which runs parallel to the main axis of the neuron's morphology or, equivalently, the axis orthogonal to the pia.
In order to do so, I just accessed the 3 coord variables saved in the h5 file edge file:
h5file = h5py.File('./network/virt_exc_cell_edges.h5', "r")
coord_x = h5file['edges']['virt_exc_to_cell']['0']['coord_x'][:]
coord_y = h5file['edges']['virt_exc_to_cell']['0']['coord_y'][:]
coord_z = h5file['edges']['virt_exc_to_cell']['0']['coord_z'][:]
However, I have observed an unexpected result. It seems that the synaptic placement along the depth axis is more accurately represented by the coord_x values, whereas I anticipated a better correlation with the coord_y values (see the images below).
Am I overlooking something?
The text was updated successfully, but these errors were encountered: