Your Federal Quarterly Tax Payments are due April 15th Get Help Now >>

Introduction to use of PEST as model-independent parameter optimizer by zzz22140

VIEWS: 43 PAGES: 4

									Introduction to use of PEST as model-independent parameter optimizer

Most of the FEFLOW users know the integration of PEST (developed by J. Doherty,
Watermark Numerical Computing, Australia) in the very convenient kind as PEST
IFM-Module (Interface Module). In the IFM Module most of the important settings of
PEST are available and accessible by corresponding dialogs. But caused by the
implementation it is not possible to use the actual PEST version and all settings
provided by PEST. The user should choose the common native way of application to
use more complex functionality.

As the first step it’s necessary to install PEST from the FEFLOW 5.2 DVD
(\win32\pest9)         or       from       the       PEST             home     page
(http://www.sspa.com/pest/download.html). Furthermore, you should add the PEST
directory to the PATH statement to the environment variable. Additionally to the
installation of the program files a complete PEST documentation is being installed
which comprises all theoretical background and a tutorial for the first steps.

This short description resumes the most important parts for the first steps of the
native use of PEST in combination with FEFLOW.

PEST requires three types of files

    •   input file called template file
    •   result file called instruct file
    •   higher-ranking check file called control file

In the following these three files types will be described:

Template file

The template or input file is provided by FEFLOW (as *.fem) in ASCII or Binary
format. Save the model file in FEFLOW in ASCII format and open it in a text editor.

Add the first line containing “ptf” (pest template file) and a delimiter character. Pest
uses the delimiter to search the parameter or boundary which will be changed.
Replace the value(s) which you want to adapt by the delimiter and an identifying
name.
PEST provides a check program (tempchek.exe) to check the input file. A simple
example of the FEFLOW input file is listed below.

An example

original file-fem

PROBLEM: Keil, 25 elements, 36 nodes, grid25.pst
CLASS (v.5.2)
   2      2    0   2     1    0    8   8     0
DIMENS
     36     25       4     20   2000     0     36             1        0     -1
0       0        1     0      0      0     0
SCALE
.
.
  1.00000000000000e+001 6 12 18 24 30 36
MAT_I_FLOW
126 0.000000e+000 "Transmissivity"
  9.000000e-001   13 18 23
  9.000000e+000    1-12 14-17 19-22 24 25
102 0.000000e+000 "Anisotropy factor"
  1.000000e+000    1-25
104 0.000000e+000 "Anisotropy angle"
  0.000000e+000    1-25
110 0.000000e+000 "Storativity (drain- or fillable) or density ratio"
  2.000000e-001    1-25
112 0.000000e+000 "Storage compressibility"
  1.000000e-004    1-25
113 0.000000e+000 "Source/sink for flow"
  0.000000e+000    1-25
114 0.000000e+000 "In-transfer rate for flow"
  0.000000e+000    1-25
115 0.000000e+000 "Out-transfer rate for flow"
  0.000000e+000    1-25

The value “Storativity” will be varied for the elements with the number 1-25 (global).
The area should be divided in specific zones if PEST should optimize not global but
zonal values. So PEST allocates for each zone one optimized value. The preparing
of the template file will be faster if you divide (in FEFLOW) and indicate (by a
separate value) the zones in the fem file before. An example of the template file in
relation to the fem file is listed below.

template file-fem

ptf %

PROBLEM: Keil, 25 elements, 36 nodes, grid25.pst
CLASS (v.5.169)
   2      2    0   2     1    0    8   8     0
DIMENS
     36     25       4     20   2000     0     36            1       0      -1
0       0        1     0      0      0     0
SCALE
.
.
  1.00000000000000e+001 6 12 18 24 30 36
MAT_I_FLOW
126 0.000000e+000 "Transmissivity"
  9.000000e-001   13 18 23
  9.000000e+000    1-12 14-17 19-22 24 25
102 0.000000e+000 "Anisotropy factor"
  1.000000e+000    1-25
104 0.000000e+000 "Anisotropy angle"
  0.000000e+000    1-25
110 0.000000e+000 "Storativity (drain- or fillable) or density ratio"
  %Storativity%    1-25
112 0.000000e+000 "Storage compressibility"
  1.000000e-004    1-25
113 0.000000e+000 "Source/sink for flow"
  0.000000e+000    1-25
114 0.000000e+000 "In-transfer rate for flow"
  0.000000e+000    1-25
115 0.000000e+000 "Out-transfer rate for flow"
  0.000000e+000       1-25




Instruct File

The instruct file defines the position of the resulting values for the observation points
in the FEFLOW results file.

FEFLOW provides two output files (*.dac and *.dar). The *.dar file is in relation and
combination with PEST an intuitive applicable output file format.

The instruct file begins like the template type also with a short name (pif) and a
delimiter.
The chapter below show an example of the original FEFLOW output and the
corresponding PEST instruct file.

A complete description of the instruct file and the use of the delimiter is described in
the PEST documentation.

Original file-dar

+++++++++++++++ FEFLOW Computational Results +++++++++++++
Problem file: pest_grid25_3d.fem
Mon Jan 10 10:49:14 2005
Keil, 25 elements, 36 nodes, grid25.pst
Three Dimensions (3D)
***********************************************************
RESULTS AT STEP =   1 AND TIME = 0.000000e+000 [d]:
-----------------------------------------------------------
 Obs    H [m]         Vx [m/d]      Vy [m/d]      Vz [m/d]
-----------------------------------------------------------
  1 2.235000e+000 0.037000e+000 0.045000e+000 0.014800e+000
  2 1.985000e+000 0.034500e+000 0.041000e+000 0.012860e+000
  3 2.157000e+000 0.038000e+000 0.040900e+000 0.010874e+000

Instruct file-dar

pif %
%STEP =    1%
%------%
%------%
l1 [1]4:18
l1 [2]4:18
l1 [3]4:18

PEST is interested only in results (head, concentration or heat) at the corresponding
observation point(s). It is necessary to provide PEST with a list of instructions on how
to find the position of these data in the *.dar file. A key word in the FEFLOW result file
(*.dar) is “STEP”, bounded by a delimiter.
The additional rows (%------%) are only to skip of nondescript rows in the FEFLOW
output file (dar). The example contains 3 observation points which are indicated by
the number [1];[2];[3]. The position (4:18) defines the corresponding value position in
a line of the *.dar file.
Control file

The higher-ranking control file correlates the template file to the original *.fem file and
the instruct file to the original *.dar file and manages all observation point data and
the corresponding numerical settings. The control file must have the ending “*.pst”.
Please refer to the complete PEST description to set the numerical settings.

Under the key word “observation data” the measurement values of the observation
points are defined.

PEST starts FEFLOW using a batch file. The path of the batch file is specified under
the keyword “model command line”. The relations between the *.fem data and the
template and the instruct file and the *.dar file are described in the lines below.

pcf
* control data
restart estimation
1 3 1 0 1
1 1 single point 1 0 0
5.0 2.0 0.4 0.03 10
3.0 3.0 1.0e-3
.1
30 .01 3 3 .01 3
1 1 1
* parameter groups
re relative .001 .0001 switch 2.0 parabolic
* parameter data
rech1 none factor 0.5 0.01 10 re 1.0 0.0 1
* observation groups
group_1
* observation data
1 0.10000 1.0 group_1
2 0.05000 1.0 group_1
3 0.35487 1.0 group_1
* model command line
k:\hotline\pest\feflow_pest.bat
* model input/output
pest_template.fem pest_grid25_3d.fem
pest_instruct.txt pest_grid25_3d.dar


Run

Open a command window and start PEST by using the command “pest.exe
[case.pst]”. PEST will start FEFLOW several times in batch mode. The FEFLOW
input file (*.fem) will be conclusively saved when the optimization is finished.

								
To top