TarzaNN
TarzaNN neural network simulator
|
#include <RungeKuttaNeuron.h>
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 |
Runge-Kutta ODE engine. This is an abstract class. The ODEs should be defined as subclasses that implement the derivs() function.
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] |
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] |
void RungeKuttaNeuron::saveIter | ( | int | iter, |
Matrix * | m | ||
) | [protected] |
void RungeKuttaNeuron::setFeaturePlane | ( | FeaturePlaneAbstract * | fp | ) | [virtual] |
Reimplemented from Neuron.
virtual void RungeKuttaNeuron::setInitialValues | ( | ) | [protected, pure virtual] |
int RungeKuttaNeuron::_equations [protected] |
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
MatrixVector RungeKuttaNeuron::lastTimeStep [protected] |
double* RungeKuttaNeuron::rw [protected] |
work-space
double* RungeKuttaNeuron::sovertau [protected] |
Precalculated S/tau (division is expensive)
double* RungeKuttaNeuron::x [protected] |
Results