#### 2.1. General description

The new algorithm is implemented on data fields at each conical scan which is dealiased separately. General steps are shown in Figure 1, and zero isodop searching is essential to the scheme. The zero-velocity region on a PPI velocity field could be a large connected area constituted of non-effective velocities gates (zero velocity, non-echo, range folding, etc). Two continuous zero isodops from the radar origin could be drawn through the zero-velocity region, partitioning the positive-velocity region and the negative-velocity region. After zero isodops and signs of the two non-zero velocity regions are determined, aliasing can be solved favourably through sign comparison of each data gate with the region wherein the gate is. There is no need to be concerned with other complicated circumstances.

A linear and single-fold aliasing wind field is better suited to the new algorithm because in this situation the velocity field can be accurately divided into two distinct regions with opposite signs by zero isodops, and dealiasing can be simply implemented through sign comparison. Nevertheless, it may be more important that when zero isodops are discriminated, the algorithm also yields a basic wind field structure no matter what type the wind field is (linear or non-linear flow, single-fold or multiple-fold aliasing). That is a necessary complement to dealiasing methods based on space continuity checking, and is helpful for automated three-dimensional wind field analysis.

#### 2.2. Zero isodop searching

If zero-velocity and non-zero-velocity regions in the velocity field are treated respectively as paths and walls, zero isodop searching can be referred to a maze-solving algorithm. However, the zero-velocity region has irregular widths, and a zero isodop can not intersect with itself. Additionally, zero isodops have a particular feature: the two regions separated by the zero isodops have opposite signs. Therefore, classic maze-solving algorithms such as turning right whenever the traveller reaches a junction can not be straightforwardly employed. Improvements and specific rules have to be produced for zero isodop searching. To make the algorithm easier to understand, a table of definitions is provided (Table I) before the following description.

Table I. Parameter definitions and their explanations.Definition | Explanation |
---|

search point | The current point along the path from which the next point is to be determined |

accepted sign | The sign of a non-zero velocity region if not aliased deduced by the algorithm |

detection direction | Direction from the search point to probe the surrounding non-zero velocity gates |

check direction | Direction from the search point to check the sign of non-zero velocity gates on the left or right of the detection direction |

check radius | A radius within which check directions are applied |

driving direction | Direction along which the search point moves to the next point |

When the search point is at the radar origin from which it sets out, two original driving directions and accepted signs of the two non-zero velocity regions separated by two zero isodops should be determined. Firstly, all radials are arranged in a sequence according to the descending order of the distances from the radar origin to the first non-zero gates in radials. Secondly, signs of the first non-zero gates in radials within a window either side of each radial in that sequence are checked. If the signs are the same on either side and opposite to the other, the radial is chosen as the first original driving direction for the first zero isodop to be searched; otherwise, the next radial in the sequence is taken for checking until the first original driving direction is found. The sign on either side of the first original driving direction serves as the accepted sign of the region on the corresponding side of the first zero isodop. After that, the second original driving direction as well as the accepted signs is similarly singled out from the radials that have not been checked in the sequence for the second zero isodop to be searched, with additional requirement that the sign on either side of it should be opposite to the first original driving direction. Afterwards, the search point at the radar origin moves to the first gate along an original driving direction and the gate is recorded as the first point of the zero isodop. Figure 2 is a schematic diagram for selecting original driving directions, and Table II gives the analysing results. Although radial L ranks first in the sequence, the first non-zero gates in radials within the window on both sides of L are all positive, so L is excluded and then C comes to be checked. Because non-zero gates are positive in radials D, E and F on the left side of C while negative in B, A and X on its right side, C is selected as the first original driving direction. Consequently, the search point moves to C1 to search for the first zero isodop. Meanwhile, positive serves as the accepted sign of the non-zero velocity region on the left side of the first zero isodop, and negative on the right side. Afterwards, Q is selected as the second original driving direction because the first non-zero gates are all negative in radials R, S and T on its left side while they are all positive in P, O and N on its right side, and either is opposite to the sign on the corresponding side of the first original driving direction. The search point moves to Q1 to search for the second zero isodop. Negative serves as the accepted sign on the left side of the second zero isodop and positive on the right side.

Table II. Analysing results from Figure 2.Radial sequence | Distance from the search point | Check radials within the | First non-zero gates and |
---|

