Dakota Reference Manual  Version 6.4
Large-Scale Engineering Optimization and Uncertainty Analysis
 All Pages
calibration_data


Supply calibration data in the case of field data or mixed data (both scalar and field data).

Specification

Alias: none

Argument(s): none

Required/Optional Description of Group Dakota Keyword Dakota Keyword Description
Optional num_experiments Add context to data: number of different experiments
Optional num_config_variables Add context to data: number of configuration variables.
Optional variance_type

Add context to experiment data description by specifying the type of experimental error.

Optional scalar_data_file

Specify a scalar data file to complement field data files (mixed case)

Optional interpolate

Flag to indicate interpolation of simulation values.

Description

calibration_data specifies a keyword block that indicates that Dakota should read in various types of experimental data. This block is primarily to support the reading of field calibration data.

The user will specify the number of experiments, num_experiments. If this is not specified, it is assumed there is only one experiment.

For each experiment, there are four main types of data related to fields:

  • values.

    These are the values of the experiment field (e.g. temperature values, voltage levels, etc.) These MUST be specified in a file named response_descriptor.NUM.dat, where NUM is replaced by the number of the experiment (1, 2, ...) and response_descriptor is replaced by the actual response_descriptor the user has specified. For example, if response_descriptor = voltage, then the voltage field values for experiment 1 should be in a file labeled voltage.1.dat. The field values should be in a column (e.g. one field value per row).

  • field coordinates.

    Field coordinates specify independent variables (e.g. spatial or temporal coordinates) upon which the field depends. For example, the voltage level above might be a function of time, so time is the field coordinate. For the calibration data, the field coordinates are read from a file named response_descriptor.NUM.coords, similar to the pattern for field values. The number of columns in the coords file should be equal to the number of field coordinates.

  • variance terms.

    The user needs to specify variance_type, which defines the type of experimental measurement error. This is a string list, with one variance type specified for each scalar and each field. The available types are 'none' (no variance is specified), 'scalar' (one scalar value is specified which is applicable to all of the measurements in the field), 'diagonal' (a column vector is provided which contains the number of elements of the experimental data field. Each element of the vector contains the experimental measurement variance corresponding to that particular field measurement. For example, for the fifth term in the field, the fifth term in the diagonal vector would have the variance of that measurement), and 'matrix'. In the matrix case, a full covariance matrix is provided, which contains the pairwise correlations between each element in the field. For each field, if the variance_type is not 'none', a data file must be provided with the name response_descriptor.NUM.sigma, which contains the appropriate variance data for that field.

  • configuration variables.

    Configuration variables specify the conditions corresponding to different experiments. This is used when there is more than one experiment. If num_config_variables is positive, the configuration variables for each experiment should be placed in a file named experiment.NUM.config, where the number of items in that config file are the num_config_variables. Currently, configuration variables are not being used. However, the intent is that they will be used as state variables for the simulation (for example) and not as variables that would be calibrated.

The above description is relevant for field data (with files for field values, field coordinates, field variances). If the user also has scalar experimental data, it may be entered in the same way (e.g. one file for a scalar experimental value named scalar_response_descriptor.NUM.dat, etc.) However, the user can choose to enter the scalar data in the format that we offer for pure scalar data, where we have just one file, with the number of rows of that file equal to the number of experiments. In that case, the scalar data is in the file given by the name scalar_data_file, and the format of that file is the same as discussed in calibration_data_file.

One important feature of field data is the capability to interpolate between points in the field. For example, we may have simulation data at a set of responses $ y $ at time points $ t $: ( $ t_{s1}, y_{s1} $), ( $ t_{s2}, y_{s2} $), etc. In this example, $ t $ is the independent coordinate for the simulation, and the simulation time and response points are denoted with subscripts $ s1, s2, s3, $. If the user has experimental data that is taken at different time points: ( $ t_{e1}, y_{e1} $), ( $ t_{e2}, y_{e2} $), ..., it is necessary to interpolate the simulation data to provide estimates of the simulation response at the experimental time points to construct the residual terms (model - experiment) at the experimental time points. Dakota can perform this interpolation now. The user must specify the keyword interpolate, and also provide the field coordinates as well as field values for the experiment data. If the interpolate keyword is not specified, Dakota will assume that the simulation field data and the experiment field data is taken at the same set of independent coordinate values and simply construct the difference between these field terms to create the set of residuals for the sum-of-squares calculation. When interpolate is specified, the simulation coordinates are assumed fixed and the same for each simulation. These simulation coordinates are provided in response_descriptor.coords. However, the experiment coordinates for each experiment can be different, and are provided in the files numbered by experiment with the file names given by response_descriptor.NUM.coords, as indicated above.