ModelDBRepository/2018023
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
<html> <p/> This is the readme for the model that was used in the paper <p/> SST interneurons facilitate dendritic calcium signaling via tonic activation of alpha5-GABA receptors (2026) Chiayu Q. Chiu*, Thomas M. Morse*, Karima AitOuares, Lauren C. Panzera, Paras A. Patel, Francesca Nani, Frederic Knoflach, Maria-Clemencia Hernandez, Monika Jadi, Michael J. Higley. Neuron <p/> <p/> The original Iascone et al model was edited to study tonic GABAARs (tGARs). Changes included adding a tGAR mechanism, ex_GABALeak, modifying the leak conductance and reversal potential, adding calcium channels to the dendrites and otherwise simplifying the voltage gated channels distribution. For full details see the paper and the model code provided in this archive. <p/> This model used <a href="https://nrn.readthedocs.io/">NEURON</a> (8.2.2) and <a href="https://python.org">python</a> (3.10.12) and was run with the indicated versions and should run with similar versions as it doesn't use anything unique to these. The code was run under the Ubuntu (linux) 24.04 and MacOS Tahoe 26.2 operating systems and a few versions prior to those. <p/> For guidance on running the model interactively load this archive’s interactive.html into a browser (on modeldb you can browse “files” to view interactive.html online). <p/> <h2>To generate figures in the paper </h2> <p/> The paper's Figure 2A can be generated by running the linux shell script <p/> ./configure_and_run.sh <p/> or <p/> time ./configure_and_run.sh &> job_output.txt <p/> which takes about 2 minutes and 40 seconds to run on a 2019 MacBook. <p/> The figures appear in a results/figs subfolder. In Fig 2A top, the overlaid current clamp stimulus pulse was scaled so that its 0.6 nA height is displayed as 6 mV. To avoid artifacts the current pulse is turned off when the membrane voltage passes 0 mV. <p/> <img src="results/figs/SomavoltageduringcontrolandblockedtonicGABAARstGARs.png"> <p/> Fig 2A (bottom): <p/> <img src="results/figs/h_LVAatdendriteapic11_0p969027_200umsfromsoma.png"><p/> Part of the data that went into making into Fig 2B (the -64 mV average row) was also created (in the results/ca_suppr subfolder): <p/> <img src="results/ca_suppr/ca_suppr.png"> <p/> Reminder: The delta Ca2+ modeling definition: first calculate the sum of each recorded dendritic locations calcium current in a 20 ms window following the detection of the soma action potential in the two conditions (simulations) of control (baseline) and blocked tonic GABAA receptors. Divide the blocked sum by the control sum. <p/> Note: to calculate all the rows of data in Fig 2B run ./sensitivity_depol_iclamp.sh as discussed below. <h2> sensitivity of calcium suppression to pre-bAP baselines </h2> A Ca2+ suppression sensitivity analysis is performed with current clamps of persistent depolarizing currents that reaches pre-bAP baseline voltages of -70, -68, -66, -64, -62, -60 mV in the control case with the same current clamp amplitudes in the blocked tonic GABAAR case. The results (takes about 22 minutes on a 2019 MacBook) are stored in a subfolder specified as an assignment (also in the below sh script) to base_dir_name: <p/> ./sensitivity_depol_iclamp.sh <p/> The output of the above shell script is plotted with the below python script: <p/> python3 -i plot_fig2B.py <p/> which recreates a similar plot to Figure 2B: <p/> <img src="./images/Figure_2B.png"> <p/> To plot a comparison of delta Ca suppression between these simulations (by retrieving data from the base_dir_name folders) at 200 um's from the model soma run: <p/> python3 -i explore_depol_iclamp.py <p/> (Note if specific modifications are made to the code including base_dir_name in the sensitivity... sh scripts then the explore... scripts have to have the new name provided in the date_string (must match base_dir_name, with wild cards) used to read from the folders of model created data.) <p/> For figure 2C run (takes about 17 minutes on 2019 MacBook): <p/> ./sensitivity_v_range_ca_chan_vshift.sh <p/> and then to graph the results (note that the vshift parameter axis was multiplied by -1 (inverted orientation) in the paper to give the reader the more intuitive presentation that positive vshift voltages represent depolarizing shifts): <p/> python3 -i explore_ca_data_vshift.py <p/> <img src="./images/Figure_2C.png" width=500> <p/> <h2>Supplemental figures</h2> The sh shell scripts generate data and figure subfolders of HVA and LVA kinetics. To directly generate graphs of all channel properties including the kinetics of the HVA and LVA (as shown in Supplemental Figure 2A) you can run <p/> python3 -i compare_hva_lva.py <p/> <img src="./images/LVA_HVA_states.png" width=500> <p/> <img src="./images/LVA_taus.png" width=500> <p/> <img src="./images/HVA_taus.png" width=500> <p/> For a figure similar to suppl fig 2B run (requires sensitivity_depol_iclamp.sh to be run first (see above)): <p/> python3 -i tGAR_block_deltaV.py <p/> <img src="./images/supplFig2B.png" width=500> <p/> For sensitivity studies of Ca2+ suppression comparing blocked tonic GABAAR and control cases as a function of Ca2+ channel kinetics voltage shifting (of act and inact curves) run (Make sure the amp_index setting at the end of depol_iclamp.py is set to provide the pre-bAP baseline v that you would like this study to take place with (e.g. 3 for -64 mV, 5 for -60 mV)) and that the appropriate lines in the below sh script are commented/uncommented for which channel property you want to explore(e.g. supplemental figure 2C) (took 17 minutes on 2019 MacBook): <p/> ./sensitivity_v_range_ca_chan_vshift_suppl.sh <p/> and then the following can be run to plot the values (the below's date_string variable needs to be set to the one in the base_dir_name set from sensitivity_v_range_ca_chan_vshift.sh): <p/> python3 -i explore_ca_data_vshift_suppl.py <p/> Note: as in figure 2C, the paper vshift was different than the model parameter vshift which has negative values representing depolarizing (shifts to the right) of the infinity curve: <p/> <img src="./images/suppl_Figure_2C.png" width=500> <p/> To recreate suppl figure 2D (takes 10 minutes on 2019 MacBook): <p/> ./sensitivity_range_bAP_stim.sh <p/> and then <p/> python3 -i explore_ca_data_range_AP_current.py <p/> Orange is HVA, purple is LVA, and black is average delta Ca2+ suppression (defined above): <p/> <img src="./images/suppl_Figure_2D.png" width=500> <p/> <h2>general notes about output folders</h2> <p/> Note there are extensive data and figure (fig) folders created with the sensitivity scripts. The number and times of APs are written in files in the base_dir_name folder in num_of_APs.txt and time_of_APS.txt. The numbers in the file have suffixes of the program name that was running when the data was appended and an amplitude index (amp_index) whose values indicate which target control baseline voltage simulation the number and times of APs were recorded from. Currently the amplitude indicies of [0, 1, 2, 3, 4, 5] correspond to the baseline voltages of [-70, -68, -66, -64, -62, -60] mV. <p/> Note: to change the bAP stimulus current lines 41 in run_tGar_blocked and 66 in run_tGAR_control need to have the amplitude set. The current turns off automatically once soma v exceeds 0 mV so no time adjustment of IClamp is necessary. <p/> Adjust base dir folder names (top dir folder names) in sensitivity scripts to reflect which day you are using. Don't change the rest of the template dir names since the explore_.... py graphing programs rely on those. In sensitivity_i_range_bAP.sh you need to change the base dir name in setup_bAP_i_range.py <p/> <h2>Notes for modifying batch (sh shell) scripts</h2> <p/> <p/> Use the default constant or select a particular type of tonic GABAA receptor distribution in configure_sim.py (or configure_sim.py.orig if sensitivity_depol_iclamp.sh is used) then run sh scripts as described in the "to generate figures in the paper" section at the top of this readme. <p/> The begining of the name of the output data directories (prefix) is set in sensitivity_depol_iclamp.sh if that is run or just configure_sim.py (which assigns the base_name_dir variable in base_dir_name.py) if just configure_and_run.sh is run. base_name_dir will determine where the figures and the data (their associated traces) files are stored. The tonic GABAA receptor conductance density (gbar) distribution (constant, ramp, or distal (plateau)) and the overall strength is also set in configure_sim.py After configure_sim.py is run, the scripts calc_ca_suppr.py and figs_incl_suppl.py read the base_dir_name.py file with an import statement and then adds suffixes to the dir name to store the figures and data. <p/> It is also possible, of course, to execute one line from configure_and_run.sh at a time as discussed here: <p/> configure_sim.py does not run simulations, it prepares the configuration of the simulation(s). <p/> python3 -i configure_sim.py <p/> python3 -i figs_incl_suppl.py <p/> The above takes about a minute to run and generates all the figures except (paper Fig 2B which shows) the relative contributions of LVA and HVA to suppression of delta Ca (% baseline). To generate the calcium suppression figure: <p/> python3 calc_ca_suppr.py 0 <p/>which will write images and data to the respective folders. You can check what is new in your linux folder with a command that lists the lasts things created at the bottom of the list such as: <p/> ls -lartd * <p/> This takes about 30 seconds to run. Running this program creates an output folder with suffix containing the delta Ca (% baseline) graph. <p/> Note: to see the results (delta Ca2+) run <p/> gimp (folder_name)*/*.png <p/> where the folder_name built from the prefix in base_dir_name.py was imported into calc_ca_suppr.py <p/> The original Iascone et al 2020 readme follows. <p/> This is the readme for the models associated with the paper: <p/>Iascone DM, Li Y, Sumbul U, Doron M, Chen H, Andreu V, Goudy F, Blockus H, Abbott LF, Segev I, Peng H, Polleux F (2020) Whole-Neuron Synaptic Mapping Reveals Spatially Precise Excitatory/Inhibitory Balance Limiting Dendritic and Somatic Spiking. Neuron <br/> <a href="http://dx.doi.org/https://doi.org/10.1016/j.neuron.2020.02.015">http://dx.doi.org/https://doi.org/10.1016/j.neuron.2020.02.015</a> <p/>This NEURON code was contributed by M Doron. <p/>If you need additional help for your platform please consult: <br/> <a href="https://senselab.med.yale.edu/ModelDB/NEURON_DwnldGuide">https://senselab.med.yale.edu/ModelDB/NEURON_DwnldGuide</a> <p/>Compile the mod files as usual with a terminal command (or equivalent) <p/>nrnivmodl mod_files <p/>and then run the model with a command<br/> python run_simulation.py<br/> or<br/> python3 run_simulation_python3.py Note: the python3 version was supplied by the ModelDB administrator. </html>