CARLsim  6.1.0
CARLsim: a GPU-accelerated SNN simulator
CARLsim::Impl Class Reference

Public Member Functions

 Impl (CARLsim *sim, const std::string &netName, SimMode prferredSimMode, LoggerMode loggerMode, int randSeed)
 
 ~Impl ()
 
void biasWeights (short int connId, float bias, bool updateWeightRange)
 
short int connect (int grpId1, int grpId2, const std::string &connType, const RangeWeight &wt, float connProb, const RangeDelay &delay, const RadiusRF &radRF, bool synWtType, float mulSynFast, float mulSynSlow)
 
short int connect (int grpId1, int grpId2, ConnectionGenerator *conn, bool synWtType)
 
short int connect (int grpId1, int grpId2, ConnectionGenerator *conn, float mulSynFast, float mulSynSlow, bool synWtType)
 
short int connectCompartments (int grpIdLower, int grpIdUpper)
 
int createGroup (const std::string &grpName, int nNeur, int neurType, int preferredPartition, ComputingBackend preferredBackend)
 
int createGroup (const std::string &grpName, const Grid3D &grid, int neurType, int preferredPartition, ComputingBackend preferredBackend)
 
int createGroupLIF (const std::string &grpName, int nNeur, int neurType, int preferredPartition=ANY, ComputingBackend preferredBackend=CPU_CORES)
 
int createGroupLIF (const std::string &grpName, const Grid3D &grid, int neurType, int preferredPartition, ComputingBackend preferredBackend)
 
int createSpikeGeneratorGroup (const std::string &grpName, int nNeur, int neurType, int preferredPartition, ComputingBackend preferredBackend)
 
int createSpikeGeneratorGroup (const std::string &grpName, const Grid3D &grid, int neurType, int preferredPartition, ComputingBackend preferredBackend)
 
void findWavefrontPath (std::vector< int > &path, std::vector< float > &eligibility, int netId, int grpId, int startNId, int goalNId)
 
CARLsimState getCARLsimState ()
 
std::vector< float > getConductanceAMPA (int grpId)
 
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)
 
std::vector< float > getConductanceGABAb (int grpId)
 
std::vector< float > getConductanceNMDA (int grpId)
 
ConnSTDPInfo getConnSTDPInfo (int connId)
 
RangeDelay getDelayRange (short int connId)
 
uint8_t * getDelays (int gIDpre, int gIDpost, int &Npre, int &Npost)
 
int getGroupEndNeuronId (int grpId)
 
Grid3D getGroupGrid3D (int grpId)
 
int getGroupId (std::string grpName)
 
std::string getGroupName (int grpId)
 
GroupNeuromodulatorInfo getGroupNeuromodulatorInfo (int grpId)
 
int getGroupNumNeurons (int grpId)
 
int getGroupStartNeuronId (int grpId)
 
const IcalcType getIcalcType (int grpId)
 
const FILE * getLogFpDeb ()
 
const FILE * getLogFpErr ()
 
const FILE * getLogFpInf ()
 
const FILE * getLogFpLog ()
 
int getMaxNumCompConnections ()
 
int getNeuronId (int grpId, Point3D location)
 
Point3D getNeuronLocation3D (int neurId)
 
Point3D getNeuronLocation3D (int grpId, int relNeurId)
 
int getNumConnections ()
 
int getNumGroups ()
 
int getNumNeurons ()
 
int getNumNeuronsGen ()
 
int getNumNeuronsGenExc ()
 
int getNumNeuronsGenInh ()
 
int getNumNeuronsReg ()
 
int getNumNeuronsRegExc ()
 
int getNumNeuronsRegInh ()
 
int getNumSynapses ()
 
int getNumSynapticConnections (short int connectionId)
 
int getSimTime ()
 
int getSimTimeMsec ()
 
int getSimTimeSec ()
 
SpikeMonitorgetSpikeMonitor (int grpId)
 
RangeWeight getWeightRange (short int connId)
 
bool isConnectionPlastic (short int connId)
 
