39 std::cout <<
"Drawing associate Legendre Polynomials.." << std::endl;
40 TCanvas *Canvas =
new TCanvas(
"DistCanvas",
"Associate Legendre polynomials", 10, 10, 800, 500);
49 L[0]=
new TF1(
"L_0",
"ROOT::Math::assoc_legendre(1, 0,x)", -1, 1);
50 L[1]=
new TF1(
"L_1",
"ROOT::Math::assoc_legendre(1, 1,x)", -1, 1);
51 L[2]=
new TF1(
"L_2",
"ROOT::Math::assoc_legendre(2, 0,x)", -1, 1);
52 L[3]=
new TF1(
"L_3",
"ROOT::Math::assoc_legendre(2, 1,x)", -1, 1);
53 L[4]=
new TF1(
"L_4",
"ROOT::Math::assoc_legendre(2, 2,x)", -1, 1);
68 L[0]->SetTitle(
"Associate Legendre Polynomials");
69 for (
int nu = 0; nu < 5; nu++) {
70 L[nu]->SetLineStyle(1);
71 L[nu]->SetLineWidth(2);
72 L[nu]->SetLineColor(nu+1);
75 leg1->
AddEntry(
L[0]->DrawCopy(),
" P^{1}_{0}(x)",
"l");
76 leg1->
AddEntry(
L[1]->DrawCopy(
"same"),
" P^{1}_{1}(x)",
"l");
77 leg1->
AddEntry(
L[2]->DrawCopy(
"same"),
" P^{2}_{0}(x)",
"l");
78 leg1->
AddEntry(
L[3]->DrawCopy(
"same"),
" P^{2}_{1}(x)",
"l");
79 leg1->
AddEntry(
L[4]->DrawCopy(
"same"),
" P^{2}_{2}(x)",
"l");
87 SL[0]->
SetTitle(
"Spherical Legendre Polynomials");
88 for (
int nu = 0; nu < 5; nu++) {
94 leg2->
AddEntry(SL[0]->DrawCopy(),
" P^{1}_{0}(x)",
"l");
95 leg2->
AddEntry(SL[1]->DrawCopy(
"same"),
" P^{1}_{1}(x)",
"l");
96 leg2->
AddEntry(SL[2]->DrawCopy(
"same"),
" P^{2}_{0}(x)",
"l");
97 leg2->
AddEntry(SL[3]->DrawCopy(
"same"),
" P^{2}_{1}(x)",
"l");
98 leg2->
AddEntry(SL[4]->DrawCopy(
"same"),
" P^{2}_{2}(x)",
"l");
104 std::cout <<
"Calculating integrals of Associate Legendre Polynomials on [-1, 1]" << std::endl;
106 for (
int nu = 0; nu < 5; nu++) {
107 integral[nu] =
L[nu]->Integral(-1.0, 1.0);
108 std::cout <<
"Integral [-1,1] for Associated Legendre Polynomial of Degree " << nu <<
"\t = \t" << integral[nu] << std::endl;
#define R__LOAD_LIBRARY(LIBRARY)
virtual void SetLineStyle(Style_t lstyle)
Set the line style.
virtual void SetLineWidth(Width_t lwidth)
Set the line width.
virtual void SetLineColor(Color_t lcolor)
Set the line color.
TVirtualPad * cd(Int_t subpadnumber=0)
Set current canvas & pad.
virtual void SetMaximum(Double_t maximum=-1111)
Set the maximum value along Y for this function In case the function is already drawn,...
virtual void SetTitle(const char *title="")
Set function title if title has the form "fffffff;xxxx;yyyy", it is assumed that the function title i...
virtual void SetMinimum(Double_t minimum=-1111)
Set the minimum value along Y for this function In case the function is already drawn,...
This class displays a legend box (TPaveText) containing several legend entries.
TLegendEntry * AddEntry(const TObject *obj, const char *label="", Option_t *option="lpf")
Add a new entry to this legend.
virtual void Draw(Option_t *option="")
Draw this legend with its current attributes.
virtual void Divide(Int_t nx=1, Int_t ny=1, Float_t xmargin=0.01, Float_t ymargin=0.01, Int_t color=0)
Automatic pad generation by division.
static constexpr double L