Auryn simulator

Simulator for spiking neural networks with synaptic plasticity

User Tools

Site Tools


manual:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
manual:start [2016/07/22 16:43] – [SpikingGroups] adds izhikevich group zenkemanual:start [2016/12/01 17:12] – [IO File Formats] zenke
Line 1: Line 1:
-Auryn is a set of lightweight classes combined with some examples of how to use them. The power of the framework derives from its speed and extensibility if you do not hesitate to write a few lines of C++ code+====== Compiling the library ====== 
 + 
 +To get started you need to download and compile Auryn. See [[:quick start]] or [[CompileAuryn]] for instructions.
  
  
Line 39: Line 41:
 Auryn was specifically designed to study synaptic plasticity. To see plasticity in action you can monitor single synaptic weights or groups of them using a [[WeightMonitor]] object. If you are only interested in let's say the mean weight change in one of the plastic [[Connection]] objects your defined (i.e. the mean weight between two neuronal populations in your simulation), you can use [[WeightStatsMonitor]]. You will find other Monitor classes in the Auryn ''src'' directory (see also the [[http://www.fzenke.net/auryn/doxygen/current/annotated.html|Class index]]; Monitor classes should be suffixes with ''Monitor'') or you can write your own for your specific needs.  Auryn was specifically designed to study synaptic plasticity. To see plasticity in action you can monitor single synaptic weights or groups of them using a [[WeightMonitor]] object. If you are only interested in let's say the mean weight change in one of the plastic [[Connection]] objects your defined (i.e. the mean weight between two neuronal populations in your simulation), you can use [[WeightStatsMonitor]]. You will find other Monitor classes in the Auryn ''src'' directory (see also the [[http://www.fzenke.net/auryn/doxygen/current/annotated.html|Class index]]; Monitor classes should be suffixes with ''Monitor'') or you can write your own for your specific needs. 
  
-In most cases Auryn [[Monitor]] objects will record data to files on disk on perform a minimum of online analysis. This can be cumbersome if you would for instance like to monitor the activity in your network and stop a simulation if the activity explodes or the network falls quiescent. To tackle this problem, Auryn has a specific class which allows minimalistic online monitoring. They are called [[Checker|Checkers]].+In most cases Auryn [[Monitor]] instances will individually record data to separate files on disk and perform a minimum of on-line analysis (here are some [[extensions|default extensions]] I am using for these output files). This can be cumbersome if you would for instance like to monitor the activity in your network and stop a simulation if the activity explodes or the network falls quiescent. To tackle this problem, Auryn has a specific class which allows minimalistic online monitoring. They are called [[Checker|Checkers]].
  
 ==== What's a Checker? ==== ==== What's a Checker? ====
Line 49: Line 51:
 Most objects in Auryn that have a direct network function can be subdivided into [[SpikingGroup]], [[Connection]] and [[Monitor]]. These three base classes implement the important interfaces that are called consecutively during the Auryn [[duty cycle]]. Instances of their descendants are registered and managed by the [[manual:System]] class, an instance of which is global to each Auryn [[simulation]]. Similarly global is the the [[manual:Logger]] class which takes care of logging output on the console and into log files. Most objects in Auryn that have a direct network function can be subdivided into [[SpikingGroup]], [[Connection]] and [[Monitor]]. These three base classes implement the important interfaces that are called consecutively during the Auryn [[duty cycle]]. Instances of their descendants are registered and managed by the [[manual:System]] class, an instance of which is global to each Auryn [[simulation]]. Similarly global is the the [[manual:Logger]] class which takes care of logging output on the console and into log files.
  
 +The most complete description of available classes and how to use them you will find in the doxygen generated class library. However, below are some entries for commonly used simulation components (which might, in some cases, not be too up to date any more)
 ===== SpikingGroups ===== ===== SpikingGroups =====
  
Line 81: Line 84:
   * [[manual:WeightMonitor]]   * [[manual:WeightMonitor]]
  
-===== IO File Formats ===== +Most monitor instances write their output to an individual file. Many file formats are human readable, while others are binarySee [[IO File Formats]] for a more complete overview of typical file formats. 
- +
-To minimize complicated IO operations Auryn dumps most of its monitor data directly into human readable text files that can be post processes using standard Linux command line software and visualized easily (e.g. with Gnuplot). +
- +
-  * [[manual:ras]] files +
-  * [[manual:spk]] binary raster files +
-  * [[manual:wmat]] files +
-  * [[manual:mem]] and other 1d time series files (such as ampa, gaba, nmda) +
-  * [[manual:syn]] file +
-  * [[manual:prate]] file and [[manual:pact]] file +
-  * [[manual:pat]] files +
-  * [[manual:stim]] stim files+
  
  
manual/start.txt · Last modified: 2018/02/07 08:58 by zenke