Skip to content
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

GUI: Network configuration different after GUI initialization #850

Closed
4 tasks done
gtdang opened this issue Aug 6, 2024 · 2 comments · Fixed by #861
Closed
4 tasks done

GUI: Network configuration different after GUI initialization #850

gtdang opened this issue Aug 6, 2024 · 2 comments · Fixed by #861
Assignees
Labels
hnn-gui HNN GUI

Comments

@gtdang
Copy link
Collaborator

gtdang commented Aug 6, 2024

The GUI does not reconstruct the same network connectivity and drives after reconstruction from widget values.

Test:

  1. Load test network configuration hnn_core/tests/assets/jones2009_3x3_drives.json. This config has all drive types (evoked, bursty, poisson) and tonic bias added.
  2. Run a simulation
  3. Compare the Network used to run the simulation (derived from GUI widget values) to a Network created by the API read_network_connectivity function.

Problems:

  1. Number of connections is not the same. There are more bursty and poisson connections.
    • The GUI passes weights and constants dictionaries by cell types to the add_x_drive functions. Because there is an input box for each cell type, even weights with 0 are passed into the drive construction. This creates additional unnecessary null-weight connections.
    • The GUI doesn't have an input widget for the n_drive_cells parameter. It uses the defaults 'n_cells' for evoked and poisson, and 1 for bursty. The synchronous inputs checkbox does send a n_drive_cells value to drive construction but otherwise the parameter is hidden from user input. But with the default bursty drives are always synchronous.
  2. The order of the drives is not the same. They are sorted alphabetically when read into the GUI.
    • gid_ranges and pos_dict are not the same as a consequence of 1 and 2
  3. Tonic bias is not in the GUI-derived Network
    • This is because there isn't a way to load tonics into the GUI from file yet.
  4. Cell parameters are not the same. This is being addressed in [MRG] make L5/L2 pyr have different geometry options in GUI #848

To Do:

@gtdang gtdang self-assigned this Aug 6, 2024
@gtdang gtdang added the hnn-gui HNN GUI label Aug 13, 2024
@gtdang
Copy link
Collaborator Author

gtdang commented Aug 13, 2024

@ntolley
I'm working on the n_drive_cells and sync_input rework today. I just want to make sure I understand the API correctly. Is this understanding correct?

1.n_drive_cells=1 and cell_specific=False - Synchronous input: 1 drive cell is connected to all network cells
2.n_drive_cells=3 and cell_specific=False - 3 drive cells are connected to all network cells
3.n_drive_cells='n_cells' and cell_specific=True - a unique drive cell gets assigned to each available simulated cell in the network with 1-to-1 connectivity
4.n_drive_cells='n_cells' and cell_specific=False - This is invalid
5.n_drive_cells=3 and cell_specific=True - This is invalid

Is 2 also "synchronous input" but with 3 spikes?

@ntolley
Copy link
Contributor

ntolley commented Aug 13, 2024

This is all correct!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
hnn-gui HNN GUI
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

2 participants