From BAWiki

Basic Information

Name of Program





December 2008


ADCP moving ship measurement
comparison of measurement and model
correction / shifting of data in time
actual time
target time

Short Description of Functionality

The program TIMESHIFT performs a correction in time of model results on profile data. This improves the comparibility between model results and measurements for long profiles. Target times taken from an ADCP moving ship measurement are necessary for this purpose. They are computed from the mean measurement time and the measure time difference relative desired time with desired time meaning the mean measurement time. The time difference has to be available for each data point of the profile. The program ADCP2PROFILE generates this data.

The model result files are called actual time files from now on, whereas the measured data is contained in the target file. TIMESHIFT corrects all actual times in a two step procedure. The first step is the addition of the location dependant time difference relative desired time at every location. The dataset, which has the smallest difference towards the new target time, gets selected. Its values of the measure are stored for that location.

Fig.1: Profile after the first step of the correction in time. Model results and measurement display the same differences relative to their mean times (133k)]

The second step is the optional addition of a constant time span. This enables the program to shift the actual time data exactly to the target time, even when actual and target time differ several years. The time span is computed out of the mean measure time and the estimated actual time, which is the time with probably the best fit of measurement and model. A value can be assigned to the estimated time in the general input data.

Fig.2: The second step is an optional, constant shift in time. (133k)]

Both methods are performed for all times of the actual time file. Thus, the output file contains the same number of times. Each of these datasets has the same internal temporal pattern. The modeller can select the dataset with the best fit from this ensemble.


  1. general input data (file of type timeshift.dat);
  2. further input data is explained in the general input data mentioned above.


  1. output data is explained in the general input data mentioned above;
  2. lineprinter file containing useful information related to program execution (filetype Timeshift.sdr);
  3. optional file with trace of program execution (filetype Timeshift.trc).


The correction changes only the temporal mapping. The further attributes of the actual time files are passed to the output file without change.

Values with a big time difference would be interpolated at the first or last time of the actual time file, which would give a wrong impression. In order to avoid this, the interpolated values at the first or last time are not used. They are marked as null values and will be displayed in grey coulor.

Fig.3: Profile with null values displayed in grey. At these locations the corrections leaves the time span of the actual times. (133k)]

Furthermore figure 3 displays the temporal mapping to the actual times. In order to demonstrate the effect, the interval is rather long (1 hour). There is obviously an discontinuity in the waterlevel at the intersection from one point in time to the next.

The actual time file is allowed to contain several sub profiles. But one of them must have the same name and the same number of points as the single profile of the target time file. The depth values of the profiles are allowed to differ.

For application programmers: TIMESHIFT uses the Fortran 90 packages io_dataset which also supports non-BDF formats. But only reading and writing of BDF files has been tested and released for general use.

Program(s) to run before this Program


Program(s) to run after this Program


Additional Information



Additional software


Original Version

P. Schade


working group PRE


please refer to $PROGHOME/examples/TimeShift/

back to Program Descriptions