|
|
|
@ -297,7 +297,7 @@ struct realization_mod {
|
|
|
|
|
void axes(double* ap, double* scf, int N);
|
|
|
|
|
|
|
|
|
|
/*cardsin covariance value for lag h*/
|
|
|
|
|
double cardsin(double h);
|
|
|
|
|
double cardsin(double h, int cores);
|
|
|
|
|
|
|
|
|
|
/*Cholesky decomposition of matrix C */
|
|
|
|
|
/* C : symetric positive-definite matrix recorded */
|
|
|
|
@ -325,7 +325,7 @@ void coordinates(int maille, int i[3], struct grid_mod grid);
|
|
|
|
|
/*variogram: structure defined above */
|
|
|
|
|
/*grid: structure defined above */
|
|
|
|
|
/*n: number of gridblocks along X,Y and Z*/
|
|
|
|
|
void covariance(double* covar, struct vario_mod variogram, struct grid_mod grid, int n[3]);
|
|
|
|
|
void covariance(double* covar, struct vario_mod variogram, struct grid_mod grid, int n[3], int cores);
|
|
|
|
|
|
|
|
|
|
/*computation of the covariance matrix for the well data*/
|
|
|
|
|
/*well coordinates are given as a number of cells */
|
|
|
|
@ -355,10 +355,10 @@ void cov_matrix(double* C, struct vario_mod variogram, struct welldata_mod well,
|
|
|
|
|
/*dj: distance along the Y axis */
|
|
|
|
|
/*dk: distance along the Z axis */
|
|
|
|
|
/* The returned value is the computed covariance value */
|
|
|
|
|
double cov_value(struct vario_mod variogram, double di, double dj, double dk);
|
|
|
|
|
double cov_value(struct vario_mod variogram, double di, double dj, double dk, int cores);
|
|
|
|
|
|
|
|
|
|
/*cubic covariance value for lag h*/
|
|
|
|
|
double cubic(double h);
|
|
|
|
|
double cubic(double h, int cores);
|
|
|
|
|
|
|
|
|
|
/*truncation of the power spectrum to remove */
|
|
|
|
|
/*high frequencies - isotropic case */
|
|
|
|
@ -401,7 +401,7 @@ double exponential(double h);
|
|
|
|
|
/*workr: utility real part vector for storage */
|
|
|
|
|
/*worki: utility imaginary part vector for storage */
|
|
|
|
|
/*The transformed data are returned in datar and datai*/
|
|
|
|
|
void fourt(double* datar, double* datai, int nn[3], int ndim, int ifrwd, int icplx, double* workr, double* worki);
|
|
|
|
|
void fourt(double* datar, double* datai, int nn[3], int ndim, int ifrwd, int icplx, double* workr, double* worki, int cores);
|
|
|
|
|
|
|
|
|
|
/*calculates F(x) = (1/a)*exp(-x*x/2)*/
|
|
|
|
|
double funtrun1(double x);
|
|
|
|
@ -410,7 +410,7 @@ double funtrun1(double x);
|
|
|
|
|
float G(float x);
|
|
|
|
|
|
|
|
|
|
/*gamma covariance value for lag h and exponent alpha*/
|
|
|
|
|
double gammf(double h, double alpha);
|
|
|
|
|
double gammf(double h, double alpha, int cores);
|
|
|
|
|
|
|
|
|
|
/*returns the value ln(G(x))*/
|
|
|
|
|
float gammln(float xx);
|
|
|
|
@ -422,7 +422,7 @@ float gammp(float a, float x);
|
|
|
|
|
/*and unit variance, using ran1(idum) as the source */
|
|
|
|
|
/*of uniform deviates */
|
|
|
|
|
/*idum: seed */
|
|
|
|
|
double gasdev(long* idum, long* idum2, long* iy, long* iv);
|
|
|
|
|
double gasdev(long* idum, long* idum2, long* iy, long* iv, int cores);
|
|
|
|
|
|
|
|
|
|
/*gaussian covariance value for lag h*/
|
|
|
|
|
double gaussian(double h);
|
|
|
|
@ -477,7 +477,7 @@ void gradual(struct grad_mod grad, float* Zo, float* Z, float* Zfinal, int n, st
|
|
|
|
|
/*n: vector with the number of cells along the */
|
|
|
|
|
/* X, Y and Z axes for the underlying grid */
|
|
|
|
|
/* i = [0 1 2] */
|
|
|
|
|
void cgrid(struct vario_mod variogram, struct grid_mod grid, int n[3]);
|
|
|
|
|
void cgrid(struct vario_mod variogram, struct grid_mod grid, int n[3], int cores);
|
|
|
|
|
|
|
|
|
|
/*incomplete gamma function evaluated by its series*/
|
|
|
|
|
/*representation as gamser, also returns ln(G(a)) */
|
|
|
|
@ -502,7 +502,7 @@ void krig_stat(float* b, int n, struct vario_mod variogram, struct welldata_mod
|
|
|
|
|
/*i: considered direction */
|
|
|
|
|
/*scf: correlation length */
|
|
|
|
|
/*ap: normalized anisotropy axes */
|
|
|
|
|
int length(int N, int i, double* scf, double* ap, double D, int Nvari);
|
|
|
|
|
int length(int N, int i, double* scf, double* ap, double D, int Nvari, int cores);
|
|
|
|
|
|
|
|
|
|
/*calculates L.Z/
|
|
|
|
|
/* L : lower triangular matrix recorded */
|
|
|
|
@ -516,7 +516,7 @@ int length(int N, int i, double* scf, double* ap, double D, int Nvari);
|
|
|
|
|
void LtimeZ(double* L, float* Z, float* b, int n);
|
|
|
|
|
|
|
|
|
|
/*determines the greatest prime factor of an integer*/
|
|
|
|
|
int maxfactor(int n);
|
|
|
|
|
int maxfactor(int n, int cores);
|
|
|
|
|
|
|
|
|
|
/*metrop returns a boolean varible that issues a */
|
|
|
|
|
/*verdict on whether to accept a reconfiguration */
|
|
|
|
@ -542,7 +542,7 @@ double power(double h, double alpha);
|
|
|
|
|
|
|
|
|
|
/*generates uniform deviates between 0 and 1*/
|
|
|
|
|
/*idum: seed */
|
|
|
|
|
double ran2(long* idum, long* idum2, long* iy, long* iv);
|
|
|
|
|
double ran2(long* idum, long* idum2, long* iy, long* iv, int cores);
|
|
|
|
|
|
|
|
|
|
/*calculates bt.b */
|
|
|
|
|
/* b : vector, bi, i = [0...n-1] */
|
|
|
|
|