Skip to content
Snippets Groups Projects
Commit 7508d287 authored by Xavier Adriaens's avatar Xavier Adriaens
Browse files

Pre merge commit

parent 37644a34
No related branches found
No related tags found
No related merge requests found
Showing
with 525 additions and 5 deletions
...@@ -58,9 +58,14 @@ int directional(const GmshFem& gmshFem) ...@@ -58,9 +58,14 @@ int directional(const GmshFem& gmshFem)
unsigned int n_freq = 0; unsigned int n_freq = 0;
if(!gmshFem.userDefinedParameter(n_freq, "n_freq0")) if(!gmshFem.userDefinedParameter(n_freq, "n_freq0"))
{
msg::warning << "Total frequency number for group #0 could not be found." << msg::endl;
if(!gmshFem.userDefinedParameter(n_freq, "n_freq"))
{ {
throw Exception("Total frequency number could not be found."); throw Exception("Total frequency number could not be found.");
} }
msg::warning << "All frequencies are used." << msg::endl;
}
std::vector<double> frequency(n_freq); std::vector<double> frequency(n_freq);
std::vector<const Data<T_Physic>*> d0(n_freq); std::vector<const Data<T_Physic>*> d0(n_freq);
std::vector<EquationInterface<T_Physic>*> pequation(n_freq); std::vector<EquationInterface<T_Physic>*> pequation(n_freq);
...@@ -72,7 +77,9 @@ int directional(const GmshFem& gmshFem) ...@@ -72,7 +77,9 @@ int directional(const GmshFem& gmshFem)
unsigned int index = 0; unsigned int index = 0;
if(!gmshFem.userDefinedParameter(index, "frequency0"+suffix_f)) if(!gmshFem.userDefinedParameter(index, "frequency0"+suffix_f))
{ {
throw Exception("Frequency index #"+suffix_f+" could not be found."); msg::warning << "Frequency index #"+suffix_f+" could not be found." << msg::endl;
msg::warning << "index = " << suffix_f << msg::endl;
index = f;
} }
std::string suffix_idx = std::to_string(index); std::string suffix_idx = std::to_string(index);
...@@ -83,7 +90,13 @@ int directional(const GmshFem& gmshFem) ...@@ -83,7 +90,13 @@ int directional(const GmshFem& gmshFem)
std::string filename = "noname"; std::string filename = "noname";
if(!gmshFem.userDefinedParameter(filename, "data"+suffix_idx)) if(!gmshFem.userDefinedParameter(filename, "data"+suffix_idx))
{ {
throw Exception("Data filename #"+suffix_idx+" could not be found."); msg::warning << "Data filename #"+suffix_idx+" could not be found." << msg::endl;
if(!gmshFem.userDefinedParameter(filename, "data"))
{
throw Exception("Data filename could not be found.");
}
filename += suffix_idx;
msg::warning << "filename #"+suffix_idx+" = "<< filename << msg::endl;
} }
d0[f] = new Data<T_Physic>(filename,configuration); d0[f] = new Data<T_Physic>(filename,configuration);
......
...@@ -27,6 +27,21 @@ localminimum_absGradient2NormThreshold = 1e-5 ...@@ -27,6 +27,21 @@ localminimum_absGradient2NormThreshold = 1e-5
#Discretization #Discretization
h=0.1 h=0.1
#Model #Model
innerproduct_integration_degree_blk0 = 3
innerproduct_integration_degree_bnd0 = 4
innerproduct_integration_degree_blk1 = 5
innerproduct_integration_degree_bnd1 = 6
innerproduct_integration_degree_blk2 = 5
innerproduct_integration_degree_bnd2 = 6
innerproduct_integration_degree_blk3 = 5
innerproduct_integration_degree_bnd3 = 6
innerproduct_integration_degree_blk4 = 7
innerproduct_integration_degree_bnd4 = 8
innerproduct_integration_degree_blk5 = 9
innerproduct_integration_degree_bnd5 = 10
innerproduct_integration_degree_blk6 = 11
innerproduct_integration_degree_bnd6 = 12
#
model_FunctionSpaceType = HierarchicalH1 model_FunctionSpaceType = HierarchicalH1
model_FunctionSpaceDegree = 1 model_FunctionSpaceDegree = 1
# #
......
...@@ -11,3 +11,5 @@ h = 0.1 ...@@ -11,3 +11,5 @@ h = 0.1
model_IntegrationType = Gauss model_IntegrationType = Gauss
model_FunctionSpaceType = HierarchicalH1 model_FunctionSpaceType = HierarchicalH1
model_FunctionSpaceDegree = 1 model_FunctionSpaceDegree = 1
#Group
n_group=7
...@@ -6,18 +6,20 @@ unknown = all ...@@ -6,18 +6,20 @@ unknown = all
#Objective #Objective
objective = l2distance objective = l2distance
#Inner product #Inner product
innerproduct = sobolev innerproduct = sobolev_tv
innerproduct_weight_bnd = 0. innerproduct_weight_bnd = 0.
innerproduct_diag_preconditioner = 1 innerproduct_diag_preconditioner = 1
innerproduct_preconditioner_ref0 = 2e-3 innerproduct_preconditioner_ref0 = 2e-3
innerproduct_preconditioner_ref1 = 1e-3 innerproduct_preconditioner_ref1 = 1e-3
innerproduct_weight0 = 0.63 innerproduct_weight0 = 0.63
innerproduct_weight1 = 1.26 innerproduct_weight1 = 1.26
innerproduct_beta0 = 0.2
innerproduct_beta1 = 0.02
# #
#Global minimum search #Global minimum search
globalminimumsearch = sequentialscale globalminimumsearch = sequentialscale
globalminimum_n_scale=1 globalminimum_n_scale=1
scale0 = 2.0 scale0 = 8.0
#Local minimum search #Local minimum search
localminimum_absGradient2NormThreshold = 1e-4 localminimum_absGradient2NormThreshold = 1e-4
# #
......
...@@ -2,6 +2,7 @@ name = inversion_nscgB ...@@ -2,6 +2,7 @@ name = inversion_nscgB
# #
#Local minimum search #Local minimum search
localminimumsearch = yuanfan localminimumsearch = yuanfan
localminimum_retrospective = 0
localminimum_initMu = 1 localminimum_initMu = 1
localminimum_c0 = 0.0001 localminimum_c0 = 0.0001
localminimum_c1 = 0.75 localminimum_c1 = 0.75
......
...@@ -20,7 +20,7 @@ equation = helmholtz ...@@ -20,7 +20,7 @@ equation = helmholtz
equation_boundary = 1 equation_boundary = 1
# #
#Discretization #Discretization
h = 0.01 h = 0.0025
integration_type = Gauss integration_type = Gauss
#Wave #Wave
wave_FunctionSpaceType = HierarchicalH1 wave_FunctionSpaceType = HierarchicalH1
...@@ -31,25 +31,69 @@ equation_integration_degree_blk = 3 ...@@ -31,25 +31,69 @@ equation_integration_degree_blk = 3
innerproduct_integration_degree_blk = 2 innerproduct_integration_degree_blk = 2
innerproduct_integration_degree_bnd = 0 innerproduct_integration_degree_bnd = 0
# #
n_freq=20 n_freq=64
#Frequency #Frequency
frequency0 = 0.125 frequency0 = 0.25
frequency1 = 0.25 frequency1 = 0.5
frequency2 = 0.375 frequency2 = 0.75
frequency3 = 0.5 frequency3 = 1.0
frequency4 = 0.625 frequency4 = 1.25
frequency5 = 0.75 frequency5 = 1.5
frequency6 = 0.875 frequency6 = 1.75
frequency7 = 1.0 frequency7 = 2.0
frequency8 = 1.25 frequency8 = 2.25
frequency9 = 1.5 frequency9 = 2.5
frequency10 = 1.75 frequency10 = 2.75
frequency11 = 2.0 frequency11 = 3.0
frequency12 = 2.25 frequency12 = 3.25
frequency13 = 2.5 frequency13 = 3.5
frequency14 = 2.75 frequency14 = 3.75
frequency15 = 3.0 frequency15 = 4.0
frequency16 = 3.25 frequency16 = 4.25
frequency17 = 3.5 frequency17 = 4.5
frequency18 = 3.75 frequency18 = 4.75
frequency19 = 4.0 frequency19 = 5.0
frequency20 = 5.25
frequency21 = 5.5
frequency22 = 5.75
frequency23 = 6.0
frequency24 = 6.25
frequency25 = 6.5
frequency26 = 6.75
frequency27 = 7.0
frequency28 = 7.25
frequency29 = 7.5
frequency30 = 7.75
frequency31 = 8.0
frequency32 = 8.25
frequency33 = 8.5
frequency34 = 8.75
frequency35 = 9.0
frequency36 = 9.25
frequency37 = 9.5
frequency38 = 9.75
frequency39 = 10.0
frequency40 = 10.25
frequency41 = 10.5
frequency42 = 10.75
frequency43 = 11.0
frequency44 = 11.25
frequency45 = 11.5
frequency46 = 11.75
frequency47 = 12.0
frequency48 = 12.25
frequency49 = 12.5
frequency50 = 12.75
frequency51 = 13.0
frequency52 = 13.25
frequency53 = 13.5
frequency54 = 13.75
frequency55 = 14.0
frequency56 = 14.25
frequency57 = 14.5
frequency58 = 14.75
frequency59 = 15.0
frequency60 = 15.25
frequency61 = 15.5
frequency62 = 15.75
frequency63 = 16.0
name = directional
#Configuration
unknown = inclusion
inclusion_ni=1
#Inclusion 0
inclusion_position0 = 3.
inclusion_depth0 = 1.0
Re(mi0c0) = 0.
Im(mi0c0) = 0.
#
#Directional
Re(muc0) = 1.0
Im(muc0) = 0.
Re(muNc0) = 1.4
Im(muNc0) = 0.
Re(dmc0) = 1.
Im(dmc0) = 0.
interval = linear
N = 80
eps = 5e-4
#
#Objective
objective = l2distance
#Data
data = bones1d_synthetics_data
#
#Output
write_data_fields = 1
name = synthetics name = synthetics
#Configuration #Configuration
unknown = none unknown = none
inclusion_ni=3 inclusion_ni=1
#Inclusion 0 #Inclusion 0
inclusion_position0 = 2. inclusion_position0 = 3.
inclusion_depth0 = 1.0 inclusion_depth0 = 1.0
Re(mi0c0) = 1.2 Re(mi0c0) = 1.2
Im(mi0c0) = 0. Im(mi0c0) = 0.
#Inclusion 1
inclusion_position1 = 3.0
inclusion_depth1 = 1.0
Re(mi1c0) = 0.8
Im(mi1c0) = 0.
#Inclusion 2
inclusion_position2 = 4.0
inclusion_depth2 = 1.0
Re(mi2c0) = 1.3
Im(mi2c0) = 0.
# #
#Output #Output
write_model_fields = 1 write_model_fields = 1
write_wave_fields = 0 write_wave_fields = 1
write_data_fields = 0 write_data_fields = 0
prename = paper5_
#Configuration
configuration = surface_acquisition
#
#Parametrization
parametrization = slowness2_real
model_reference_frequency = 1.
#
xoffset = 0
Ler = 8.712
nr = 122
ne = 122
ReceiverOnEmitter=0
ymax = 0.216
ymin = 0.072
L = 9.192
H = 2.904
#
Re(m_superc0) = 0.44
Im(m_superc0) = 0.
Re(m_subc0) = 0.25
Im(m_subc0) = 0.
#
#Equation
physic = acoustic
equation = helmholtz
#
#Discretization
h = 0.036
integration_type = Gauss
#Wave
wave_FunctionSpaceType = HierarchicalH1
#
#Frequencies
n_freq = 3
#Frequency0
frequency0 = 4.
#Frequency1
frequency1 = 6.
#Frequency2
frequency2 = 8.
#Configuration
unknown = subsurface
m0_typec0 = file
m0_scale = 2.0
m0_pathc0 = ../input/paper2/marmousi_slowness2
#
#Equation
gaussNewton=0
equation_boundary=0
#
n_group=1
#Group 0
n_freq0=1
frequency00=0
frequency01=1
frequency02=2
#
#Data
data0 = paper5_synthetics_data0
data1 = paper5_synthetics_data1
data2 = paper5_synthetics_data2
#
#Global minimum search
globalminimum_n_scale0=1
scale00 = 1.
#
#Discretization
equation_integration_degree_blk0 = 5
equation_integration_degree_bnd0 = 6
equation_integration_degree_blk1 = 7
equation_integration_degree_bnd1 = 8
equation_integration_degree_blk2 = 9
equation_integration_degree_bnd2 = 10
innerproduct_integration_degree_blk0 = 9
innerproduct_integration_degree_bnd0 = 10
#Wave
wave_FunctionSpaceDegree0 = 2
wave_FunctionSpaceDegree1 = 3
wave_FunctionSpaceDegree2 = 4
#Model
model_FunctionSpaceType = HierarchicalH1
model_FunctionSpaceDegree0 = 1
#
#Global minimum search
globalminimumsearch = sequentialscale
globalminimum_relDecreaseThreshold = 0.0
#Local minimum search
localminimum_absDecreaseThreshold = 3e-3
#
#Objective
objective = l2distance
#
#Inner product
innerproduct = sobolev
innerproduct_weight_bnd = 0.
innerproduct_diag_preconditioner = 1
innerproduct_preconditioner_ref0 = 2700
name = inversion_nscgB
#
#Local minimum search
localminimumsearch = yuanfan
localminimum_retrospective = 1
localminimum_initMu = 1
localminimum_c0 = 0.0001
localminimum_c1 = 0.75
localminimum_c2 = 0.75
localminimum_c3 = 0.25
localminimum_c4 = 2.
localminimum_writeInterval = 5
localminimum_maxIteration = 50
#
#Descent search
descentsearch = newton_steihaug_conjugategradient
descent_maxIteration = 50
descent_eta0 = 0.4
name = ip_comparison
#Configuration
unknown = subsurface
m0_typec0 = file
m0_scale = 2.0
m0_pathc0 = ../input/paper2/marmousi_slowness2
#
#Equation
gaussNewton=0
equation_boundary=0
#
n_group=1
#Group 0
n_freq0=3
frequency00=0
frequency01=1
frequency02=2
scale0 = 1.
#
#Data
data0 = paper5_synthetics_data0
data1 = paper5_synthetics_data1
data2 = paper5_synthetics_data2
#
#Discretization
equation_integration_degree_blk0 = 5
equation_integration_degree_bnd0 = 6
equation_integration_degree_blk1 = 7
equation_integration_degree_bnd1 = 8
equation_integration_degree_blk2 = 9
equation_integration_degree_bnd2 = 10
innerproduct_integration_degree_blk0 = 9
innerproduct_integration_degree_bnd0 = 10
#Wave
wave_FunctionSpaceDegree0 = 2
wave_FunctionSpaceDegree1 = 3
wave_FunctionSpaceDegree2 = 4
#Model
model_FunctionSpaceType = HierarchicalH1
model_FunctionSpaceDegree = 1
#
#Objective
objective = l2distance
#
#Inner product
innerproduct = sobolev
innerproduct_weight_bnd = 0.
innerproduct_diag_preconditioner = 1
innerproduct_preconditioner_ref = 2700
This diff is collapsed.
name = preconditioner
#Configuration
unknown = subsurface
m0_typec0 = file
m0_scale = 2.0
m0_pathc0 = ../input/paper2/marmousi_slowness2
#
#Equation
gaussNewton=0
equation_boundary=0
#
n_group=1
#Group 0
n_freq0=3
frequency00=0
frequency01=1
frequency02=2
#
#Discretization
integration_degree_blk0 = 5
integration_degree_bnd0 = 6
integration_degree_blk1 = 7
integration_degree_bnd1 = 8
integration_degree_blk2 = 9
integration_degree_bnd2 = 10
#Wave
wave_FunctionSpaceDegree0 = 2
wave_FunctionSpaceDegree1 = 3
wave_FunctionSpaceDegree2 = 4
#
#Objective
objective = l2distance
name = synthetics
#Configuration
unknown = none
m0_typec0 = file
m0_pathc0 = ../input/paper2/marmousi_slowness2
#
#Discretization
equation_integration_degree_blk0 = 6
equation_integration_degree_bnd0 = 7
equation_integration_degree_blk1 = 8
equation_integration_degree_bnd1 = 9
equation_integration_degree_blk2 = 10
equation_integration_degree_bnd2 = 11
#Wave
wave_FunctionSpaceDegree0 = 2
wave_FunctionSpaceDegree1 = 3
wave_FunctionSpaceDegree2 = 4
#Output
write_data_fields = 1
write_wave_fields = 0
#write_single_wave_fields = 3
#write_single_wave_field0 = 30
#write_single_wave_field1 = 61
#write_single_wave_field2 = 92
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment