Version 2
19 March, 2014

This directory contains several Dakota examples that 
illustrate several types of studies that might be useful in
an engineering analysis. The examples run a model of a 
cylindrical tank, which simulates displacement, strain, and
stress responses to load.


NOTES
-----------------
This was originally intended to run in a Linux environment and python 2 or 3.
It has been tested w/ Dakota 5.4 and python 2.6.6 and 3.3.2, on RHEL 6. 
Some of the driver scripts are written in bash, and no Windows equivalent is provided. 
However, the python driver scripts have also been tested on Windows 7, Dakota 5.4, and Python 3.3.3.
Although this was not tested on Mac systems, it is assumed that the tank model will
run with default installations of python, and the Dakota examples will run under Dakota 5.4.


The Dakota examples
-----------------
Usage information is included in each Dakota input file.

DakotaList dir: two list parameter studies.
A list parameter study is good for manual exploration of parameter space.
This illustrates the most basic method, plus:
 use of Dakota with a driver script that calls a setup script (EvalTank.py) which then runs the physics code (FEMTank.py)
 selecting which variables are active
 concurrent function evaluations, with file_tag
 Different results from the simulation (controlled by the input variable resultStyle) and the necessary changes in the Dakota responses block 

DakotaLHS dir: an LHS study
Latin Hypercube Sampling can be used for sensitivity analysis,
uncertainty quantification, or surrogate building.
This illustrates:
 use of Dakota where the driver script runs the physics code
 an uncertainty quantification method
 use of uncertain variables

DakotaCalibration: a nonlinear least squares method to minimize residuals
Parameter calibration is used to match model responses to observed data.
This illustrates:
 A calibration method
 How Dakota uses datafiles
 A complicated driver script that makes multiple calls to the setup script (EvalTank.py) in order calibrate to data from multiple experiments
 How to use Dakota to optimize some inputs, while others are constant (state variables), and another is modified within the driver script (Pressure)


Tank Model
------------------
The Tank model is found in the tank_model directory. 
Instructions are included within the README in the 
tank_model dir.
