#include "Py_py-api.h" #include "genlib.h" #include "geostat.h" #include "simpio.h" #include "toolsFFTMA.h" #include "toolsIO.h" #include "log.h" #include #include #include #include #include #include #include #include /* kgeneration */ /* Z is the GWN with 0-mean and 1-variance */ /* Y is the realization with mean and variance wanted */ void Py_kgeneration(long seed, struct grid_mod grid, struct statistic_mod stat, struct vario_mod variogram, struct realization_mod* Z, struct realization_mod* Y, int n[3]) { clock_t t = clock(); int i, N; int typelog; /*generate Gaussian white noise*/ N = grid.NX * grid.NY * grid.NZ; n[0] = 0; n[1] = 0; n[2] = 0; log_info("RESULT = in progress, N = %d", N); generate(&seed, N, Z); /*FFTMA*/ FFTMA2(variogram, grid, n, Z, Y); /* make a log normal realization */ if (stat.type == 1 || stat.type == 2) { typelog = stat.type + 2; nor2log(Y, typelog, Y); } t = clock() - t; double time_taken = ((double)t)/CLOCKS_PER_SEC; // calculate the elapsed time log_info("RESULT = success, ELAPSED = %f seconds", time_taken); }