Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
0
Добавлен:
21.04.2026
Размер:
1.14 Кб
Скачать
#include <iostream>
#include <math.h>
#include <time.h>
#include "hist.hpp"

using namespace std;

// This function generates basic random
double gamma(){
    return (rand()+0.5)/(RAND_MAX+1.0);
}

// scattered photon energy probability
double g_compton(double x, double E){
    return x/E + E/x + (1/E - 1/x)*(2 + 1/E - 1/x);
}

// simulate compton
double compton(double E){
// ******************************************************

// ******************************************************
    return ksi;
}

int main(){
    double ksi;  // random value
    double E = 3.5;
    srand(time(NULL)); // initialize the random generator
    int num_bin = 10*E+0.1;
    Hist *hist = new Hist(0, E, num_bin);
    for( int i=0; i<4000000; i++ ){
        ksi = compton(E);
        hist->fill(ksi); // fill histogramm
    }
    for(int i=0; i<hist->get_num_bin(); i++){
        cout << hist->get_bin(i) << "\t";   // get middle of bin boundary
        cout << hist->get_bin_value(i) << "\n"; // get number of counts in the bin
        }
    hist->draw(60);

    delete hist;  // destroy histogramm

}
Соседние файлы в папке Моделирование процессов в физике частиц (7 сем)