Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
ChebyshevPol.C
Go to the documentation of this file.
1 /// \file
2 /// \ingroup tutorial_math
3 /// \notebook
4 /// Example of Chebyshev polynomials
5 /// using new TFormula pre-defined definitions of chebyshev polynomials
6 ///
7 /// \macro_image
8 /// \macro_code
9 ///
10 /// \author Lorenzo Moneta
11 
12 void ChebyshevPol() {
13 
14 
15  auto legend = new TLegend(0.88,0.4,1.,1.);
16 
17  int colors[] = { kRed, kRed+3, kMagenta, kMagenta+3, kBlue, kBlue+3, kCyan+3, kGreen, kGreen+3, kYellow, kOrange };
18 
19  for (int degree=0; degree <=10; ++degree) {
20  auto f1 = new TF1("f1",TString::Format("cheb%d",degree),-1,1);
21  // all parameters are zero apart from the one corresponding to the degree
22  f1->SetParameter(degree,1);
23  f1->SetLineColor( colors[degree]);
24  f1->SetMinimum(-1.2);
25  f1->SetMaximum(1.2);
26  TString opt = (degree == 0) ? "" : "same";
27  //f1->Print("V");
28  f1->SetNpx(1000);
29  f1->SetTitle("Chebyshev Polynomial");
30  f1->Draw(opt);
31  legend->AddEntry(f1,TString::Format("N=%d",degree),"L");
32  }
33  legend->Draw();
34 }
35