void FluxBoundary::operator ()(const double dt) { Operator::resume_timer(); BOOST_FOREACH(Species *s, all_species) { Molecules& mols = s->mols; boost::poisson_distribution<> p_dist(dt*rate); boost::variate_generator<base_generator_type&, boost::poisson_distribution<> > poisson(generator, p_dist); const unsigned int n = poisson(); for (int i = 0; i < n; ++i) { mols.add_molecule(p + uni1()*t1 + uni2()*t2); } }
void generateList(person A[]) { int i; int time=0; int timetemp; std::random_device rd; // initialise seed engine std::mt19937 rng(rd()); // random-number engine Mersenne-Twister std::uniform_int_distribution<int> uni(0,4); std::uniform_int_distribution<int> uni2(0,4); //generates each person entering time and service time ramdomly for(i=0; i<100; i++) { A[i].personId=i; timetemp=uni(rng); time+=timetemp; A[i].enterTime=time; A[i].serviceTime=uni2(rng); } }