|  | GeNN
    2.2.3
    GPU enhanced Neuronal Networks (GeNN) | 
This class cpontains the methods for running the Schmuker_2014_classifier example model. More...
#include <Schmuker2014_classifier.h>
| Public Types | |
| enum | data_type { data_type_int, data_type_uint, data_type_float, data_type_double } | 
| Public Member Functions | |
| Schmuker2014_classifier () | |
| ~Schmuker2014_classifier () | |
| void | allocateHostAndDeviceMemory () | 
| void | populateDeviceMemory () | 
| void | update_input_data_on_device () | 
| void | clearDownDevice () | 
| void | run (float runtime, string filename_rasterPlot, bool usePlasticity) | 
| void | getSpikesFromGPU () | 
| void | getSpikeNumbersFromGPU () | 
| void | outputSpikes (FILE *, string delim) | 
| void | initialiseWeights_SPARSE_RN_PN () | 
| void | initialiseWeights_WTA_PN_PN () | 
| void | initialiseWeights_DENSE_PN_AN () | 
| void | initialiseWeights_WTA_AN_AN () | 
| void | createWTAConnectivity (float *synapse, UINT populationSize, UINT clusterSize, float synapseWeight, float probability) | 
| bool | randomEventOccurred (float probability) | 
| void | updateWeights_PN_AN_on_device () | 
| void | generate_or_load_inputrates_dataset (unsigned int recordingIdx) | 
| void | generate_inputrates_dataset (unsigned int recordingIdx) | 
| FILE * | openRecordingFile (UINT recordingIndex) | 
| void | applyLearningRuleSynapses (float *synapsesPNAN) | 
| void | initialiseInputData () | 
| void | load_VR_data () | 
| void | setCorrectClass (UINT recordingIdx) | 
| UINT | getClassCluster (UINT anIdx) | 
| void | loadClassLabels () | 
| void | addInputRate (float *samplePoint, UINT timeStep) | 
| uint64_t | convertToRateCode (float inputRateHz) | 
| float | calculateVrResponse (float *samplePoint, float *vrPoint) | 
| void | setMaxMinSampleDistances () | 
| void | findMaxMinSampleDistances (float *samples, UINT startAt, UINT totalSamples) | 
| float | getSampleDistance (UINT max0_min1) | 
| float | getManhattanDistance (float *pointA, float *pointB, UINT numElements) | 
| float | getRand0to1 () | 
| UINT | calculateOverallWinner () | 
| UINT | calculateWinner (unsigned int *clusterSpikeCount) | 
| UINT | calculateCurrentWindowWinner () | 
| void | updateIndividualSpikeCountPN () | 
| void | resetIndividualSpikeCountPN () | 
| void | updateClusterSpikeCountAN () | 
| void | resetClusterSpikeCountAN () | 
| void | resetOverallWinner () | 
| void | updateWeights_PN_AN () | 
| UINT | getClusterIndex (UINT neuronIndex, UINT clusterSize) | 
| void | generateSimulatedTimeSeriesData () | 
| string | getRecordingFilename (UINT recordingIdx) | 
| bool | loadArrayFromTextFile (string path, void *array, string delim, UINT arrayLen, data_type dataType) | 
| void | checkContents (string title, void *array, UINT howMany, UINT displayPerLine, data_type dataType, UINT decimalPoints) | 
| void | checkContents (string title, void *array, UINT howMany, UINT displayPerLine, data_type dataType, UINT decimalPoints, string delim) | 
| void | printSeparator () | 
| void | resetDevice () | 
| void | startLog () | 
| Static Public Attributes | |
| static const unsigned int | timestepsPerRecording = RECORDING_TIME_MS / DT | 
This class cpontains the methods for running the Schmuker_2014_classifier example model.
| Schmuker2014_classifier::Schmuker2014_classifier | ( | ) | 
| Schmuker2014_classifier::~Schmuker2014_classifier | ( | ) | 
| void Schmuker2014_classifier::addInputRate | ( | float * | samplePoint, | 
| UINT | timeStep | ||
| ) | 
| void Schmuker2014_classifier::allocateHostAndDeviceMemory | ( | ) | 
| void Schmuker2014_classifier::applyLearningRuleSynapses | ( | float * | synapsesPNAN | ) | 
| UINT Schmuker2014_classifier::calculateCurrentWindowWinner | ( | ) | 
| UINT Schmuker2014_classifier::calculateOverallWinner | ( | ) | 
| float Schmuker2014_classifier::calculateVrResponse | ( | float * | samplePoint, | 
| float * | vrPoint | ||
| ) | 
| UINT Schmuker2014_classifier::calculateWinner | ( | unsigned int * | clusterSpikeCount | ) | 
| void Schmuker2014_classifier::checkContents | ( | string | title, | 
| void * | array, | ||
| UINT | howMany, | ||
| UINT | displayPerLine, | ||
| data_type | dataType, | ||
| UINT | decimalPoints | ||
| ) | 
| void Schmuker2014_classifier::checkContents | ( | string | title, | 
| void * | array, | ||
| UINT | howMany, | ||
| UINT | displayPerLine, | ||
| data_type | dataType, | ||
| UINT | decimalPoints, | ||
| string | delim | ||
| ) | 
| void Schmuker2014_classifier::clearDownDevice | ( | ) | 
| uint64_t Schmuker2014_classifier::convertToRateCode | ( | float | inputRateHz | ) | 
| void Schmuker2014_classifier::createWTAConnectivity | ( | float * | synapse, | 
| UINT | populationSize, | ||
| UINT | clusterSize, | ||
| float | synapseWeight, | ||
| float | probability | ||
| ) | 
| void Schmuker2014_classifier::findMaxMinSampleDistances | ( | float * | samples, | 
| UINT | startAt, | ||
| UINT | totalSamples | ||
| ) | 
| void Schmuker2014_classifier::generate_inputrates_dataset | ( | unsigned int | recordingIdx | ) | 
| void Schmuker2014_classifier::generate_or_load_inputrates_dataset | ( | unsigned int | recordingIdx | ) | 
| void Schmuker2014_classifier::generateSimulatedTimeSeriesData | ( | ) | 
| float Schmuker2014_classifier::getManhattanDistance | ( | float * | pointA, | 
| float * | pointB, | ||
| UINT | numElements | ||
| ) | 
| float Schmuker2014_classifier::getRand0to1 | ( | ) | 
| string Schmuker2014_classifier::getRecordingFilename | ( | UINT | recordingIdx | ) | 
| float Schmuker2014_classifier::getSampleDistance | ( | UINT | max0_min1 | ) | 
| void Schmuker2014_classifier::getSpikeNumbersFromGPU | ( | ) | 
| void Schmuker2014_classifier::getSpikesFromGPU | ( | ) | 
| void Schmuker2014_classifier::initialiseInputData | ( | ) | 
| void Schmuker2014_classifier::initialiseWeights_DENSE_PN_AN | ( | ) | 
| void Schmuker2014_classifier::initialiseWeights_SPARSE_RN_PN | ( | ) | 
| void Schmuker2014_classifier::initialiseWeights_WTA_AN_AN | ( | ) | 
| void Schmuker2014_classifier::initialiseWeights_WTA_PN_PN | ( | ) | 
| void Schmuker2014_classifier::load_VR_data | ( | ) | 
| bool Schmuker2014_classifier::loadArrayFromTextFile | ( | string | path, | 
| void * | array, | ||
| string | delim, | ||
| UINT | arrayLen, | ||
| data_type | dataType | ||
| ) | 
| void Schmuker2014_classifier::loadClassLabels | ( | ) | 
| FILE * Schmuker2014_classifier::openRecordingFile | ( | UINT | recordingIndex | ) | 
| void Schmuker2014_classifier::outputSpikes | ( | FILE * | f, | 
| string | delim | ||
| ) | 
| void Schmuker2014_classifier::populateDeviceMemory | ( | ) | 
| void Schmuker2014_classifier::printSeparator | ( | ) | 
| bool Schmuker2014_classifier::randomEventOccurred | ( | float | probability | ) | 
| void Schmuker2014_classifier::resetClusterSpikeCountAN | ( | ) | 
| void Schmuker2014_classifier::resetDevice | ( | ) | 
| void Schmuker2014_classifier::resetIndividualSpikeCountPN | ( | ) | 
| void Schmuker2014_classifier::resetOverallWinner | ( | ) | 
| void Schmuker2014_classifier::run | ( | float | runtime, | 
| string | filename_rasterPlot, | ||
| bool | usePlasticity | ||
| ) | 
| void Schmuker2014_classifier::setCorrectClass | ( | UINT | recordingIdx | ) | 
| void Schmuker2014_classifier::setMaxMinSampleDistances | ( | ) | 
| void Schmuker2014_classifier::startLog | ( | ) | 
| void Schmuker2014_classifier::update_input_data_on_device | ( | ) | 
| void Schmuker2014_classifier::updateClusterSpikeCountAN | ( | ) | 
| void Schmuker2014_classifier::updateIndividualSpikeCountPN | ( | ) | 
| void Schmuker2014_classifier::updateWeights_PN_AN | ( | ) | 
| void Schmuker2014_classifier::updateWeights_PN_AN_on_device | ( | ) | 
| string Schmuker2014_classifier::cacheDir | 
| unsigned int* Schmuker2014_classifier::classLabel | 
| bool Schmuker2014_classifier::clearedDownDevice | 
| unsigned int* Schmuker2014_classifier::clusterSpikeCountAN | 
| UINT Schmuker2014_classifier::correctClass | 
| unsigned int Schmuker2014_classifier::countAN | 
| unsigned int Schmuker2014_classifier::countPN | 
| unsigned int Schmuker2014_classifier::countPNAN | 
| unsigned int Schmuker2014_classifier::countRN | 
| uint64_t* Schmuker2014_classifier::d_inputRates | 
| double Schmuker2014_classifier::d_maxRandomNumber | 
| string Schmuker2014_classifier::datasetName | 
| unsigned int* Schmuker2014_classifier::individualSpikeCountPN | 
| uint64_t* Schmuker2014_classifier::inputRates | 
| unsigned int Schmuker2014_classifier::inputRatesSize | 
| FILE* Schmuker2014_classifier::log | 
| NNmodel Schmuker2014_classifier::model | 
| string Schmuker2014_classifier::outputDir | 
| unsigned int* Schmuker2014_classifier::overallWinnerSpikeCountAN | 
| float Schmuker2014_classifier::param_CONNECTIVITY_AN_AN | 
| float Schmuker2014_classifier::param_CONNECTIVITY_PN_AN | 
| float Schmuker2014_classifier::param_CONNECTIVITY_PN_PN | 
| float Schmuker2014_classifier::param_CONNECTIVITY_RN_PN | 
| float Schmuker2014_classifier::param_GLOBAL_WEIGHT_SCALING | 
| UINT Schmuker2014_classifier::param_MAX_FIRING_RATE_HZ | 
| float Schmuker2014_classifier::param_MAX_WEIGHT_PN_AN | 
| UINT Schmuker2014_classifier::param_MIN_FIRING_RATE_HZ | 
| float Schmuker2014_classifier::param_MIN_WEIGHT_PN_AN | 
| float Schmuker2014_classifier::param_PLASTICITY_INTERVAL_MS | 
| UINT Schmuker2014_classifier::param_SPIKING_ACTIVITY_THRESHOLD_HZ | 
| float Schmuker2014_classifier::param_WEIGHT_DELTA_PN_AN | 
| float Schmuker2014_classifier::param_WEIGHT_RN_PN | 
| float Schmuker2014_classifier::param_WEIGHT_WTA_AN_AN | 
| float Schmuker2014_classifier::param_WEIGHT_WTA_PN_PN | 
| float* Schmuker2014_classifier::plasticWeights | 
| string Schmuker2014_classifier::recordingsDir | 
| float* Schmuker2014_classifier::sampleDistance | 
| 
 | static | 
| string Schmuker2014_classifier::uniqueRunId | 
| float* Schmuker2014_classifier::vrData | 
| int Schmuker2014_classifier::winningClass |