|
1 | 1 | using ModelingToolkit, OrdinaryDiffEq, NonlinearSolve, Test
|
| 2 | +using ModelingToolkit: D_nounits as D, t_nounits as t |
2 | 3 |
|
3 |
| -@parameters t g e b |
| 4 | +@parameters g e b |
4 | 5 | @variables v(t) w(t) F(t)
|
5 |
| -@derivatives D' ~ t |
6 | 6 | single_neuron_eqs = [
|
7 | 7 | D(v) ~ min(max(-2 - v, v), 2 - v) - w + F, # add the flux term
|
8 | 8 | D(w) ~ e * (v - g * w + b)
|
9 | 9 | ]
|
10 | 10 | n1 = ODESystem(single_neuron_eqs, t, [v, w, F], [g, e, b], name = :n1)
|
11 | 11 | n2 = ODESystem(single_neuron_eqs, t, [v, w, F], [g, e, b], name = :n2)
|
12 |
| -@parameters D Dk |
13 |
| -connections = [0 ~ n1.F - D * Dk * max(n1.v - n2.v, 0) |
14 |
| - 0 ~ n2.F - D * max(n2.v - n1.v, 0)] |
15 |
| -connected = ODESystem(connections, t, [], [D, Dk], systems = [n1, n2], name = :connected) |
| 12 | +@parameters Di Dk |
| 13 | +connections = [0 ~ n1.F - Di * Dk * max(n1.v - n2.v, 0) |
| 14 | + 0 ~ n2.F - Di * max(n2.v - n1.v, 0)] |
| 15 | +connected = ODESystem(connections, t, [], [Di, Dk], systems = [n1, n2], name = :connected) |
16 | 16 | connected = complete(connected)
|
17 | 17 |
|
18 | 18 | u0 = [
|
|
0 commit comments