You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
from my best point of view, codes in the header file "tsodyks_synapse.h" from the line 259 to 281 are not correct
double Puu = ( tau_fac_ == 0.0 ) ? 0.0 : std::exp( -h / tau_fac_ );
double Pyy = std::exp( -h / tau_psc_ );
double Pzz = std::expm1( -h / tau_rec_ );
double Pxy = ( Pzz * tau_rec_ - ( Pyy - 1.0 ) * tau_psc_ ) / ( tau_psc_ - tau_rec_ );
double z = 1.0 - x_ - y_;
// propagation t_lastspike_ -> t_spike
// don't change the order !
u_ *= Puu;
x_ += Pxy * y_ - Pzz * z;
y_ *= Pyy;
// delta function u
u_ += U_ * ( 1.0 - u_ );
Those codes implement the solution of some differential equations in the paper of Tsosyks 2000:
dx/dt = z/tau_rec - u * x * delta_function(t - tsp) (1)
dy/dt = -y/tau_psc + u * x * delta_function(t - tsp) (2)
dz/dt = y/tau_psc - z / tau_rec (3)
du/dt = -u/tau_fac + U * (1-u) * delta_function(t - tsp) (4)
I don't quite follow your last step. Note that dx/dt + dy/dt + dz/dt = 0, so the sum x + y + z never changes, and in the model it is assumed to be 1.
If you integrate dz/dt = -dx/dt - dy/dt from 0 to t, you end up with z(t) = -x(t) - y(t) + x(0) + y(0) + z(0). Since the sum over the last three terms is 1, you end up with z = 1 - x - y.
Describe the bug
from my best point of view, codes in the header file "tsodyks_synapse.h" from the line 259 to 281 are not correct
double Puu = ( tau_fac_ == 0.0 ) ? 0.0 : std::exp( -h / tau_fac_ );
double Pyy = std::exp( -h / tau_psc_ );
double Pzz = std::expm1( -h / tau_rec_ );
double Pxy = ( Pzz * tau_rec_ - ( Pyy - 1.0 ) * tau_psc_ ) / ( tau_psc_ - tau_rec_ );
double z = 1.0 - x_ - y_;
// propagation t_lastspike_ -> t_spike
// don't change the order !
u_ *= Puu;
x_ += Pxy * y_ - Pzz * z;
y_ *= Pyy;
// delta function u
u_ += U_ * ( 1.0 - u_ );
Those codes implement the solution of some differential equations in the paper of Tsosyks 2000:
dx/dt = z/tau_rec - u * x * delta_function(t - tsp) (1)
dy/dt = -y/tau_psc + u * x * delta_function(t - tsp) (2)
dz/dt = y/tau_psc - z / tau_rec (3)
du/dt = -u/tau_fac + U * (1-u) * delta_function(t - tsp) (4)
from (1) + (3):
dx/dt + dz/dt = y/tau_psc - uxdelta_function(t-tsp)
(2) -> dx/dt + dz/dt = -dy/dt
-> dz/dt = -dx/dt - dy/dt
-> z = z0 - x - y
where z0 is z(t = tsp)
Any explain?
The text was updated successfully, but these errors were encountered: