import umontreal.iro.lecuyer.rng.*; import umontreal.iro.lecuyer.hups.*; import umontreal.iro.lecuyer.stat.Tally; import umontreal.iro.lecuyer.util.Chrono; public class AsianQMC extends Asian { public AsianQMC (double r, double sigma, double strike, double s0, int s, double[] zeta) { super (r, sigma, strike, s0, s, zeta); } // Makes m independent randomizations of the digital net p using stream // noise. For each of them, performs one simulation run for each point // of p, and adds the average over these points to the collector statQMC. public void simulateQMC (int m, DigitalNet p, RandomStream noise, Tally statQMC) { Tally statValue = new Tally ("stat on value of Asian option"); PointSetIterator stream = p.iterator (); for (int j=0; j