private static ArtaProcessNormal CreateArtaProcessN(NormalDistribution normal, double[] artaCorrelationCoefficients, RandomGenerator random)// throws NotStationaryException { ArtaProcessNormal arta = null; // By definition: arCorrelationCoefficients == artaCorrelationCoefficients ArProcess ar = ArProcessFactory.CreateArProcess(artaCorrelationCoefficients, random); arta = new ArtaProcessNormal(ar, normal.getNumericalMean(), normal.getNumericalVariance()); return(arta); }
private static ArtaProcessGeneral CreateArtaProcessG(RealDistribution distribution, double[] artaCorrelationCoefficients, RandomGenerator random) //throws NotStationaryException { ArtaProcessGeneral arta = null; AutocorrelationFitter fitter = new AutocorrelationFitter(distribution); double[] arCorrelationCoefficients = fitter.FitArAutocorrelations(artaCorrelationCoefficients, DEFAULT_ERROR); ArProcess ar = ArProcessFactory.CreateArProcess(arCorrelationCoefficients, random); arta = new ArtaProcessGeneral(ar, distribution); return(arta); }
private static ArtaProcessUniform createArtaProcessU(UniformRealDistribution uniform, double[] artaCorrelationCoefficients, RandomGenerator random) //throws NotStationaryException { ArtaProcessUniform arta = null; int dim = artaCorrelationCoefficients.Length; double[] arCorrelationCoefficients = new double[dim]; for (int i = 0; i < dim; i++) { arCorrelationCoefficients[i] = 2 * Math.Sin(Math.PI * artaCorrelationCoefficients[i] / 6); } ArProcess ar = ArProcessFactory.CreateArProcess(arCorrelationCoefficients, random); arta = new ArtaProcessUniform(ar, uniform.getSupportLowerBound(), uniform.getSupportUpperBound()); return(arta); }