00001 #include <iostream>
00002 #include <UniformRNG.h>
00003 #include "miscfunc.h"
00004 #include <numeric>
00005 #include <algorithm>
00006 #include <boost/bind.hpp>
00007 using namespace std;
00008 int main()
00009 {
00010 complex<double> C(1.,1.);
00011 UniformRNG Random;
00012 const int length = 100;
00013 const int shift = 10;
00014 vector<double> TimeSeries1(3*length,0);
00015 vector<double> TimeSeries2(3*length,0);
00016 vector<double> Output;
00017
00018 for (int i = length; i < 2*length; ++i)
00019 {
00020 TimeSeries1.at(i) = 200*(0.5- Random.GetNumber());
00021 }
00022 for (int i = length+shift; i < 2*length; ++i)
00023 {
00024 TimeSeries2.at(i) = TimeSeries1.at(i-shift);
00025 }
00026 double mean1=accumulate(TimeSeries1.begin(),TimeSeries1.end(),0.)/length;
00027 double mean2=accumulate(TimeSeries2.begin(),TimeSeries2.end(),0.)/length;
00028
00029
00030
00031 Correl(TimeSeries2,TimeSeries1,Output);
00032
00033 for (int i = 0; i < Output.size(); ++i)
00034 cout << i << " "<< TimeSeries1.at(i) << " " << TimeSeries2.at(i) << " " <<Output.at(i)/double(length) << " " << endl;
00035 cout << endl;
00036 }