GeoInv_001 Case01 Inversion for a single parameter

 

In GeoInv_001\Case01\Data the initial data and folder structure to run the inverse analysis is provided. The folder structure is as follows:

 

Target: Folder containing the target solution history file GeoInv_001_ref_001.hdh.

Template: Folder containing the template data file. The template data file in this case is identical to the reference solution data file. It is used by ParaGeoInv to generate model data files during optimisation process.

Test: Initially empty folder in which all the simulations performed during the inverse analysis will be run.

GeoInv_001_Case01.inp: Inverse analysis data file. A detailed description of this file is provided below.

 

 

Inverse analysis data file description (.inp)

 

The basic data in the ParaGeoInv data file for the project (GeoInv_001_Case01.inp) includes:

 

1Application_data that identifies the directory of ParaGeo solver

2Parameter_data sets optimisation parameters, including variable name, initial value, minimum/maximum values, corresponding data structure name and number

3NA_options defines the tuning parameters of Nearest Neighbour algorithm and convergence tolerance. Users are also given flexibility to manage (i.e. keep or delete) the generated test models.

4File_data identifies the directory of template, target and test files. The name of template file is also required.

5Misfit_data_set specifies type of data to be compared between target and model solutions. The computation of corresponding misfit value is based on selected error type.  

6Inverse_case chooses misfit data set(s) to be used for the present inverse case. This data structure offers the possibility to run multiple cases (different modelling setup) for the same set of optimisation parameters (e.g. different lab experiments performed on the same sample material).

 

Application_data

 

Application_data defines control data for inverse analysis, including application platform for forward analysis, experiment type and optimisation algorithm to be used.

 

Data File

 

 

* Application_data

! -------------------------------

Application           "Parageo"

 Inversion_algorithm   "NAInverse"

 Parageo_dir           "C:\parageo\x64"

 Experiment            "Material"

1ParaGeo is selected as the application platform.

 

2Inversion_algorithm is set as "NAInverse" (Nearest neighbour algorithm). This is the only optimisation algorithm available at the moment.

 

3Directory of ParaGeo is identified via Parageo_dir.

 

4Experiment keyword defines the type of inversion analysis and is set as 'Material'.  

 

 

 

Parameter_data

 

Parameter_data defines parameter(s) and its range to be considered in inversion analysis.

 

Data File

 

 

* Parameter_data

! -------------------------------

 Name                       IDM=2

   "Young" "Poiss"

 Type                       IDM=2

   0 1

 Value                      IDM=2

   100 0.3

 Minimum_value              IDM=2

   100 0.2

 Maximum_value              IDM=2

   300 0.4

 Variable_structure_name    IDM=2

   "Material_data" "Material_data"

 Variable_structure_number  IDM=2

   1 1

 

1Young's modulus and Poisson's ratio are set as optimisation parameters.

 

2Type keyword defines whether a parameter is to be inverted/free (Type = 0) or if it is a parameter with a fixed value (Type =1).  In this case only "Young" is to be solved whereas "Poiss" is a parameter with a fixed value.

 

3The Value keyword is used to specify values for a fixed value parameters (Type =1). Note that if Value is defined all parameters listed under the Name keyword need to be assigned a value but only those for fixed parameters will be used. In the present case the input value for Young's modulus is ignored provided that the parameter is Type = 0 (free). Poisson's ratio Value is fixed at 0.3.

 

4The Minimum_value for "Young" and "Poiss" are set to 100 MPa and 0.2 respectively. Note that Minimum_value for "Poiss" parameter is ignored as the variable is set Type = 1 (fixed) and therefore the fixed value specified in Value keyword is used for all the models generated in the inversion analysis.

 

5The Maximum_value for "Young" and "Poiss" are set to 300 MPa and 0.4 respectively. Note that Maximum_value for "Poiss" parameter is ignored as the variable is set Type = 1 (fixed) and therefore the fixed value specified in Value keyword is used for all the models generated in the inversion analysis.

 

6Both "Young" and "Poiss" are parameters associated with Material_data data structure with NUM = 1 as defined in template file.

 

 

NA_options

 

NA_options defines the control options for the nearest neighbour algorithm.

 

Data File

 

 

* NA_options

