GeNN  1.1
GPU enhanced Neuronal Networks (GeNN)
 All Classes Files Functions Variables Typedefs Macros Pages
extra_postsynapses.h
Go to the documentation of this file.
1 
2 
3  // Add new postsynapse type - Exp Decay:
4  ps.varNames.clear();
5  ps.varTypes.clear();
6 
7  ps.varNames.push_back(tS("g_PS"));
8  ps.varTypes.push_back(tS("float"));
9  ps.pNames.clear();
10 
11  ps.pNames.push_back(tS("tau_syn_PS"));
12  ps.pNames.push_back(tS("E_PS"));
13  ps.dpNames.clear();
14 
15  ps.postSyntoCurrent = tS(" \
16  0; \n \
17  float Isyn_NB = 0; \n \
18  { \n \
19  float v_PS = lV_NB; \n \
20  float g_in_PS = $(inSyn); \
21 $(g_PS) = $(g_PS)+g_in_PS; \n \
22 Isyn_NB += ($(g_PS)*($(E_PS)-v_PS)); \n \
23  } \n \
24 ");
25 
26  ps.postSynDecay = tS(" \
27  $(g_PS) += (-$(g_PS)/$(tau_syn_PS))*DT; \n \
28  $(inSyn) = 0; \
29  ");
30 
31  postSynModels.push_back(ps);
32 
33 
34 
35  // Add new postsynapse type - Exp Decay:
36  ps.varNames.clear();
37  ps.varTypes.clear();
38 
39  ps.varNames.push_back(tS("g_PS"));
40  ps.varTypes.push_back(tS("float"));
41  ps.pNames.clear();
42 
43  ps.pNames.push_back(tS("tau_syn_PS"));
44  ps.pNames.push_back(tS("E_PS"));
45  ps.dpNames.clear();
46 
47  ps.postSyntoCurrent = tS(" \
48  0; \n \
49  { \n \
50  float v_PS = lV_NB; \n \
51  float g_in_PS = $(inSyn); \
52 $(g_PS) = $(g_PS)+g_in_PS; \n \
53 Isyn_NB += ($(g_PS)*($(E_PS)-v_PS)); \n \
54  } \n \
55 ");
56 
57  ps.postSynDecay = tS(" \
58  $(g_PS) += (-$(g_PS)/$(tau_syn_PS))*DT; \n \
59  $(inSyn) = 0; \
60  ");
61 
62  postSynModels.push_back(ps);
63 
64 
65 
66  // Add new postsynapse type - Exp Decay:
67  ps.varNames.clear();
68  ps.varTypes.clear();
69 
70  ps.varNames.push_back(tS("g_PS"));
71  ps.varTypes.push_back(tS("float"));
72  ps.pNames.clear();
73 
74  ps.pNames.push_back(tS("tau_syn_PS"));
75  ps.pNames.push_back(tS("E_PS"));
76  ps.dpNames.clear();
77 
78  ps.postSyntoCurrent = tS(" \
79  0; \n \
80  float Isyn_NB = 0; \n \
81  { \n \
82  float v_PS = lV_NB; \n \
83  float g_in_PS = $(inSyn); \
84 $(g_PS) = $(g_PS)+g_in_PS; \n \
85 Isyn_NB += ($(g_PS)*($(E_PS)-v_PS)); \n \
86  } \n \
87 ");
88 
89  ps.postSynDecay = tS(" \
90  $(g_PS) += (-$(g_PS)/$(tau_syn_PS))*DT; \n \
91  $(inSyn) = 0; \
92  ");
93 
94  postSynModels.push_back(ps);
95 
96 
vector< postSynModel > postSynModels
Definition: utils.h:7
#define tS(X)
Macro providing the abbreviated syntax tS() instead of toString().
Definition: toString.h:43