Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/ubuntu
{
"name": "Ubuntu",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"image": "mcr.microsoft.com/devcontainers/base:jammy",
"features": {
"ghcr.io/devcontainers/features/python:1": {}
}

// Features to add to the dev container. More info: https://containers.dev/features.
// "features": {},

// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],

// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "uname -a",

// Configure tool-specific properties.
// "customizations": {},

// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
}
9 changes: 3 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,6 @@ __pycache__/
*.py[cod]
*$py.class







# Distribution / packaging
.Python
build/
Expand Down Expand Up @@ -105,3 +99,6 @@ venv.bak/

# mypy
.mypy_cache/

# macos
.DS_Store
6 changes: 6 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"[python]": {
"editor.defaultFormatter": "ms-python.black-formatter"
},
"python.formatting.provider": "none"
}
37 changes: 16 additions & 21 deletions ouropy/genconnection.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,15 @@ def __init__(self):

def get_description(self):
"""Return a descriptive string for the connection"""
name = self.pre_pop.name + ' to ' + self.post_pop.name + '\n'
name = f'{self.pre_pop.name} to {self.post_pop.name}' + '\n'
pre_cell_targets = '\n'.join([str(x) for x in self.pre_cell_targets])
return name + pre_cell_targets

def get_name(self):
if type(self.pre_pop) == str:
return self.pre_pop + ' to ' + str(self.post_pop)
return f'{self.pre_pop} to {str(self.post_pop)}'
else:
return str(self.pre_pop) + ' to ' + str(self.post_pop)
return f'{str(self.pre_pop)} to {str(self.post_pop)}'

def get_properties(self):
"""Get the and make them suitable for pickling"""
Expand Down Expand Up @@ -128,12 +128,12 @@ def __init__(self, pre_pop, post_pop,

for idx, curr_cell_pos in enumerate(pre_pop_pos):

curr_dist = []
for post_cell_pos in post_pop_pos:
curr_dist.append(euclidian_dist(curr_cell_pos, post_cell_pos))

curr_dist = [
euclidian_dist(curr_cell_pos, post_cell_pos)
for post_cell_pos in post_pop_pos
]
sort_idc = np.argsort(curr_dist)
closest_cells = sort_idc[0:target_pool]
closest_cells = sort_idc[:target_pool]
picked_cells = np.random.choice(closest_cells,
divergence,
replace=False)
Expand Down Expand Up @@ -248,20 +248,18 @@ def __init__(self, pre_pop, post_pop,

for idx, curr_cell_pos in enumerate(pre_pop_pos):

curr_dist = []
for post_cell_pos in post_pop_pos:
curr_dist.append(euclidian_dist(curr_cell_pos, post_cell_pos))

curr_dist = [
euclidian_dist(curr_cell_pos, post_cell_pos)
for post_cell_pos in post_pop_pos
]
sort_idc = np.argsort(curr_dist)
closest_cells = sort_idc[0:target_pool]
closest_cells = sort_idc[:target_pool]
picked_cells = np.random.choice(closest_cells,
divergence,
replace=False)
pre_cell_target.append(picked_cells)
for tar_c in picked_cells:

curr_syns = []
curr_netcons = []
curr_conductances = []

curr_syn = h.pyr2pyr(post_pop[tar_c].soma(0.5))
Expand Down Expand Up @@ -293,14 +291,11 @@ def __init__(self, pre_pop, post_pop,
curr_syn.Cdur_nmda = Cdur_nmda
curr_syn.gbar_nmda = gbar_nmda

curr_syns.append(curr_syn)
curr_syns = [curr_syn]
curr_netcon = h.NetCon(pre_pop[idx].soma(0.5)._ref_v,
curr_syn, thr, Delay,
weight, sec=pre_pop[idx].soma)
#curr_gvec = h.Vector()
#curr_gvec.record(curr_syn._ref_g)
#curr_conductances.append(curr_gvec)
curr_netcons.append(curr_netcon)
curr_netcons = [curr_netcon]
netcons.append(curr_netcons)
synapses.append(curr_syns)
conductances.append(curr_conductances)
Expand Down Expand Up @@ -1026,7 +1021,7 @@ def write_aps(self, directory='', fname=''):
directory = os.getcwd()
if not os.path.isdir(directory):
os.mkdir(directory)
path = directory + '\\' + fname + '.npz'
path = os.path.join(directory, f'{fname}.npz')
try:
ap_list = [x[0].as_numpy() for x in self.ap_counters]
except:
Expand Down
Loading