! ---------------------------------

 Algorithm                  "Auto"

 Convergence_tolerance      0.0005

 Maximum_num_samples            20

 Num_models_in_initial_sample    8

 Num_models_in_sample            8

 Num_models_in_resample          4

 Number_models_output            5

 Model_delete_option    "KeepBest"

 Model_clean_option     "KeepSpec"

 Model_results_keep  IDM=1

   "History"

 

1Algorithm = "Auto" refers to termination of computation once convergence tolerance is satisfied.

 

2Convergence_tolerance is set at 0.0005.

 

3Maximum_num_samples is set as 20.

 

4There are 8 initial models in the first sample (Num_models_in_initial_sample).

 

5There are 8 models in subsequent samples (Num_models_in_sample).

 

6The 8 models for a subsequent sample (resample) are generated from the 4 most optimal models (Num_models_in_resample).

 

7Results for the 5 best models will be output to the result file (Number_models_output) and their will be kept in the Test folder (Model_delete_option set to "KeepBest") .

 

8In addition to the data files only history results for the best 5 models will be preserved (Model_clean_option set to "KeepSpec" with "History" being specified)

 

 

File_data

 

File_data defines the working directories of data files that are crucial to the inversion analysis.

 

Data File

 

 

* File_data

! ---------------------------------

 Template_file        "GeoInv_001_Case01.dat"  

 Template_directory   ".\Template"

 Target_directory     ".\Target"  

 Test_directory       ".\Test"    

 

 

1Template_file identifies the name of the template data file stored in Template_directory.

 

2Directory of target solution are stored in Target_directory.

 

3During optimisation computation, the generated model data files are stored in Test_directory.

 

4Note that in the current example directories are defined as relative sub-directories of the current directory (recommended) but the full path may also be defined if required.

 

 

Misfit_data_set

 

Misfit_data_set specifies the data to be compared between target and model solutions. The computation of corresponding misfit value is based on selected error type.  

 

Data File

 

 

* Misfit_data_set            NUM=11

! ---------------------------------

Error_type                  "RMS"

 Experiment_filename "GeoInv_001_ref_001.hdh"

 Experiment_variable_IDs     IDM=1

   "Disp_y_ave"

 Model_set_number                1

 Model_variable_IDs          IDM=1

   "Disp_y_ave"

 

1Error_type based on root mean square is specified (RMS).

 

2Target solution stored as "GeoInv_001_ref_001.hdh" history file is defined under Experiment_filename.

 

3Experiment_variable_IDs (target solution variable names) with the ID of "Disp_y_ave" is specified for misfit calculation purposes.

 

4Model_set_number is set as 1. This specifies that the model variable to be used for misfit calculation purposes will be obtained from the History_point NUM=1 in the template data file.

 

5Model_variable_IDs (model variable names) with the ID of "Disp_y_ave" is specified for misfit calculation purposes. It will be compared against the target solution.

 

 

 

Inverse_case

 

Inverse_case chooses misfit data set(s) to be used.

 

Data File

 

 

* Inverse_case                NUM=1

! ---------------------------------

 File_data_num                   1

 Misfit_data_sets            IDM=1

   11

 

 

1File_data_num = 1 defines that the inversion analysis is performed using data files specified in File_data with data structure number 1, and misfit data set specified in Misfit_data_set with data structure number 11.

 

 

 

Results

 

A number of 7 samples (initial sample plus 6 resamples), comprising of 56 models, have been required in order to achieve convergence. The inverse analysis was terminated when Model 49 was identified to satisfy the convergence criteria. It should be noted however that given the randomness of the inverted parameter values input for the generated models these results are only representative of the specific run used to generate the provided tutorial results. The result files for the project are in directory: GeoInv_001\Case01\Results.

 

As can be seen in the pictures below for the present case the inversion analysis has inverted Young's modulus value with 100% of accuracy, obtaining the same value used to generate the reference (target) solution.

 

Optimal Model Young's Modulus and Misfit Value

 

Inv_example1_003        

Young's modulus search during the inversion analysis (left). Evolution of misfit value during the inversion analysis (right).

 

 

 

Comparison of the Optimal Model with Target Solution

 

Inv_example1_004

Comparison between target and optimal solutions. Negligible error percentage is observed.