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.
simulacion-permeabilidad/fftma_module/gen/lib_src/toolsFFTPSIM.h

56 lines
3.0 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 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 mat_vec(double *C, double *x, double *b, int n);
#endif // define _TOOLSFFTPSIM_H