void shellsort::shellinsert() { int number=returnsize(); for(int i=dk;i<number;i++) { int usedata=returndata()[i]; int j=i-dk; for(;j>=0;j-=dk) { if(usedata>=returndata()[j]) break; else returndata()[j+dk]=returndata()[j]; } returndata()[j+dk]=usedata; } }
void NumericalDiff::diff(const unsigned long long &ts, int count, double sample[]) { Eigen::VectorXd data(count); Eigen::VectorXd returndata(count); for (int i=0;i<count;i++) { data(i) = sample[i]; } returndata = diff(ts,data); for (int i=0;i<count;i++) { sample[i] = returndata(i); } }