// Utilizzo della classe TF1 // Si usa anche la classe TCanvas #include "lp.C" int funz(){ // ========================================================================================= // Definizione di una funzione f1 // ========================================================================================= TF1 *f1 = new TF1("f1","sin(x)/x",0.,10.); // Disegnare la funzione TCanvas *c1 = new TCanvas("c1","funzione",600,400); // Viene creata una finestra grafica f1->Draw(); // Salvare la figura usando l'interfaccia grafica f1->SetRange(-2.,15.); // Cambiare l'intervallo di definizione cout << "Il valore di f1 in 1 vale -->> " << f1->Eval(1.) << endl; // Valutarla in un punto cout << "La derivata di f1 in 1 vale -->> " << f1->Derivative(1.) << endl; // Valutarne la derivata in un punto cout << "L'integrale di f1 in [0,1] vale -->> " << f1->Integral(0.,1.) << endl; // Calcolare l'integrale definito // ========================================================================================= // Definire una funzione a partire da f1 // ========================================================================================= TF1 *f2 = new TF1("f2","2.*f1",0.,10.); TCanvas *c2 = new TCanvas("c2","funzione",600,400); f2->Draw(); // ========================================================================================= // Definizione una funzione con parametri // ========================================================================================= TF1 *f3 = new TF1("f3","[0]*x*sin([1]*x)",-3.,3.); TCanvas *c3 = new TCanvas("c3","funzione",600,400); f3->SetParameter(0,10.); // Definire il parametro [0] a 10. f3->SetParameters(10.,5.); // Definire [0] -> 10. e [1] a 5. f3->Draw(); // ========================================================================================= // Oppure... // ========================================================================================= TF1 *lp = new TF1("lp",lorentzianPeak,-3.,3.,3); // L'ultimo intero definisce il numero di parametri TCanvas *c4 = new TCanvas("c4","Lorentzian Peak",600,400); lp->SetParameters(1.,1.,0.); lp->Draw(); }