| to the first non-zero gate in the radial | window either side of the | the signs in check radials |
---|

| | radial in the sequence | |
---|

L | 5 (L6) | left | M | M1 (+) |

| | | N | N1 (+) |

| | | O | O1 (+) |

| | right | K | K3 (+) |

| | | J | J1 (+) |

| | | I | I1 (+) |

C | 4 (C5) | left | D | D1 (+) |

| | | E | E1 (+) |

| | | F | F1 (+) |

| | right | B | B1 (−) |

| | | A | A1 (−) |

| | | X | X1 (−) |

W | 3 (W4) | left | X | X1 (−) |

| | | A | A1 (−) |

| | | B | B1 (−) |

| | right | V | V1 (−) |

| | | U | U1 (−) |

| | | T | T1 (−) |

R | 3 (R4) | left | S | S2 (−) |

| | | T | T1 (−) |

| | | U | U1 (−) |

| | right | Q | Q3 (−) |

| | | P | P1 (+) |

| | | O | O1 (+) |

K | 2 (K3) | left | L | L6 (+) |

| | | M | M1 (+) |

| | | N | N1 (+) |

| | right | J | J1 (+) |

| | | I | I1 (+) |

| | | H | H1 (+) |

Q | 2 (Q3) | left | R | R4 (−) |

| | | S | S2 (−) |

| | | T | T1 (−) |

| | right | P | P1 (+) |

| | | O | O1 (+) |

| | | N | N1 (+) |

S | 1 (S2) | left | T | T1 (−) |

| | | U | U1 (−) |

| | | V | V1 (−) |

| | right | R | R4 (−) |

| | | Q | Q3 (−) |

| | | P | P1 (+) |

When the search point arrives at a zero gate away from the radar origin to search for a zero isodop, a driving direction should be determined by the following means. Firstly, detection directions (e.g. 1° interval) from the search point are probed within a window (e.g. 90°) either side of the previously determined driving direction. They are arranged into a sequence according to the descending order of the distances from the search point to the non-zero gates they probe. The distances can be calculated with elementary geometric knowledge. If some detection directions reach straight to the maximum range without probing any non-zero gate, they are arranged according to the ascending order of the distances from the search point to the maximum range and placed in the sequence prior to other detection directions probing non-zero gates. Secondly, check directions (e.g. 1° interval) from the search point are probed within a window (e.g. 90°) either side of each detection direction in the sequence. If signs of the non-zero gates probed by check directions either side of a detection direction are all consistent with the accepted sign on the corresponding side of the zero isodop, the detection direction is chosen as the next driving direction; otherwise, the next detection direction in the sequence is taken for checking until the driving direction is found. If a check direction reaches the maximum range without probing any non-zero gate, the last zero gate along the check direction is regarded as the probed gate and its sign (0) is treated as consistent with the accepted sign. The requirement is called the sign check rule, and it makes the search point keep the correct orientation of its path, yielding a zero isodop. Afterwards, the search point moves to the next gate along the driving direction and the gate is recorded as a point of the zero isodop. Rounds of detection and checking like this will be repeated until the search point arrives at the maximum range, and the path traversed by the search point is just a zero isodop. Figure 3(a), Table III and Table IV show the general idea of choosing driving directions for a zero isodop. When the search point is at gate I4, all detection directions probe non-zero gates. Direction c ranks first in the sequence, but non-zero gates probed by check directions b, a and l on the left side of c are negative which is not consistent with the accepted sign (+) on the left side of the zero isodop, therefore c is not the driving direction. Then b and l come to be checked. Similar to c, non-zero gates probed by check direction a and l on the left side of b are negative, so b is also excluded. Signs of non-zero gates probed by all check directions on either side of l are consistent with those accepted, agreeing with the sign check rule, and l is thus chosen as the driving direction. Afterwards, the search point moves to J4, the next gate along l. When the search point is at gate QW, detection directions l, k, a and b probe the maximum range, and thus they are checked prior to other detection directions. Direction l is chosen as the driving direction since the distance from the search point to the maximum range along l is the shortest, and the sign check rule is obeyed at the same time. Afterwards, the search point moves to QV.

Table III. Analysing results when the search point is at gate I4 in Figure 3(a).Detection | Distance from the search point to the non-zero | Check directions within the | Non-zero gates and |
---|

