diff --git a/documentation/5/.buildinfo b/documentation/5/.buildinfo
index cd1b111cc..d37ee0323 100644
--- a/documentation/5/.buildinfo
+++ b/documentation/5/.buildinfo
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: c3c61cb8429cb0866abf4ba89c8c5432
+config: f495d85ded1f289701b492e681ecef7c
tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/documentation/5/_downloads/1eed1518b8928bc24e721527ef1f9970/mnist_mb_classifier.ipynb b/documentation/5/_downloads/1eed1518b8928bc24e721527ef1f9970/mnist_mb_classifier.ipynb
index 7103373b3..2928dc2d7 100644
--- a/documentation/5/_downloads/1eed1518b8928bc24e721527ef1f9970/mnist_mb_classifier.ipynb
+++ b/documentation/5/_downloads/1eed1518b8928bc24e721527ef1f9970/mnist_mb_classifier.ipynb
@@ -35,7 +35,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.11.5"
+ "version": "3.8.12"
}
},
"nbformat": 4,
diff --git a/documentation/5/_downloads/26866b29b5e6aaf47b3ba4c4dbee6718/userproject_jupyter.zip b/documentation/5/_downloads/26866b29b5e6aaf47b3ba4c4dbee6718/userproject_jupyter.zip
index d8d30bcc7..3c789d01c 100644
Binary files a/documentation/5/_downloads/26866b29b5e6aaf47b3ba4c4dbee6718/userproject_jupyter.zip and b/documentation/5/_downloads/26866b29b5e6aaf47b3ba4c4dbee6718/userproject_jupyter.zip differ
diff --git a/documentation/5/_downloads/3e0a0a579abc8e5181823f00a5779b71/userproject_python.zip b/documentation/5/_downloads/3e0a0a579abc8e5181823f00a5779b71/userproject_python.zip
index 45d34ee8f..c81d904c2 100644
Binary files a/documentation/5/_downloads/3e0a0a579abc8e5181823f00a5779b71/userproject_python.zip and b/documentation/5/_downloads/3e0a0a579abc8e5181823f00a5779b71/userproject_python.zip differ
diff --git a/documentation/5/_downloads/64c7fcd62013f68609d54d02d741b663/potjans_microcircuit.ipynb b/documentation/5/_downloads/64c7fcd62013f68609d54d02d741b663/potjans_microcircuit.ipynb
index bc8c4ec31..2ae0ae9fc 100644
--- a/documentation/5/_downloads/64c7fcd62013f68609d54d02d741b663/potjans_microcircuit.ipynb
+++ b/documentation/5/_downloads/64c7fcd62013f68609d54d02d741b663/potjans_microcircuit.ipynb
@@ -35,7 +35,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.11.5"
+ "version": "3.8.12"
}
},
"nbformat": 4,
diff --git a/documentation/5/_downloads/f57116a727438d4e47eb66f1b799aa48/superspike_demo.ipynb b/documentation/5/_downloads/f57116a727438d4e47eb66f1b799aa48/superspike_demo.ipynb
index 0c238c92e..8263a6d20 100644
--- a/documentation/5/_downloads/f57116a727438d4e47eb66f1b799aa48/superspike_demo.ipynb
+++ b/documentation/5/_downloads/f57116a727438d4e47eb66f1b799aa48/superspike_demo.ipynb
@@ -35,7 +35,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.11.5"
+ "version": "3.8.12"
}
},
"nbformat": 4,
diff --git a/documentation/5/_sources/bibliography.rst.txt b/documentation/5/_sources/bibliography.rst.txt
index 163443ccc..56394be48 100644
--- a/documentation/5/_sources/bibliography.rst.txt
+++ b/documentation/5/_sources/bibliography.rst.txt
@@ -3,8 +3,12 @@
============
Bibliography
============
+.. [izhikevich2003simple] Izhikevich, E. M. (2003). Simple model of spiking neurons. IEEE Transactions on neural networks, 14(6), 1569-1572. https://doi.org/10.1109/TNN.2003.820440
+.. [Knight2018] Knight, J. C., & Nowotny, T. (2018). GPUs Outperform Current HPC and Neuromorphic Solutions in Terms of Speed and Energy When Simulating a Highly-Connected Cortical Model. Frontiers in Neuroscience, 12(December), 1–19. https://doi.org/10.3389/fnins.2018.00941
.. [Morrison2008] Morrison, A., Diesmann, M., & Gerstner, W. (2008). Phenomenological models of synaptic plasticity based on spike timing. Biological Cybernetics, 98, 459–478. https://doi.org/10.1007/s00422-008-0233-1
+.. [nowotny2005self] Nowotny, T., Huerta, R., Abarbanel, H. D., & Rabinovich, M. I. (2005). Self-organization in the olfactory system: one shot odor recognition in insects. Biological cybernetics, 93, 436-446. https://doi.org/10.1007/s00422-005-0019-7
.. [Potjans2014] Potjans, T. C., & Diesmann, M. (2014). The Cell-Type Specific Cortical Microcircuit: Relating Structure and Activity in a Full-Scale Spiking Network Model. Cerebral Cortex, 24(3), 785–806. https://doi.org/10.1093/cercor/bhs358
-.. [Zenke2018] Zenke, F., & Ganguli, S. (2018). SuperSpike: Supervised Learning in Multilayer Spiking Neural Networks. Neural Computation, 30(6), 1514–1541. https://doi.org/10.1162/neco_a_01086
-.. [Knight2018] Knight, J. C., & Nowotny, T. (2018). GPUs Outperform Current HPC and Neuromorphic Solutions in Terms of Speed and Energy When Simulating a Highly-Connected Cortical Model. Frontiers in Neuroscience, 12(December), 1–19. https://doi.org/10.3389/fnins.2018.00941
-.. [Turner2022] Turner, J. P., Knight, J. C., Subramanian, A., & Nowotny, T. (2022). mlGeNN: accelerating SNN inference using GPU-enabled neural networks. Neuromorphic Computing and Engineering, 2(2), 024002. https://doi.org/10.1088/2634-4386/ac5ac5
\ No newline at end of file
+.. [Rulkov2002] Rulkov, N. F. (2002). Modeling of spiking-bursting neural behavior using two-dimensional map. Physical Review E, 65(4), 041922. https://doi.org/10.1103/PhysRevE.65.041922
+.. [Traub1991] Traub, R. D., & Miles, R. (1991). Neuronal networks of the hippocampus (Vol. 777). Cambridge University Press.
+.. [Turner2022] Turner, J. P., Knight, J. C., Subramanian, A., & Nowotny, T. (2022). mlGeNN: accelerating SNN inference using GPU-enabled neural networks. Neuromorphic Computing and Engineering, 2(2), 024002. https://doi.org/10.1088/2634-4386/ac5ac5
+.. [Zenke2018] Zenke, F., & Ganguli, S. (2018). SuperSpike: Supervised Learning in Multilayer Spiking Neural Networks. Neural Computation, 30(6), 1514–1541. https://doi.org/10.1162/neco_a_01086
\ No newline at end of file
diff --git a/documentation/5/_sources/source/pygenn.rst.txt b/documentation/5/_sources/source/pygenn.rst.txt
index 8e1e7a1e6..b2295566a 100644
--- a/documentation/5/_sources/source/pygenn.rst.txt
+++ b/documentation/5/_sources/source/pygenn.rst.txt
@@ -41,14 +41,6 @@ pygenn.custom\_update\_models module
:undoc-members:
:show-inheritance:
-pygenn.deprecated module
-------------------------
-
-.. automodule:: pygenn.deprecated
- :members:
- :undoc-members:
- :show-inheritance:
-
pygenn.genn\_groups module
--------------------------
diff --git a/documentation/5/_static/_sphinx_javascript_frameworks_compat.js b/documentation/5/_static/_sphinx_javascript_frameworks_compat.js
index 8549469dc..81415803e 100644
--- a/documentation/5/_static/_sphinx_javascript_frameworks_compat.js
+++ b/documentation/5/_static/_sphinx_javascript_frameworks_compat.js
@@ -1,20 +1,9 @@
-/*
- * _sphinx_javascript_frameworks_compat.js
- * ~~~~~~~~~~
- *
- * Compatability shim for jQuery and underscores.js.
- *
- * WILL BE REMOVED IN Sphinx 6.0
- * xref RemovedInSphinx60Warning
+/* Compatability shim for jQuery and underscores.js.
*
+ * Copyright Sphinx contributors
+ * Released under the two clause BSD licence
*/
-/**
- * select a different prefix for underscore
- */
-$u = _.noConflict();
-
-
/**
* small helper function to urldecode strings
*
diff --git a/documentation/5/_static/basic.css b/documentation/5/_static/basic.css
index d64b53cc2..1506b6540 100644
--- a/documentation/5/_static/basic.css
+++ b/documentation/5/_static/basic.css
@@ -4,7 +4,7 @@
*
* Sphinx stylesheet -- basic theme.
*
- * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
@@ -324,17 +324,17 @@ aside.sidebar {
p.sidebar-title {
font-weight: bold;
}
+
nav.contents,
aside.topic,
-
div.admonition, div.topic, blockquote {
clear: left;
}
/* -- topics ---------------------------------------------------------------- */
+
nav.contents,
aside.topic,
-
div.topic {
border: 1px solid #ccc;
padding: 7px;
@@ -375,7 +375,6 @@ div.sidebar > :last-child,
aside.sidebar > :last-child,
nav.contents > :last-child,
aside.topic > :last-child,
-
div.topic > :last-child,
div.admonition > :last-child {
margin-bottom: 0;
@@ -385,7 +384,6 @@ div.sidebar::after,
aside.sidebar::after,
nav.contents::after,
aside.topic::after,
-
div.topic::after,
div.admonition::after,
blockquote::after {
@@ -611,25 +609,6 @@ ul.simple p {
margin-bottom: 0;
}
-/* Docutils 0.17 and older (footnotes & citations) */
-dl.footnote > dt,
-dl.citation > dt {
- float: left;
- margin-right: 0.5em;
-}
-
-dl.footnote > dd,
-dl.citation > dd {
- margin-bottom: 0em;
-}
-
-dl.footnote > dd:after,
-dl.citation > dd:after {
- content: "";
- clear: both;
-}
-
-/* Docutils 0.18+ (footnotes & citations) */
aside.footnote > span,
div.citation > span {
float: left;
@@ -654,8 +633,6 @@ div.citation > p:last-of-type:after {
clear: both;
}
-/* Footnotes & citations ends */
-
dl.field-list {
display: grid;
grid-template-columns: fit-content(30%) auto;
@@ -668,10 +645,6 @@ dl.field-list > dt {
padding-right: 5px;
}
-dl.field-list > dt:after {
- content: ":";
-}
-
dl.field-list > dd {
padding-left: 0.5em;
margin-top: 0em;
@@ -697,6 +670,16 @@ dd {
margin-left: 30px;
}
+.sig dd {
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+
+.sig dl {
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+
dl > dd:last-child,
dl > dd:last-child > :last-child {
margin-bottom: 0;
@@ -765,6 +748,14 @@ abbr, acronym {
cursor: help;
}
+.translated {
+ background-color: rgba(207, 255, 207, 0.2)
+}
+
+.untranslated {
+ background-color: rgba(255, 207, 207, 0.2)
+}
+
/* -- code displays --------------------------------------------------------- */
pre {
diff --git a/documentation/5/_static/doctools.js b/documentation/5/_static/doctools.js
index c3db08d1c..d06a71d75 100644
--- a/documentation/5/_static/doctools.js
+++ b/documentation/5/_static/doctools.js
@@ -4,12 +4,19 @@
*
* Base JavaScript utilities for all Sphinx HTML documentation.
*
- * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
"use strict";
+const BLACKLISTED_KEY_CONTROL_ELEMENTS = new Set([
+ "TEXTAREA",
+ "INPUT",
+ "SELECT",
+ "BUTTON",
+]);
+
const _ready = (callback) => {
if (document.readyState !== "loading") {
callback();
@@ -18,73 +25,11 @@ const _ready = (callback) => {
}
};
-/**
- * highlight a given string on a node by wrapping it in
- * span elements with the given class name.
- */
-const _highlight = (node, addItems, text, className) => {
- if (node.nodeType === Node.TEXT_NODE) {
- const val = node.nodeValue;
- const parent = node.parentNode;
- const pos = val.toLowerCase().indexOf(text);
- if (
- pos >= 0 &&
- !parent.classList.contains(className) &&
- !parent.classList.contains("nohighlight")
- ) {
- let span;
-
- const closestNode = parent.closest("body, svg, foreignObject");
- const isInSVG = closestNode && closestNode.matches("svg");
- if (isInSVG) {
- span = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
- } else {
- span = document.createElement("span");
- span.classList.add(className);
- }
-
- span.appendChild(document.createTextNode(val.substr(pos, text.length)));
- parent.insertBefore(
- span,
- parent.insertBefore(
- document.createTextNode(val.substr(pos + text.length)),
- node.nextSibling
- )
- );
- node.nodeValue = val.substr(0, pos);
-
- if (isInSVG) {
- const rect = document.createElementNS(
- "http://www.w3.org/2000/svg",
- "rect"
- );
- const bbox = parent.getBBox();
- rect.x.baseVal.value = bbox.x;
- rect.y.baseVal.value = bbox.y;
- rect.width.baseVal.value = bbox.width;
- rect.height.baseVal.value = bbox.height;
- rect.setAttribute("class", className);
- addItems.push({ parent: parent, target: rect });
- }
- }
- } else if (node.matches && !node.matches("button, select, textarea")) {
- node.childNodes.forEach((el) => _highlight(el, addItems, text, className));
- }
-};
-const _highlightText = (thisNode, text, className) => {
- let addItems = [];
- _highlight(thisNode, addItems, text, className);
- addItems.forEach((obj) =>
- obj.parent.insertAdjacentElement("beforebegin", obj.target)
- );
-};
-
/**
* Small JavaScript module for the documentation.
*/
const Documentation = {
init: () => {
- Documentation.highlightSearchWords();
Documentation.initDomainIndexTable();
Documentation.initOnKeyListeners();
},
@@ -126,51 +71,6 @@ const Documentation = {
Documentation.LOCALE = catalog.locale;
},
- /**
- * highlight the search words provided in the url in the text
- */
- highlightSearchWords: () => {
- const highlight =
- new URLSearchParams(window.location.search).get("highlight") || "";
- const terms = highlight.toLowerCase().split(/\s+/).filter(x => x);
- if (terms.length === 0) return; // nothing to do
-
- // There should never be more than one element matching "div.body"
- const divBody = document.querySelectorAll("div.body");
- const body = divBody.length ? divBody[0] : document.querySelector("body");
- window.setTimeout(() => {
- terms.forEach((term) => _highlightText(body, term, "highlighted"));
- }, 10);
-
- const searchBox = document.getElementById("searchbox");
- if (searchBox === null) return;
- searchBox.appendChild(
- document
- .createRange()
- .createContextualFragment(
- '
' +
- '' +
- Documentation.gettext("Hide Search Matches") +
- "
"
- )
- );
- },
-
- /**
- * helper function to hide the search marks again
- */
- hideSearchWords: () => {
- document
- .querySelectorAll("#searchbox .highlight-link")
- .forEach((el) => el.remove());
- document
- .querySelectorAll("span.highlighted")
- .forEach((el) => el.classList.remove("highlighted"));
- const url = new URL(window.location);
- url.searchParams.delete("highlight");
- window.history.replaceState({}, "", url);
- },
-
/**
* helper function to focus on search bar
*/
@@ -210,15 +110,11 @@ const Documentation = {
)
return;
- const blacklistedElements = new Set([
- "TEXTAREA",
- "INPUT",
- "SELECT",
- "BUTTON",
- ]);
document.addEventListener("keydown", (event) => {
- if (blacklistedElements.has(document.activeElement.tagName)) return; // bail for input elements
- if (event.altKey || event.ctrlKey || event.metaKey) return; // bail with special keys
+ // bail for input elements
+ if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return;
+ // bail with special keys
+ if (event.altKey || event.ctrlKey || event.metaKey) return;
if (!event.shiftKey) {
switch (event.key) {
@@ -240,10 +136,6 @@ const Documentation = {
event.preventDefault();
}
break;
- case "Escape":
- if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break;
- Documentation.hideSearchWords();
- event.preventDefault();
}
}
diff --git a/documentation/5/_static/documentation_options.js b/documentation/5/_static/documentation_options.js
index a750e4d5e..b57ae3b83 100644
--- a/documentation/5/_static/documentation_options.js
+++ b/documentation/5/_static/documentation_options.js
@@ -10,5 +10,5 @@ var DOCUMENTATION_OPTIONS = {
SOURCELINK_SUFFIX: '.txt',
NAVIGATION_WITH_KEYS: false,
SHOW_SEARCH_SUMMARY: true,
- ENABLE_SEARCH_SHORTCUTS: false,
+ ENABLE_SEARCH_SHORTCUTS: true,
};
\ No newline at end of file
diff --git a/documentation/5/_static/jquery-3.6.0.js b/documentation/5/_static/jquery-3.6.0.js
deleted file mode 100644
index fc6c299b7..000000000
--- a/documentation/5/_static/jquery-3.6.0.js
+++ /dev/null
@@ -1,10881 +0,0 @@
-/*!
- * jQuery JavaScript Library v3.6.0
- * https://jquery.com/
- *
- * Includes Sizzle.js
- * https://sizzlejs.com/
- *
- * Copyright OpenJS Foundation and other contributors
- * Released under the MIT license
- * https://jquery.org/license
- *
- * Date: 2021-03-02T17:08Z
- */
-( function( global, factory ) {
-
- "use strict";
-
- if ( typeof module === "object" && typeof module.exports === "object" ) {
-
- // For CommonJS and CommonJS-like environments where a proper `window`
- // is present, execute the factory and get jQuery.
- // For environments that do not have a `window` with a `document`
- // (such as Node.js), expose a factory as module.exports.
- // This accentuates the need for the creation of a real `window`.
- // e.g. var jQuery = require("jquery")(window);
- // See ticket #14549 for more info.
- module.exports = global.document ?
- factory( global, true ) :
- function( w ) {
- if ( !w.document ) {
- throw new Error( "jQuery requires a window with a document" );
- }
- return factory( w );
- };
- } else {
- factory( global );
- }
-
-// Pass this if window is not defined yet
-} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) {
-
-// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1
-// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode
-// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common
-// enough that all such attempts are guarded in a try block.
-"use strict";
-
-var arr = [];
-
-var getProto = Object.getPrototypeOf;
-
-var slice = arr.slice;
-
-var flat = arr.flat ? function( array ) {
- return arr.flat.call( array );
-} : function( array ) {
- return arr.concat.apply( [], array );
-};
-
-
-var push = arr.push;
-
-var indexOf = arr.indexOf;
-
-var class2type = {};
-
-var toString = class2type.toString;
-
-var hasOwn = class2type.hasOwnProperty;
-
-var fnToString = hasOwn.toString;
-
-var ObjectFunctionString = fnToString.call( Object );
-
-var support = {};
-
-var isFunction = function isFunction( obj ) {
-
- // Support: Chrome <=57, Firefox <=52
- // In some browsers, typeof returns "function" for HTML