-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinp_GPRmodel1.m
More file actions
172 lines (147 loc) · 5.47 KB
/
inp_GPRmodel1.m
File metadata and controls
172 lines (147 loc) · 5.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
function [ model1 ] = inp_GPRmodel1( )
% INP_GPRMODEL1 - Most importatnt one
%sets up model parameters for 2D Ground Penetrating Radar (GPR)
% Full-Waveform Inversion (FWI).
% Define model parameters for 2D GPR FDFD FWI
%
% --------------------------------------------------------
% Copyright @ Mrinal Kanti Layek (MKL)
% Senior Research Fellow (Geophysics),
% Department of Geology and Geophysics,
% Indian Institute of Technology Kharagpur,
% Kharagpur - 721302, India
% https://www.researchgate.net/profile/Mrinal_Layek
% 14.01.2018 (DD.MM.YYYY)
% -------------------------------------------------------
% On 14 th jan, 2018
path(path, eval('pwd'));
path(path, [eval('pwd') '/forward']);
path(path, [eval('pwd') '/input']);
path(path,[eval('pwd') '/output'])
path(path,[eval('pwd') '/outputmyINV'])
% path(path, [eval('pwd') '/inp']);
path(path, [eval('pwd') '/inv']);
path(path, [eval('pwd') '/obs']);
%
%==========================================================================
%==================== Forward Model parameters ============================
%==========================================================================
% ------------------------2D grid parameters-------------------------------
% number of gridpoint in x- and y-direction
model1.nx =180;
model1.ny = 180;
% spatial sampling interval [m]
model1.dh = 0.05;
model1.n = model1.nx * model1.ny;
% define x- and y-axis [m]
model1.x = model1.dh.*(1:model1.nx);
model1.y = model1.dh.*(1:model1.ny);
% ------------------------------------:-------------------------------------
% define modeling input parameters
model1.f = 50e6; % frequency
% model1.s = 0.0;
model1.nfreq=10;
% model1.omega = 2.0*pi*(model1.f+1i*model1.s);
% model1.omega = 2.0*pi*model1.f;
model1.mu0 = 4.0*pi*1e-7;
model1.eps01=1;
model1.epsr=4.0;
model1.m=2.0;
model1.m1 = 2.0;
% define thickness of PML boundary frame [gridpoints] <<<<<<<---------
model1.npml = 10;
model1.a0_pml = 9e8;
model1.a0_rot9p=1.79;
% ^^^^^^^^^^^^^^^^^^^^^^^^^^^ CFS-PML parameters ^^^^^^^^
model1.a0_cfs = 9e8;
model1.kappax_max=5.0;
model1.kappay_max=5.0;
model1.alphax_max=0.2;
model1.alphay_max=(pi./16.0).*1e8;
% ^^^^^^^^^^^^^^^^^^^^^^^^^^^ -:- ^^^^^^^^
% define free surface
model1.free = 0;% Always keep 0 - It's tested by me
% basename of input model
% model1.file_true1 = 'input/CHPDX24.eps';
model1.file_true1 = 'input/2_cross_TE_true.eps';
model1.file_init = 'input/2_cross_TE_init.eps';
model1.file_true2 = 'input/2_cross_TE_true.sig';
% file names for source and receiver file
model1.file_rec = 'input/receiver_2_cross_TE_p';
model1.file_src = 'input/source_2_cross_TE_p';
% define Caxis clip - Set colormap limits
% c=gray;
% model1.c=flipud(c);
model1.caxis1 = 10;
model1.caxis2 = 1;
% define fonts
model1.FSize = 12;
model1.Fweight = 'normal';
% define figure size;
model1.screenx = 1000;
model1.screeny = 1000;
%==========================================================================
% TD shot gather
%==========================================================================
model1.clip=2.5e-3; % clip data Blackman-Harris
model1.clip1=1e-2;
model1.FC_low=50e6;
model1.FC_high=200e6;
model1.nf=50; %<<<<<<<<<<<<<<<<<<<<-----------------------------------||||
model1.df=(model1.FC_high-model1.FC_low)./(model1.nf-1);
%================ TD Parameters====================
model1.TmaxTD=150e-9; %Maximum recording time
% model1.dt =
model1.sig_max=9e8;%following Chen et al. 2013
% model1.sig_max=(model1.m+1)./(150.*pi.*model1.dh.*sqrt(model1.epsr));
% model1.sig_max=4.0./(377.0.*model1.dh);% 0.1516
%==========================================================================
%==================== Inverse Model parameters ============================
%==========================================================================
%The radius of the taper is defined in meter by SRTRADIUS.
% Note, that this radius must be at least 6 gridpoints
model1.SRTRADIUS=80.0; %radius_in_m
%normalisation factor
model1.eps0=8.85e-12;
model1.sig0=5.6e-3;
% SELECT Upper & Lower limits of eps and sig
model1.sigr_low = 0.08e-3;
model1.sigr_high = 20.2e-3;
model1.epsr_low=3.8*model1.eps0;
model1.epsr_high=33.20*model1.eps0;
model1.beta_sig1=1.0;
model1.beta_eps1=1.0;
model1.beta_sig=1.0;% 1.0 in Germaine
model1.beta_eps=1.0;
model1.LAMBDA_1=0.0002;%1.0e-4
model1.LAMBDA_2=0.000;
% Damping gradient in PML with taper (for cp_grad_frame_TE)
model1.damp =60.0;
% #$$$$$$$$$$$$$$$$ GQN Method:LBFGS parameters $$$$$$$$$$$$$$$$$$$$#
model1.nlbfgs=5.0;
model1.lbfgs_pointer =1;
model1.nlbfgs_class=2.0;
model1.nlbfgs_vec=model1.nlbfgs_class.*model1.nx.*model1.ny;
% model1.beta_lbfgs=2.0;
model1.EPS_HESS=0.01;
model1.SIG_HESS=0.01;
% #$$$$$$$$$$$$$$$$$$$ Step length estimation $$$$$$$$$$$$$$$$$$$$$$$$#
model1.eps_scale = 0.01;
model1.sig_scale = 0.01;
% parameters_for_Wolfe_conditions_
model1.C1=1e-4;
model1.C2 = 0.9;
% maximum_number_of_attemps_to_find_a_step_length
model1.STEPMAX = 3.0;
model1.SCALEFAC = 2.0;
%
model1.cx1=0;
model1.cxe1=10;
model1.cxs1=10;
% Choices ------------------ Very Important --------------------------
model1.wolfe=1;%1- Run wolfe; 2- ALPHA_OLD =1.0;
model1.taper=2;
model1.damping=2;
model1.ACQMY=1;% 1= read Acquistion geometry for 4-sided configuration
model1.STAG=2; %1= regular staggered; 2= new staggered -developed by MKL
end