TarzaNN
TarzaNN neural network simulator
Public Member Functions | Protected Member Functions | Protected Attributes
RungeKuttaNeuron Class Reference

#include <RungeKuttaNeuron.h>

Inheritance diagram for RungeKuttaNeuron:
Neuron SpikingNeuron STNeuron WilsonCowanNeuron

List of all members.

Public Member Functions

 RungeKuttaNeuron (int eq, double step=1.0, int type=1, double timestep=1, double T=1, double factor=1)
 RungeKuttaNeuron (const RungeKuttaNeuron &rkn)
virtual ~RungeKuttaNeuron ()
void setFeaturePlane (FeaturePlaneAbstract *fp)
void nonlinearity (Matrix *totalActivation, Matrix *workOutput, Matrix *spatialBias, float featureBias)
double nonlinearityDerivative (double S)

Protected Member Functions

void rungekuttaAlgorithm (double input, int i, int j, float spatialBias, float featureBias)
void saveIter (int iter, Matrix *m)
virtual void derivs (double input, double t, double *r, double *drdt, float spatialBias, float featureBias)=0
 RungeKuttaNeuron ()
virtual void setInitialValues ()=0

Protected Attributes

int _equations
int _type
double _timestep
double _TT
double _factor
double _step
double ** k
double * drdt
double * rw
double * x
double * sovertau
MatrixVector lastTimeStep

Detailed Description

Runge-Kutta ODE engine. This is an abstract class. The ODEs should be defined as subclasses that implement the derivs() function.


Constructor & Destructor Documentation

RungeKuttaNeuron::RungeKuttaNeuron ( int  eq,
double  step = 1.0,
int  type = 1,
double  timestep = 1,
double  T = 1,
double  factor = 1 
)
RungeKuttaNeuron::RungeKuttaNeuron ( const RungeKuttaNeuron rkn)
RungeKuttaNeuron::~RungeKuttaNeuron ( ) [virtual]
RungeKuttaNeuron::RungeKuttaNeuron ( ) [protected]

Member Function Documentation

virtual void RungeKuttaNeuron::derivs ( double  input,
double  t,
double *  r,
double *  drdt,
float  spatialBias,
float  featureBias 
) [protected, pure virtual]

Implemented in STNeuron.

void RungeKuttaNeuron::nonlinearity ( Matrix totalActivation,
Matrix workOutput,
Matrix spatialBias,
float  featureBias 
) [virtual]

Reimplemented from Neuron.

double RungeKuttaNeuron::nonlinearityDerivative ( double  S) [virtual]

Reimplemented from Neuron.

void RungeKuttaNeuron::rungekuttaAlgorithm ( double  input,
int  i,
int  j,
float  spatialBias,
float  featureBias 
) [protected]
Todo:
Albert two types of time: just counted and real time
void RungeKuttaNeuron::saveIter ( int  iter,
Matrix m 
) [protected]
void RungeKuttaNeuron::setFeaturePlane ( FeaturePlaneAbstract fp) [virtual]

Reimplemented from Neuron.

virtual void RungeKuttaNeuron::setInitialValues ( ) [protected, pure virtual]

Member Data Documentation

Todo:
Albert DOCUMENT the data members!!
double RungeKuttaNeuron::_factor [protected]
double RungeKuttaNeuron::_step [protected]
double RungeKuttaNeuron::_timestep [protected]
double RungeKuttaNeuron::_TT [protected]
int RungeKuttaNeuron::_type [protected]
double* RungeKuttaNeuron::drdt [protected]

"right-hand-side" derivatives

double** RungeKuttaNeuron::k [protected]

Runge-Kutta coefficients; k[i][j] = j-th coefficient of the i-th dependent variable

double* RungeKuttaNeuron::rw [protected]

work-space

double* RungeKuttaNeuron::sovertau [protected]

Precalculated S/tau (division is expensive)

double* RungeKuttaNeuron::x [protected]

Results


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines