ts-aggregator/project_template/NoTrendAddSeasonality.h
2022-12-13 12:36:06 +04:00

33 lines
913 B
C++

#ifndef NOTRENDADDSEASONALITY_H
#define NOTRENDADDSEASONALITY_H
#include "Method.h"
#include "Aic.h"
#include "Param.h"
using namespace std;
// êîíêðåòíàÿ ðåàëèçàöèÿ àáñòðàêòíîãî êëàññà Method
// ðåàëèçóåò ìåòîä ýêñïîíåíöèàëüíîãî ñãëàæèâàíèÿ áåç òðåíäà c àääèòèâíîé ñåçîííîñòüþ
class NoTrendAddSeasonality : public Method {
public:
double alpha; // ïàðàìåòð ñãëàæèâàíèÿ
vector<double> S; // ñãëàæåííûé äàííûì ìåòîäîì ðÿä
double delta; // ïàðàìåòð ñãëàæèâàíèÿ ñåçîííîñòè
vector<double> I; // ñåçîííàÿ êîìïîíåíòà
int p; // ïåðèîä ñåçîííîñòè
NoTrendAddSeasonality(vector<double>, int);
~NoTrendAddSeasonality();
vector<double> getForecast();
void init();
void createModel();
void createModelForEstimation();
void setParam(string, double);
double calcEstimation(Aic *);
Param* optimize(Estimation *); // ìåòîä îïòèìèçàöèè îäíîãî ïàðàìåòðà
vector<double> getS();
};
#endif