bool isExcitatoryGroup (int grpId)
 
bool isGroupWith (int grpId, IcalcType icalcType)
 
bool isGroupWithCOBA (int grpId)
 
bool isGroupWithCUBA (int grpId)
 
bool isGroupWithHomeostasis (int grpId)
 
bool isInhibitoryGroup (int grpId)
 
bool isPoissonGroup (int grpId)
 
bool isSimulationWithCOBA ()
 
bool isSimulationWithCUBA ()
 
void loadSimulation (FILE *fid)
 
void printEntrails (char *buffer, unsigned length, int gGrpIdPre, int gGrpIdPost)
 
int runNetwork (int nSec, int nMsec, bool printRunSummary)
 
void saveSimulation (const std::string &fileName, bool saveSynapseInfo)
 
void scaleWeights (short int connId, float scale, bool updateWeightRange)
 
void setACNE12 (int grpId)
 
void setCompartmentParameters (int grpId, float couplingUp, float couplingDown)
 
void setConductances (bool isSet)
 
void setConductances (bool isSet, int tdAMPA, int tdNMDA, int tdGABAa, int tdGABAb)
 
void setConductances (bool isSet, int tdAMPA, int trNMDA, int tdNMDA, int tdGABAa, int trGABAb, int tdGABAb)
 
void setConductances (int grpId, bool isSet)
 
void setConductances (int grpId, bool isSet, int tdAMPA, int tdNMDA, int tdGABAa, int tdGABAb)
 
void setConductances (int grpId, bool isSet, int tdAMPA, int trNMDA, int tdNMDA, int tdGABAa, int trGABAb, int tdGABAb)
 
void setConnectionModulation (int preGrpId, int postGrpId, IcalcType icalcType)
 
ConnectionMonitorsetConnectionMonitor (int grpIdPre, int grpIdPost, const std::string &fname)
 
void setDefaultConductanceTimeConstants (int tdAMPA, int trNMDA, int tdNMDA, int tdGABAa, int trGABAb, int tdGABAb)
 
void setDefaultESTDPparams (float alphaPlus, float tauPlus, float alphaMinus, float tauMinus, STDPType stdpType)
 
void setDefaultHomeostasisParams (float homeoScale, float avgTimeScale)
 
void setDefaultISTDPparams (float betaLTP, float betaLTD, float lambda, float delta, STDPType stdpType)
 
void setDefaultSaveOptions (std::string fileName, bool saveSynapseInfo)
 
void setDefaultSTDPparams (float alphaPlus, float tauPlus, float alphaMinus, float tauMinus, STDPType stdpType)
 
void setDefaultSTPparams (int neurType, float STP_U, float STP_tau_u, float STP_tau_x)
 
void setESTDP (int preGrpId, int postGrpId, bool isSet)
 
void setESTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, ExpCurve curve)
 
void setESTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, ExpCurve curve, PkaPlcModulation modulation)
 
void setESTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, TimingBasedCurve curve)
 
void setExternalCurrent (int grpId, const std::vector< float > &current)
 
void setExternalCurrent (int grpId, float current)
 
GroupMonitorsetGroupMonitor (int grpId, const std::string &fname, const int mode)
 
void setHomeoBaseFiringRate (int grpId, float baseFiring, float baseFiringSD)
 
void setHomeostasis (int grpId, bool isSet)
 
void setHomeostasis (int grpId, bool isSet, float homeoScale, float avgTimeScale)
 
void setIntegrationMethod (integrationMethod_t method, int numStepsPerMs)
 
void setISTDP (int preGrpId, int postGrpId, bool isSet)
 
void setISTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, ExpCurve curve)
 
void setISTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, PulseCurve curve)
 
void setLogFile (const std::string &fileName)
 
void setLogsFpCustom (FILE *fpInf, FILE *fpErr, FILE *fpDeb, FILE *fpLog)
 
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 baseDP, float tauDP, float base5HT, float tau5HT, float baseACh, float tauACh, float baseNE, float tauNE)
 
