Newer
Older

Michal Kravcenko
committed
/**
* DESCRIPTION OF THE FILE
*
* @author Michal Kravčenko
* @date 14.6.18 -
*/
#ifndef INC_4NEURO_CONNECTIONWEIGHT_H
#define INC_4NEURO_CONNECTIONWEIGHT_H
#include <functional>

Michal Kravcenko
committed

Michal Kravcenko
committed
protected:

Michal Kravcenko
committed
std::vector<size_t> param_indices;

Michal Kravcenko
committed
public:
/**
*
*/

Michal Kravcenko
committed
/**
*
* @param param_count
* @param f
*/

Michal Kravcenko
committed
ConnectionFunctionGeneral(std::vector<size_t> ¶m_indices, std::string &function_string);

Michal Kravcenko
committed
/**
*
*/

Michal Kravcenko
committed
virtual ~ConnectionFunctionGeneral( );

Michal Kravcenko
committed
/**
*
* @return
*/

Michal Kravcenko
committed
virtual double eval( std::vector<double> ¶meter_space );

Michal Kravcenko
committed
/**
* Performs partial derivative of this transfer function according to all parameters. Adds the values multiplied
* by alpha to the corresponding gradient vector

Michal Kravcenko
committed
*/

Michal Kravcenko
committed
virtual void eval_partial_derivative( std::vector<double> ¶meter_space, std::vector<double> &weight_gradient, double alpha );

Michal Kravcenko
committed
};
#endif //INC_4NEURO_CONNECTIONWEIGHT_H