00001
00005 #ifndef _GABA_BSYNAPSE_H_
00006 #define _GABA_BSYNAPSE_H_
00007
00008 #include "GABA_BResponse.h"
00009 #include "GABA_BResponseODE.h"
00010
00011 #include "GenericStaticSpikingSynapse.h"
00012 #include "GenericConductanceBasedSpikingSynapse.h"
00014
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00036
00038
00039 class GABA_BSynapseODE : public GenericStaticSpikingSynapse<
00040 GenericConductanceBasedSpikingSynapse<
00041 GABA_BResponseODE > >
00042 {
00043 SIMOBJECT(GABA_BSynapseODE, AdvancePhase::SpikeDriven)
00044
00045 public:
00046 GABA_BSynapseODE(
00047 const float W = 1e-9,
00048 const float delay = 2e-4,
00049 const float Erev = -90e-3,
00050 const float k1 = 0.09*10e4,
00051 const float k2 = 1.2,
00052 const float k3 = 180.0,
00053 const float k4 = 34.0,
00054 const float kd = 100.0,
00055 const float dead_time = 1e-3,
00056 const float Cdur = 1.0e-3,
00057 const float Cmax = 0.5e-3,
00058 const int n = 4)
00059 {
00060 this->W = W;
00061 this->delay = delay;
00062 this->Erev = Erev;
00063
00064 this->g_max = W;
00065 this->k1=k1;
00066 this->k2=k2;
00067 this->k3=k3;
00068 this->k4=k4;
00069 this->kd=kd;
00070 this->dead_time=dead_time;
00071 this->Cdur=Cdur;
00072 this->Cmax=Cmax;
00073 this->n=n;
00074 };
00075
00076 };
00077
00079
00081
00082
00083 class GABA_BSynapse : public GenericStaticSpikingSynapse<
00084 GenericConductanceBasedSpikingSynapse<
00085 GABA_BResponse > >
00086 {
00087 SIMOBJECT(GABA_BSynapse, AdvancePhase::SpikeDriven)
00088
00089 public:
00090 GABA_BSynapse(
00091 const float W = 1e-9,
00092 const float delay = 2e-4,
00093 const float Erev = -90e-3,
00094 const float k1 = 0.09*10e6,
00095 const float k2 = 1.2,
00096 const float k3 = 180.0,
00097 const float k4 = 34.0,
00098 const float kd = 100.0,
00099 const float dead_time = 1e-3,
00100 const float Cdur = 0.5e-3,
00101 const float Cmax = 1.0e-3,
00102 const int n = 4)
00103 {
00104 this->W = W;
00105 this->delay = delay;
00106 this->Erev = Erev;
00107
00108 this->g_max = W;
00109 this->k1=k1;
00110 this->k2=k2;
00111 this->k3=k3;
00112 this->k4=k4;
00113 this->kd=kd;
00114 this->dead_time=dead_time;
00115 this->Cmax=Cmax;
00116 this->Cdur=Cdur;
00117 this->n=n;
00118 };
00119
00120 };
00121
00122
00123
00124
00126
00128
00129
00130 class GABA_BSynapseNest : public GenericStaticSpikingSynapse<
00131 GenericConductanceBasedSpikingSynapse<
00132 GABA_BResponseNest > >
00133 {
00134 SIMOBJECT(GABA_BSynapseNest, AdvancePhase::SpikeDriven)
00135
00136 public:
00137 GABA_BSynapseNest(
00138 const float W = 1e-9,
00139 const float delay = 2e-4,
00140 const float Erev = -90e-3,
00141
00142 const float k1 = 0.09*10e6,
00143 const float k2 = 1.2,
00144 const float k3 = 180.0,
00145 const float k4 = 34.0,
00146 const float kd = 100.0,
00147 const float pulse = 1.105*10e-3,
00148 const float T = 1e-3,
00149 const int n = 4)
00150 {
00151 this->W = W;
00152 this->delay = delay;
00153 this->Erev = Erev;
00154
00155 this->g_max = W;
00156 this->k1=k1;
00157 this->k2=k2;
00158 this->k3=k3;
00159 this->k4=k4;
00160 this->kd=kd;
00161 this->T=T;
00162 this->pulse=pulse;
00163 this->n=n;
00164 };
00165
00166 };
00167
00168
00169 #endif //_GABA_BSYNAPSE_H_