void setNeuromodulator (int grpId, float tauDP, float tau5HT, float tauACh, float tauNE)
 
NeuronMonitorsetNeuronMonitor (int grpId, const std::string &fileName)
 
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)
 
void setNeuronParameters (int grpId, float izh_a, float izh_b, float izh_c, float izh_d)
 
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)
 
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)
 
void setNeuronParametersLIF (int grpId, int tau_m, int tau_ref, float vTh, float vReset, const RangeRmem &rMem)
 
void setNM4STP (int grpId, float wSTP_U[], float wSTP_tau_u[], float wSTP_tau_x[])
 
void setNM4weighted (int grpId, IcalcType icalc, float wDA, float w5HT, float wACh, float wNE, float wNorm, float wBase)
 
void setSpikeGenerator (int grpId, SpikeGenerator *spikeGenFunc)
 
SpikeMonitorsetSpikeMonitor (int grpId, const std::string &fileName)
 
void setSpikeRate (int grpId, PoissonRate *spikeRate, int refPeriod)
 
void setSTDP (int preGrpId, int postGrpId, bool isSet)
 
void setSTDP (int preGrpId, int postGrpId, bool isSet, STDPType type, float alphaPlus, float tauPlus, float alphaMinus, float tauMinus)
 
void setSTP (int grpId, bool isSet)
 
void setSTP (int grpId, bool isSet, float STP_U, float STP_tau_u, float STP_tau_x)
 
void setupNetwork ()
 
void setWeight (short int connId, int neurIdPre, int neurIdPost, float weight, bool updateWeightRange)
 
void setWeightAndWeightChangeUpdate (UpdateInterval wtANDwtChangeUpdateInterval, bool enableWtChangeDecay, float wtChangeDecay)
 
void startTesting (bool updateWeights)
 
void stopTesting ()
 
bool updateDelays (int gGrpIdPre, int gGrpIdPost, std::vector< std::tuple< int, int, uint8_t >> connDelays)
 

Detailed Description

Definition at line 79 of file carlsim.cpp.

Constructor & Destructor Documentation

◆ Impl()

Impl ( CARLsim sim,
const std::string &  netName,
SimMode  prferredSimMode,
LoggerMode  loggerMode,
int  randSeed 
)
inline

Definition at line 83 of file carlsim.cpp.

◆ ~Impl()

~Impl ( )
inline

Definition at line 106 of file carlsim.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ biasWeights()

void biasWeights ( short int  connId,
float  bias,
bool  updateWeightRange 
)
inline

Definition at line 1138 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ connect() [1/3]

short int connect ( int  grpId1,
int  grpId2,
const std::string &  connType,
const RangeWeight wt,
float  connProb,
const RangeDelay delay,
const RadiusRF radRF,
bool  synWtType,
float  mulSynFast,
float  mulSynSlow 
)
inline

Definition at line 150 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ connect() [2/3]

short int connect ( int  grpId1,
int  grpId2,
ConnectionGenerator conn,
bool  synWtType 
)
inline

Definition at line 209 of file carlsim.cpp.

Here is the call graph for this function:

◆ connect() [3/3]

short int connect ( int  grpId1,
int  grpId2,
ConnectionGenerator conn,
float  mulSynFast,
float  mulSynSlow,
bool  synWtType 
)
inline

Definition at line 241 of file carlsim.cpp.

Here is the call graph for this function:

◆ connectCompartments()

short int connectCompartments ( int  grpIdLower,
int  grpIdUpper 
)
inline

Definition at line 275 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createGroup() [1/2]

int createGroup ( const std::string &  grpName,
int  nNeur,
int  neurType,
int  preferredPartition,
ComputingBackend  preferredBackend 
)
inline

Definition at line 336 of file carlsim.cpp.

Here is the caller graph for this function:

◆ createGroup() [2/2]

int createGroup ( const std::string &  grpName,
const Grid3D grid,
int  neurType,
int  preferredPartition,
ComputingBackend  preferredBackend 
)
inline

Definition at line 346 of file carlsim.cpp.

