You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
3.3 KiB
C
63 lines
3.3 KiB
C
#include <string.h>
|
|
#include "geostat.h"
|
|
#include "pressure.h"
|
|
|
|
|
|
#ifndef _TOOLSFFTPSIM_H
|
|
#define _TOOLSFFTPSIM_H
|
|
|
|
/* Create december, the 16th 2002 */
|
|
|
|
/* List of functions: */
|
|
/* ------------------ */
|
|
/* pgeneration, FFTPSim, FFTPressure, build_pressure, build_velocity,total_pressure,total_velocity, clean_real2 */
|
|
|
|
/*Functions */
|
|
/*----------*/
|
|
|
|
void pgeneration(int n[3],struct grid_mod grid,struct statistic_mod stat,struct vario_mod variogram,string filename[8],struct pressure_mod pression,struct realization_mod *Y,struct realization_mod *P,struct realization_mod *VX,struct realization_mod *VY,struct realization_mod *VZ, int solver);
|
|
|
|
void pgeneration2(int n[3],struct grid_mod grid,struct statistic_mod stat,
|
|
struct vario_mod variogram,string filename[8],struct pressure_mod pression,
|
|
struct realization_mod *Y,struct realization_mod *P,
|
|
struct realization_mod *VX,struct realization_mod *VY,struct realization_mod *VZ, int solver, int format_file);
|
|
|
|
void FFTPSim(struct vario_mod variogram,struct statistic_mod stat,struct grid_mod grid,int n[3],struct realization_mod *realin,struct pressure_mod gradient,struct realization_mod *realout,struct realization_mod *realout2,struct realization_mod *realout3,struct realization_mod *realout4,struct realization_mod *realout5);
|
|
|
|
void FFTPressure(int n[3],struct grid_mod grid,struct realization_mod *realin,struct statistic_mod stat,struct pressure_mod gradient,struct realization_mod *realout,struct realization_mod *realout2,struct realization_mod *realout3,struct realization_mod *realout4, int solver);
|
|
|
|
void build_pressure(int n[3],struct grid_mod grid,struct pressure_mod gradient,double *realization,double *ireal,double *pressure,double *ipressure);
|
|
|
|
void build_velocity(int n[3],struct grid_mod grid,struct statistic_mod stat,struct pressure_mod gradient,double *realization,double *ireal,double *xvelocity,double *ixvelocity,int direction);
|
|
|
|
/* total_pressure */
|
|
/* Build total pressure */
|
|
/* grid: structure defining the grid */
|
|
/* pression:: structure defining the gradient pressure */
|
|
/* realout: structure defining a realization */
|
|
|
|
void total_pressure(struct grid_mod grid,struct pressure_mod gradient,struct realization_mod *realout);
|
|
|
|
/* total_velocity */
|
|
/* Build total velocity in one direction */
|
|
/* grid: structure defining the grid */
|
|
/* mean: permeability mean */
|
|
/* dgradient: macroscopic pressure gradient in wanted direction */
|
|
/* realout: structure defining a X velocity realization */
|
|
|
|
void total_velocity(struct grid_mod grid,double mean,int direction,struct pressure_mod gradient,struct realization_mod *realout);
|
|
|
|
void clean_real2(struct realization_mod *realin,int n[3],struct grid_mod grid,int solver,double *vectorresult,struct realization_mod *realout);
|
|
|
|
void normAxes(double *vec, double *normed);
|
|
void waveVectorCompute1D(int n,double *vec);
|
|
|
|
void waveVectorCompute3D(int nX,int nY, int nZ, /*float dX, float dY, float dZ,*/ double nDir[3], double *waveVect);
|
|
|
|
void derivReal(struct realization_mod *Z, struct realization_mod *dZ, double *dir, struct grid_mod *grid, struct vario_mod vario);
|
|
|
|
void mat_vec(double *C, double *x, double *b, int n);
|
|
|
|
|
|
#endif // define _TOOLSFFTPSIM_H
|