globvar.h 3.75 KB
Newer Older
Tilman Steinweg's avatar
Tilman Steinweg committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
/*------------------------------------------------------------------------
 *   globvar.h - global variables of viscoelastic FD programs   
 *   last update 05/04/02 T. Bohlen
 *
 *  ----------------------------------------------------------------------*/

/* definition of global variables used in the finite difference programs*/
/* generally, for the names of the global variables uppercase letters are used */

/* Add new variables also in exchange_par.c and read_par_json.c */

float XS, YS, DH, TIME, DT, TS, DAMPING, PLANE_WAVE_DEPTH, PHI;
float TSNAP1, TSNAP2, TSNAPINC, *FL, TAU, F_REF;
float XREC1, XREC2, YREC1, YREC2;
float REC_ARRAY_DEPTH, REC_ARRAY_DIST;
float REFREC[4]={0.0, 0.0, 0.0, 0.0}, FPML;
int   SEISMO, NDT, NGEOPH, NSRC=1, SEIS_FORMAT, FREE_SURF, READMOD, READREC, SRCREC, FW=0;
Florian Wittkamp's avatar
Florian Wittkamp committed
18
int   NX, NY, NT, QUELLART,QUELLART_SH, QUELLTYP, SNAP, SNAP_FORMAT, REC_ARRAY, RUN_MULTIPLE_SHOTS, NTRG;
Tilman Steinweg's avatar
Tilman Steinweg committed
19
int   L, BOUNDARY, DC, DRX, NXG, NYG, IDX, IDY, CHECKPTREAD, CHECKPTWRITE, FDORDER, MAXRELERROR;
20
char  SNAP_FILE[STRING_SIZE], SOURCE_FILE[STRING_SIZE], SIGNAL_FILE[STRING_SIZE], SIGNAL_FILE_SH[STRING_SIZE];
Tilman Steinweg's avatar
Tilman Steinweg committed
21
char  MFILE[STRING_SIZE], REC_FILE[STRING_SIZE], CHECKPTFILE[STRING_SIZE];
22
char  SEIS_FILE_VX[STRING_SIZE], SEIS_FILE_VY[STRING_SIZE], SEIS_FILE_VZ[STRING_SIZE], LOG_FILE[STRING_SIZE];
Tilman Steinweg's avatar
Tilman Steinweg committed
23 24 25
char  SEIS_FILE_CURL[STRING_SIZE], SEIS_FILE_DIV[STRING_SIZE], SEIS_FILE_P[STRING_SIZE];
FILE *FP;

26
int VERBOSE;
Tilman Steinweg's avatar
Tilman Steinweg committed
27 28 29 30 31 32 33 34 35 36 37
/* Mpi-variables */
int   NP, NPSP, NPROC, NPROCX, NPROCY, MYID, IENDX, IENDY;
int   POS[3], INDEX[5];     
const int TAG1=1,TAG2=2, TAG3=3, TAG4=4, TAG5=5,TAG6=6; 

/* spatial adaptive Code variables*/
int   check_id, cfgt_id, cfgt, jumpid;
float DH1;

/* TDFWI Code DENISE_elastic*/
char JACOBIAN[STRING_SIZE], DATA_DIR[STRING_SIZE], FREQ_FILE[STRING_SIZE];
38 39 40 41

int USE_WORKFLOW;
char FILE_WORKFLOW[STRING_SIZE];

Tilman Steinweg's avatar
Tilman Steinweg committed
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
int TAPER, TAPERLENGTH, INVTYPE;
int GRADT1,GRADT2,GRADT3,GRADT4;
int ITERMAX, REC1, REC2, INVMAT1, INVMAT, QUELLTYPB;
int HESSIAN, GRAD_METHOD, ORDER_HESSIAN;
float FC_HESSIAN, TSHIFT_back;
int MODEL_FILTER, FILT_SIZE;
float EPSILON, MUN, EPSILON_u, EPSILON_rho;

int TESTSHOT_START, TESTSHOT_END, TESTSHOT_INCR, NO_OF_TESTSHOTS; 
int SWS_TAPER_GRAD_VERT, SWS_TAPER_GRAD_HOR, SWS_TAPER_GRAD_SOURCES, SWS_TAPER_CIRCULAR_PER_SHOT, SRTSHAPE, FILTSIZE;
int SWS_TAPER_FILE, SWS_TAPER_FILE_PER_SHOT;
float SRTRADIUS;
char TAPER_FILE_NAME[STRING_SIZE], TAPER_FILE_NAME_U[STRING_SIZE], TAPER_FILE_NAME_RHO[STRING_SIZE];

int SPATFILTER, SPAT_FILT_SIZE, SPAT_FILT_1, SPAT_FILT_ITER;

int INV_RHO_ITER, INV_VS_ITER, INV_VP_ITER;

int MIN_ITER;

char INV_MODELFILE[STRING_SIZE];
int nfstart, nf;

int nfstart_jac, nf_jac;

float VPUPPERLIM, VPLOWERLIM, VSUPPERLIM, VSLOWERLIM, RHOUPPERLIM, RHOLOWERLIM;

float npower, k_max_PML;

Florian Wittkamp's avatar
Florian Wittkamp committed
71 72
int TAPER_STF;
int INV_STF, N_STF, N_STF_START,TW_IND;
Tilman Steinweg's avatar
Tilman Steinweg committed
73 74 75 76 77 78 79 80 81 82 83 84
char PARA[STRING_SIZE];

int TIME_FILT, ORDER, ZERO_PHASE;
float FC_START, FC_END, FC_INCR, F_HP;

int LNORM, DTINV;

int STEPMAX;
float EPS_SCALE, SCALEFAC;

float PRO;

85 86 87 88 89 90 91 92 93 94 95 96 97
int EPRECOND;
float EPSILON_WE;
int EPRECOND_ITER;
int EPRECOND_PER_SHOT;

int N_LBFGS;
int LBFGS_SURFACE;
int LBFGS_STEP_LENGTH;

int WOLFE_CONDITION=0;
int WOLFE_NUM_TEST=5;
int WOLFE_TRY_OLD_STEPLENGTH=1;

Tilman Steinweg's avatar
Tilman Steinweg committed
98 99 100 101 102 103 104 105
/* trace kill variables */
int TRKILL;
char TRKILL_FILE[STRING_SIZE];

/* trace kill STF variables */
int TRKILL_STF;
char TRKILL_FILE_STF[STRING_SIZE];

106
int TIMEWIN, NORMALIZE;
Tilman Steinweg's avatar
Tilman Steinweg committed
107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
float TWLENGTH_PLUS, TWLENGTH_MINUS, GAMMA;
char PICKS_FILE[STRING_SIZE];
char MISFIT_LOG_FILE[STRING_SIZE]; 

int GRAD_FILTER, FILT_SIZE_GRAD;

int VELOCITY;

float WATERLEVEL_LNORM8;

float VP_VS_RATIO;

int S;

float S_VP, S_VS, S_RHO;

int GRAD_FILT_WAVELENGTH;
float A;

int ACOUSTIC;
127 128 129 130 131 132 133 134 135

int VERBOSE;

int WAVETYPE;
int JOINT_INVERSION_PSV_SH_TYPE;

float JOINT_INVERSION_PSV_SH_ALPHA_VS;
float JOINT_INVERSION_PSV_SH_ALPHA_RHO;
int SNAPSHOT_START,SNAPSHOT_END,SNAPSHOT_INCR;