Here is the call graph for this function:

◆ createGroupLIF() [1/2]

int createGroupLIF ( const std::string &  grpName,
int  nNeur,
int  neurType,
int  preferredPartition = ANY,
ComputingBackend  preferredBackend = CPU_CORES 
)
inline

Definition at line 341 of file carlsim.cpp.

Here is the caller graph for this function:

◆ createGroupLIF() [2/2]

int createGroupLIF ( const std::string &  grpName,
const Grid3D grid,
int  neurType,
int  preferredPartition,
ComputingBackend  preferredBackend 
)
inline

Definition at line 384 of file carlsim.cpp.

Here is the call graph for this function:

◆ createSpikeGeneratorGroup() [1/2]

int createSpikeGeneratorGroup ( const std::string &  grpName,
int  nNeur,
int  neurType,
int  preferredPartition,
ComputingBackend  preferredBackend 
)
inline

Definition at line 422 of file carlsim.cpp.

Here is the caller graph for this function:

◆ createSpikeGeneratorGroup() [2/2]

int createSpikeGeneratorGroup ( const std::string &  grpName,
const Grid3D grid,
int  neurType,
int  preferredPartition,
ComputingBackend  preferredBackend 
)
inline

Definition at line 427 of file carlsim.cpp.

Here is the call graph for this function:

◆ findWavefrontPath()

void findWavefrontPath ( std::vector< int > &  path,
std::vector< float > &  eligibility,
int  netId,
int  grpId,
int  startNId,
int  goalNId 
)
inline

Definition at line 1418 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getCARLsimState()

CARLsimState getCARLsimState ( )
inline

Definition at line 1400 of file carlsim.cpp.

Here is the caller graph for this function:

◆ getConductanceAMPA()

std::vector<float> getConductanceAMPA ( int  grpId)
inline

Definition at line 1432 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getConductanceConfig() [1/2]

bool getConductanceConfig ( int  grpId,
float &  dAMPA,
float &  rNMDA,
float &  dNMDA,
float &  dGABAa,
float &  rGABAb,
float &  dGABAb 
)
inline

Definition at line 1693 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getConductanceConfig() [2/2]

bool getConductanceConfig ( int  grpId,
int &  tdAMPA,
int &  trNMDA,
int &  tdNMDA,
int &  tdGABAa,
int &  trGABAb,
int &  tdGABAb 
)
inline

Definition at line 1703 of file carlsim.cpp.

Here is the call graph for this function:

◆ getConductanceGABAa()

std::vector<float> getConductanceGABAa ( int  grpId)
inline

Definition at line 1454 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getConductanceGABAb()

std::vector<float> getConductanceGABAb ( int  grpId)
inline

Definition at line 1465 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getConductanceNMDA()

std::vector<float> getConductanceNMDA ( int  grpId)
inline

Definition at line 1443 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getConnSTDPInfo()

ConnSTDPInfo getConnSTDPInfo ( int  connId)
inline

Definition at line 1614 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getDelayRange()

RangeDelay getDelayRange ( short int  connId)
inline

Definition at line 1476 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getDelays()

uint8_t* getDelays ( int  gIDpre,
int  gIDpost,
int &  Npre,
int &  Npost 
)
inline

Definition at line 1485 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getGroupEndNeuronId()

int getGroupEndNeuronId ( int  grpId)
inline

Definition at line 1528 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getGroupGrid3D()

Grid3D getGroupGrid3D ( int  grpId)
inline

Definition at line 1497 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getGroupId()

int getGroupId ( std::string  grpName)
inline

Definition at line 1506 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getGroupName()

std::string getGroupName ( int  grpId)
inline

Definition at line 1510 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getGroupNeuromodulatorInfo()

GroupNeuromodulatorInfo getGroupNeuromodulatorInfo ( int  grpId)
inline

Definition at line 1622 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getGroupNumNeurons()

int getGroupNumNeurons ( int  grpId)
inline

Definition at line 1538 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getGroupStartNeuronId()

