{ gROOT->Reset(); FrVect *lsc; FrFile *ifile; FrvRFFT *fft, *fft2, *fft3; TH1F *histo0, *histo1, *histo2, *histo3, *histo4, *histo5, *histo6; FrameH *frame = NULL; int nData, iVect, i; double dt, phase = 0; can = new TCanvas("can","RUN",600,800); can.SetGrid(); can.SetLogy(); nData = 1000; dt = .005; vect = FrVectNew1D("gaussian + sin(phase)",FR_VECT_8R, nData,dt, "time [s]","Volts"); fft1 = FrvRFFTNew("AP",0, 0); fft3 = FrvRFFTNew("APH", 0, 0); FrvRFFTSetDecay(fft1,.999); FrvRFFTSetDecay(fft3,.999); for(iVect = 0; iVect<1000; iVect++) { for(i=0; idataD[i] = gRandom->Gaus() + sin(phase);} FrvRFFTFor(fft1, vect); FrvRFFTFor(fft3, vect); if(iVect % 100 != 0) continue; can.cd(1); delete histo0; histo0 = FrVP(vect, "DRAW"); can.cd(2); delete histo1; delete histo2; delete histo3; histo1 = FrVP(fft1->amplitude, "DRAW", 1); histo2 = FrVP(fft1->amplitudeA, "SAME", 2); histo3 = FrVP(fft3->amplitudeA, "SAME", 4); histo1->SetMinimum(.002); histo1->SetMaximum(1.2); can->Modified(); can->Update();} }