CARLsim
5.0.0
CARLsim: a GPU-accelerated SNN simulator
Main Page
User Guide
1. Getting Started
2. Basic Concepts
3. Neurons, Synapses, and Groups
4. Connections
5. Synaptic Plasticity
6. Input
7. Monitoring
8. Saving and Loading
9. MATLAB Offline Analysis Toolbox (OAT)
10. ECJ
11. Regression Suite
12. Advanced Topics
13. pyCARL
Tutorial
1. Basic Concepts
2. 80-20 Random Spiking Network
3. Plasticity
4. Image Processing
5. Motion Energy
6. Simple Weight Tuner
7. Parameter Tuning Interface (PTI)
8. Multi-Compartment Models
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
y
z
~
Functions
a
b
c
d
e
f
g
h
i
l
n
o
p
r
s
t
u
v
w
~
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
v
w
x
y
z
Enumerations
Enumerator
a
c
f
i
m
n
u
w
Related Functions
Files
File List
File Members
All
a
b
c
d
e
f
g
h
i
k
l
m
n
p
r
s
t
u
Functions
Variables
Typedefs
Enumerations
Enumerator
a
b
c
d
e
f
g
h
i
m
n
p
r
s
t
u
Macros
a
c
d
e
g
i
k
l
m
n
p
s
t
u
•
All
Classes
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
carlsim_definitions.h
Go to the documentation of this file.
1
/* * Copyright (c) 2016 Regents of the University of California. All rights reserved.
2
*
3
* Redistribution and use in source and binary forms, with or without
4
* modification, are permitted provided that the following conditions
5
* are met:
6
*
7
* 1. Redistributions of source code must retain the above copyright
8
* notice, this list of conditions and the following disclaimer.
9
*
10
* 2. Redistributions in binary form must reproduce the above copyright
11
* notice, this list of conditions and the following disclaimer in the
12
* documentation and/or other materials provided with the distribution.
13
*
14
* 3. The names of its contributors may not be used to endorse or promote
15
* products derived from this software without specific prior written
16
* permission.
17
*
18
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
22
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
23
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
24
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
25
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
26
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
27
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
*
30
* *********************************************************************************************** *
31
* CARLsim
32
* created by: (MDR) Micah Richert, (JN) Jayram M. Nageswaran
33
* maintained by:
34
* (MA) Mike Avery <averym@uci.edu>
35
* (MB) Michael Beyeler <mbeyeler@uci.edu>,
36
* (KDC) Kristofor Carlson <kdcarlso@uci.edu>
37
* (TSC) Ting-Shuo Chou <tingshuc@uci.edu>
38
* (HK) Hirak J Kashyap <kashyaph@uci.edu>
39
*
40
* CARLsim v1.0: JM, MDR
41
* CARLsim v2.0/v2.1/v2.2: JM, MDR, MA, MB, KDC
42
* CARLsim3: MB, KDC, TSC
43
* CARLsim4: TSC, HK
44
* CARLsim5: HK, JX, KC
45
*
46
* CARLsim available from http://socsci.uci.edu/~jkrichma/CARLsim/
47
* Ver 12/31/2016
48
*/
49
50
#ifndef _CARLSIM_DEFINITIONS_H_
51
#define _CARLSIM_DEFINITIONS_H_
52
53
54
56
#define ALL -1
57
#define ANY -1
58
59
60
#define SYN_FIXED false
61
#define SYN_PLASTIC true
62
63
// Bit flags to be used to specify the type of neuron. Future types can be added in the future such as Dopamine, etc.
64
// Yes, they should be bit flags because some neurons release more than one transmitter at a synapse.
65
#define UNKNOWN_NEURON (0)
66
#define POISSON_NEURON (1 << 0)
67
#define TARGET_AMPA (1 << 1)
68
#define TARGET_NMDA (1 << 2)
69
#define TARGET_GABAa (1 << 3)
70
#define TARGET_GABAb (1 << 4)
71
#define TARGET_DA (1 << 5)
72
#define TARGET_5HT (1 << 6)
73
#define TARGET_ACh (1 << 7)
74
#define TARGET_NE (1 << 8)
75
76
#define INHIBITORY_NEURON (TARGET_GABAa | TARGET_GABAb)
77
#define EXCITATORY_NEURON (TARGET_NMDA | TARGET_AMPA)
78
#define DOPAMINERGIC_NEURON (TARGET_DA | EXCITATORY_NEURON)
79
#define EXCITATORY_POISSON (EXCITATORY_NEURON | POISSON_NEURON)
80
#define INHIBITORY_POISSON (INHIBITORY_NEURON | POISSON_NEURON)
81
#define IS_INHIBITORY_TYPE(type) (((type) & TARGET_GABAa) || ((type) & TARGET_GABAb))
82
#define IS_EXCITATORY_TYPE(type) (!IS_INHIBITORY_TYPE(type))
83
84
#define CARLSIM_ERROR(where, what) fprintf(stderr,"\033[31;1m[USER ERROR %s] %s\033[0m\n",where,what)
85
#define CARLSIM_WARN(where, what) fprintf(stderr,"\033[33;1m[USER WARNING %s] %s\033[0m\n",where,what)
86
#define CARLSIM_INFO(where, what) fprintf(stdout,"\033[%s] %s\n",where,what)
87
88
#define MAX_NUM_CUDA_DEVICES 8
89
90
// maximum number of compartmental connections allowed per group
91
#define MAX_NUM_COMP_CONN 4
92
93
#endif
carlsim
interface
inc
carlsim_definitions.h
Generated on Sun Jul 19 2020 14:56:44 for CARLsim by
1.8.18