int getGroupStartNeuronId ( int  grpId)
inline

Definition at line 1518 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getIcalcType()

const IcalcType getIcalcType ( int  grpId)
inline

Definition at line 1686 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getLogFpDeb()

const FILE* getLogFpDeb ( )
inline

Definition at line 1090 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getLogFpErr()

const FILE* getLogFpErr ( )
inline

Definition at line 1089 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getLogFpInf()

const FILE* getLogFpInf ( )
inline

Definition at line 1088 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getLogFpLog()

const FILE* getLogFpLog ( )
inline

Definition at line 1091 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getMaxNumCompConnections()

int getMaxNumCompConnections ( )
inline

Definition at line 1585 of file carlsim.cpp.

Here is the caller graph for this function:

◆ getNeuronId()

int getNeuronId ( int  grpId,
Point3D  location 
)
inline

Definition at line 1570 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNeuronLocation3D() [1/2]

Point3D getNeuronLocation3D ( int  neurId)
inline

Definition at line 1546 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNeuronLocation3D() [2/2]

Point3D getNeuronLocation3D ( int  grpId,
int  relNeurId 
)
inline

Definition at line 1557 of file carlsim.cpp.

Here is the call graph for this function:

◆ getNumConnections()

int getNumConnections ( )
inline

Definition at line 1584 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNumGroups()

int getNumGroups ( )
inline

Definition at line 1587 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNumNeurons()

int getNumNeurons ( )
inline

Definition at line 1588 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNumNeuronsGen()

int getNumNeuronsGen ( )
inline

Definition at line 1592 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNumNeuronsGenExc()

int getNumNeuronsGenExc ( )
inline

Definition at line 1593 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNumNeuronsGenInh()

int getNumNeuronsGenInh ( )
inline

Definition at line 1594 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNumNeuronsReg()

int getNumNeuronsReg ( )
inline

Definition at line 1589 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNumNeuronsRegExc()

int getNumNeuronsRegExc ( )
inline

Definition at line 1590 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNumNeuronsRegInh()

int getNumNeuronsRegInh ( )
inline

Definition at line 1591 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNumSynapses()

int getNumSynapses ( )
inline

Definition at line 1606 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNumSynapticConnections()

int getNumSynapticConnections ( short int  connectionId)
inline

Definition at line 1596 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getSimTime()

int getSimTime ( )
inline

Definition at line 1629 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getSimTimeMsec()

int getSimTimeMsec ( )
inline

Definition at line 1631 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getSimTimeSec()

int getSimTimeSec ( )
inline

Definition at line 1630 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getSpikeMonitor()

SpikeMonitor* getSpikeMonitor ( int  grpId)
inline

Definition at line 1634 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getWeightRange()

RangeWeight getWeightRange ( short int  connId)
inline

Definition at line 1642 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isConnectionPlastic()

bool isConnectionPlastic ( short int  connId)
inline

Definition at line 1650 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isExcitatoryGroup()

bool isExcitatoryGroup ( int  grpId)
inline

Definition at line 1730 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isGroupWith()

bool isGroupWith ( int  grpId,
IcalcType  icalcType 
)
inline

Definition at line 1680 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isGroupWithCOBA()

bool isGroupWithCOBA ( int  grpId)
inline

Definition at line 1715 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isGroupWithCUBA()

bool isGroupWithCUBA ( int  grpId)
inline

Definition at line 1721 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isGroupWithHomeostasis()

bool isGroupWithHomeostasis ( int  grpId)
inline

Definition at line 1658 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isInhibitoryGroup()

bool isInhibitoryGroup ( int  grpId)
inline

Definition at line 1738 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isPoissonGroup()

bool isPoissonGroup ( int  grpId)
inline

Definition at line 1746 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isSimulationWithCOBA()

bool isSimulationWithCOBA ( )
inline

Definition at line 1666 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isSimulationWithCUBA()

bool isSimulationWithCUBA ( )
inline

Definition at line 1672 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ loadSimulation()

void loadSimulation ( FILE *  fid)
inline

