#include "sys.hpp" // for libcwd #include "debug.hpp" // for libcwd #include #include "activityanalyzer.hpp" #include "spiketrain.hpp" ActivityAnalyzer::ActivityAnalyzer(SpikeTrain *SpikeTrain) { if (SpikeTrain) { SpikeTrain->MeanSpikeRate(20, &mTimeScale, &mSpikeRate); /* for (vector::iterator it=mTimeScale.begin();it!=mTimeScale.end();++it) { cout << "t=" << (*it) << " "; } */ meanActivityParameters(); } } ActivityAnalyzer::~ActivityAnalyzer() { // std::cout << " ActivityAnalyzer::~ActivityAnalyzer() \n"; fflush(stdout); } /** calculate statistical parameters of mean neural activity (psth) */ void ActivityAnalyzer::meanActivityParameters() { int nTimeSteps = mSpikeRate.size(); int TimeScaleSize=mTimeScale.size(); if ((nTimeSteps<=1) || nTimeSteps!= mSpikeRate.size()) { return; } double totalTime = mTimeScale.back() - mTimeScale.front(); mDeltaT = totalTime / (nTimeSteps-1); // -1, denn Zahl der Intervalle = Zahl der Schritte -1 mTotalNoSpikeTime=0; mMaxNoSpikeTime=0; int curNoSpikeTime=0; //std::cout << "TimeScalesize=" << TimeScaleSize << " totalTime=" << totalTime << " mDeltaT=" <