|
| CARLsim (const std::string &netName="SNN", SimMode preferredSimMode=CPU_MODE, LoggerMode loggerMode=USER, int ithGPUs=0, int randSeed=-1) |
| CARLsim constructor. Creates a new instance of class CARLsim. All input arguments are optional, but if specified will be constant throughout the lifetime of the CARLsim object. More...
|
|
| ~CARLsim () |
|
void | biasWeights (short int connId, float bias, bool updateWeightRange=false) |
| Adds a constant bias to the weight of every synapse in the connection. More...
|
|
short int | connect (int grpId1, int grpId2, const std::string &connType, const RangeWeight &wt, float connProb, const RangeDelay &delay=RangeDelay(1), const RadiusRF &radRF=RadiusRF(-1.0), bool synWtType=SYN_FIXED, float mulSynFast=1.0f, float mulSynSlow=1.0f) |
| Connects a presynaptic to a postsynaptic group using fixed/plastic weights and a range of delay values. More...
|
|
short int | connect (int grpId1, int grpId2, ConnectionGenerator *conn, bool synWtType=SYN_FIXED) |
| Shortcut to make connections with custom connectivity profile but omit scaling factors for synaptic conductances (default is 1.0 for both) More...
|
|
short int | connect (int grpId1, int grpId2, ConnectionGenerator *conn, float mulSynFast, float mulSynSlow, bool synWtType=SYN_FIXED) |
| make connections with custom connectivity profile More...
|
|
short int | connectCompartments (int grpIdLower, int grpIdUpper) |
| make a compartmental connection between two compartmentally enabled groups Note: all compartmentally connected groups must be located on the same partition. More...
|
|
int | createGroup (const std::string &grpName, int nNeur, int neurType, int preferredPartition=ANY, ComputingBackend preferredBackend=CPU_CORES) |
| creates a group of Izhikevich spiking neurons More...
|
|
int | createGroup (const std::string &grpName, const Grid3D &grid, int neurType, int preferredPartition=ANY, ComputingBackend preferredBackend=CPU_CORES) |
| Create a group of Izhikevich spiking neurons on a 3D grid (a primitive cubic Bravais lattice with cubic side length 1) More...
|
|
int | createGroupLIF (const std::string &grpName, int nNeur, int neurType, int preferredPartition=ANY, ComputingBackend preferredBackend=CPU_CORES) |
| creates a group of Leaky-Integrate-and-Fire (LIF) spiking neurons More...
|
|
int | createGroupLIF (const std::string &grpName, const Grid3D &grid, int neurType, int preferredPartition=ANY, ComputingBackend preferredBackend=CPU_CORES) |
| Create a group of LIF spiking neurons on a 3D grid (a primitive cubic Bravais lattice with cubic side length 1) More...
|
|
int | createSpikeGeneratorGroup (const std::string &grpName, int nNeur, int neurType, int preferredPartition=ANY, ComputingBackend preferredBackend=CPU_CORES) |
| creates a spike generator group More...
|
|
int | createSpikeGeneratorGroup (const std::string &grpName, const Grid3D &grid, int neurType, int preferredPartition=ANY, ComputingBackend preferredBackend=CPU_CORES) |
| create a group of spike generators on a 3D grid More...
|
|
void | findWavefrontPath (std::vector< int > &path, std::vector< float > &eligibility, int netId, int grpId, int startNId, int goalNId) |
| Extracts the path from a spiking wave front and returns the eligibility trace. More...
|
|
CARLsimState | getCARLsimState () |
| Writes population weights from gIDpre to gIDpost to file fname in binary. More...
|
|
std::vector< float > | getConductanceAMPA (int grpId) |
| gets AMPA vector of a group More...
|
|
bool | getConductanceConfig (int grpId, float &dAMPA, float &rNMDA, float &dNMDA, float &dGABAa, float &rGABAb, float &dGABAb) |
|
bool | getConductanceConfig (int grpId, int &tdAMPA, int &trNMDA, int &tdNMDA, int &tdGABAa, int &trGABAb, int &tdGABAb) |
|
std::vector< float > | getConductanceGABAa (int grpId) |
| gets GABAa vector of a group More...
|
|
std::vector< float > | getConductanceGABAb (int grpId) |
| gets GABAb vector of a group More...
|
|
std::vector< float > | getConductanceNMDA (int grpId) |
| gets NMDA vector of a group More...
|
|
ConnSTDPInfo | getConnSTDPInfo (int grpId) |
| returns the stdp information of a group specified by grpId More...
|
|
RangeDelay | getDelayRange (short int connId) |
| returns the RangeDelay struct for a specific connection ID More...
|
|
uint8_t * | getDelays (int gIDpre, int gIDpost, int &Npre, int &Npost) |
| gets delays More...
|
|
int | getGroupEndNeuronId (int grpId) |
| returns the last neuron id of a groupd specified by grpId More...
|
|
Grid3D | getGroupGrid3D (int grpId) |
| returns the 3D grid struct of a group More...
|
|
int | getGroupId (std::string grpName) |
| finds the ID of the group with name grpName More...
|
|
std::string | getGroupName (int grpId) |
| gets group name More...
|
|
GroupNeuromodulatorInfo | getGroupNeuromodulatorInfo (int grpId) |
| returns the neuromodulator information of a group specified by grpId More...
|
|
int | getGroupNumNeurons (int grpId) |
| returns the number of neurons of a group specified by grpId More...
|
|
int | getGroupStartNeuronId (int grpId) |
| returns the first neuron id of a groupd specified by grpId More...
|
|
IcalcType | getIcalcType (int grpId) |
| Returns the iCalc of a group. More...
|
|
const FILE * | getLogFpDeb () |
| returns file pointer to debug log More...
|
|
const FILE * | getLogFpErr () |
| returns file pointer to error log More...
|
|
const FILE * | getLogFpInf () |
| returns file pointer to info log More...
|
|
const FILE * | getLogFpLog () |
| returns file pointer to log file More...
|
|
int | getMaxNumCompConnections () |
| Returns the maximum number of allowed compartmental connections per group. More...
|
|
int | getNeuronId (int grpId, Point3D location) |
| returns the neuron ID for a 3D location More...
|
|
Point3D | getNeuronLocation3D (int neurId) |
| returns the 3D location a neuron codes for More...
|
|
Point3D | getNeuronLocation3D (int grpId, int relNeurId) |
| returns the 3D location a neuron codes for More...
|
|
int | getNumConnections () |
| Returns the number of connections (pairs of pre-post groups) in the network. More...
|
|
int | getNumGroups () |
| returns the number of groups in the network More...
|
|
int | getNumNeurons () |
| returns the total number of allocated neurons in the network More...
|
|
int | getNumNeuronsGen () |
| returns the total number of spike generator neurons More...
|
|
int | getNumNeuronsGenExc () |
| returns the total number of excitatory spike generator neurons More...
|
|
int | getNumNeuronsGenInh () |
| returns the total number of inhibitory spike generator neurons More...
|
|
int | getNumNeuronsReg () |
| returns the total number of regular (Izhikevich) neurons More...
|
|
int | getNumNeuronsRegExc () |
| returns the total number of regular (Izhikevich) excitatory neurons More...
|
|
int | getNumNeuronsRegInh () |
| returns the total number of regular (Izhikevich) inhibitory neurons More...
|
|
int | getNumSynapses () |
| returns the total number of allocated synaptic connections in the network More...
|
|
int | getNumSynapticConnections (short int connectionId) |
| returns the number of connections associated with a connection ID More...
|
|
int | getSimTime () |
| returns More...
|
|
int | getSimTimeMsec () |
| returns More...
|
|
int | getSimTimeSec () |
| returns More...
|
|
SpikeMonitor * | getSpikeMonitor (int grpId) |
| Returns the number of spikes per neuron for a certain group. More...
|
|
RangeWeight | getWeightRange (short int connId) |
| returns the RangeWeight struct for a specific connection ID More...
|
|
bool | isConnectionPlastic (short int connId) |
| Returns whether a connection is fixed or plastic. More...
|
|
bool | isExcitatoryGroup (int grpId) |
| returns More...
|
|
bool | isGroupWith (int grpId, IcalcType icalcType) |
|
bool | isGroupWithCOBA (int grpId) |
|
bool | isGroupWithCUBA (int grpId) |
|
bool | isGroupWithHomeostasis (int grpId) |
| Returns whether a group has homeostasis enabled. More...
|
|
bool | isInhibitoryGroup (int grpId) |
| returns More...
|
|
bool | isPoissonGroup (int grpId) |
| returns More...
|
|
bool | isSimulationWithCOBA () |
| Returns true is the network is COBA enabled. More...
|
|
bool | isSimulationWithCUBA () |
| Returns true is the network exclusivle operate on current basis. More...
|
|
void | loadSimulation (FILE *fid) |
| Loads a simulation (and network state) from file. The file pointer fid must point to a valid CARLsim network save file (created with CARLsim::saveSimulation). More...
|
|
void | printEntrails (char *buffer, unsigned length, int gGrpIdPre, int gGrpIdPost) |
| print entrails of SNN to string buffer More...
|
|
int | runNetwork (int nSec, int nMsec=0, bool printRunSummary=true) |
| run the simulation for time=(nSec*seconds + nMsec*milliseconds) More...
|
|
void | saveSimulation (const std::string &fileName, bool saveSynapseInfo=true) |
| Saves important simulation and network infos to file. More...
|
|
void | scaleWeights (short int connId, float scale, bool updateWeightRange=false) |
| reset Spike Counter to zero More...
|
|
void | setACNE12 (int grpId) |
| Sets IcalcType to ACNE12 for a specific neuron group. More...
|
|
void | setCompartmentParameters (int grpId, float couplingUp, float couplingDown) |
| Sets coupling constants G_u and G_d for the compartment. More...
|
|
void | setConductances (bool isSet) |
| Sets default values for conduction decay and rise times or disables COBA alltogether. More...
|
|
void | setConductances (bool isSet, int tdAMPA, int tdNMDA, int tdGABAa, int tdGABAb) |
| Sets custom values for conduction decay times (instantaneous rise time) or disables COBA alltogether. More...
|
|
void | setConductances (bool isSet, int tdAMPA, int trNMDA, int tdNMDA, int tdGABAa, int trGABAb, int tdGABAb) |
| Sets custom values for conduction rise and decay times or disables COBA alltogether. More...
|
|
void | setConductances (int grpId, bool isSet) |
| Sets default values for conduction decay and rise times or disables COBA for a specific neuron group. More...
|
|
void | setConductances (int grpId, bool isSet, int tdAMPA, int tdNMDA, int tdGABAa, int tdGABAb) |
| Sets IcalcType to COBA and configure custom values for conduction decay times (instantaneous rise time) for a specific neuron group. More...
|
|
void | setConductances (int grpId, bool isSet, int tdAMPA, int trNMDA, int tdNMDA, int tdGABAa, int trGABAb, int tdGABAb) |
| Sets IcalcType to COBA and configure for conduction rise and decay times for a specific neuron group. More...
|
|
void | setConnectionModulation (int preGrpId, int postGrpId, IcalcType icalcType) |
|
ConnectionMonitor * | setConnectionMonitor (int grpIdPre, int grpIdPost, const std::string &fname) |
| Sets a connection monitor for a group, custom ConnectionMonitor class. More...
|
|
void | setDefaultConductanceTimeConstants (int tdAMPA, int trNMDA, int tdNMDA, int tdGABAa, int trGABAb, int tdGABAb) |
| Sets default values for conductance time constants. More...
|
|
void | setDefaultESTDPparams (float alphaPlus, float tauPlus, float alphaMinus, float tauMinus, STDPType stdpType) |
| sets default values for E-STDP params More...
|
|
void | setDefaultHomeostasisParams (float homeoScale, float avgTimeScale) |
| Sets default homeostasis params. More...
|
|
void | setDefaultISTDPparams (float betaLTP, float betaLTD, float lambda, float delta, STDPType stdpType) |
| sets default values for I-STDP params More...
|
|
void | setDefaultSaveOptions (std::string fileName, bool saveSynapseInfo) |
| Sets default options for save file. More...
|
|
void | setDefaultSTDPparams (float alphaPlus, float tauPlus, float alphaMinus, float tauMinus, STDPType stdpType) |
| sets default STDP params More...
|
|
void | setDefaultSTPparams (int neurType, float STP_U, float STP_tau_u, float STP_tau_x) |
| Sets default values for STP params U, tau_u, and tau_x of a neuron group (pre-synaptically) More...
|
|
void | setESTDP (int preGrpId, int postGrpId, bool isSet) |
| Sets default E-STDP mode and parameters. More...
|
|
void | setESTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, ExpCurve curve) |
| Sets E-STDP with the exponential curve. More...
|
|
void | setESTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, ExpCurve curve, PkaPlcModulation modulation) |
| Sets neuromodulator controlled LTP and LTD by PKA and PCL pathways. More...
|
|
void | setESTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, TimingBasedCurve curve) |
| Sets E-STDP with the timing-based curve. More...
|
|
void | setExternalCurrent (int grpId, const std::vector< float > ¤t) |
| Sets the amount of current (mA) to inject into a group. More...
|
|
void | setExternalCurrent (int grpId, float current) |
| Sets the amount of current (mA) to inject to each neuron in a group. More...
|
|
GroupMonitor * | setGroupMonitor (int grpId, const std::string &fname, int mode=0) |
| Sets a group monitor for a group, custom GroupMonitor class. More...
|
|
void | setHomeoBaseFiringRate (int grpId, float baseFiring, float baseFiringSD=0.0f) |
| Sets the homeostatic target firing rate (enforced through homeostatic synaptic scaling) More...
|
|
void | setHomeostasis (int grpId, bool isSet, float homeoScale, float avgTimeScale) |
| Sets custom values for implementation of homeostatic synaptic scaling. More...
|
|
void | setHomeostasis (int grpId, bool isSet) |
| Sets default values for implementation of homeostatic synaptic scaling. More...
|
|
void | setIntegrationMethod (integrationMethod_t method, int numStepsPerMs) |
|
void | setISTDP (int preGrpId, int postGrpId, bool isSet) |
| Sets default I-STDP mode and parameters. More...
|
|
void | setISTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, ExpCurve curve) |
| Sets I-STDP with the exponential curve. More...
|
|
void | setISTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, PulseCurve curve) |
| Sets I-STDP with the pulse curve. More...
|
|
void | setLogFile (const std::string &fileName) |
| Sets the name of the log file. More...
|
|
void | setLogsFpCustom (FILE *fpInf=NULL, FILE *fpErr=NULL, FILE *fpDeb=NULL, FILE *fpLog=NULL) |
| Sets the file pointers for all log files in CUSTOM mode. More...
|
|
void | setNeuromodulator (int grpId, float baseDP, float tauDP, float base5HT, float tau5HT, float baseACh, float tauACh, float baseNE, float tauNE) |
| Sets baseline concentration and decay time constant of neuromodulators (DP, 5HT, ACh, NE) for a neuron group. More...
|
|
void | setNeuromodulator (int grpId, float baseDP, float tauDP, float releaseDP, bool activeDP, float base5HT, float tau5HT, float release5HT, bool active5HT, float baseACh, float tauACh, float releaseAch, bool activeACh, float baseNE, float tauNE, float releaseNE, bool activeNE) |
|
void | setNeuromodulator (int grpId, float tauDP=100.0f, float tau5HT=100.0f, float tauACh=100.0f, float tauNE=100.0f) |
| Sets default neuromodulators. More...
|
|
NeuronMonitor * | setNeuronMonitor (int grpId, const std::string &fileName) |
| Sets a Neuron Monitor for a groups, print voltage, recovery, and total current values to binary file. More...
|
|
void | setNeuronParameters (int grpId, float izh_a, float izh_a_sd, float izh_b, float izh_b_sd, float izh_c, float izh_c_sd, float izh_d, float izh_d_sd) |
| Sets Izhikevich params a, b, c, and d with as mean +- standard deviation. More...
|
|
void | setNeuronParameters (int grpId, float izh_a, float izh_b, float izh_c, float izh_d) |
| Sets Izhikevich params a, b, c, and d of a neuron group. More...
|
|
void | setNeuronParameters (int grpId, float izh_C, float izh_k, float izh_vr, float izh_vt, float izh_a, float izh_b, float izh_vpeak, float izh_c, float izh_d) |
| Sets Izhikevich params C, k, vr, vt, a, b, vpeak, c, and d of a neuron group C must be positive. There are no limits imposed on other parameters This is a nine parameter Izhikevich simple spiking model. More...
|
|
void | setNeuronParameters (int grpId, float izh_C, float izh_C_sd, float izh_k, float izh_k_sd, float izh_vr, float izh_vr_sd, float izh_vt, float izh_vt_sd, float izh_a, float izh_a_sd, float izh_b, float izh_b_sd, float izh_vpeak, float izh_vpeak_sd, float izh_c, float izh_c_sd, float izh_d, float izh_d_sd) |
| Sets Izhikevich params C, k, vr, vt, a, b, vpeak, c, and d with as mean +- standard deviation C must be positive. There are no limits imposed on other parameters This is a nine parameter Izhikevich simple spiking model. More...
|
|
void | setNeuronParametersLIF (int grpId, int tau_m, int tau_ref=0, float vTh=1.0f, float vReset=0.0f, const RangeRmem &rMem=RangeRmem(1.0f)) |
| Sets neuron parameters for a group of LIF spiking neurons. More...
|
|
void | setNM4STP (int grpId, float wSTP_U[], float wSTP_tau_u[], float wSTP_tau_x[]) |
| Sets neuromodulator targeting STP params U, tau_u, and tau_x of a neuron group (pre-synaptically) More...
|
|
void | setNM4weighted (int grpId, IcalcType type, float wDA=1.f, float w5HT=1.f, float wACh=1.f, float wNE=1.f, float wNorm=4.f, float wBase=1.0f) |
| Sets IcalcType to NM4weighted for a specific neuron group. More...
|
|
void | setSpikeGenerator (int grpId, SpikeGenerator *spikeGenFunc) |
| A SpikeCounter keeps track of the number of spikes per neuron in a group. More...
|
|
SpikeMonitor * | setSpikeMonitor (int grpId, const std::string &fileName) |
| Sets a Spike Monitor for a groups, prints spikes to binary file. More...
|
|
void | setSpikeRate (int grpId, PoissonRate *spikeRate, int refPeriod=1) |
| Sets a spike rate. More...
|
|
void | setSTDP (int preGrpId, int postGrpId, bool isSet) |
| Sets default STDP mode and params. More...
|
|
void | setSTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, float alphaPlus, float tauPlus, float alphaMinus, float tauMinus) |
| Sets STDP params for a group, custom. More...
|
|
void | setSTP (int grpId, bool isSet, float STP_U, float STP_tau_u, float STP_tau_x) |
| Sets STP params U, tau_u, and tau_x of a neuron group (pre-synaptically) More...
|
|
void | setSTP (int grpId, bool isSet) |
| Sets STP params U, tau_u, and tau_x of a neuron group (pre-synaptically) using default values. More...
|
|
void | setupNetwork () |
| build the network More...
|
|
void | setupNetworkMT () |
| featFastSetup LN 20201108 More...
|
|
void | setWeight (short int connId, int neurIdPre, int neurIdPost, float weight, bool updateWeightRange=false) |
| Sets the weight value of a specific synapse. More...
|
|
void | setWeightAndWeightChangeUpdate (UpdateInterval wtANDwtChangeUpdateInterval, bool enableWtChangeDecay, float wtChangeDecay=0.9f) |
| Sets the weight and weight change update parameters. More...
|
|
void | startTesting (bool updateWeights=true) |
| Enters a testing phase in which all weight changes are disabled. More...
|
|
void | stopTesting () |
| Exits a testing phase, making weight changes possible again. More...
|
|
bool | updateDelays (int gGrpIdPre, int gGrpIdPost, std::vector< std::tuple< int, int, uint8_t >> connDelays) |
| Updates the delays directly the backend memory. More...
|
|