#pragma once #include #include namespace BaseData { using namespace mlpack; using namespace arma; const size_t MaxNum = 36000; struct BaseData { static arma::vec vec1; struct Init { static arma::vec init(double x0, double xn) { arma::vec vec2; vec2.ones(MaxNum*2); for (int i = 0; i < MaxNum; i++) { vec2[i] = x0 + i * (xn - x0) / (double)MaxNum; vec2[MaxNum+i] = xn - i * (xn - x0) / (double)MaxNum; } return vec2; } }; double operator()(size_t index) { return vec1[index % (2*MaxNum)]; } }; // arma::vec BaseData::BaseData::vec1 arma::vec BaseData::vec1 = BaseData::Init::init(600, 300); }; // namespace BaseData