Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ROOT / CERN ROOT book.pdf
Скачиваний:
1
Добавлен:
14.12.2025
Размер:
433.58 Кб
Скачать

Глава 5

Анализ данных и фитирование

5.1Введение в фитирование

Фитирование — это процесс подбора параметров математической модели так, чтобы она наилучшим образом описывала экспериментальные данные. ROOT предоставляет мощные инструменты для различных типов фитирования.

5.2Фитирование гистограмм

5.2.1Простое фитирование

1// Создание гистограммы с данными

2TH1F* h = new TH1F("h", "Данные для фитирования", 100, -5, 5);

3

4 // Заполнение данными (смесь гауссиана и фона)

5for(int i = 0; i < 10000; i++) {

6if(gRandom->Uniform() < 0.8) {

7

h->Fill(gRandom->Gaus(0, 1)); // Сигнал

8} else {

9h->Fill(gRandom->Uniform(-5, 5)); // Фон

10}

11}

12

13// Фитирование гауссианом

14TF1* gauss = new TF1("gauss", "gaus", -3, 3);

15h->Fit(gauss, "R"); // R - ограничить фит диапазоном функции

16

17// Получение параметров

18double amplitude = gauss->GetParameter(0);

19double mean = gauss->GetParameter(1);

20double sigma = gauss->GetParameter(2);

21

22cout << "Амплитуда: " << amplitude << " ± " << gauss->GetParError(0) << endl;

23cout << "Среднее: " << mean << " ± " << gauss->GetParError(1) << endl;

24cout << "Сигма: " << sigma << " ± " << gauss->GetParError(2) << endl;

19

Соседние файлы в папке ROOT