#include <simulate.h>


ema = exponential moving average filter, corresponds to a LOP f1 = lowpass cutoff frequency f2 = highpass cutoff frequency 0 < f2 < f1 < 1 f1=1 -> no LOP filtering, f2=0 -> no highpass filtering f1=1 and f2=0 -> standard ESN f2=0 -> leaky integrator ESN
Finally the output needs to be scale with new_activation = new_activation * (1 + f2/f1) to keep the current spectral radius.
Public Member Functions | |
| SimBP (ESN< T > *esn) | |
| virtual | ~SimBP () |
| virtual SimBP< T > * | clone (ESN< T > *esn) const |
class SimBP Implementation | |
| virtual void | setBPCutoffConst (T f1, T f2) throw (AUExcept) |
| virtual void | setBPCutoff (const typename ESN< T >::DEVector &f1, const typename ESN< T >::DEVector &f2) throw (AUExcept) |
| virtual void | simulate (const typename ESN< T >::DEMatrix &in, typename ESN< T >::DEMatrix &out) |
class SimBase Implementation | |
| virtual void | reallocate () |
additional interface for filter neurons and delay&sum readout | |
| virtual void | setIIRCoeff (const typename DEMatrix< T >::Type &B, const typename DEMatrix< T >::Type &A, int series=1) throw (AUExcept) |
| virtual void | initDelayLine (int index, const typename DEVector< T >::Type &initbuf) throw (AUExcept) |
| virtual DEMatrix< T > ::Type | getDelays () throw (AUExcept) |
| virtual DEVector< T > ::Type & | getDelayBuffer (int output, int nr) throw (AUExcept) |
Data Fields | |
| BPFilter< T > | filter_ |
| ESN< T >::DEMatrix | last_out_ |
| ESN< T >::DEVector | t_ |
Protected Attributes | |
| ESN< T > * | esn_ |
| aureservoir::SimBP< T >::SimBP | ( | ESN< T > * | esn | ) | [inline] |
| virtual aureservoir::SimBP< T >::~SimBP | ( | ) | [inline, virtual] |
| virtual SimBP<T>* aureservoir::SimBP< T >::clone | ( | ESN< T > * | esn | ) | const [inline, virtual] |
| void aureservoir::SimBP< T >::setBPCutoffConst | ( | T | f1, | |
| T | f2 | |||
| ) | throw (AUExcept) [inline, virtual] |
| void aureservoir::SimBP< T >::simulate | ( | const typename ESN< T >::DEMatrix & | in, | |
| typename ESN< T >::DEMatrix & | out | |||
| ) | [inline, virtual] |
implementation of the algorithm
Implements aureservoir::SimBase< T >.
| void aureservoir::SimBase< T >::reallocate | ( | ) | [inline, virtual, inherited] |
reallocates data buffers
Reimplemented in aureservoir::SimFilterDS< T >, and aureservoir::SimSquare< T >.
| void aureservoir::SimBase< T >::setIIRCoeff | ( | const typename DEMatrix< T >::Type & | B, | |
| const typename DEMatrix< T >::Type & | A, | |||
| int | series = 1 | |||
| ) | throw (AUExcept) [inline, virtual, inherited] |
Reimplemented in aureservoir::SimFilter< T >.
| void aureservoir::SimBase< T >::initDelayLine | ( | int | index, | |
| const typename DEVector< T >::Type & | initbuf | |||
| ) | throw (AUExcept) [inline, virtual, inherited] |
Reimplemented in aureservoir::SimFilterDS< T >.
| DEMatrix< T >::Type aureservoir::SimBase< T >::getDelays | ( | ) | throw (AUExcept) [inline, virtual, inherited] |
Reimplemented in aureservoir::SimFilterDS< T >.
| DEVector< T >::Type & aureservoir::SimBase< T >::getDelayBuffer | ( | int | output, | |
| int | nr | |||
| ) | throw (AUExcept) [inline, virtual, inherited] |
Reimplemented in aureservoir::SimFilterDS< T >.
| BPFilter<T> aureservoir::SimBP< T >::filter_ |
the filter object
ESN<T>::DEMatrix aureservoir::SimBase< T >::last_out_ [inherited] |
output from last simulation
ESN<T>::DEVector aureservoir::SimBase< T >::t_ [inherited] |
temporary object needed for algorithm calculation
ESN<T>* aureservoir::SimBase< T >::esn_ [protected, inherited] |
reference to the data of the network
1.5.3