PROTIDE
Probabilistic Tidal Window Determination

Calculate safe time location diagram

Created by on 2010-12-29 14:33
Last modified on 2011-12-07 16:32
Per kilometer position a root finding algorithm is used to find the times where the safety criterion is exactly met. The intervals between these roots are the safe time intervals. Together they form the safe time location diagram.

Safe time location diagram

A safe time location diagram gives the moments a kilometer position is safe to pass with the given ship, load, settings, speed, et cetera. The presentation gives the time on the horizontal axis and the kilometer positions on the vertical axis. A horizontal blue line indicates a safe time interval at the given kilometer position. To calculate the diagram, each kilometer position is investigated in isolation. With a root finding algorithm (combination of a uniform intervals and bisection algorithm) the times are found where the safety criterion is exactly met. As a safety criterion the setting Maximum route segment bottom touch probability is used. This setting typically is higher then the Maximum route bottom touch probability setting, which is the maximum probability of a bottom touch for the whole route. The intervals between these roots are the safe time intervals. All kilometer points together form the safe time location diagram.
Safe time intervals.png

Fixed location variable time safety calculation function

A "root" is defined as the times that a continuous function has the value 0. As continuous function we use one that is negative when the time is not safe, positive when the time is safe and 0 when the safety criterion is exactly met. This function is the Fixed location variable time safety calculation function. The function is created for one location and the root finding algorithm calls the function at various times and depending on the result can find the roots.

Each call to the function only has the "time" as an argument. The function then analyzes what happens when the ship passes the fixed location with the given speed (from the selected speed regime) at that given time. This analysis is a monte carlo simulation where a significant number (given as Number of draws per time location point in Calculation settings, now set to 4000) of draws are made from the various possible water conditions and for each of the conditions the safety is calculated. In this simulation draws are made from:

  1. water level prediction
  2. water direction prediction
  3. water speed prediction
  4. wave height prediction
  5. swell height prediction
The under keel clearance (water level + channel depth - ship draft) and the speed through the water (correct the speed over the ground for water speed and direction) are now calculated. Now the depth/draft ratio, heading, speed, wave height and swell height are known, which are used to randomly select one possible vertical motion (from the constructed vertical motion database) corresponding to these conditions. With this vertical motion profile the bottom touch probability is calculated via:
SpectralMoment        := (1 / 16) * Sqr(VerticalMotion.VerticalMotion_Meters);
NumberOfMotionCycles  := PassingTime / VerticalMotion.MotionPeriod_Seconds;
NumberOfBottomTouches := NumberOfMotionCycles * Exp(-Sqr(UKC) / (2*SpectralMoment));
Result                := 1 - Exp(-NumberOfBottomTouches);

Now the UKC, squat and the bottom touch probability are calculated 4000 times for that one time and location. We assume that the 4000 points are normally distributed and calculate the mean and standard deviation for each of these quantities. Finally it is checked if the safety criteria is violated. The criteria are compared to the calculated values where lower and upper bound comparisons are done with the reliability (Reliability in Calculation settings) as confidence interval.

  • the relative UKC criterion is compared with the mean calculated UKC
  • the absolute UKC criterion to the lower bound of the calculated UKC
  • ditto for the two UKC minus squat criteria
  • the maximum bottom touch criterion is compared to the upper bound of the calculated bottom touch
95 percentile.png
The figure above shows the example where the upper bound (k) of the distribution (X) is calculated with a confidence level of 95%. Because the relative UKC is not compared to a lower bound, but to the mean calculated UKC, no prediction errors are taken into account. The operator should incorporate an extra margin in these relative UKC criteria to handle prediction errors. This is not the case for the absolute UKC and bottom touch probability.

Root finding algorithm

The safety calculation function described above is to be analyzed per kilometer point by a root finding algorithm. Because the analysis period possibly has several roots per kilometer position we use a combination of a uniform interval algorithm and a bisection method. The uniform interval algorithm simply checks each time with a constant interval between the times (Time location granularity in Calculation settings). If the safety calculation function returns values with different signs for two adjacent points, then via the intermediate value theorem we know the function has a root between those points. To find the root more precise a bisection method is used. This method iteratively divides the interval in half to find which side of the middle the root is, until the difference between the two points is less then the precision (Time location precision in Calculation settings).

Create intervals between roots

The result of the algorithm is a list of roots per kilometer point. The safe segments are now constructed by the intervals between the roots for which the safety calculation function gave a positive sign. Finding these intervals resembles coloring the blue horizontal lines between the roots. The figure below illustrates the three steps of the uniform root finding algorithm, the bisection method and the creation of the intervals for one kilometer point.
Root finding.png

Merge adjacent segments

Because of the random process it can happen that one negative point (a non safe point) is found by the uniform root finding algorithm, but by further investigation by the bisection method it appears to be a very small gap (less then the granularity). When this happens we assume this is a glitch and merge the two adjacent safe segments as if there wasn't a gap. This is done as a general rule, so all adjacent segments are merged that are closer to each other then the granularity. This process prevents accidental very short tidal windows.