direction | gate probed by the detection direction | window either side of the | the signs probed by |
---|

sequence | | detection direction | the check directions |
---|

c | 5.236 (B8) | left | b | G7 (−) |

| | | a | I7 (−) |

| | | l | K7 (−) |

| | right | d | F4 (−) |

| | | e | F4 (−) |

| | | f | G3 (−) |

b | 2.731 (G7) | left | a | I7 (−) |

| | | l | K7 (−) |

| | | k | K4 (+) |

| | right | c | B8 (−) |

| | | d | F4 (−) |

| | | e | F4 (−) |

l | 2.731 (K7) | left | k | K4 (+) |

| | | j | K4 (+) |

| | | i | K4 (+) |

| | right | a | I7 (−) |

| | | b | G7 (−) |

| | | c | B8 (−) |

a | 2.500 (I7) | left | l | K7 (−) |

| | | k | K4 (+) |

| | | j | K4 (+) |

| | right | b | G7 (−) |

| | | c | B8 (−) |

| | | d | F4 (−) |

d | 0.997 (F4) | left | c | B8 (−) |

| | | b | G7 (−) |

| | | a | I7 (−) |

| | right | e | F4 (−) |

| | | f | G3 (−) |

| | | g | I1 (0) |

k | 0.740 (K4) | left | j | K4 (+) |

| | | i | K4 (+) |

| | | h | J3 (+) |

| | right | l | K7 (−) |

| | | a | I7 (−) |

| | | b | G7 (−) |

j | 0.592 (K4) | left | i | K4 (+) |

| | | h | J3 (+) |

| | | g | I1 (0) |

| | right | k | K4 (+) |

| | | l | K7 (−) |

| | | a | I7 (−) |

Table IV. Analysing results when the search point is at gate QW in Figure 3(a).Detection | Distance from the search point to the | Check directions within the | Gates and the signs probed |
---|

direction | maximum range or non-zero gate probed | window either side of the | by the check directions |
---|

sequence | by the detection direction | detection direction | |
---|

l | 4.513 (maximum range) | left | k | RS (0) |

| | | j | RW (+) |

| | | i | RW (+) |

| | right | a | OS (0) |

| | | b | MS (0) |

| | | c | OW (−) |

k | 4.837 (maximum range) | left | j | RW (+) |

| | | i | RW (+) |

| | | h | RW (+) |

| | right | l | QS (0) |

| | | a | OS (0) |

| | | b | MS (0) |

a | 5.191 (maximum range) | left | l | QS (0) |

| | | k | RS (0) |

| | | j | RW (+) |

| | right | b | MS (0) |

| | | c | OW (−) |

| | | d | PX (−) |

b | 7.497 (maximum range) | left | a | OS (0) |

| | | l | QS (0) |

| | | k | RS (0) |

| | right | c | OW (−) |

| | | d | PX (−) |

| | | e | PX (−) |

c | 1.764 (OW) | left | b | MS (0) |

| | | a | OS (0) |

| | | l | QS (0) |

| | right | d | PX (−) |

| | | e | PX (−) |

| | | f | QZ (+) |

d | 0.909 (PX) | left | c | OW (−) |

| | | b | MS (0) |

| | | a | OS (0) |

| | right | e | PX (−) |

| | | f | QZ (+) |

| | | g | RX (+) |

j | 0.742 (RW) | left | i | RW (+) |

| | | h | RW (+) |

| | | g | RX (+) |

| | right | k | RS (0) |

| | | l | QS (0) |

| | | a | OS (0) |

Aiming to make the search point arrive at the maximum range as soon as possible, if all detection directions reach straight to the maximum range without probing any non-zero gate, the intersection of the previous driving direction with the maximum range is taken immediately as the last point of the zero isodop. It is termed a jump point. For example, when the search point is at gate QV in Figure 3(b), all detection directions probe the maximum range. Therefore, QS is a jump point and serves as the next and last point of the zero isodop.

