Skip to content

Commit

Permalink
tutorial link
Browse files Browse the repository at this point in the history
  • Loading branch information
ntolley committed Nov 21, 2023
1 parent 0e33e65 commit 59f92fe
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions paper.md
Original file line number Diff line number Diff line change
Expand Up @@ -155,11 +155,13 @@ HNN-core functionality supports advanced simulations through scripting that are

HNN-core code has also enabled the creation of a new and improved web-based GUI based on ipywidgets [@ipywidgets2015] and voila [@voila2019] that can be run remotely with port forwarding.

All of the code associated with HNN-core has been extensively documented at multiple levels, including an API describing basic functions/parameters and examples of use for hypothesis generation and/or testing. Specifically, we distribute [tutorials](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/index.html) that mimic the original GUI tutorial workflows using HNN-core functions, with commentary on the known biophysical mechanisms of these signals. The HNN-core tutorials include examples of how to simulate [ERPs](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/workflows/plot_simulate_evoked.html#sphx-glr-auto-examples-workflows-plot-simulate-evoked-py), as well low frequency rhythms such as [alpha](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/workflows/plot_simulate_alpha.html#sphx-glr-auto-examples-workflows-plot-simulate-alpha-py) (8-10 Hz), [beta](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/workflows/plot_simulate_alpha.html#sphx-glr-auto-examples-workflows-plot-simulate-alpha-py) (15-30 Hz), and [gamma](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/workflows/plot_simulate_gamma.html#sphx-glr-auto-examples-workflows-plot-simulate-gamma-py) (30-0 Hz). The tutorials also include an example of directly comparing simulations to real data (i.e., the [median nerve evoked response](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/workflows/plot_simulate_somato.html#sphx-glr-auto-examples-workflows-plot-simulate-somato-py)). We also provide short and targeted “How to” examples that describe how to use specific functionality, such as [plotting firing patterns](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/howto/plot_firing_pattern.html#sphx-glr-auto-examples-howto-plot-firing-pattern-py), or [recording extracellular LFPs](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/howto/plot_record_extracellular_potentials.html#sphx-glr-auto-examples-howto-plot-record-extracellular-potentials-py).
All of the code associated with HNN-core has been extensively documented at multiple levels, including an API describing basic functions/parameters and examples of use for hypothesis generation and/or testing. Specifically, we distribute [tutorials](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/index.html) that mimic the original GUI tutorial workflows using HNN-core functions, with commentary on the known biophysical mechanisms of these signals.

# Use cases and quick example code of running a simulation

As summarized above, HNN-core reproduces the workflows and tutorials provided in the original GUI driven HNN software designed to investigate the origin of commonly observed MEG/EEG signals. In practice, users learn how to study the multi-scale origin of ERPs and low frequency oscillations by first following the tutorials in the HNN-GUI, and then recapitulating these tutorials in HNN-core. The tutorials provide an interactive investigation that gives intuition on how exogenous drives and other parameters in the model impact the outputs of the simulations. From there, users can test hypotheses about what parameters or sets of parameters need to be adjusted to account for their recorded data by directly comparing simulation output to data. Automated parameter inference can be performed to optimize parameters to produce a close fit (i.e., small root mean squared error) to current source ERPs, and more advanced parameter inference methods are in development.
As summarized above, HNN-core reproduces the workflows and tutorials provided in the original GUI driven HNN software designed to investigate the origin of commonly observed MEG/EEG signals. The HNN-core [tutorials](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/index.html) include examples of how to simulate [ERPs](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/workflows/plot_simulate_evoked.html#sphx-glr-auto-examples-workflows-plot-simulate-evoked-py), as well low frequency rhythms such as [alpha](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/workflows/plot_simulate_alpha.html#sphx-glr-auto-examples-workflows-plot-simulate-alpha-py) (8-10 Hz), [beta](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/workflows/plot_simulate_alpha.html#sphx-glr-auto-examples-workflows-plot-simulate-alpha-py) (15-30 Hz), and [gamma](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/workflows/plot_simulate_gamma.html#sphx-glr-auto-examples-workflows-plot-simulate-gamma-py) (30-0 Hz). The tutorials also include an example of directly comparing simulations to real data (i.e., the [median nerve evoked response](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/workflows/plot_simulate_somato.html#sphx-glr-auto-examples-workflows-plot-simulate-somato-py)). We also provide short and targeted “How to” examples that describe how to use specific functionality, such as [plotting firing patterns](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/howto/plot_firing_pattern.html#sphx-glr-auto-examples-howto-plot-firing-pattern-py), or [recording extracellular LFPs](https://jonescompneurolab.github.io/hnn-core/stable/auto_examples/howto/plot_record_extracellular_potentials.html#sphx-glr-auto-examples-howto-plot-record-extracellular-potentials-py).

In practice, users learn how to study the multi-scale origin of ERPs and low frequency oscillations by first following the tutorials in the HNN-GUI, and then recapitulating these tutorials in HNN-core. The tutorials provide an interactive investigation that gives intuition on how exogenous drives and other parameters in the model impact the outputs of the simulations. From there, users can test hypotheses about what parameters or sets of parameters need to be adjusted to account for their recorded data by directly comparing simulation output to data. Automated parameter inference can be performed to optimize parameters to produce a close fit (i.e., small root mean squared error) to current source ERPs, and more advanced parameter inference methods are in development.

HNN-core has minimal dependencies which allows for effortless installation using the pip Python installer. In addition to NumPy [@harris2020array], SciPy [@virtanen2020scipy], and Matplotlib [@hunter2007matplotlib] common in most libraries in the scientific Python stack, HNN-core uses NEURON [@hines1997neuron] for the cell and circuit modeling. Here, we demonstrate how the HNN-core interface can be used to quickly simulate and plot the net cortical dipole response to a brief exogenously evoked drive representing “feedforward” thalamocortical input. This input (referred to as ‘evprox1’) effectively targets the proximal dendrites of the pyramidal neurons in L2/3 and L5, using the template neocortical model as in @jones2009quantitative. Note that this simulation is not addressing a specific scientific question, and is simply an educational example.

Expand Down

0 comments on commit 59f92fe

Please sign in to comment.