Virtual Electrode Recording Tool for EXtracellular potentials (VERTEX): comparing multi-electrode recordings from simulated and biological mammalian cortical tissue
Local field potentials (LFPs) sampled with extracellular electrodes are frequently used as a measure of population neuronal activity. However, relating such measurements to underlying neuronal behaviour and connectivity is non-trivial. To help study this link, we developed the Virtual Electrode Recording Tool for EXtracellular potentials (VERTEX). We first identified a reduced neuron model that retained the spatial and frequency filtering characteristics of extracellular potentials from neocortical neurons. We then developed VERTEX as an easy-to-use Matlab tool for simulating LFPs from large populations (>100,000 neurons). A VERTEX-based simulation successfully reproduced features of the LFPs from an in vitro multi-electrode array recording of macaque neocortical tissue. Our model, with virtual electrodes placed anywhere in 3D, allows direct comparisons with the in vitro recording setup. We envisage that VERTEX will stimulate experimentalists, clinicians, and computational neuroscientists to use models to understand the mechanisms underlying measured brain dynamics in health and disease.
KeywordsLocal field potential Computational modelling Gamma oscillation Macaque Neocortex Microconnectome
Many measurement techniques have been used to study neuronal dynamics, including optical imaging methods (voltage-sensitive dye imaging, calcium imaging, intrinsic signal optical imaging), intracellular electrode recordings of individual neurons, and extracellular recordings using single or multiple electrodes (Brette and Destexhe 2012). While each modality provides some information about the system’s dynamics, it is not always clear how this information is related to the underlying neuronal activity. Intracellular recordings are easiest to interpret because of the strong theoretical foundations of cellular neurophysiology that have arisen over many decades (Johnston and Wu 1995), but the theory linking measurements made by many other methods to neuronal activity are lacking. This deficit in theory, combined with the increasing use of different recording techniques to sample from ever larger neuron populations, has stimulated the idea of “modelling what you can measure” (Einevoll et al. 2012) to help fill these theoretical gaps.
We aim to contribute to this effort by modelling the measurements made by multi-electrode arrays (MEAs). MEAs record extracellularly, and allow the simultaneous measurement of local population activity across many network locations, providing information about the spatio-temporal properties of network dynamics (Le Van Quyen and Bragin 2007; Buzsáki 2004; Rubino et al. 2006). Such arrays can be used both in vitro (Simon et al. 2014) and in vivo, including in humans, where applications include recording from epilepsy patients for precise localisation and investigation of epileptic foci (Schevon et al. 2009, 2012), and for use in brain machine interfaces (Maynard et al. 1997; Andersen et al. 2004). These diverse applications make understanding the link between MEA recordings and the underlying neuronal dynamics particularly important.
To study this link, we have created the Virtual Electrode Recording Tool for EXtracellular potentials (VERTEX). VERTEX is implemented in Matlab (Mathworks Inc., Natick, MA, USA), and makes use of established theory of extracellular potential generation, combined with modern simulation methods and developments in simplified neuron modelling to simulate local field potentials (LFPs) from large neuronal network models encompassing more than 100,000 neurons. As most such models implement single-compartment neurons and may not include spatial information (e.g. Izhikevich 2006; Lumer et al. 1997; Potjans and Diesmann 2012), the LFP can only be estimated by some proxy that will not necessarily preserve the spatial and frequency-scaling features of real LFPs (Einevoll et al. 2013). VERTEX helps to address this issue by simplifying the specification of spatially organised cortical network models, and implementing simplified compartmental models that are computationally inexpensive to simulate, but also preserve the spatial and frequency-scaling properties of LFPs elucidated by previous modelling studies (Einevoll et al. 2013; Łęski et al. 2013; Lindén et al. 2010, 2011).
To illustrate how VERTEX can be used in conjunction with MEA experiments, we implemented a model of a neocortical slice exhibiting persistent gamma oscillations under bath application of the glutamate receptor agonist kainic acid in vitro. The model is designed to reproduce the spiking activity of individual neurons during a persistent gamma (30–80 Hz) frequency oscillation, with the neuronal membrane currents driven by the resulting synaptic activity generating the extracellular potential (Nunez and Srinivasan 2006). The persistent gamma frequency oscillation model has several advantages for our investigation. First, the theory of how neocortical persistent gamma arises in vitro, and how individual neurons participate in the network oscillation, has been comprehensively documented (Ainsworth et al. 2011; Whittington et al. 1995, 2011; Fisahn et al. 1998; Buhl et al. 1998; Draguhn et al. 1998; Roopun et al. 2008; Cunningham et al. 2003; 2004a; Traub et al. 2005a, b; Pafundo et al. 2013; Bartos et al. 2007). Second, the slice preparation ensures that all synapses are local, so MEA recordings are influenced only by the local circuit dynamics and not by input from other areas. The slice edges provide natural spatial boundaries for what needs to be included in the simulation. Third, synaptic currents rather than intrinsic active membrane currents drive neuronal firing in persistent gamma, so the previously developed theory of LFP generation in passive neurons (Lindén et al. 2010, 2011; Pettersen and Einevoll 2008) can be used without modification.
Using VERTEX, we have created the first model of neocortical networks that not only reproduces experimentally observed spike patterns, but also produces a biophysically meaningful LFP signal. To illustrate VERTEX’s potential for use in conjunction with experimental data, we directly compared the LFPs generated by the model with those recorded by an MEA in macaque temporal neocortex in vitro, allowing us to identify future research directions to address discrepancies between the theoretically predicted and experimentally observed LFPs.
We developed the VERTEX simulation tool for simulating LFPs produced by large (>100,000) populations of neurons. We first investigated a suitable neuron model for generating LFPs from such populations while remaining computationally tractable. To illustrate VERTEX’s capabilities, we used it to position populations of these neuron models into a neocortical slice arrangement, with neuron positions constrained by cortical layer and slice boundaries, and connected them according to current knowledge about the local anatomy of neocortical circuits (Binzegger et al. 2004). We simulated a persistent gamma frequency oscillation in the network, using a simplified model of spike generation in each neuron to generate the network dynamics (Brette and Gerstner 2005). Finally, we compared the simulated LFPs to experimental MEA recordings from macaque temporal neocortex.
The extracellular potential at a point in brain tissue is given by the sum of all neuronal membrane currents, weighted by their distance from the point (Nunez and Srinivasan 2006) assuming constant tissue conductivity (Logothetis et al. 2007; Nicholson and Freeman 1975). Recent theoretical studies have shown that the spatial and frequency-scaling properties of the LFP are affected by the particular spatial arrangement of neurons’ dendrites (Lindén et al. 2010, 2011). We therefore looked for a reduced compartmental model that would generate extracellular potentials capturing the spatial and frequency-scaling properties elucidated by Lindén et al.’s investigations using detailed cell reconstructions, while remaining computationally tractable to simulate in large numbers.
The reduced compartmental model should create a similar spread of currents across its compartments to an equivalent morphologically reconstructed neuron given the same input. A compartment’s membrane current depends on the neuron’s axial resistance as well as on its membrane resistance and capacitance. We therefore chose a reduced model that conserved these quantities, while containing a minimal number of compartments. The compartmental reduction method of Bush and Sejnowski (1993) fulfils these requirements, producing compartments with a length equal to the mean length of the compartments they are representing in the full model. This creates a reduced model of the same length as the original reconstruction, but with a smaller membrane area, smaller lateral spread of the dendrites, and fewer than ten compartments (Online Resource, Fig. ESM2).
Validating the reduced LFP generation model
We tested the effects of this reduction on the generated LFP by reproducing the experiments detailed by Lindén et al. (2011). Ten thousand model neurons with passive membrane dynamics and the same morphology were positioned randomly within a 1-mm radius cylinder, with uniform spatial distribution and constant soma depth. One thousand synapses (excitatory, current-based, single-exponential type with time constant 2 ms and fixed amplitude 50 pA) were placed randomly on the compartments of each neuron, with uniform density with respect to membrane area. Each synapse received an independent Poisson spike input train with a rate of 5 Hz. LFPs were calculated at the centre of the population, at five depths. The magnitude of an LFP signal was defined as its standard deviation. The LFP range was calculated by varying the population radius from 0 to 1 mm and measuring the radius at which the LFP magnitude reached 95 % of its value at the maximum 1-mm radius (Lindén et al. 2011). We repeated this procedure for the three neuron types used by Lindén et al.: layer 2/3 (L2/3) pyramidal, layer 4 (L4) spiny stellate, and layer 5 (L5) pyramidal. We compared LFPs generated by the morphological reconstructions of these neuron types described by Mainen and Sejnowski (1996)—hereafter referred to as Mainen cells—with the LFPs from reduced versions of these models created using Bush and Sejnowski’s method (1993)—hereafter referred to as Bush cells.
To see how important these discrepancies were within the context of the general biological variability of neuronal morphology, we repeated the simulations with neuron populations containing pyramidal cells reconstructed from several different real neurons. These were downloaded from the NeuroMorpho.Org database (Ascoli et al. 2007)—further details on the models we used are provided in the Online Resource (Table ESM10). We used ten further groups of L2/3 cat pyramidal neurons, and one further group of L5 cat pyramidal neurons (this was the only other cat L5 pyramidal neuron currently available in the database; we did not use L5 pyramidal cells from other species as the size differences in neurons between species could have provided misleading results). The results of these simulations are plotted in Fig. 1b as light-red dashed lines for the extra L2/3 pyramidal populations, and light blue circles for the extra L5 pyramidal population. The extra simulation results show that the LFP range and magnitude in the Bush neuron populations generally fall within a biologically reasonable range; while the reduced models are not ideal substitutes for the morphological reconstructions, the errors incurred by the reduction method are similar to those introduced by neglecting morphological diversity in reconstructed neuron model populations. The general profile of the LFP across the layers, at least, is preserved adequately.
We also checked the power spectra of the simulated LFPs to make sure the Bush model populations reproduced similar frequency-scaling properties to the Mainen cell populations. Figure 1c shows that, in each layer, the 95 % confidence intervals for each model type overlap over the range of frequencies from 2 to 450 Hz (the overlap continues down to 1 Hz; this is not shown to improve the plot resolution at higher frequencies).
The results in Fig. 1 were generated using uncorrelated synaptic inputs over the entire dendritic tree of each neuron in each population, with neurons all positioned at the same height in their respective layers. This simplified setup was used so that a comparison could be made with the results previously reported by Lindén et al. (2011), but we also wanted to check whether the reduced models would still be suitable approximations to use for a more realistic situation, with neurons placed at varying depths within their layer, receiving correlated inputs. As our particular interest was simulating network gamma oscillations, in which pyramidal neurons receive highly correlated inhibitory synaptic input to their perisomatic regions, we repeated the previously described experiments measuring the LFP magnitude and range, but positioned each neuron’s 1,000 synapses onto its soma compartment [we only repeated the simulations for the pyramidal neuron morphologies, as the LFP spatial profile for the spiny stellate cells was shown not to change significantly with correlated input (Lindén et al. 2011)]. In the previous experiments with no correlations between synaptic inputs, each synapse was assigned an independent Poisson spike train, for a total of 10,000 × 1,000 = 107 independent spike trains at 107 synapse locations. To introduce input correlations, we followed the same method as Lindén et al. (2011). Each synapse in the model was now assigned a spike train drawn without replacement from a finite pool of pre-generated spike trains. By reducing the number of Poisson spike trains in the pool so that some synapses shared a common input pattern, we could control the level of input synchrony to the neurons. The resulting input correlation is given by the total number of synapses per neuron divided by the number of independent spike trains (Łęski et al. 2013). To simulate highly correlated input, we used 2,000 independent spike trains, resulting in an input correlation of 1,000/2,000 = 0.5 (i.e. any two neurons share on average 1,000 × 0.5 = 500 common input spike trains).
For these simulations, we also introduced random variability in the soma depth of the neurons. We distributed L2/3 pyramidal neuron somas between −334 and −534 μm, and L5 pyramidal neuron somas between −970 and −1,170 μm from the cortical surface. These ranges ensured that the neuron somas remained within the correct layer boundaries, and that their apical dendrites were not positioned above the cortical surface.
Our results suggested that we could use the reduced neuron models in VERTEX simulations with some confidence that the resulting simulated LFPs would be close to LFPs simulated from equivalent morphologically reconstructed neurons, in magnitude, spatial extent, and frequency content.
The VERTEX simulation tool
Neuron group properties (for each group: the neurons’ compartmental structures, dimensions and positions, electrotonic properties, spiking model parameters)
Connectivity (for each presynaptic group: number of efferent synapses per layer per postsynaptic group, allowed postsynaptic compartments to connect to contact, axonal conduction speeds, neurotransmitter release times, synapse dynamics)
Tissue properties (dimensions, layer boundaries, neuron density, tissue conductivity)
Recording settings (IDs of neurons to record intracellularly, extracellular electrode positions, sampling rate)
Simulation settings (simulation length, time-step, number of parallel processes)
A model is initialised by positioning the specified number of neurons from each group within the slice and layer boundaries, pre-calculating distances from the neuron compartments to the virtual electrodes, generating each neuron’s connections based on its position, axonal arborisation extent in each layer, and expected number of efferent connections, and initialising the synapses (see “Experimental Procedures”). At this point, the initialised model can, optionally, be saved to disk as MAT files. Functionality to export to NeuroML (Gleeson et al. 2010) is currently under development.
When the simulation is run, recordings (intracellular, LFPs, spike times) are automatically saved to disk at user-specified time intervals. The simulation run can be performed in serial or parallel (requires Matlab Parallel Computing Toolbox). After the simulation is finished, these files are loaded and recombined for analysis. Our design allows the model to be used with minimal programming knowledge, though as Matlab is a high-level, interpreted language, more experienced programmers can make modifications relatively easily.
Simulation speed and memory usage
While Matlab code may run more slowly than equivalent code in compiled programming languages, performance can be dramatically improved through code vectorisation, which minimises the impact of code interpretation overheads (Brette and Goodman 2011). The Matlab Parallel Computing Toolbox allows further performance improvements by providing a simple way to parallelise computations on multicore computers or over networks. These factors, as well as its ease of use, popularity in the neuroscience community, the ability to perform simulations and analysis in the same environment, and the well-developed interface for integrating C or Fortran functions for future performance enhancements influenced our decision to write VERTEX in Matlab. To give the user an idea of the performance improvement over using the other current extracellular potential simulation tool LFPy (Lindén et al. 2014)—a Python package for simulating extracellular potentials with NEURON (Hines and Carnevale 1997; Hines et al. 2009)—we performed equivalent simulations using layer 5 Bush pyramidal neurons in LFPy and in VERTEX (no synapses, one random fluctuating current per neuron, 0.03125 ms step size and 32 000 Hz sample rate). LFPy took ~278 min to simulate the LFP from 10,000 neurons at 50 electrode points, while VERTEX running in serial mode took ~18 min to simulate the LFP from 10,000 neurons at 50 electrode points (both running on an Intel Xeon E5640 2.66 GHz workstation). While this performance improvement is important for our purposes, it should be noted that LFPy is designed to simulate extracellular potentials from single cells rather than large populations. Indeed, as the code interpretation overhead begins to dominate VERTEX’s calculation times in small simulations, running the same model but with only one neuron in the population took ~227 s in VERTEX but <2 s in LFPy. VERTEX is also not suited to running models containing neurons with very many compartments, because the Runge–Kutta integration method becomes unstable as the number of compartments increases (though we aim to address this limitation by implementing implicit integration methods in future releases). LFPy, therefore, remains the superior tool for modelling extracellular potentials around single neurons, while VERTEX’s strength lies in simulating LFPs in large-scale networks.
Figure 4 also shows how increasing the number of virtual electrodes affects simulation speed. Model initialisation times are affected proportionally more than model run times using more electrodes, in both large and small models, though in the small model the proportional impact from adding electrodes to initialisation time was greater than in the large model. This is because the large model not only has more neurons, but also more synapses per neuron. The increase in time spent connecting the neurons is proportional to the number of synapses, while the increase in time spent calculating constants for the LFP measurements is proportional to the number of compartments (roughly proportional to the number of neurons).
The size of the simulated network is limited by the amount of RAM available. As an example, we tested scaled configurations of our neocortical slice model (described below) using single-core and multi-core computers: an iMac with 4 GB RAM supported a serial simulation with ~25,000 neurons, a 16 GB Linux machine supported a simulation of ~100,000 neurons in both serial and parallel modes, and our Linux server with 120 GB RAM supported a simulation of ~700,000 neurons. In addition to increasing the memory on a single machine, VERTEX could be run across a network of computers using the Matlab Distributed Computing Server. On a network of 16 of our 4 GB RAM iMacs, for example, the simulation size could scale to ~400,000 neurons. In summary, existing processing environments of experimental and computational laboratories can be sufficient for running detailed simulations of brain tissue activity.
Network dynamics can be simulated directly by providing the model neurons with a spiking mechanism—we used the adaptive exponential (AdEx) mechanism (Brette and Gerstner 2005), which we include in VERTEX. Alternatively, previously generated spike times (output from another simulator, for example) can be imported into the simulation. The neurons whose spike times are imported are then specified with purely passive membrane dynamics. We used the spike import feature to run the control experiment to confirm that the AdEx spiking mechanism has a negligible impact on the simulated LFP (Online Resource, Fig. ESM1).
Running models using imported spike times is similar to the approach used by Lindén et al. (2011) to link spiking output from a cortical model implemented in the NEST simulator (Gewaltig and Diesmann 2007) to their LFP generating model implemented in LFPy. However, we consider imported spikes to have been emitted by neurons from within the population we are modelling; imported spikes are delivered to target neurons according to the generated connectivity matrix rather than pre-assigned to postsynaptic targets. By contrast, Lindén et al. (2011) considered the spikes from NEST-simulated neurons as external inputs to the neurons in the LFPy simulation, so they were delivered to synapses without a connectivity model within the LFPy-simulated population. The practical effect of this is that our software is better suited to modelling the LFP resulting from intrinsic network dynamics, when connectivity is known or when different spatial connectivity models are to be tested. Input from external populations can be simulated by specifying a population of single-compartment neurons and setting this population’s output using the spike import functionality. As single-compartment neurons do not contribute to the extracellular potential (Pettersen et al. 2012), VERTEX ignores them in its LFP calculations. This population can, therefore, be considered as providing “external” input from a distant population.
Neocortical slice model
Neuron groups, abbreviations, and number of compartments within our model
Neuron group description
Proportion of total model (%)
Pyramidal neurons in layer 2/3 (L2/3)
Spiny stellate neurons in L4 projecting to L4
Spiny stellate neurons in L4 projecting to L2/3
Pyramidal neurons in L4
Pyramidal neurons in L5 projecting to L2/3
Pyramidal neurons in L5 projecting to L56
Pyramidal neurons in L6 projecting to L4
Pyramidal neurons in L6 projecting to L56
Basket interneurons in L#
Non-basket interneuron in L#
Modelling persistent gamma oscillations
To make a comparison with experimental data, we generated a persistent gamma oscillation in the model by applying random currents to all neurons (Börgers and Kopell 2005), and adding an AdEx spiking mechanism to the somatic compartments (see Online Resource). In slice experiments with nanomolar kainate concentrations, this activity regime is driven by L2/3, where neurons receive noisy excitatory drive from the excited axonal plexus of L2/3 pyramidal neurons (Ainsworth et al. 2011; Cunningham et al. 2003, 2004b). We simulate this by providing a relatively large noisy current to P2/3 neurons, similar to Ainsworth et al. (2011); Börgers and Kopell (2005). We set synaptic strengths (based on Traub et al. 2005b) and noise currents to match the spiking activity and observed membrane potential fluctuation sizes reported in previous studies in vitro. Model parameters are given in tables ESM1–ESM9.
As described in previous experiments (Ainsworth et al. 2011; Cunningham et al. 2003, 2004b; Traub et al. 2005a, b), P2/3 neurons spike infrequently, while B2/3 neurons spike on most oscillation periods. Excitatory neurons in L4 do not take part in the oscillation (though still spike infrequently), while L4 interneurons are weakly entrained to the oscillation. In addition to the L2/3 gamma, the comparison slice exhibited increased gamma power in part of the infra-granular layers (see Fig. 9a, electrodes 6, 7, 16, 17, 26, 27), presumably caused by L5 as described by Ainsworth et al. (2011). We therefore used a relatively high coupling strength of P5 to B5 and NB5 neurons and a larger noisy drive current to L5 neurons to enable the L2/3 gamma to generate gamma in L5. The L5 gamma oscillation also weakly entrained L6 neurons to the oscillation.
We have developed the VERTEX tool for simulating LFPs generated by large neuronal populations. VERTEX is easily customisable, and makes use of recent developments in simulation techniques and insights from our experiments with simplified neuron models to reduce simulation times for LFPs generated by large networks. To illustrate how VERTEX can be used in conjunction with experimental MEA data, we simulated kainate-induced persistent gamma oscillations in a large-scale neocortical slice model. The model reproduces the spiking activity underlying persistent gamma, and generates the theoretically predicted LFP from this activity. We compared this simulated LFP with Utah array recordings of persistent gamma from macaque temporal neocortical slices. The model predicted the oscillation phase inversion between L2/3 and L1, but not the spatial variation in gamma power within layers, suggesting directions for further research into the cause of the spatial discrepancies between theoretically predicted and experimentally measured LFPs.
Speed of the VERTEX simulator
Parallel computing and code vectorisation allow VERTEX to simulate network activity and LFPs in reasonable time on hardware that is available to most scientists. We showed typical simulation times and how performance scales with increasing numbers of parallel processes in Fig. 4. However, performance could be improved further by rewriting some of the Matlab code in C or Fortran, which could be incorporated into Matlab via its MEX interface. In particular, the spike queuing and delivery code would benefit from this approach when simulating networks with high spike rates, as it is only vectorised over individual spikes. High spike rates can result in longer simulation times as the spike queue interpretation overhead increases. This is, therefore, a priority for future VERTEX development. However, the pure Matlab versions of VERTEX will continue to be maintained, as some users may not have access to a suitable C or Fortran compiler.
LFP simulation: spatial properties and resolution
We found that the compartmental reduction method described by Bush and Sejnowski (1993) created neuron models that, in a population, reproduced the spatial properties of the LFPs generated by the equivalent full morphological reconstructions to a reasonable degree of accuracy. Where there were large discrepancies, they were close to or fell within the range of the spatial values measured in several further populations of different morphologically reconstructed neurons. The suitability of this reduced model allows VERTEX to simulate LFPs from large networks in reasonable time.
The largest compartment in the reduced models was 400 μm long, which is the inter-electrode distance in a Utah array. New, very high-density MEAs with several 1,000 electrodes can record with such high spatial resolution as to enable the visualisation of individual dendritic tree and synapse activity in detail (Frey et al. 2009), or to record the spiking activity of thousands of neurons (Berdondini et al. 2009), making our reduced neuron models unsuitable for use in conjunction with these experiments. The array described by Frey et al. (2009) is designed to record only from a subset of 126 electrodes concurrently, allowing very high-resolution recordings from small areas, but making it unsuitable for recording the wider population activity that our model is designed to capture. The 4,096 electrode array presented by Berdondini et al. (2009) can record simultaneously from all electrodes, allowing the detailed visualisation of signal propagation through a network. However, this array is designed for capturing the spike times of thousands of individual neurons rather than investigating the properties of extracellular signals. Given the spatial smearing of LFP signals, it would not be appropriate to use this type of array to investigate LFPs across active neural circuits. Additionally, very high-density arrays are new technologies with usage and data analysis techniques still under development. Lower density MEAs will remain useful for studying neuronal population activity for the foreseeable future, especially given the Utah array’s approval for use in humans. As higher density arrays become more common, we anticipate that advances in computing speed [through, for example, use of general-purpose graphical processing unit (GPGPU) computing (Brette and Goodman 2012), already a feature of the Matlab Parallel Computing Toolbox] will permit the simulation of large populations of higher resolution neuron models if desired.
Slice model properties
To demonstrate our simulation approach, we constructed a model of a neocortical slice. We combined the connection probabilities given by Binzegger et al. (2004) with axonal arborisation radii measured in macaque visual cortex (Blasdel et al. 1985; Fitzpatrick et al. 1985), and use a Gaussian kernel as suggested by the data from Hellwig (2000) as the decay in connection probability away from the soma. This approach allowed us to calculate the number of connections removed by slice cutting for each neuron, and reduce its number of connections accordingly when initialising the model.
Our anatomical model results in spatially uniform neuron densities and connectivity statistics, with small decreases in connection numbers nearer the slice boundaries. However, the recordings from the experimental slice illustrate substantial inhomogeneities in gamma power between electrodes, even within layers, that are not seen in the model. These could be caused by spatial variations in synapse densities and strengths, neuron group densities, neurons’ dynamical properties, gap junction densities and strengths, or axonal plexus properties. While our software does not currently allow specification of gap junctions or axon properties, the other potential inhomogeneities can be investigated further in conjunction with experiments in vitro: VERTEX includes functions to modify parameters in spatially localised regions, allowing spatially inhomogeneous tissue to be modelled. As the results of these modifications can be compared directly with extracellular recordings, theoretical predictions can be tested even when spiking data are lacking. For example, spatial variations in synapse densities may be caused by the “patchy” projections made by excitatory neurons (Binzegger et al. 2007; Voges et al. 2010b; Bauer et al. 2012; Douglas and Martin 2004). Future research could incorporate the patchy projection model of Voges et al. (2010a, b) into our slice model to investigate how patchy connectivity affects network activity and resultant LFP across the slice.
We model the cortical layers as being flat, with boundaries at constant depths below the cortical surface. Neocortex is a folded structure, though, which is apparent even at the small scale of the slice—note the curved shaded regions in Fig. 9a showing the cortical surface and white matter boundaries, as well as the curved profile of gamma power across the MEA. Curves add further complications to the other inhomogeneities discussed above, in terms of neuronal densities, layer thicknesses and axonal arborisation variations. Additionally, the alignment of pyramidal apical dendrites is perpendicular to the cortical surface, so the alignment of the current dipoles arising from synaptic currents on pyramidal dendrites (Lindén et al. 2010; Nunez and Srinivasan 2006) varies across space, with implications for the measured LFP. VERTEX functions for specifying curved layer boundaries are currently under development so that future experiments can investigate the effects of curved surfaces on the measured LFP.
Further considerations for LFP simulation
In its current state, VERTEX is designed for investigating LFPs in medium to large-scale spiking neural networks, as these are most often used for modelling the activity of large neural populations. We have, therefore, only implemented simplified neuron models that do not include realistic active conductances that produce, for example, back-propagating dendritic spikes or sub-threshold membrane oscillations, which would also contribute to the LFP. As gamma oscillations are driven by synaptic interactions between populations, we consider this to be a reasonable simplification for our neocortical slice model. When investigating other dynamical regimes—such as sub-threshold oscillations in the absence of spiking (Hutcheon and Yarom 2000)—this simplification may not be appropriate. However, VERTEX will still be useful for investigating many research questions even with these simplifications. For example, most previous spiking neural network models use highly simplified neuron models, for which there is no general, reliable method for estimating the LFP (Einevoll et al. 2013). VERTEX allows researchers to implement similar networks using neuron models that produce a spatially realistic LFP, so that they can directly compare the LFPs produced by the spiking activity in their models to experimental data. Such comparisons may reveal both agreements and discrepancies between model and experiment, which might not have been apparent from comparisons of spiking alone. This was the case for our slice model: we could not directly compare spiking across space as it was massively under-sampled in vitro, but the simulated LFPs based on our prior knowledge of neuronal firing during gamma oscillations revealed that we can account for the observed phase inversion between L2/3 and L1, but cannot account for the spatial variation in gamma power with our current model. Future research to address this discrepancy is discussed above.
Several exciting experimental results have recently shown that neuronally generated electric fields impact on the membrane potentials of nearby neurons without requiring any synaptic contact. Such “ephaptic” coupling of neurons was investigated in models (Holt and Koch 1999) and, more recently, confirmed in experiments showing that such interactions could modulate oscillatory network activity (Fröhlich and McCormick 2010), entrain action potentials (Anastassiou et al. 2011) and potentially contribute to the spread of epileptiform activity (Zhang et al. 2014). We have purposefully ignored the contribution of ephaptic interactions in our model for the sake of simplicity, and have not incorporated the simulation of ephaptic coupling into the VERTEX simulator. While the results reported by Fröhlich and McCormick (2010) suggest that endogenous electric fields should be taken into account in models of oscillatory activity, they concentrated on neocortical slow oscillations, which are greater in amplitude than the gamma oscillations we modelled. However, the role of ephaptic interactions on network activity under different conditions must be investigated further. As VERTEX can simulate the LFP at arbitrary locations in a network, it would be possible to incorporate an ephaptic coupling mechanism that depended on the LFP. However, doing this rigorously would entail measuring the LFP near every compartment in the model, which is not feasible. Developing suitable approximation methods for incorporating realistic ephaptic coupling is, therefore, an important direction for future research. Similar methods could also be used for simulating artificially applied electric fields/currents, such as from extracellular stimulating electrodes.
Finally, the VERTEX simulator assumes a purely resistive, constant and homogeneous extracellular conductivity, with no frequency dependence (Pettersen et al. 2012). The extracellular medium’s frequency filtering effects are not currently known for certain (Einevoll et al. 2013): some results have demonstrated an intrinsic low-pass filtering effect (Gabriel et al. 1996; Dehghani et al. 2010) potentially created by ionic diffusion (Bédard and Destexhe 2009), though direct measurements in macaque cortex in vivo found minimal frequency filtering from intrinsic tissue properties (Logothetis et al. 2007). If a frequency-dependent effect of the extracellular medium is confirmed by future studies, Eqs. (1), (2) (see “Methods”) can be modified to take this into account (Pettersen et al. 2012).
We have described the VERTEX simulation tool for simulating LFPs in large neuronal populations. VERTEX includes functionality for generating spatially constrained networks of several neuron populations, whose parameters are easily specified in Matlab structures. “Virtual electrodes” can be positioned at arbitrary locations in the model to simulate the LFP generated by the network. Parallel computing and code vectorisation, as well as the use of reduced compartmental neuron models, allow VERTEX to simulate network activity and LFPs in reasonable time. Finally, we simulated LFPs from a neocortical slice model and compared them with LFPs recorded from macaque neocortex in vitro, illustrating new avenues for research into spatial variations in the LFP signal. We hope that the VERTEX and our neocortical slice model will prove useful to other researchers investigating the relationship between neuronal circuit dynamics and experimental or clinical brain tissue recordings.
Software and simulation methods
Spatial LFP characteristics of each individual compartmental neuron model were tested using LFPy as described in the Results section. LFPy simulations used a 0.125 ms time-step and NEURON’s standard implicit Euler numerical integration method. Each simulation was run for 1,250 ms simulation time, and the first 250 ms were discarded to remove simulation start-up effects.
VERTEX is implemented in Matlab. It uses the Matlab Parallel Computing Toolbox for parallelisation, though it can also be run serially. Equations are integrated numerically using a second-order Runge–Kutta method (Press et al. 2007); we used a 0.03125 ms time-step unless otherwise specified. VERTEX incorporates the methods outlined by Morrison et al. (2005) for parallel simulation, and the algorithms and data structures described by Brette and Goodman (2011) for code vectorisation.
LFPy simulations to test the model reduction method (Bush and Sejnowski 1993) were run on an Intel Core-i7 based PC running Ubuntu Linux 11.10 using a pre-release version of LFPy, NEURON 7.1 and Python 2.7.2, and an Intel Xeon E5640 workstation running Linux Mint 16 using LFPy 1.0 with NEURON 7.3 and Python 2.7.5. The LFPy vs. VERTEX performance comparison was run on the same Intel Xeon E5640 workstation, using Matlab 2013a. All other VERTEX simulations were run on a 48-core HP ProLiant server running CentOS Linux 5.8 with Matlab R2012b. Parallel simulations were run on 12 cores unless otherwise specified. The code, as well as documentation and tutorials, will be made available at http://www.dynamic-connectome.org/ upon publication.
Neoortical slice model
The neocortical slice model contained fifteen neuron populations, defined by location, connectivity, morphology, dynamics, and type of neurotransmitter effect (excitatory or inhibitory). We used the naming convention from Binzegger et al. (2004) as adapted by Izhikevich and Edelman (2008), defining the groups listed in Table 1 (full model parameters are given in Tables ESM1–ESM9). Individual neurons are represented by compartmental models with 7, 8 or 9 compartments, derived from the neuron models given by Mainen and Sejnowski (1996) using the compartmental reduction method of Bush and Sejnowski (1993). Compartmental structure and neuron parameters are given in Fig. ESM2; Tables ESM1 and ESM2. Our connectivity data are from cat visual cortex (Binzegger et al. 2004), so we took parameters for the neuronal density and layer boundaries from the same source. We scaled the layer boundaries to increase the total cortical depth to 2.6 mm, which was approximately the cortical depth in the comparison experimental slice (established by post hoc histology, not shown).
VERTEX is designed for specifying models in 3D space, giving all neuronal compartments 3D start and end coordinates. For the neocortical slice, we defined the z-axis to be the cortical depth from white matter through the layers to the cortical surface, with the border between layer 6 and the white matter set to z = 0 mm. The x- and y-axes ran parallel to the cortical surface, with the y-axis pointing along the thickness of the slice, and the x-axis along the slice width. The boundaries between cortical layers were then defined as x–y planes with constant depth zl. Layer 1 was aneuronal, and layers 2 and 3 were combined. The total model size was then specified by the cortical depth zmax, the thickness of the slice ymax, the width of the slice xmax, and the neuronal density D, with the total number of neurons calculated as N = xmax × ymax × zmax × D. The model slice had dimensions xmax = 4.4 mm, ymax = 0.4 mm and zmax = 2.6 mm, and D = 38,335 neurons/mm3, resulting in a model size of 175,421 neurons. We then positioned neurons by placing their somas at random x, y and z values constrained by xmax, ymax and the zl boundaries of the containing layer, and rotating them by random angles. Pyramidal cells had their apical dendrites aligned parallel to the z-axis.
Synapse weights are specified in Table ESM5. We included AMPA and GABAA type conductance-based synapses (the minimal set of synapse types required for generating gamma). When a neuron fired a spike, the synaptic conductance at the contacted target compartments increased by the relevant synaptic weight after the relevant axonal delay time, then decayed exponentially. VERTEX currently includes current-based and conductance-based models of single-exponential and alpha synapses.
We stimulated our model to mimic the bath application of kainate, which excites the pyramidal axonal plexus, providing the neurons with excitatory drive. We simulated this by applying independent random input currents to each neuron, modelled as Ornstein–Uhlenbeck processes (similar to Arsiero et al. 2007). Input current parameters are given in Table ESM6. VERTEX can provide random inputs to neurons as either currents or membrane conductance fluctuations.
In vitro experimental methods
All experiments were carried out in accordance with the European Communities Council Directive 1986 (86/609/EEC), the US National Institutes of Health Guidelines for the Care and Use of Animals for Experimental Procedures, and the UK Animals Scientific Procedures Act.
The monkey (Macaca mulatta, male, 8 years old) used in this study was subject to experiments in vivo involving extracellular recording of neural activity and local drug application (iontophoresis). All tissue samples used in this study were taken from intact brain areas that were not the subject of studies performed before tissue extraction. Extraction was performed under general anaesthesia, which was maintained over the course of 4 days. For the anaesthesia, the animal was initially sedated with a 0.1 ml/kg ketamine intra-muscular injection (100 mg/ml). Thereafter, bolus injections of propofol were administered intravenously to allow for tracheotomy and placement of catheters for measuring intra-arterial and central venous blood pressure. During surgery, anaesthesia was maintained by gaseous anaesthetic (2.5–3.9 % sevoflurane) combined with continuous intravenous application of an opioid analgesic (Alfentanil, 120 μg/kg/h), a glucocorticoid (Methylprednisolone, 5.4 mg/kg/h) and saline (50 ml/h). The animal’s rectal temperature, heart rate, blood oxygenation and expired CO2 were monitored continuously during anaesthesia.
Macaque neocortical samples were routinely obtained from the inferior temporal gyrus. This was confirmed by post hoc anatomical examination of the fixed (paraformaldehyde) whole brain. Following resection, cortical samples were immediately placed in ice-cold sucrose artificial cerebrospinal fluid (ACSF) containing: 252 mM sucrose, 3 mM KCl, 1.25 mM NaH2PO4, 2 mM MgSO4, 2 mM CaCl2, 24 mM NaHCO3, and 10 mM glucose. Neocortical slices containing all layers were cut at 450 μm (Microm HM 650 V), incubated at room temperature for 20–30 min, then transferred to a standard interface recording chamber at 34–36 °C perfused with oxygenated ACSF containing: 126 mM NaCl, 3 mM KCl, 1.25 mM NaH2PO4, 1 mM MgSO4, 1.2 mM CaCl2, 24 mM NaHCO3, and 10 mM glucose. Persistent gamma frequency oscillations were induced by the application of kainate (400–800 nM) to the circulating ACSF and were deemed stable if there was no change to frequency or power after 1 h. In general, we did not observe spontaneous network activity in the slices before the bath addition of kainate. LFP recordings were taken using multichannel 10 × 10 silicon electrodes with an inter-electrode distance of 400 μm (Utah array, Blackrock Microsystems, Salt Lake City, UT, USA). Time series were digitally sampled at 10 kHz.
Data processing and analysis
Data processing and analysis was performed in Matlab R2012b. We used the same processing chain for both simulated and experimental recordings, except that common average re-referencing, line noise removal and renormalisation were only applied to the experimental recordings. For LFP analysis, recordings were first re-referenced to the common average, then resampled at 1 kHz. We removed line noise and harmonics by band-pass filtering each recording at 49–51 Hz, 99–101 Hz, 149–151 Hz, 199–201 Hz and 249–251 Hz (symmetrical Butterworth filter, 8th order) and subtracting the resulting signal from the original signal. The recordings were then band-pass filtered between 2 and 300 Hz (symmetrical FIR filter, Kaiser window, 2,000th order). We restricted our analysis to an 18 s segment of the recording that was identified as artefact-free in all channels by visual inspection of the filtered traces. After filtering, these segments were normalised to zero mean, unit standard deviation to facilitate signal comparison across the MEA.
Power spectra were calculated using the Thomson multitaper method with a time-bandwidth product of 10 (19 tapers) for experimental recordings and 3 (5 tapers) for the shorter simulated recordings, with estimated 95 % confidence intervals calculated using a Chi-squared approach. Total gamma power at each electrode was calculated by taking the integral of the power spectrum between 20 and 40 Hz. Gamma power between electrodes was estimated by bicubic interpolation between electrode locations.
We thank the anonymous reviewers for their constructive and insightful comments, which helped us to greatly improve the final manuscript. RJT was supported by the BBSRC (BB/F016980/1). MA and MK were funded as part of the CARMEN e-science project (http://www.carmen.org.uk) by the EPSRC (EP/E002331/1). MK also received support from the EPSRC (EP/G03950X/1, EP/K026992/1). AT was supported by the MRC, BBSRC and the Wellcome Trust. MOC was supported by the EPSRC, MRC and the Wolfson Foundation. MW is supported by a Wellcome Trust Senior Investigator Award.
Open AccessThis article is distributed under the terms of the Creative Commons Attribution License which permits any use, distribution, and reproduction in any medium, provided the original author(s) and the source are credited.