Given that the zero-velocity region may be very sophisticated, or aliased velocity gates are exposed along check directions, the sign check rule may not be obeyed for all detection directions. To solve this problem, a check radius is adopted and checking is executed within that check radius. If a non-zero gate probed by a check direction is within the check radius, it is retained; otherwise the zero gate met by the radius along the check direction is regarded as the probed gate, and its sign (0) is treated as consistent with the accepted sign. In fact, the check radius for the first round of checking can be regarded as infinity. If all of the detection directions in the sequence can not obey the sign check rule within a larger radius, a smaller radius is given for a next round of checking until the driving direction is found. A rough draft and analysing results are given in Figure 3(b) and Table V. When the search point is at gate M8, neither of the detection directions from l to j in the sequence can obey the sign check rule (see Table V), and thus a small check radius (the circle around M8) is given for another round of checking. Consequently, l is chosen as the driving direction and the search point moves to N8.

Table V. Analysing results when the search point is at gate M8 in Figure 3(b).Detection | Distance from the search | Check directions within the | Gates and the signs | Gates and the signs probed |
---|

direction | point to the non-zero gate | window either side of the | probed by the | by the check directions |
---|

sequence | probed by the detection | detection direction | check directions | within the small |
---|

| direction | | | | check radius |
---|

l | 4.616 (PX) | left | k | Q9 (+) | Q9 (+) |

| | | j | P8 (+) | P8 (+) |

| | | i | O7 (+) | O7 (+) |

| | right | a | NY (−) | NY (−) |

| | | b | LX (+) | LY (0) |

| | | c | JY (+) | KY (0) |

c | 3.984 (JY) | left | b | LX (+) | LY (0) |

| | | a | NY (−) | NY (−) |

| | | l | PX (−) | PZ (0) |

| | right | d | J9 (−) | J9 (−) |

| | | e | K8 (−) | K8 (−) |

| | | f | L7 (−) | L7 (−) |

b | 3.538 (LX) | left | a | NY (−) | NY (−) |

| | | l | PX (−) | PZ (0) |

| | | k | Q9 (+) | Q9 (+) |

| | right | c | JY (+) | KY (0) |

| | | d | J9 (−) | J9 (−) |

| | | e | K8 (−) | K8 (−) |

k | 2.882 (Q9) | left | j | P8 (+) | P8 (+) |

| | | i | O7 (+) | O7 (+) |

| | | h | N5 (+) | N5 (+) |

| | right | l | PX (−) | PZ (0) |

| | | a | NY (−) | NY (−) |

| | | b | LX (+) | LY (0) |

a | 2.622 (NY) | left | l | PX (−) | PZ (0) |

| | | k | Q9 (+) | Q9 (+) |

| | | j | P8 (+) | P8 (+) |

| | right | b | LX (+) | LY (0) |

| | | c | JY (+) | KY (0) |

| | | d | J9 (−) | J9 (−) |

d | 2.181 (J9) | left | c | JY (+) | KY (0) |

| | | b | LX (+) | LY (0) |

| | | a | NY (−) | NY (−) |

| | right | e | K8 (−) | K8 (−) |

| | | f | L7 (−) | L7 (−) |

| | | g | L7 (−) | L7 (−) |

j | 1.856 (P8) | left | i | O7 (+) | O7 (+) |

| | | h | N5 (+) | N5 (+) |

| | | g | L7 (−) | L7 (−) |

| | right | k | Q9 (+) | Q9 (+) |

| | | l | PX (−) | PZ (0) |

| | | a | NY (−) | NY (−) |

#### 2.3. Preprocessing

Considering that real wind fields are contaminated by noise and clutter, bringing much difficulty to zero isodop searching, PPI velocity data are preprocessed to facilitate the search for zero isodops. The running mean velocity averaged over every 10 gates by 5 radials area is calculated for effective velocities, and then divided by the Nyquist velocity for normalization. Normalized velocities below some threshold like 0.1 as well as non-effective velocities like non-echo and range folding are set to zero with the purpose of highlighting the zero-velocity region. As a result, when sign comparison is implemented for the original velocity field dealiasing, small velocities adjoining zero isodops whose signs are opposite to the accepted are possibly not aliased, therefore dealiasing is executed only for those whose normalized values are not very small (e.g. not smaller than the threshold). This is reasonable since small velocities are unlikely to be aliased on a single-fold velocity field. The threshold can be properly chosen depending on the velocity field. If zero isodops are very difficult to discriminate due to nearby disordered velocities, the threshold should be large; otherwise it can be small.