This repository contains all code necessary to produce the figures of the paper:
Breffle J, Mokashe S, Qiu S, Miller P. 2023. Multistability in neural systems with random cross-connections. Biol Cybern. 117(6):485–506. doi:10.1007/s00422-023-00981-w.
Journal link: https://doi.org/10.1007/s00422-023-00981-w
Link to publicly available view-only version: https://rdcu.be/dujJP
The repository includes separate codes for simulations of finite systems, for mean-field analysis of infinite systems, and for solving approximate analyses of finite systems with binary neural response functions.
./figure-code/FI_curves.mproduces panels A-C
./figure-code/example_net_dynamics.mproduces panels A-D with the setting "figSim = 'fig2';"./figure-code/perturb_nets_run_sim.mproduces the data for panel E./figure-code/perturb_nets_plot_sim.mplots the data for panel E
./figure-code/simulation-code/sim_rand_nets.mproduces the data for panels B-F with appropriate parameter selection- Set options as instructed in the "%% Sim options" section
./figure-code/example_net_dynamics.mproduces panel A with the setting "figSim = 'fig3';"./figure-code/same_nets_across_g.mplots the data for panels B-F
./figure-code/simulation-code/sim_rand_nets.mproduces the data for all tanh and logistic unit panels with appropriate parameter selection- Set options as instructed in the "%% Sim options" section
./figure-code/simulation-code/sim_rand_nets_binary.mproduces the data for all binary unit panels with appropriate parameter selection - Set options as instructed in the "%% Sim options" section./figure-code/grid_sim_plotting.mplots the data produced by the simulation codes
- all codes are found in the
./Zipf_Figure_Codes/folder
- all codes are found in the
./Inf_Logistic_Codes/folder - the code
inf_logistic_grid.mshould run if the other functions are in the same directory - the code
plot_phase_diagram.mshould produce the figure so long as its input file is adjusted to match the output file ofinf_logistic_grid.m
erf_code_binary_units1.mproduces continuous analytic curvesbinary_net_sim_count.mproduces simulated data points
erfApprox_maxk_infN.mproduces the analytic results- the binary simulation code of Figure 5 or 8 can be adapted to produce Figure 9C
./figure-code/simulation-code/sim_rand_nets.mproduces the data with appropriate parameter selection- Set options as instructed in the "%% Sim options" section
./figure-code/same_nets_across_g_classes.mplots the data for panels B-F
Figure 11: Simulation results for networks with increasing $N$ converge to the infinite-$N$ analytic results
./figure-code/rmsrates_across_g.mcreates each panel individually- Change the value of
figSimto create each panel
- Change the value of
- Created as in Figure 6 with the specified parameter values
- Created as in Figure 6 with the specified parameter values
- Created as in Figure 6 with the specified parameter values
- The simulation code can run either locally or on a slurm computing cluster with an array of 100 jobs.
- The
./figure-code/simulation-code/*.shfiles run the code on a slurm cluster with each job running one network at each parameter point. - Data produced by the cluster needs to be combined into a single file with
./figure-code/process_HPCC_sim.mto be plotted by the analysis scripts ./figure-code/functions/myPlotSettings.msets the figure settings for each figure./figure-code/functions/AppendFileNum.mensures existing data is not overwritten