Definition at line 1164 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ printEntrails()

void printEntrails ( char *  buffer,
unsigned  length,
int  gGrpIdPre,
int  gGrpIdPost 
)
inline

Definition at line 1426 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ runNetwork()

int runNetwork ( int  nSec,
int  nMsec,
bool  printRunSummary 
)
inline

Definition at line 1042 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ saveSimulation()

void saveSimulation ( const std::string &  fileName,
bool  saveSynapseInfo 
)
inline

Definition at line 1093 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ scaleWeights()

void scaleWeights ( short int  connId,
float  scale,
bool  updateWeightRange 
)
inline

Definition at line 1173 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setACNE12()

void setACNE12 ( int  grpId)
inline

Definition at line 588 of file carlsim.cpp.

Here is the caller graph for this function:

◆ setCompartmentParameters()

void setCompartmentParameters ( int  grpId,
float  couplingUp,
float  couplingDown 
)
inline

Definition at line 445 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setConductances() [1/6]

void setConductances ( bool  isSet)
inline

Definition at line 456 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setConductances() [2/6]

void setConductances ( bool  isSet,
int  tdAMPA,
int  tdNMDA,
int  tdGABAa,
int  tdGABAb 
)
inline

Definition at line 471 of file carlsim.cpp.

Here is the call graph for this function:

◆ setConductances() [3/6]

void setConductances ( bool  isSet,
int  tdAMPA,
int  trNMDA,
int  tdNMDA,
int  tdGABAa,
int  trGABAb,
int  tdGABAb 
)
inline

Definition at line 491 of file carlsim.cpp.

Here is the call graph for this function:

◆ setConductances() [4/6]

void setConductances ( int  grpId,
bool  isSet 
)
inline

Definition at line 523 of file carlsim.cpp.

Here is the call graph for this function:

◆ setConductances() [5/6]

void setConductances ( int  grpId,
bool  isSet,
int  tdAMPA,
int  tdNMDA,
int  tdGABAa,
int  tdGABAb 
)
inline

Definition at line 539 of file carlsim.cpp.

Here is the call graph for this function:

◆ setConductances() [6/6]

void setConductances ( int  grpId,
bool  isSet,
int  tdAMPA,
int  trNMDA,
int  tdNMDA,
int  tdGABAa,
int  trGABAb,
int  tdGABAb 
)
inline

Definition at line 559 of file carlsim.cpp.

Here is the call graph for this function:

◆ setConnectionModulation()

void setConnectionModulation ( int  preGrpId,
int  postGrpId,
IcalcType  icalcType 
)
inline

Definition at line 879 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setConnectionMonitor()

ConnectionMonitor* setConnectionMonitor ( int  grpIdPre,
int  grpIdPost,
const std::string &  fname 
)
inline

Definition at line 1186 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setDefaultConductanceTimeConstants()

void setDefaultConductanceTimeConstants ( int  tdAMPA,
int  trNMDA,
int  tdNMDA,
int  tdGABAa,
int  trGABAb,
int  tdGABAb 
)
inline

Definition at line 1758 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setDefaultESTDPparams()

void setDefaultESTDPparams ( float  alphaPlus,
float  tauPlus,
float  alphaMinus,
float  tauMinus,
STDPType  stdpType 
)
inline

Definition at line 1814 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setDefaultHomeostasisParams()

void setDefaultHomeostasisParams ( float  homeoScale,
float  avgTimeScale 
)
inline

Definition at line 1783 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setDefaultISTDPparams()

void setDefaultISTDPparams ( float  betaLTP,
float  betaLTD,
float  lambda,
float  delta,
STDPType  stdpType 
)
inline

Definition at line 1842 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setDefaultSaveOptions()

void setDefaultSaveOptions ( std::string  fileName,
bool  saveSynapseInfo 
)
inline

Definition at line 1793 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setDefaultSTDPparams()

void setDefaultSTDPparams ( float  alphaPlus,
float  tauPlus,
float  alphaMinus,
float  tauMinus,
STDPType  stdpType 
)
inline

