public LatinHypercubeSampling(IRandomNumberGeneratorFactory rng, TSysConfig template, int nDiv = 5) { this.rng = rng; this.rand = rng.CreateRandom(); if (!template.SupportsThreadSafeCloning) { throw new ArgumentException("This URS factory requires cloneable and thread-safe system configurations"); } this.template = template; this.hcOps = new HyperCubeOperations(rng.CreateFactory()); this.nDiv = nDiv; }
public IHyperCubeOperations CreateNew(IRandomNumberGeneratorFactory rng) { return(new HyperCubeOperations(rng.CreateFactory())); }
private IHyperCubeOperations CreateIHyperCubeOperations( ) { return(new HyperCubeOperations(rng.CreateFactory( ))); }