Добавил:
okley
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Моделирование (1 сем, мага) / m4 / prog4
.cpp#include <stdio.h>
#include <iostream.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
#include "hist.hpp"
// 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){
double g1, emin;
double ksi;
// ************************************************************
// here simulation code
// ************************************************************
return ksi;
}
int main(){
double ksi; // random value
double E = 3.5;
srand(time(NULL)); // initialize the random generator
int num_bin = 35;
Hist *hist = new Hist(0, 3.5, 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
getchar(); // wait "Enter" to close window
}