Definition at line 1809 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setDefaultSTPparams()

void setDefaultSTPparams ( int  neurType,
float  STP_U,
float  STP_tau_u,
float  STP_tau_x 
)
inline

Definition at line 1869 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setESTDP() [1/4]

void setESTDP ( int  preGrpId,
int  postGrpId,
bool  isSet 
)
inline

Definition at line 819 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setESTDP() [2/4]

void setESTDP ( int  preGrpId,
int  postGrpId,
bool  isSet,
STDPType  type,
ExpCurve  curve 
)
inline

Definition at line 837 of file carlsim.cpp.

Here is the call graph for this function:

◆ setESTDP() [3/4]

void setESTDP ( int  preGrpId,
int  postGrpId,
bool  isSet,
STDPType  type,
ExpCurve  curve,
PkaPlcModulation  modulation 
)
inline

Definition at line 857 of file carlsim.cpp.

Here is the call graph for this function:

◆ setESTDP() [4/4]

void setESTDP ( int  preGrpId,
int  postGrpId,
bool  isSet,
STDPType  type,
TimingBasedCurve  curve 
)
inline

Definition at line 887 of file carlsim.cpp.

Here is the call graph for this function:

◆ setExternalCurrent() [1/2]

void setExternalCurrent ( int  grpId,
const std::vector< float > &  current 
)
inline

Definition at line 1223 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setExternalCurrent() [2/2]

void setExternalCurrent ( int  grpId,
float  current 
)
inline

Definition at line 1235 of file carlsim.cpp.

Here is the call graph for this function:

◆ setGroupMonitor()

GroupMonitor* setGroupMonitor ( int  grpId,
const std::string &  fname,
const int  mode 
)
inline

Definition at line 1247 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setHomeoBaseFiringRate()

void setHomeoBaseFiringRate ( int  grpId,
float  baseFiring,
float  baseFiringSD 
)
inline

Definition at line 650 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setHomeostasis() [1/2]

void setHomeostasis ( int  grpId,
bool  isSet 
)
inline

Definition at line 610 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setHomeostasis() [2/2]

void setHomeostasis ( int  grpId,
bool  isSet,
float  homeoScale,
float  avgTimeScale 
)
inline

Definition at line 630 of file carlsim.cpp.

Here is the call graph for this function:

◆ setIntegrationMethod()

void setIntegrationMethod ( integrationMethod_t  method,
int  numStepsPerMs 
)
inline

Definition at line 664 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setISTDP() [1/3]

void setISTDP ( int  preGrpId,
int  postGrpId,
bool  isSet 
)
inline

Definition at line 906 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setISTDP() [2/3]

void setISTDP ( int  preGrpId,
int  postGrpId,
bool  isSet,
STDPType  type,
ExpCurve  curve 
)
inline

Definition at line 924 of file carlsim.cpp.

Here is the call graph for this function:

◆ setISTDP() [3/3]

void setISTDP ( int  preGrpId,
int  postGrpId,
bool  isSet,
STDPType  type,
PulseCurve  curve 
)
inline

Definition at line 943 of file carlsim.cpp.

Here is the call graph for this function:

◆ setLogFile()

void setLogFile ( const std::string &  fileName)
inline

Definition at line 1105 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setLogsFpCustom()

void setLogsFpCustom ( FILE *  fpInf,
FILE *  fpErr,
FILE *  fpDeb,
FILE *  fpLog 
)
inline

Definition at line 1128 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setNeuromodulator() [1/3]

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 
)
inline

Definition at line 750 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setNeuromodulator() [2/3]

void setNeuromodulator ( int  grpId,
float  baseDP,
float  tauDP,
float  base5HT,
float  tau5HT,
float  baseACh,
float  tauACh,
float  baseNE,
float  tauNE 
)
inline

Definition at line 776 of file carlsim.cpp.

Here is the call graph for this function:

◆ setNeuromodulator() [3/3]

void setNeuromodulator ( int  grpId,
float  tauDP,
float  tau5HT,
float  tauACh,
float  tauNE 
)
inline

Definition at line 794 of file carlsim.cpp.

Here is the call graph for this function:

◆ setNeuronMonitor()

NeuronMonitor* setNeuronMonitor ( int  grpId,
const std::string &  fileName 
)
inline

Definition at line 1333 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setNeuronParameters() [1/4]

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 
)
inline

Definition at line 677 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setNeuronParameters() [2/4]

void setNeuronParameters ( int  grpId,
float  izh_a,
float  izh_b,
float  izh_c,
float  izh_d 
)
inline

Definition at line 690 of file carlsim.cpp.

Here is the call graph for this function:

◆ setNeuronParameters() [3/4]

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 
)
inline

Definition at line 700 of file carlsim.cpp.

Here is the call graph for this function:

◆ setNeuronParameters() [4/4]

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 
)
inline

Definition at line 714 of file carlsim.cpp.

Here is the call graph for this function:

◆ setNeuronParametersLIF()

void setNeuronParametersLIF ( int  grpId,
int  tau_m,
int  tau_ref,
float  vTh,
float  vReset,
const RangeRmem rMem 
)
inline

Definition at line 731 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setNM4STP()

void setNM4STP ( int  grpId,
float  wSTP_U[],
float  wSTP_tau_u[],
float  wSTP_tau_x[] 
)
inline

Definition at line 1005 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setNM4weighted()

void setNM4weighted ( int  grpId,
IcalcType  icalc,
float  wDA,
float  w5HT,
float  wACh,
float  wNE,
float  wNorm,
float  wBase 
)
inline

Definition at line 593 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setSpikeGenerator()

void setSpikeGenerator ( int  grpId,
SpikeGenerator spikeGenFunc 
)
inline

Definition at line 1282 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setSpikeMonitor()

SpikeMonitor* setSpikeMonitor ( int  grpId,
const std::string &  fileName 
)
inline

Definition at line 1297 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setSpikeRate()

void setSpikeRate ( int  grpId,
PoissonRate spikeRate,
int  refPeriod 
)
inline
TODO:
: make sure spikeRate->isOnGPU() consistent with simulation mode

Definition at line 1371 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setSTDP() [1/2]

void setSTDP ( int  preGrpId,
int  postGrpId,
bool  isSet 
)
inline

Definition at line 807 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setSTDP() [2/2]

void setSTDP ( int  preGrpId,
int  postGrpId,
bool  isSet,
STDPType  type,
float  alphaPlus,
float  tauPlus,
float  alphaMinus,
float  tauMinus 
)
inline

Definition at line 812 of file carlsim.cpp.

Here is the call graph for this function:

◆ setSTP() [1/2]

void setSTP ( int  grpId,
bool  isSet 
)
inline

Definition at line 961 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setSTP() [2/2]

void setSTP ( int  grpId,
bool  isSet,
float  STP_U,
float  STP_tau_u,
float  STP_tau_x 
)
inline

Definition at line 985 of file carlsim.cpp.

Here is the call graph for this function:

◆ setupNetwork()

void setupNetwork ( )
inline

Definition at line 1064 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setWeight()

void setWeight ( short int  connId,
int  neurIdPre,
int  neurIdPost,
float  weight,
bool  updateWeightRange 
)
inline

Definition at line 1385 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setWeightAndWeightChangeUpdate()

void setWeightAndWeightChangeUpdate ( UpdateInterval  wtANDwtChangeUpdateInterval,
bool  enableWtChangeDecay,
float  wtChangeDecay 
)
inline

Definition at line 1026 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ startTesting()

void startTesting ( bool  updateWeights)
inline

Definition at line 1149 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ stopTesting()

void stopTesting ( )
inline

Definition at line 1156 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateDelays()

bool updateDelays ( int  gGrpIdPre,
int  gGrpIdPost,
std::vector< std::tuple< int, int, uint8_t >>  connDelays 
)
inline

Definition at line 1422 of file carlsim.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following file: