|
|
@@ -89,18 +89,18 @@ double Thalamic_Column::I_et (int N) const{ |
|
|
|
|
|
/* Inhibitory input to TC population */
|
|
|
double Thalamic_Column::I_gt (int N) const{
|
|
|
- double I = g_AMPA * s_rt[N]* (Vt[N]- E_GABA);
|
|
|
+ double I = g_GABA * s_gt[N]* (Vt[N]- E_GABA);
|
|
|
return I;
|
|
|
}
|
|
|
/* Excitatory input to RE population */
|
|
|
double Thalamic_Column::I_er (int N) const{
|
|
|
- double I = g_GABA * s_er[N]* (Vr[N]- E_AMPA);
|
|
|
+ double I = g_AMPA * s_er[N]* (Vr[N]- E_AMPA);
|
|
|
return I;
|
|
|
}
|
|
|
|
|
|
/* Inhibitory input to RE population */
|
|
|
double Thalamic_Column::I_gr (int N) const{
|
|
|
- double I = g_GABA * s_rr[N]* (Vr[N]- E_GABA);
|
|
|
+ double I = g_GABA * s_gr[N]* (Vr[N]- E_GABA);
|
|
|
return I;
|
|
|
}
|
|
|
/****************************************************************************************************/
|
|
|
@@ -135,15 +135,15 @@ double Thalamic_Column::h_inf_T_r (int N) const{ |
|
|
return h;
|
|
|
}
|
|
|
|
|
|
-/* deactivation time in RE population after Destexhe 1996 */
|
|
|
+/* Deactivation time in RE population after Destexhe 1996 */
|
|
|
double Thalamic_Column::tau_h_T_t (int N) const{
|
|
|
- double tau = (30.8 + (211.4 + exp((Vt[N]+115.2)/5))/(1 + exp((Vt[N]+86)/3.2)))/pow(3, 1.2);
|
|
|
+ double tau = (30.8 + (211.4 + exp((Vt[N]+115.2)/5))/(1 + exp((Vt[N]+86)/3.2)))/3.7371928;
|
|
|
return tau;
|
|
|
}
|
|
|
|
|
|
/* Deactivation time in RE population after Destexhe 1996 */
|
|
|
double Thalamic_Column::tau_h_T_r (int N) const{
|
|
|
- double tau = (85 + 1/(exp((Vr[N]+48)/4) + exp(-(Vr[N]+407)/50)))/pow(3, 1.2);
|
|
|
+ double tau = (85 + 1/(exp((Vr[N]+48)/4) + exp(-(Vr[N]+407)/50)))/3.7371928;
|
|
|
return tau;
|
|
|
}
|
|
|
/****************************************************************************************************/
|
|
|
@@ -169,7 +169,7 @@ double Thalamic_Column::tau_m_h (int N) const{ |
|
|
/* Instantaneous calcium binding onto messenger protein after Chen2012 */
|
|
|
double Thalamic_Column::P_h (int N) const{
|
|
|
//double P_h = k1 * pow(Ca[N], n_P)/(k1*pow(Ca[N], n_P)+k2);
|
|
|
- double P_h = k1 * Ca[N]* Ca[N]* Ca[N]/(k1* Ca[N]* Ca[N]* Ca[N]+k2);
|
|
|
+ double P_h = k1 * Ca[N] * Ca[N] * Ca[N] * Ca[N]/(k1 * Ca[N] * Ca[N] * Ca[N] * Ca[N]+k2);
|
|
|
return P_h;
|
|
|
}
|
|
|
|
|
|
@@ -252,23 +252,23 @@ double Thalamic_Column::noise_aRK(int M) const{ |
|
|
/****************************************************************************************************/
|
|
|
void Thalamic_Column::set_RK (int N) {
|
|
|
extern const double dt;
|
|
|
- Vt [N+1] = Vt [0] + A[N]*dt*(-(I_L_t(N) + I_et(N) + I_gt(N))/tau_t - (I_LK_t(N) + I_T_t(N) + I_h(N)));
|
|
|
- Vr [N+1] = Vr [0] + A[N]*dt*(-(I_L_r(N) + I_er(N) + I_gr(N))/tau_r - (I_LK_r(N) + I_T_r(N)));
|
|
|
+ Vt [N+1] = Vt [0] + A[N]*dt*(-(I_L_t(N) + I_et(N) + I_gt(N))/tau_t - C_m * (I_LK_t(N) + I_T_t(N) + I_h(N)));
|
|
|
+ Vr [N+1] = Vr [0] + A[N]*dt*(-(I_L_r(N) + I_er(N) + I_gr(N))/tau_r - C_m * (I_LK_r(N) + I_T_r(N)));
|
|
|
Ca [N+1] = Ca [0] + A[N]*dt*(alpha_Ca * I_T_t(N) - (Ca[N] - Ca_0)/tau_Ca);
|
|
|
- s_et [N+1] = s_et [0] + A[N]*dt*(x_et[N]);
|
|
|
- s_er [N+1] = s_er [0] + A[N]*dt*(x_er[N]);
|
|
|
- s_rt [N+1] = s_rt [0] + A[N]*dt*(x_rt[N]);
|
|
|
- s_rr [N+1] = s_rr [0] + A[N]*dt*(x_rr[N]);
|
|
|
- y [N+1] = y [0] + A[N]*dt*(x [N]);
|
|
|
- x_et [N+1] = x_et [0] + A[N]*dt*(pow(gamma_e, 2) * ( + N_pt * Cortex->y[N] - s_et[N]) - 2 * gamma_e * x_et[N]) + noise_xRK(N,0);
|
|
|
- x_er [N+1] = x_er [0] + A[N]*dt*(pow(gamma_e, 2) * (N_tr * get_Qt(N) + N_pr * Cortex->y[N] - s_er[N]) - 2 * gamma_e * x_er[N]);
|
|
|
- x_rt [N+1] = x_rt [0] + A[N]*dt*(pow(gamma_g, 2) * (N_rt * get_Qr(N) - s_rt[N]) - 2 * gamma_g * x_rt[N]);
|
|
|
- x_rr [N+1] = x_rr [0] + A[N]*dt*(pow(gamma_g, 2) * (N_rr * get_Qr(N) - s_rr[N]) - 2 * gamma_g * x_rr[N]);
|
|
|
- x [N+1] = x [0] + A[N]*dt*(pow(nu, 2) * ( get_Qt(N) - y [N]) - 2 * nu * x [N]);
|
|
|
h_T_t [N+1] = h_T_t[0] + A[N]*dt*(h_inf_T_t(N) - h_T_t[N])/tau_h_T_t(N);
|
|
|
h_T_r [N+1] = h_T_r[0] + A[N]*dt*(h_inf_T_r(N) - h_T_r[N])/tau_h_T_r(N);
|
|
|
m_h [N+1] = m_h [0] + A[N]*dt*((m_inf_h(N) * (1 - m_h2[N]) - m_h[N])/tau_m_h(N) - k3 * P_h(N) * m_h[N] + k4 * m_h2[N]);
|
|
|
m_h2 [N+1] = m_h2 [0] + A[N]*dt*(k3 * P_h(N) * m_h[N] - k4 * m_h2[N]);
|
|
|
+ s_et [N+1] = s_et [0] + A[N]*dt*(x_et[N]);
|
|
|
+ s_er [N+1] = s_er [0] + A[N]*dt*(x_er[N]);
|
|
|
+ s_gt [N+1] = s_gt [0] + A[N]*dt*(x_gt[N]);
|
|
|
+ s_gr [N+1] = s_gr [0] + A[N]*dt*(x_gr[N]);
|
|
|
+ y [N+1] = y [0] + A[N]*dt*(x [N]);
|
|
|
+ x_et [N+1] = x_et [0] + A[N]*dt*(pow(gamma_e, 2) * ( + N_tp * Cortex->y[N] - s_et[N]) - 2 * gamma_e * x_et[N]) + noise_xRK(N,0);
|
|
|
+ x_er [N+1] = x_er [0] + A[N]*dt*(pow(gamma_e, 2) * (N_rt * get_Qt(N) + N_rp * Cortex->y[N] - s_er[N]) - 2 * gamma_e * x_er[N]);
|
|
|
+ x_gt [N+1] = x_gt [0] + A[N]*dt*(pow(gamma_g, 2) * (N_tr * get_Qr(N) - s_gt[N]) - 2 * gamma_g * x_gt[N]);
|
|
|
+ x_gr [N+1] = x_gr [0] + A[N]*dt*(pow(gamma_g, 2) * (N_rr * get_Qr(N) - s_gr[N]) - 2 * gamma_g * x_gr[N]);
|
|
|
+ x [N+1] = x [0] + A[N]*dt*(pow(nu, 2) * ( get_Qt(N) - y [N]) - 2 * nu * x [N]);
|
|
|
}
|
|
|
/****************************************************************************************************/
|
|
|
/* end */
|
|
|
@@ -284,13 +284,13 @@ void Thalamic_Column::add_RK(void) { |
|
|
Ca [0] =(-3*Ca [0] + 2*Ca [1] + 4*Ca [2] + 2* Ca [3] + Ca [4])/6;
|
|
|
s_et [0] =(-3*s_et [0] + 2*s_et [1] + 4*s_et [2] + 2* s_et [3] + s_et [4])/6;
|
|
|
s_er [0] =(-3*s_er [0] + 2*s_er [1] + 4*s_er [2] + 2* s_er [3] + s_er [4])/6;
|
|
|
- s_rt [0] =(-3*s_rt [0] + 2*s_rt [1] + 4*s_rt [2] + 2* s_rt [3] + s_rt [4])/6;
|
|
|
- s_rr [0] =(-3*s_rr [0] + 2*s_rr [1] + 4*s_rr [2] + 2* s_rr [3] + s_rr [4])/6;
|
|
|
+ s_gt [0] =(-3*s_gt [0] + 2*s_gt [1] + 4*s_gt [2] + 2* s_gt [3] + s_gt [4])/6;
|
|
|
+ s_gr [0] =(-3*s_gr [0] + 2*s_gr [1] + 4*s_gr [2] + 2* s_gr [3] + s_gr [4])/6;
|
|
|
y [0] =(-3*y [0] + 2*y [1] + 4*y [2] + 2* y [3] + y [4])/6;
|
|
|
x_et [0] =(-3*x_et [0] + 2*x_et [1] + 4*x_et [2] + 2* x_et [3] + x_et [4])/6 + noise_aRK(0);
|
|
|
x_er [0] =(-3*x_er [0] + 2*x_er [1] + 4*x_er [2] + 2* x_er [3] + x_er [4])/6;
|
|
|
- x_rt [0] =(-3*x_rt [0] + 2*x_rt [1] + 4*x_rt [2] + 2* x_rt [3] + x_rt [4])/6;
|
|
|
- x_rr [0] =(-3*x_rr [0] + 2*x_rr [1] + 4*x_rr [2] + 2* x_rr [3] + x_rr [4])/6;
|
|
|
+ x_gt [0] =(-3*x_gt [0] + 2*x_gt [1] + 4*x_gt [2] + 2* x_gt [3] + x_gt [4])/6;
|
|
|
+ x_gr [0] =(-3*x_gr [0] + 2*x_gr [1] + 4*x_gr [2] + 2* x_gr [3] + x_gr [4])/6;
|
|
|
x [0] =(-3*x [0] + 2*x [1] + 4*x [2] + 2* x [3] + x [4])/6;
|
|
|
h_T_t [0] =(-3*h_T_t[0] + 2*h_T_t[1] + 4*h_T_t[2] + 2* h_T_t [3] + h_T_t [4])/6;
|
|
|
h_T_r [0] =(-3*h_T_r[0] + 2*h_T_r[1] + 4*h_T_r[2] + 2* h_T_r [3] + h_T_r [4])/6;
|
|
|
|
0 comments on commit
4b7a6f6