diff --git a/html/models/08-spiking_neural_systems.html b/html/models/08-spiking_neural_systems.html index 5d38bca4..bab99901 100644 --- a/html/models/08-spiking_neural_systems.html +++ b/html/models/08-spiking_neural_systems.html @@ -755,8 +755,51 @@

The Leaky Integrate-and-Fire Model

-
-ERROR: UndefVarError: top not defined
+
+retcode: Success
+Interpolation: automatic order switching interpolation
+t: 153-element Array{Float64,1}:
+  0.0
+  9.999999999999999e-5
+  0.0010999999999999998
+  0.011099999999999997
+  0.11109999999999996
+  1.1110999999999995
+  2.0
+  2.0
+  2.6300346673750097
+  2.9226049547524595
+  ⋮
+ 38.34157935968204
+ 38.78215179003683
+ 38.78215179003683
+ 39.222724173706894
+ 39.222724173706894
+ 39.6632965982261
+ 39.6632965982261
+ 40.0
+ 40.0
+u: 153-element Array{Float64,1}:
+ -75.0
+ -75.0
+ -75.0
+ -75.0
+ -75.0
+ -75.0
+ -75.0
+ -75.0
+ -59.978080111690375
+ -57.32999167299642
+   ⋮
+ -75.0
+ -50.40489310815222
+ -75.0
+ -50.404894730067554
+ -75.0
+ -50.404893310891545
+ -75.0
+ -54.419318668318546
+ -75.0
 
@@ -768,10 +811,7 @@

The Leaky Integrate-and-Fire Model

-
-ERROR: UndefVarError: sol not defined
-
- +

We see that the model is resting at -75 while there is no input. At t=2 the input increases by 210 and the model starts to spike. Spiking does not start immediately because the input first has to charge the membrane capacitance. Notice how once spiking starts it very quickly becomes extremely regular. Increasing the input again at t=15 increases firing as we would expect but it is still extremely regular. This is one of the features of the LIF. The firing frequency is regular for constant input and a linear function of the input strength. There are ways to make LIF models less regular. For example we could use certain noise types at the input. We could also simulate a large number of LIF models and connect them synaptically. Instead of going into those topics, we will move on to the Izhikevich model, which is known for its ability to generate a large variety of spiking dynamics during constant inputs.

The Izhikevich Model

@@ -863,10 +903,7 @@

The Izhikevich Model

-
-ERROR: UndefVarError: top not defined
-
- +

This spiking type is called chattering. It fires with intermittent periods of silence. Note that the input starts at t=50 and remain constant for the duration of the simulation. One of mechanisms that sustains this type of firing is the spike induced hyperpolarization coming from our second dimension, so let's look at this variable.

@@ -876,10 +913,7 @@

The Izhikevich Model

-
-ERROR: UndefVarError: sol not defined
-
- +

Our second dimension u[2] increases with every spike. When it becomes too large, the system cannot generate another spike until u[2] has decayed to a value small enough that spiking can resume. This process repeats. In this model, spiking is no longer regular like it was in the LIF. Here we have two frequencies, the frequency during the spiking state and the frequency between spiking states. The LIF model was dominated by one single frequency that was a function of the input strength. Let's see if we can generate another spiking type by changing the parameters.

@@ -895,10 +929,7 @@

The Izhikevich Model

-
-ERROR: UndefVarError: top not defined
-
- +

This type is called regularly spiking and we created it just by lowering p[3] and increasing p[4]. Note that the type is called regularly spiking but it is not instantaneously regular. The instantenous frequency is higher in the beginning. This is called spike frequency adaptation and is a common property of real neurons. There are many more spike types that can be generated. Check out the original Izhikevich work and create your own favorite neuron!

Hodgkin-Huxley Model

@@ -974,10 +1005,7 @@

Hodgkin-Huxley Model

-
-ERROR: UndefVarError: top not defined
-
- +

That's some good regular voltage spiking. One of the cool things about a biophysically realistic model is that the gating variables tell us something about the mechanisms behind the action potential. You might have seen something like the following plot in a biology textbook.

@@ -987,10 +1015,7 @@

Hodgkin-Huxley Model

-
-ERROR: UndefVarError: sol not defined
-
- +

So far we have only given our neurons very simple step inputs by simply changing the number I. Actual neurons recieve their inputs mostly from chemical synapses. They produce conductance changes with very complex structures. In the next chapter we will try to incorporate a synapse into our HH model.

Alpha Synapse

@@ -1036,10 +1061,7 @@

Alpha Synapse

-
-ERROR: UndefVarError: top not defined
-
- +

What you see here is called an excitatory postsynaptic potential (EPSP). It is the voltage response to a synaptic current. While our synaptic conductance rises instantly, the voltage response rises at a slower time course that is given by the membrane capacitance C. This particular voltage response is not strong enough to evoke spiking, so we say it is subthreshold. To get a suprathreshold response that evokes spiking we simply increase the parameter max_gSyn to increase the maximum conductance.

@@ -1053,10 +1075,7 @@

Alpha Synapse

-
-ERROR: UndefVarError: top not defined
-
- +

This plot shows both the subthreshold EPSP from above as well as the suprathreshold EPSP. Alpha synapses are nice because of their simplicity. Real synapses however, are extremely complex structures. One of the most important features of real synapses is that their maximum conductance is not the same on every event. The number and frequency of synaptic events changes the size of the maximum conductance in a dynamic way. While we usually avoid anatomical and biophysical details of real synapses, there is a widely used phenomenological way to capture those dynamics called the Tsodyks-Markram synapse.

Tsodyks-Markram Synapse

@@ -1097,10 +1116,7 @@

Tsodyks-Markram Synapse

-
-ERROR: UndefVarError: top not defined
-
- +
@@ -1108,10 +1124,7 @@ 

Tsodyks-Markram Synapse

-
-ERROR: UndefVarError: sol not defined
-
- +

Both the voltage response as well as the conductances show what is called short-term facilitation. An increase in peak conductance over multiple synaptic events. Here the first event has a conductance of around 0.0025 and the last one of 0.004. We can plot the other two varialbes to see what underlies those dynamics

@@ -1121,10 +1134,7 @@

Tsodyks-Markram Synapse

-
-ERROR: UndefVarError: sol not defined
-
- +

Because of the time courses at play here, this facilitation is frequency dependent. If we increase the period between these events, facilitation does not occur.

@@ -1141,10 +1151,7 @@

Tsodyks-Markram Synapse

-
-ERROR: UndefVarError: top not defined
-
- +
@@ -1152,10 +1159,7 @@ 

Tsodyks-Markram Synapse

-
-ERROR: UndefVarError: sol not defined
-
- +

We can also change these time constants such that the dynamics show short-term depression instead of facilitation.

@@ -1172,10 +1176,7 @@

Tsodyks-Markram Synapse

-
-ERROR: UndefVarError: top not defined
-
- +
@@ -1183,21 +1184,67 @@ 

Tsodyks-Markram Synapse

-
-ERROR: UndefVarError: sol not defined
-
- +

Just changing those two time constants has changed the dynamics to short-term depression. This is still frequency dependent. Changing these parameters can generate a variety of different short-term dynamics.

Summary

That's it for now. Thanks for making it this far. If you want to learn more about neuronal dynamics, this is a great resource. If you want to learn more about Julia check out the official website and to learn more about the DifferentialEquations package you are in the right place, because this chapter is part of a larger tutorial series about just that.

+

Appendix

+

This tutorial is part of the SciMLTutorials.jl repository, found at: https://github.com/SciML/SciMLTutorials.jl. For more information on doing scientific machine learning (SciML) with open source software, check out https://sciml.ai/.

+
+

To locally run this tutorial, do the following commands:

+
using SciMLTutorials
+SciMLTutorials.weave_file("models","08-spiking_neural_systems.jmd")
+
+

Computer Information:

+
+
Julia Version 1.4.2
+Commit 44fa15b150* (2020-05-23 18:35 UTC)
+Platform Info:
+  OS: Linux (x86_64-pc-linux-gnu)
+  CPU: Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz
+  WORD_SIZE: 64
+  LIBM: libopenlibm
+  LLVM: libLLVM-8.0.1 (ORCJIT, skylake)
+Environment:
+  JULIA_LOAD_PATH = /builds/JuliaGPU/DiffEqTutorials.jl:
+  JULIA_DEPOT_PATH = /builds/JuliaGPU/DiffEqTutorials.jl/.julia
+  JULIA_CUDA_MEMORY_LIMIT = 2147483648
+  JULIA_NUM_THREADS = 8
+
+
+

Package Information:

+
+
Status `/builds/JuliaGPU/DiffEqTutorials.jl/tutorials/models/Project.toml`
+[479239e8-5488-4da2-87a7-35f2df7eef83] Catalyst 5.0.0
+[459566f4-90b8-5000-8ac3-15dfb0a30def] DiffEqCallbacks 2.14.1
+[f3b72e0c-5b89-59e1-b016-84e28bfd966d] DiffEqDevTools 2.27.0
+[055956cb-9e8b-5191-98cc-73ae4a59e68a] DiffEqPhysics 3.6.0
+[0c46a032-eb83-5123-abaf-570d42b7fbaa] DifferentialEquations 6.15.0
+[31c24e10-a181-5473-b8eb-7969acd0382f] Distributions 0.23.12
+[587475ba-b771-5e3f-ad9e-33799f191a9c] Flux 0.11.1
+[f6369f11-7733-5829-9624-2563aa707210] ForwardDiff 0.10.12
+[23fbe1c1-3f47-55db-b15f-69d7ec21a316] Latexify 0.14.0
+[961ee093-0014-501f-94e3-6117800e7a78] ModelingToolkit 3.20.0
+[2774e3e8-f4cf-5e23-947b-6d7e65073b56] NLsolve 4.4.1
+[315f7962-48a3-4962-8226-d0f33b1235f0] NeuralPDE 2.3.0
+[429524aa-4258-5aef-a3af-852621145aeb] Optim 1.2.0
+[1dea7af3-3e70-54e6-95c3-0bf5283fa5ed] OrdinaryDiffEq 5.42.8
+[91a5bcdd-55d7-5caf-9e0b-520d859cae80] Plots 1.6.5
+[731186ca-8d62-57ce-b412-fbd966d074cd] RecursiveArrayTools 2.7.0
+[789caeaf-c7a9-5a7d-9973-96adeb23e2a0] StochasticDiffEq 6.26.0
+[37e2e46d-f89d-539d-b4ee-838fcccc9c8e] LinearAlgebra
+[2f01184e-e22b-5df5-ae63-d93ebab69eaf] SparseArrays
+
+ +
diff --git a/markdown/models/08-spiking_neural_systems.md b/markdown/models/08-spiking_neural_systems.md index 7c85b449..e64a41b4 100644 --- a/markdown/models/08-spiking_neural_systems.md +++ b/markdown/models/08-spiking_neural_systems.md @@ -85,21 +85,21 @@ cb = CallbackSet(current_step,threshold) ```` DiffEqBase.CallbackSet{Tuple{},Tuple{DiffEqBase.DiscreteCallback{DiffEqCall backs.var"#61#64"{Array{Int64,1}},DiffEqCallbacks.var"#62#65"{Main.##WeaveS -andBox#309.var"#1#2"},DiffEqCallbacks.var"#63#66"{typeof(DiffEqBase.INITIAL -IZE_DEFAULT),Bool,Array{Int64,1},Main.##WeaveSandBox#309.var"#1#2"}},DiffEq -Base.DiscreteCallback{typeof(Main.##WeaveSandBox#309.thr),typeof(Main.##Wea -veSandBox#309.reset!),typeof(DiffEqBase.INITIALIZE_DEFAULT)}}}((), (DiffEqB +andBox#337.var"#1#2"},DiffEqCallbacks.var"#63#66"{typeof(DiffEqBase.INITIAL +IZE_DEFAULT),Bool,Array{Int64,1},Main.##WeaveSandBox#337.var"#1#2"}},DiffEq +Base.DiscreteCallback{typeof(Main.##WeaveSandBox#337.thr),typeof(Main.##Wea +veSandBox#337.reset!),typeof(DiffEqBase.INITIALIZE_DEFAULT)}}}((), (DiffEqB ase.DiscreteCallback{DiffEqCallbacks.var"#61#64"{Array{Int64,1}},DiffEqCall -backs.var"#62#65"{Main.##WeaveSandBox#309.var"#1#2"},DiffEqCallbacks.var"#6 +backs.var"#62#65"{Main.##WeaveSandBox#337.var"#1#2"},DiffEqCallbacks.var"#6 3#66"{typeof(DiffEqBase.INITIALIZE_DEFAULT),Bool,Array{Int64,1},Main.##Weav -eSandBox#309.var"#1#2"}}(DiffEqCallbacks.var"#61#64"{Array{Int64,1}}([2, 15 -]), DiffEqCallbacks.var"#62#65"{Main.##WeaveSandBox#309.var"#1#2"}(Main.##W -eaveSandBox#309.var"#1#2"()), DiffEqCallbacks.var"#63#66"{typeof(DiffEqBase -.INITIALIZE_DEFAULT),Bool,Array{Int64,1},Main.##WeaveSandBox#309.var"#1#2"} -(DiffEqBase.INITIALIZE_DEFAULT, true, [2, 15], Main.##WeaveSandBox#309.var" +eSandBox#337.var"#1#2"}}(DiffEqCallbacks.var"#61#64"{Array{Int64,1}}([2, 15 +]), DiffEqCallbacks.var"#62#65"{Main.##WeaveSandBox#337.var"#1#2"}(Main.##W +eaveSandBox#337.var"#1#2"()), DiffEqCallbacks.var"#63#66"{typeof(DiffEqBase +.INITIALIZE_DEFAULT),Bool,Array{Int64,1},Main.##WeaveSandBox#337.var"#1#2"} +(DiffEqBase.INITIALIZE_DEFAULT, true, [2, 15], Main.##WeaveSandBox#337.var" #1#2"()), Bool[1, 1]), DiffEqBase.DiscreteCallback{typeof(Main.##WeaveSandB -ox#309.thr),typeof(Main.##WeaveSandBox#309.reset!),typeof(DiffEqBase.INITIA -LIZE_DEFAULT)}(Main.##WeaveSandBox#309.thr, Main.##WeaveSandBox#309.reset!, +ox#337.thr),typeof(Main.##WeaveSandBox#337.reset!),typeof(DiffEqBase.INITIA +LIZE_DEFAULT)}(Main.##WeaveSandBox#337.thr, Main.##WeaveSandBox#337.reset!, DiffEqBase.INITIALIZE_DEFAULT, Bool[1, 1]))) ```` @@ -139,7 +139,50 @@ sol = solve(prob) ```` -Error: UndefVarError: top not defined +retcode: Success +Interpolation: automatic order switching interpolation +t: 153-element Array{Float64,1}: + 0.0 + 9.999999999999999e-5 + 0.0010999999999999998 + 0.011099999999999997 + 0.11109999999999996 + 1.1110999999999995 + 2.0 + 2.0 + 2.6300346673750097 + 2.9226049547524595 + ⋮ + 38.34157935968204 + 38.78215179003683 + 38.78215179003683 + 39.222724173706894 + 39.222724173706894 + 39.6632965982261 + 39.6632965982261 + 40.0 + 40.0 +u: 153-element Array{Float64,1}: + -75.0 + -75.0 + -75.0 + -75.0 + -75.0 + -75.0 + -75.0 + -75.0 + -59.978080111690375 + -57.32999167299642 + ⋮ + -75.0 + -50.40489310815222 + -75.0 + -50.404894730067554 + -75.0 + -50.404893310891545 + -75.0 + -54.419318668318546 + -75.0 ```` @@ -154,11 +197,7 @@ plot(sol) ```` -```` -Error: UndefVarError: sol not defined -```` - - +![](figures/08-spiking_neural_systems_5_1.png) @@ -211,22 +250,22 @@ cb = CallbackSet(current_step,threshold) ```` DiffEqBase.CallbackSet{Tuple{},Tuple{DiffEqBase.DiscreteCallback{DiffEqCall -backs.var"#61#64"{Int64},DiffEqCallbacks.var"#62#65"{Main.##WeaveSandBox#30 -9.var"#3#4"},DiffEqCallbacks.var"#63#66"{typeof(DiffEqBase.INITIALIZE_DEFAU -LT),Bool,Int64,Main.##WeaveSandBox#309.var"#3#4"}},DiffEqBase.DiscreteCallb -ack{typeof(Main.##WeaveSandBox#309.thr),typeof(Main.##WeaveSandBox#309.rese +backs.var"#61#64"{Int64},DiffEqCallbacks.var"#62#65"{Main.##WeaveSandBox#33 +7.var"#3#4"},DiffEqCallbacks.var"#63#66"{typeof(DiffEqBase.INITIALIZE_DEFAU +LT),Bool,Int64,Main.##WeaveSandBox#337.var"#3#4"}},DiffEqBase.DiscreteCallb +ack{typeof(Main.##WeaveSandBox#337.thr),typeof(Main.##WeaveSandBox#337.rese t!),typeof(DiffEqBase.INITIALIZE_DEFAULT)}}}((), (DiffEqBase.DiscreteCallba ck{DiffEqCallbacks.var"#61#64"{Int64},DiffEqCallbacks.var"#62#65"{Main.##We -aveSandBox#309.var"#3#4"},DiffEqCallbacks.var"#63#66"{typeof(DiffEqBase.INI -TIALIZE_DEFAULT),Bool,Int64,Main.##WeaveSandBox#309.var"#3#4"}}(DiffEqCallb +aveSandBox#337.var"#3#4"},DiffEqCallbacks.var"#63#66"{typeof(DiffEqBase.INI +TIALIZE_DEFAULT),Bool,Int64,Main.##WeaveSandBox#337.var"#3#4"}}(DiffEqCallb acks.var"#61#64"{Int64}(50), DiffEqCallbacks.var"#62#65"{Main.##WeaveSandBo -x#309.var"#3#4"}(Main.##WeaveSandBox#309.var"#3#4"()), DiffEqCallbacks.var" +x#337.var"#3#4"}(Main.##WeaveSandBox#337.var"#3#4"()), DiffEqCallbacks.var" #63#66"{typeof(DiffEqBase.INITIALIZE_DEFAULT),Bool,Int64,Main.##WeaveSandBo -x#309.var"#3#4"}(DiffEqBase.INITIALIZE_DEFAULT, true, 50, Main.##WeaveSandB -ox#309.var"#3#4"()), Bool[1, 1]), DiffEqBase.DiscreteCallback{typeof(Main.# -#WeaveSandBox#309.thr),typeof(Main.##WeaveSandBox#309.reset!),typeof(DiffEq -Base.INITIALIZE_DEFAULT)}(Main.##WeaveSandBox#309.thr, Main.##WeaveSandBox# -309.reset!, DiffEqBase.INITIALIZE_DEFAULT, Bool[1, 1]))) +x#337.var"#3#4"}(DiffEqBase.INITIALIZE_DEFAULT, true, 50, Main.##WeaveSandB +ox#337.var"#3#4"()), Bool[1, 1]), DiffEqBase.DiscreteCallback{typeof(Main.# +#WeaveSandBox#337.thr),typeof(Main.##WeaveSandBox#337.reset!),typeof(DiffEq +Base.INITIALIZE_DEFAULT)}(Main.##WeaveSandBox#337.thr, Main.##WeaveSandBox# +337.reset!, DiffEqBase.INITIALIZE_DEFAULT, Bool[1, 1]))) ```` @@ -260,11 +299,7 @@ plot(sol, vars=1) ```` -```` -Error: UndefVarError: top not defined -```` - - +![](figures/08-spiking_neural_systems_9_1.png) @@ -276,11 +311,7 @@ plot(sol, vars=2) ```` -```` -Error: UndefVarError: sol not defined -```` - - +![](figures/08-spiking_neural_systems_10_1.png) @@ -298,11 +329,7 @@ plot(sol, vars=1) ```` -```` -Error: UndefVarError: top not defined -```` - - +![](figures/08-spiking_neural_systems_11_1.png) @@ -388,11 +415,7 @@ plot(sol, vars=1) ```` -```` -Error: UndefVarError: top not defined -```` - - +![](figures/08-spiking_neural_systems_14_1.png) @@ -404,11 +427,7 @@ plot(sol, vars=[2,3,4], tspan=(105.0,130.0)) ```` -```` -Error: UndefVarError: sol not defined -```` - - +![](figures/08-spiking_neural_systems_15_1.png) @@ -466,11 +485,7 @@ plot(sol, vars=1) ```` -```` -Error: UndefVarError: top not defined -```` - - +![](figures/08-spiking_neural_systems_17_1.png) @@ -486,11 +501,7 @@ plot!(sol, vars=1) ```` -```` -Error: UndefVarError: top not defined -```` - - +![](figures/08-spiking_neural_systems_18_1.png) @@ -534,11 +545,7 @@ plot(sol, vars=1) ```` -```` -Error: UndefVarError: top not defined -```` - - +![](figures/08-spiking_neural_systems_19_1.png) ````julia @@ -546,11 +553,7 @@ plot(sol, vars=7) ```` -```` -Error: UndefVarError: sol not defined -```` - - +![](figures/08-spiking_neural_systems_20_1.png) @@ -562,11 +565,7 @@ plot(sol, vars=[5,6]) ```` -```` -Error: UndefVarError: sol not defined -```` - - +![](figures/08-spiking_neural_systems_21_1.png) @@ -585,11 +584,7 @@ plot(sol, vars=7) ```` -```` -Error: UndefVarError: top not defined -```` - - +![](figures/08-spiking_neural_systems_22_1.png) ````julia @@ -597,11 +592,7 @@ plot(sol, vars=[5,6]) ```` -```` -Error: UndefVarError: sol not defined -```` - - +![](figures/08-spiking_neural_systems_23_1.png) @@ -620,11 +611,7 @@ plot(sol, vars=7) ```` -```` -Error: UndefVarError: top not defined -```` - - +![](figures/08-spiking_neural_systems_24_1.png) ````julia @@ -632,11 +619,7 @@ plot(sol, vars=[5,6]) ```` -```` -Error: UndefVarError: sol not defined -```` - - +![](figures/08-spiking_neural_systems_25_1.png) @@ -644,3 +627,58 @@ Just changing those two time constants has changed the dynamics to short-term de ## Summary That's it for now. Thanks for making it this far. If you want to learn more about neuronal dynamics, [this is a great resource](https://neuronaldynamics.epfl.ch/online/index.html). If you want to learn more about Julia check out the [official website](https://julialang.org/) and to learn more about the DifferentialEquations package you are in the right place, because this chapter is part of a [larger tutorial series about just that](https://github.com/SciML/SciMLTutorials.jl). + + +## Appendix + + This tutorial is part of the SciMLTutorials.jl repository, found at: . + For more information on doing scientific machine learning (SciML) with open source software, check out . + +To locally run this tutorial, do the following commands: +``` +using SciMLTutorials +SciMLTutorials.weave_file("models","08-spiking_neural_systems.jmd") +``` + +Computer Information: +``` +Julia Version 1.4.2 +Commit 44fa15b150* (2020-05-23 18:35 UTC) +Platform Info: + OS: Linux (x86_64-pc-linux-gnu) + CPU: Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz + WORD_SIZE: 64 + LIBM: libopenlibm + LLVM: libLLVM-8.0.1 (ORCJIT, skylake) +Environment: + JULIA_LOAD_PATH = /builds/JuliaGPU/DiffEqTutorials.jl: + JULIA_DEPOT_PATH = /builds/JuliaGPU/DiffEqTutorials.jl/.julia + JULIA_CUDA_MEMORY_LIMIT = 2147483648 + JULIA_NUM_THREADS = 8 + +``` + +Package Information: + +``` +Status `/builds/JuliaGPU/DiffEqTutorials.jl/tutorials/models/Project.toml` +[479239e8-5488-4da2-87a7-35f2df7eef83] Catalyst 5.0.0 +[459566f4-90b8-5000-8ac3-15dfb0a30def] DiffEqCallbacks 2.14.1 +[f3b72e0c-5b89-59e1-b016-84e28bfd966d] DiffEqDevTools 2.27.0 +[055956cb-9e8b-5191-98cc-73ae4a59e68a] DiffEqPhysics 3.6.0 +[0c46a032-eb83-5123-abaf-570d42b7fbaa] DifferentialEquations 6.15.0 +[31c24e10-a181-5473-b8eb-7969acd0382f] Distributions 0.23.12 +[587475ba-b771-5e3f-ad9e-33799f191a9c] Flux 0.11.1 +[f6369f11-7733-5829-9624-2563aa707210] ForwardDiff 0.10.12 +[23fbe1c1-3f47-55db-b15f-69d7ec21a316] Latexify 0.14.0 +[961ee093-0014-501f-94e3-6117800e7a78] ModelingToolkit 3.20.0 +[2774e3e8-f4cf-5e23-947b-6d7e65073b56] NLsolve 4.4.1 +[315f7962-48a3-4962-8226-d0f33b1235f0] NeuralPDE 2.3.0 +[429524aa-4258-5aef-a3af-852621145aeb] Optim 1.2.0 +[1dea7af3-3e70-54e6-95c3-0bf5283fa5ed] OrdinaryDiffEq 5.42.8 +[91a5bcdd-55d7-5caf-9e0b-520d859cae80] Plots 1.6.5 +[731186ca-8d62-57ce-b412-fbd966d074cd] RecursiveArrayTools 2.7.0 +[789caeaf-c7a9-5a7d-9973-96adeb23e2a0] StochasticDiffEq 6.26.0 +[37e2e46d-f89d-539d-b4ee-838fcccc9c8e] LinearAlgebra +[2f01184e-e22b-5df5-ae63-d93ebab69eaf] SparseArrays +``` diff --git a/markdown/models/figures/08-spiking_neural_systems_10_1.png b/markdown/models/figures/08-spiking_neural_systems_10_1.png index 52c304d9..cc0dc224 100644 Binary files a/markdown/models/figures/08-spiking_neural_systems_10_1.png and b/markdown/models/figures/08-spiking_neural_systems_10_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_11_1.png b/markdown/models/figures/08-spiking_neural_systems_11_1.png index 1e118c9a..a3e0a3fe 100644 Binary files a/markdown/models/figures/08-spiking_neural_systems_11_1.png and b/markdown/models/figures/08-spiking_neural_systems_11_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_14_1.png b/markdown/models/figures/08-spiking_neural_systems_14_1.png index 84c640e9..f4d148b9 100644 Binary files a/markdown/models/figures/08-spiking_neural_systems_14_1.png and b/markdown/models/figures/08-spiking_neural_systems_14_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_15_1.png b/markdown/models/figures/08-spiking_neural_systems_15_1.png index 6fcd692d..87653a61 100644 Binary files a/markdown/models/figures/08-spiking_neural_systems_15_1.png and b/markdown/models/figures/08-spiking_neural_systems_15_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_17_1.png b/markdown/models/figures/08-spiking_neural_systems_17_1.png new file mode 100644 index 00000000..138afa80 Binary files /dev/null and b/markdown/models/figures/08-spiking_neural_systems_17_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_18_1.png b/markdown/models/figures/08-spiking_neural_systems_18_1.png new file mode 100644 index 00000000..91797b92 Binary files /dev/null and b/markdown/models/figures/08-spiking_neural_systems_18_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_19_1.png b/markdown/models/figures/08-spiking_neural_systems_19_1.png new file mode 100644 index 00000000..6c5e48cc Binary files /dev/null and b/markdown/models/figures/08-spiking_neural_systems_19_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_20_1.png b/markdown/models/figures/08-spiking_neural_systems_20_1.png new file mode 100644 index 00000000..b02d2b28 Binary files /dev/null and b/markdown/models/figures/08-spiking_neural_systems_20_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_21_1.png b/markdown/models/figures/08-spiking_neural_systems_21_1.png new file mode 100644 index 00000000..6efee56f Binary files /dev/null and b/markdown/models/figures/08-spiking_neural_systems_21_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_22_1.png b/markdown/models/figures/08-spiking_neural_systems_22_1.png new file mode 100644 index 00000000..468dc2ae Binary files /dev/null and b/markdown/models/figures/08-spiking_neural_systems_22_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_23_1.png b/markdown/models/figures/08-spiking_neural_systems_23_1.png new file mode 100644 index 00000000..d340604c Binary files /dev/null and b/markdown/models/figures/08-spiking_neural_systems_23_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_24_1.png b/markdown/models/figures/08-spiking_neural_systems_24_1.png new file mode 100644 index 00000000..05dbe6c4 Binary files /dev/null and b/markdown/models/figures/08-spiking_neural_systems_24_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_25_1.png b/markdown/models/figures/08-spiking_neural_systems_25_1.png new file mode 100644 index 00000000..1e6bc1ee Binary files /dev/null and b/markdown/models/figures/08-spiking_neural_systems_25_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_5_1.png b/markdown/models/figures/08-spiking_neural_systems_5_1.png index 24debf59..a78c21e1 100644 Binary files a/markdown/models/figures/08-spiking_neural_systems_5_1.png and b/markdown/models/figures/08-spiking_neural_systems_5_1.png differ diff --git a/markdown/models/figures/08-spiking_neural_systems_9_1.png b/markdown/models/figures/08-spiking_neural_systems_9_1.png index a82bc89b..e763f5db 100644 Binary files a/markdown/models/figures/08-spiking_neural_systems_9_1.png and b/markdown/models/figures/08-spiking_neural_systems_9_1.png differ diff --git a/notebook/models/08-spiking_neural_systems.ipynb b/notebook/models/08-spiking_neural_systems.ipynb index abdc2d78..70813af5 100644 --- a/notebook/models/08-spiking_neural_systems.ipynb +++ b/notebook/models/08-spiking_neural_systems.ipynb @@ -378,6 +378,15 @@ "Just changing those two time constants has changed the dynamics to short-term depression. This is still frequency dependent. Changing these parameters can generate a variety of different short-term dynamics.\n\n## Summary\nThat's it for now. Thanks for making it this far. If you want to learn more about neuronal dynamics, [this is a great resource](https://neuronaldynamics.epfl.ch/online/index.html). If you want to learn more about Julia check out the [official website](https://julialang.org/) and to learn more about the DifferentialEquations package you are in the right place, because this chapter is part of a [larger tutorial series about just that](https://github.com/SciML/SciMLTutorials.jl)." ], "metadata": {} + }, + { + "outputs": [], + "cell_type": "code", + "source": [ + "using SciMLTutorials\nSciMLTutorials.tutorial_footer(WEAVE_ARGS[:folder],WEAVE_ARGS[:file])" + ], + "metadata": {}, + "execution_count": null } ], "nbformat_minor": 2, @@ -386,11 +395,11 @@ "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.5.1" + "version": "1.4.2" }, "kernelspec": { - "name": "julia-1.5", - "display_name": "Julia 1.5.1", + "name": "julia-1.4", + "display_name": "Julia 1.4.2", "language": "julia" } }, diff --git a/pdf/models/08-spiking_neural_systems.pdf b/pdf/models/08-spiking_neural_systems.pdf index d53e617e..013b4d4e 100644 Binary files a/pdf/models/08-spiking_neural_systems.pdf and b/pdf/models/08-spiking_neural_systems.pdf differ diff --git a/script/models/08-spiking_neural_systems.jl b/script/models/08-spiking_neural_systems.jl index 7d33603e..1561cf92 100644 --- a/script/models/08-spiking_neural_systems.jl +++ b/script/models/08-spiking_neural_systems.jl @@ -228,3 +228,7 @@ plot(sol, vars=7) plot(sol, vars=[5,6]) + +using SciMLTutorials +SciMLTutorials.tutorial_footer(WEAVE_ARGS[:folder],WEAVE_ARGS[:file]) +