Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND APPARATUS FOR DETERMINING CLOUD COVER
Document Type and Number:
WIPO Patent Application WO/2000/028279
Kind Code:
A1
Abstract:
A system in which slant range samples to cloud intercept are acquired over a hemispheric region of the sky with the samples spaced so that the samples represent approximately equal areas in each horizontal plane. In the course of determining cloud coverage, the system differentiates between those data points that represent the lower levels of a cloud layer (e.g. stratoform or layered formations) and data forms that belong to a larger convector or vertical structured cloud formation. Data points with approximately equal horizontal range at increasing or decreasing azimuth angles indicate a vertically structured cloud. Segregating the data points into sets allows identification of towering cloud structures and their movement, their velocity, their spatial extent, and their significance to general and commercial aviation. Movement and velocity are determined by evaluation of temporally sequential samples (3.13).

Inventors:
MILLER THEODORE L (US)
THOMPSON DENNIS A (US)
DOERFEL STEVE (US)
Application Number:
PCT/US1999/027071
Publication Date:
May 18, 2000
Filing Date:
November 12, 1999
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
CAMBRIDGE MANAGEMENT ADVANCED (US)
MILLER THEODORE L (US)
THOMPSON DENNIS A (US)
DOERFEL STEVE (US)
International Classes:
G01N21/53; G01S17/95; (IPC1-7): G01C3/08; G01B11/26; G01N21/00; G01W1/00; G06F169/00
Foreign References:
US3650627A1972-03-21
US4502782A1985-03-05
US4735503A1988-04-05
US5914776A1999-06-22
US4259592A1981-03-31
Attorney, Agent or Firm:
Marhoefer, Laurence J. (Aitken & McCann Suite 901 2600 Virginia Avenue N.W. Washington, DC, US)
Download PDF:
Claims:
CLAIMS Having thus described our invention, what we claim as new and desire to secure by Letters patent is as follows:
1. A method for determining presence and distribution of clouds using a sensor capable of translating in azimuth and elevation, comprising: obtaining cloud presence data for at least two azimuthelevation coordinates within a volume; processing said cloud presence data to produce a multidimensional representation of cloud coverage within said volume; and outputting said multidimensional representation of cloud coverage.
2. The method of claim 1 wherein said volume is approximately a hemisphere.
3. A method for determining presence and distribution of clouds using a sensor capable of translating in azimuth and elevation, comprising: obtaining cloud presence data for at least two azimuthelevation coordinates in a predetermined pattern within a volume; processing said cloud presence data to produce a multidimensional representation of cloud coverage within said volume; and outputting said multidimensional representation of cloud coverage.
4. The method of claim 3 wherein said predetermined pattern includes a constant azimuth increment for a given elevation.
5. The method of claim 3 wherein each elevation angle in said predetermined pattern has a different azimuth angle increment.
6. The method of claim 3 wherein said step of obtaining cloud presence data includes obtaining data in the zenith direction.
7. A method for determining presence and distribution of clouds using a sensor capable of translating in azimuth and elevation, comprising: obtaining cloud presence data for at least two measurement areas in a predetermined pattern within a volume; processing said cloud presence data to produce a multidimensional representation of cloud coverage within said volume; and outputting said multidimensional representation of cloud coverage.
8. The method of claim 7 wherein said measurement areas are approximately equal.
9. The method of claim 7 wherein said processing step applies weights to said cloud presence data to produce approximately equal measurement significance.
10. A method for determining cloud coverage in a region comprising the steps of : obtaining a series of range to cloud intercept measurements at known azimuth angles and elevation angles; processing said series of sample measurements to obtain a series of range data points; segregating said range data points into a set of data points that represent the levels of cloud layers and into a set of data points that represent sides of vertically structured cloud.
11. The method of claim 10, wherein said segregating step includes comparing data points obtained at one elevation angle to data points obtained at an adjacent elevation angle.
12. A method for determining cloud coverage in a region comprising the steps of : obtaining a series of range to cloud intercept measurements at known azimuth angles and elevation angles so that adjacent azimuth samples at each elevation angle represent approximately equal areas in a horizontal plane; processing said series of sample measurements to obtain a series of range data points; segregating said range data points into a set of data points that represent the levels of cloud layers and into a set of data points that represent sides of a vertically structured clouds.
13. The method of claim 12, wherein said segregating step includes comparing data points obtained at one elevation angle to data points obtained at an adjacent elevation angle.
Description:
--METHOD AND APPARATUS FOR DETERMINING CLOUD COVER-- BACKGROUND OF THE INVENTION Field of the Invention This invention relates to an improved method and apparatus for determining cloud cover conditions and cloud distribution in a region, and more particularly to a method and apparatus for making such a determination in the vicinity of an airport or airfield.

An ability to determine and report the distribution and amount of cloud coverage in the vicinity of an airport or airfield is of obvious importance to general and commercial aircraft flight safety.

Clouds form where temperature and water content induce precipitation of atmospheric moisture into droplets. In some instances, local heating causes air to rise. As it rises, the cooling process that occurs results in condensation and cloud formation. In other instances, wind distributions and thermal structure of atmospheric weather systems cause boundaries with abrupt temperature changes. At these boundaries, clouds form, due to both temperature and pressure effects. Many clouds assume a foundation often referred to as stratoform. That is, the clouds are naturally layered or stratified. Stratoform clouds, and the somewhat less frequent presence of convective cloud structures (e. g. a thunder cell), are separate components of sky conditions and in determining and reporting cloud sky conditions it is desirable to distinguish between them.

Description of the Prior Art Laser rangers (e. g. LADAR) have been used in the prior art to measure cloud height.

However, these prior art systems rely on relatively few sample points with consequently

incomplete reporting of cloud cover and in addition do not attempt to segregate the sampled data into sets in order to determine the presence and/or movement of towering cloud structures.

SUMMARY OF THE INVENTION An object of the invention is the provision of a method and apparatus to determine and report cloud coverage in a region on a layer by layer basis which is complete for the region which differentiates between data points from the sides of vertical cloud structures (such as towering cumulus clouds and thunder head clouds) and other collected data points.

Briefly, this invention contemplates the provision of a system in which laser ranger slant range samples to cloud intercept are acquired over hemispheric region of the sky with the samples spaced so that the samples represent approximately equal areas in each horizontal plane. In the course of determining cloud coverage, the system differentiates between those data points that represent the lower levels of a cloud layer (e. g. stratoform or layered formations) and data forms that belong to a larger convector or vertical structured cloud formation. Data points with approximately equal horizontal range at increasing or decreasing azimuth angles indicate a vertically structured cloud. Segregating the data points into sets allows identification of towering cloud structures and their movement, their velocity, their spatial extent, and their significance to general and commercial aviation. Movement and velocity are determined by evaluation of temporally sequential samples.

BRIEF DESCRIPTION OF THE DRAWINGS The foregoing and other objects, aspects and advantages will be better understood

from the following detailed description of a preferred embodiment of the invention, in which: Figure 1 is a pictorial diagram illustrating laser ranger echo returns from various cloud formations.

Figure 2 is a flow diagram of one embodiment of a data acquisition system in accordance with the teachings of this invention.

Figure 3 is a flow diagram of one embodiment of an initial data processing system in accordance with the teachings of this invention.

Figure 4 is a flow diagram of one embodiment of a cloud height determination system in accordance with the teachings of this invention.

Figure 5 is a flow diagram of one embodiment of a cloud coverage determination system in accordance with the teachings of this invention.

DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT Referring now to Figure 1, a suitable commercially available laser ranger 10 is gimbal mounted so as to permit 360 degree coverage and azimuth and roughly 180 degrees in elevation. Samples are taken over the dome that covers and is centered on laser ranger 10.

The laser ranger has an optical system and, for example, a Q-switched laser that transmits a short laser pulse and receives an optical echo from cloud surfaces that intercept the transmitted pulse. Each pulse provides information on the slant range to the point of intercept in the direction of the emitted laser pulse. The reflection from a cloud surface is detected by the laser ranger and the time difference between the emitted pulse and the echo pulse received from the cloud intercept, divided by the velocity of light (c), is the range to the cloud surface.

If there is no cloud, there is no return, and this is interpreted as a clear sky pulse. The

sampling distribution influences the statistical validity of the results. In the preferred embodiment of the invention, samples are taken in azimuth positions so that the azimuth samples for each elevation angle cover roughly equal areas in a horizontal plane.

The scanning and processing scheme described here is based on an assumption that there is only one data acquisition system or station to be used for a regional determination.

The details of multiple station implementations follow from the considerations presented here.

The system description has been divided into four sections, respectively: SECTION 1 (Figure 2)-Data Acquisition-where the initial data is acquired, reference height selected, and range height determinations are made; SECTION 2 (Figure 3)-Initial Processing-where the data is separated into that suitable for area-based cloud coverage determination and that which is used for cloud bank location: SECTION 3 (Figure 4)-Cloud Bank Determination-where the cloud bank data is summarized and banks located are separated from the area coverage data; and, SECTION 4 (Figure 5)-Cloud Coverage Determination-where the cloud coverage is calculated based on data points excluded from the cloud bank determination.

Section 1 (Figure 2) carries out the necessary data acquisition, initially. The starting point is a description of the (Figure 1) scan pattern. This is a circularly based pattern designed to give the maximum coverage within the region which can be sampled by the laser ranger 10. It is an area weighted sampling scheme, designed to yield data which corresponds

to the Federal Aviation Administration (FAA) definitions for sky coverage, but is adaptable to other purposes, as well. All of the following discussions are meant to be representative of the process and not limited to a specific form or implementation method.

The scan pattern itself, in this exemplary configuration, requires 127 laser ranging measurements to be made in sampling an airport environs. This provides almost 16 samples per one eighth coverage, as specified in FARR METAR documentation. In describing azimuth sampling, the sampling rings are numbered from the inner to the outer, with"Ring 0"being the single straight up sample. With this definition, it is seen that the number of samples in each ring is 6 X the ring index number, except for that inner, straight up, location.

Again the implementation should be taken as representative. The important thing is that any sampling scheme must be made on an area weighted basis, which this example combination of elevation and azimuth pointing angles provides. As further examples, both Cartesian and hexagonal patterns could also be considered and implemented.

This exemplary embodiment of the invention has three reference elevations. The primary elevation is 12,000 feet with the option of selecting either the 5000 or 30,000 foot elevations, depending upon sky conditions. These geometries have assumed a maximum range of a little over 15 km for the laser ranger. If reliable return signals can be measured from further distances, then the above angles/geometry may be modified. The gimbal mount can be controlled in a fashion to provide the above pattern. It is an area weighted sampling scheme, designed to yield data which corresponds to the FAA definitions for sky coverage.

SECTION 2-Initial Processing Before we get into the detailed discussion of this processing section, it is important to discuss the overall organization of the logic flow, and what the major functional blocks are

attempting to do. We want to be able to look at this process from both a global and a local standpoint.

By definition, all of the data points we are considering in this whole process can he grouped into two classifications. On one hand are all of those data points which we have determined to be taken from the sides of cloud bank and which can be used to locate such banks. On the other hand are those data points which have to be used in the cloud coverage determination. We have defined these data points to be parts of two mutually exclusive sets.

Together they comprise the entire data set for a complete scan pattern. At this point it should be noted that there is a set range value for those laser ranger locations where we had no valid return, indicating a clear sky at that angular position. Such data points are part of the aerial coverage calculation not part of a cloud bank This processing flow for Section 2 can be roughly separated into four major divisions.

The first, consisting of steps 2.1 through 2.5, sets up the reference ring range values for comparison with inward rings to determine the cloud bank location. It starts with the outer ring so defined. The term"reference ring"is a ring of data points which are used to calculate cloud bank tables (LUTs), in the algorithm and program.

The second division deals primarily with detecting which of the data points proves to be of use in the cloud bank determinations. These steps are used to define the data points which are to be considered as the sides of cloud banks. A variable is set to so indicate, having a value which can be read directly or as a logical state. Note that these data points do not include those at the bottom of a cloud bank, nor is it necessary to do so. We only need to locate the sides and determine the geometric extent. The bottom values have to be used as well in the cloud coverage calculations.

Next are those steps which deal exclusively with data points which are not part of any cloud bank determination. These are points which have to be used in the cloud coverage data set. They still have to be scanned or surveyed so that the appropriate indexing and incrementing of data points can occur. Note that the outer reference ring (e. g. I = 6) is by definition made up of data points which cannot be used as parts of cloud banks, but must be part of the subsequent cloud coverage calculations.

The final portion represents the appropriate index incrementing or decrementing to change all of the reference rings. As such, this division handles all of the data, irrespective of the type of data. Note that, at present, the outer ring is the reference ring for the first loop through the data. Then the next inner ring is the reference ring on the second loop and so on until ring 0 becomes the reference ring. This division handles all of that stepping through and routes the algorithms through the appropriate loops at the reference ring level. This division also branches the algorithm completely out of section 2 to sections 3 and 4, where and when appropriate. In Section 3 the Cloud Bank Determinations are to be made. Here the data is looked at in terms of that data which has been identified as being a portion of the side of a cloud bank. There are two reasons for this. First, the data which indicates a side of a cloud bank cannot be used in determining sky coverage, since it is part of a nominally"vertical" profile. What horizontal extent exists is used in this section to map the location and position of the cloud bank and, with the incorporation of successive data scans could be used to enter information about its motion and temporal changes. This also permits evaluation of multiple cloud banks and monitoring of their merger or separation. This combination of the necessary removal and separation of this data from the area coverage data has not been previously done with the idea of measuring the cloud bank profiles in addition to the area coverage.

Section 4 is where the cloud coverage data is evaluated from the data which has not been determined to be part of the cloud bank structures. There are two classes of data which are automatically included in this determination. The first is the data points where no adequate return signal indicates clear sky. The second is the outer ring of data which has to be used for basic reference purposes. This latter set of data points may be differently defined based upon the specific scan scheme implemented but it will be necessary to define such reference points to start any separation of cloud bank from sky coverage data. Such reference points will provide an early set of data to be used in the cloud coverage calculations. The balance of-the data will have been classified upon application of the process flow.

The area coverage data are evaluated for location and proportional area coverage estimations. Several possible approaches exist in evaluating the data. The one presently being considered is a histogram projection of all the area coverage data. This is not meant to limit the types of analyses which can be applied but is meant to be representative of the function and the evaluation process. This is immediately applicable to any layered type structure in the clouds but is by no means limited to that. This permits the calculation of area coverages based on height. consistent with the FAA definitions. Determination of means and standard deviations will permit the calculations of area coverages as a function of height and provide additional information about the vertical extent of such coverage.

In this exemplary embodiment, the scan pattern itself requires 127 laser ranging measurement to be made in sampling the airport environs. This provides almost 16 samples per one eighth coverage as specified in the FAA METAR document. The samples are provided as shown in Table 1. Note that this is an Azimuth sampling description only. The sampling rings are numbered from the inner to the outer with'Ring 0"being the single

straight up sample. With this definition, it is seen that the number of samples in each ring is thus 6 X the ring index number, except for that inner, straight up, location.

Table 1. Azimuth Angles for each of the scanning rings. Ring 6 is the outer ring, with the lowest Elevation Angle.

Ring 6 5 4 3 2 1 Increment 10 12 15 20 30 60 Az Step Azimuth Angle (deuees) 1 0 0 0 0 0 0 2 10 12 15 20 30 60 3 20 24 30 40 60 120 4 30 36 45 60 90 180 5 40 48 60 80 120 240 6 50 60 75 100 150 300 7 60 72 90 120 180 8 70 84 105 140 210 9 80 96 120 160 240 10 90 108 135 180 270 11 100 120 150 200 300 12 110 132 165 220 330 13 120 144 180 240 14 130 156 195 260 15 140 168 210 280 16 150 180 225 300 17 160 192 240 320 18 170 204 255 340 19 180 216 270 20 190 228 285 21 200 240 300 22 210 252 315 23 220 264 330 24 230 276 345 25 240 288 26 250 300 27 260 312 28 270 324 29 280 336 30 290 348 <BR> <BR> <BR> 31 300<BR> <BR> <BR> <BR> <BR> 32 310<BR> <BR> <BR> <BR> <BR> 33 320<BR> <BR> <BR> <BR> <BR> 34 330<BR> <BR> <BR> <BR> <BR> 35 340

Considering 3 reference elevations. The primary one is 12000 feet with the option of selecting either the 5000 or 30000 foot elevations, depending upon sky conditions. Given these options, the corresponding elevation angles are presented in Table 2.

Table 2. Elevation angles for the three reference heights. The default reference height is 12000 feet. Zenith angles and the corresponding slant ranges are also tabulated.

Ref Ring Radius Zenith Slant Elevation Ht (ft) &num (km) Angle Range (km) Angle 5000 0 0 0 1.524 90 1 2. 56 59.24 2.98 30.76 2 5.12 73.43 5.34 16.57 3 7.68 78.78 7.83 11.22 4 10.24 81.54 10.36 8.46 5 12.80 83.21 12.89 6.79 6 15.36 84.34 15.44 5.66 12000 0 0 0 3.66 90 1 2. 5 34. 35 4.43 55.65 2 5 53.81 6.20 36.19 3 7.5 64.00 8.34 26.00 4 10 69.91 10.65 20.09 5 12.5 73.69 13.02 16.31 6 15 76.30 15. 44 13.70 30000 0 0 0 9.144 90 1 2. 07 12.78 9.38 77.22 2 4.15 24.39 10.04 65.61 3 6.22 34.23 11.06 55.77 4 8.29 42.21 12.34 47.79 5 10.37 48.59 13.82 41.41 6 12.44 53.68 15.44 38.32 These geometries have assumed a maximum range of a little over 15 km for the laser ranger.

If reliable return signals can be measured from further distances, then the above angles/geometry may be modified. Again, it is assumed that the gimbal controls will be exercised in a fashion to provide the above pattern. This tabulated information will be used

for reference calculations, in the form of look-up tables (LUTs), in the algorithm and program.

With this background, then, refer to the drawings for a discussion of the algorithm flow, starting with Figure 2, Data Acquisition.

Block 1.1 Reference Height--Default or Select, selects a default reference height (RH) of 12000 feet. This is consistent with the reporting preferences delineated in the METAR document. The geometry is defined by assuming a 15 km radius reference circle at 12000 feet. The 15.44 km slant range is a reasonable approximation of the sensing range of a LIPAR system. If this is the scan option, then the reference height index (RH1) is set to 1. However, there exists the option of defining one of two other reference heights, 5000 and 30000 feet. In either of these cases, the control system must send the gimbal pointing system to the angular values specified in Tables 1 and 2. The Azimuth angles of Table 1 will not change, but the Elevation angles shown in Table 2 will depend on the reference altitudes selected The next step (block 1.2 Scan Initiate), is the initiation of the scan pattern. It is preferable to start with the lowest elevation angle, ring 6, traversing the entire ring in a step and stare mode until all of the signals have been recorded. The elevation is incremented to the next ring, 5, and the process repeated. This is continued until all rings have been traversed and the single, vertical data point has been acquired. For reference purposes, a counter (N) is also initiated at this point to number the data points with no valid signal return.

Block 1.3 Read Input Data performs the function of reading and recording the return

signals. There is internal processing going on in the laser ranger to determine the return signal characteristics. Return signal confirmation and time-of-flight measurements will permit the calculation of the slant range (distance along the line of sight) for each of the sample orientations. The data is indexed to correspond to the Elevation and Azimuth (i, j) positions.

The indexing is also done in that order The Elevation index is decremented from i = 6 to 1, plus the zero position. This permits the Azimuth index to range from j-1 to 6 times the Elevation index, again excepting the vertical sample.

In block 1.4 Valid Return Check, for each of the data points, a valid return signal check is made. This means that the laser ranger embedded software has to have determined a slant range (SR) which is within the maximum operational range (MR) capability of the system. This is a decision branch point and one of two paths must be taken. If a valid return signal is detected the system proceeds to a range and height calculation (Section 1.5). If a valid return signal is not detected, then the branch goes to the no return calculation of Section 1.6.

In block 1.5, Range and Height Calculation, when there is a valid return signal, calculation of the range (R) and height (CH1) are made based on the simple geometrical relationships. For each data point (i, j), the horizontal range is given by the relationship R = SR*cosAz and the cloud height measured is given by CH1 = SR*sinAz. The results are compiled by index values.

In block 1.6, No Return Calculation, if there is not valid return signal, a null result is

entered to prevent a spurious value from being assumed. This null result is achieved by setting both the range and cloud height values to an artificially high number. Thus we have, in this case, R =le9=109 and CH1 = le9 = 109.

The values can be looked for later in making the cloud coverage determinations. It should be noted that this value for these two variables also means that the sky is clear in that direction.

Also during this step, an N index is incremented. This index measures the number of sample points for which the sky conditions are clear.

Step 1.7, Initiate Data Type Register Locations, sets the matrix which defines the data type, to zero for all values. This matrix has to be reinitialized for each complete scan of gimbal positions. Thus CHlij = 0 In block 1. 8 Tabulate Resultant Data, the computer data matrices, in i and j, of the appropriate variables. This includes the Elevation, Azimuth, slant range, horizontal range, and cloud height determinations.

Decision blockl. 9-12000 foot Reference Branch is a branch point in the algorithm. If the value for RH is not 12000 feet, which means that a different altitude has been selected, the algorithm passes on to the step in Section 1.12. An exception to this occurs if the reference

height index (RH1) is more than 10. In this case, the other branch (1. 10) is selected. This permits periodic revisits of the default reference height conditions and a reevaluation of the other reference height possibilities, to see if the airport ambient conditions have changed. If the value is 12000 feet, then the algorithm branches to step 1.10.

The 1.10 30000 foot Reference Branch checks to see if the higher reference height should be selected for the scanning geometry. It does this by sampling the number of data returns with cloud ceiling heights above 20000 feet. If this number exceeds 80 (TBR), then RH1 = RH1 +1 and the reference height is set to 50000 feet. The system is then sent back to step 1.1 in this section, with the revised RH. The purpose of this is to increase the density of data samples, on an areal basis, if the atmospheric conditions are clear enough to widely separate the laser sample beam positions from each other. This will increase the sample density higher up without making a major impact on the total ground area covered. This is a 12.44 km radius circle rather than a 15 km radius circle. If these conditions are not met, i. e., the number is less than 80 (TBR), then the control passes to the next branch point in Section 1.11.

The 1.11 5000 foot Reference Branch checks to see if the lower reference height should be selected for the scanning geometry. It does this by sampling the number of data returns with cloud ceiling heights of 5000 feet or less. If this number exceeds 80 (TBR), then RH1 = RH1 +1 and the reference height is set to 5000 feet. The system is then sent back to step 1.1 in this section, with the revised RH. The purpose of this is to increase areal coverage of lower

altitude measurements, if the atmospheric conditions are obscured enough or the cloud deck low enough to otherwise significantly reduce the total area covered by the sampling scheme (a 6.43 km radius vs a 15 km radius). This will spread out these lower altitude samples without making a major impact on the total ground area covered. This is a 15.36 km radius circle rather than a 15 km radius circle. If these conditions are not met, i. e., the number is less than 80 (TBR), then the RH stays at the 12000 foot level and we pass to Section 1.12.

Block 1.12, Initial Value Setting, from either blocks 1.9 or 1., 1, is the transition to the next section of the algorithm. Block 1,12 define a reference ring, from the standpoint of data processing to be the outer ring of our sample set. The elevation index is set accordingly Block 1.13, Tabulate Collected Data, separately tabulates the outer ring of data since by definition and necessity there will be no subsequent additions on the outer ring data.

Further calculations in Section 2 will make use of these outer ring data, but will not be permitted to change them. This outer reference ring, and the straight up position, are the only ones which may not be subsequently changed or annotated with respect to Cloud Bank Determinations and Cloud coverage calculations.

Appendix A Variable List Az = Azimuth Angle Azjj = jth Azimuth Angle of ith Elevation Ring i Azimuth Index (1-36 for i=6,1-30 for i=5, jmax = Maximum AZ Index (=6*i for li=6 to 1, AAzi = 1 for i = 0) bAzi = 5 for i=6,6 for i=55, 7.5 for i=4,10 for i=3, 15 for i=2, 30 for i=l, El = Elevation Angle Eli = Elevation Angle of ith Ring i Elevation Index (6 to 0) Ell Lowest Available Elevation Angle

SR = Slant Range MR = Maximum Usable Range of Laser System R = Horizontal Range Initial Height Measurement SR * cos El CH1 = Initial Height Measurement SR + sin El R = Reference Height 5000, 12000, or 30000 ft RH = Reference Height Index Rp = Horiz Range of previous El CH = Cloud Deck Height (bottom) BH = Cloud Bank Height (too) Notes: Assume 127 data points total and that 12000 ft is the default Reference Height.

Referring now to Figure 3, the first step of this second section, 2.1 Azimuth initiation, starts the process of defining the reference ranges for the cloud bank determination. The Azimuth index counting starts at the j = 1 position. Note that in all of these steps, the convention is that the ordered pairs i, j or k, I will stand for the Elevation and Azimuth indices, respectively, even if referred to separately. This includes those indices with numerical extensions, e. g., 12 or 12. So i and k always refer to the Elevation indices and k and 1 always refer to the Azimuth indices. The single exception to this is that the correspondence LUTs, which contain only integer values, are labeled as the iCor tables. ICor is the variable name used in the processing and iCor5 through iCor2 refer to the LUTs. In practice, the variables internally listed in these tables are azimuth indices. These are further discussed in step 2.6. There are two accesses to this step 2.1. The first is from step 1.12 in Section 1 and is accessed for the first time through the looping structure of this Section. For this case Elevation index is given by i=6.

The other access is from step 2.30. In this case the process has already looped through the

entire structure of Section 2 at least once so the Elevation index has been decremented at least once. The range of the i, Elevation, indices in this case is from the first decrement down to 5 and decremented on through 2. In either case, the algorithm flow proceeds to step 2.2.

2.2 Range Read For the current value of i, which starts at i=6 from Section 1, and j, the value for the horizontal range is read. Access to this step comes either from step 2.1 or step 2.5. (Note that none of the values in the outer ring, where i = 6, can be defined to be part of the side of a cloud bank. There is no way to make the determination that we are looking at the sides of clouds for the outer ring. Thus the values for the outer ring will by definition always be used in the determination of sky coverage. Similarly, the i = 0 data position, which is straight up, will also always be used for the sky coverage determination and not for the cloud bank estimates.) Thus there will always be at least 36 data points which have to be used in the sky coverage calculation. In practice there will be more.

2.3 Range Reference After step 2.2, the Range reference, Rpj = Rjj, is determined from this outer range data (which is referred to as the reference ring) and is indexed by the azimuth index. On successive loops through this section the ring used as the reference is changed because the i index has been decremented (as noted in step 2.30). This permits the calculation of cloud bank locations which are closer to the observing station and perhaps located at higher altitudes. The logic proceeds to step 2.4

2.4 Index Check This is the first branch point in this section. The azimuth index is checked to see if it has reached its maximum value, where imax = 6 X i. If the maximum has not been reached, then the software loops back, progressing to step 2.5. This guarantees that all of the reference ranges in this ring of data have been tabulated. If the maximum has been reached, then the software progresses to step 2.6.

2.5 Azimuth Index Increment This step is reached from the"no"branch of step 2.4. The azimuth, I,. index is here incremented by 1. The software then loops back to step 2.2, to read the next reference range.

2.6 Look-up Tables This step has been reached from the"Yes"branch of step 2.4. The necessary Look-up Tables (LUTs) have been generated and are used in this step. Here is the correspondence pattern when comparisons are being made to determine whether or not the return signal is from the side of a cloud or not. There are 5 LUTs, corresponding to the reference rings from 6 to 2. In each of these cases the reference ring is used as, or assumed to be, a cloud base measurement.

This means that, unless there has been an earlier determination with another reference ring, i. e., a higher Elevation index number, the reference ring numbers will by definition be the cloud base measurement. Since the sampling requires a"constant"geometric spread rather than constant angular spread which geometrically narrows down the closer you get to the observing station, it is necessary to allow for angular overlap of inner ring data when referenced to the outer rings. (Keep in mind to use methodological approaches which are

based on areal coverages throughout this process. We do not permit angular approaches which will give geometrically distorted sample sets or measurement options in this algorithm ) This both increases probability of locating cloud sides in the process (i. e., multiple angles are sampled) and allows for variation in the cloud bank orientation with respect to the sampling station and sampling pattern. For this reason, some of the LUTs are 3-dimensional, to permit sampling of up to two inner ring values when referenced to an outer ring. The 3-dimensional LUTs are those corresponding to the even numbered rings in this case. This is a result of the geometry of the scan pattern and the distance range used in the determinations.

With 3-dimensional LUTs, initial LUT dimensions are given in the following table.

Table 2.6-1. Reference ring step size and corresponding angular deltas used in defining the corresponding LUTs. LUT dimensionality is also provided. Only the even indexed rings will have 3 dimensional LUTs in this embodiment.

Reference Ring Reference Step Angular Delta LUT Index (deg) (de) Dimension 6 10 5 5x36x2 5 12 6 4x30 4 15 7.5 3x24x2 3 20 10 2x 18 2 30 15 1x12x2 The following Tables (2.6-2 through 2.6-6) provide the positional indices through which the scan pattern and range comparisons are made. Where the tables have two layers, they are so indicated as parts a and b. In the presently defined patterns, only some of the comparisons require a second value, even for the even numbered reference rings. Note however, that the inner ring positions are necessarily compared to at least one and often more than one of the outer ring positions. As noted in the step 2. t discussion, the correspondence LUTs, which contain only integer values, are labeled as the iCor tables. Here iCor is the variable name used in the processing and iCor5 through iCor2 refer to the LUTs. The use of the i in this case

refers to the fact that this is an integer-based LUT. In practice here, the variables internally listed in these tables are azimuth indices. Also, note that the only place where zeros show up in these tables is in the second layer. These zeros indicate that no data is to be taken. This is because only some of the reference ring locations will require information processing for two of the data ring positions (azimuth) under consideration.

Table 2.6-2 a. The first layer tml=1) of the correspondence pattern for Ring 6 (i = 6), using Ale Azimuth step index numbers. This is labeled iCORS in the Flow chart. The reference ring numbers provide the kl values and the five ring numbers across the top provides the 11 numbers. Note the partial repetition of some of the Azimuth index numbers. Only fine boxed values are included in the RUT.

Reference Reference Step Numbers for Ring Step Angle(deg) Ring5 Ring4 Ring5 Ring2 Ring1 1 0 1 1 1 1 1 2 10 2 2 1 1 1 3 20 3 2 2 2 1 4 30 3 3 2 2 5 40 4 4 3 2 2 6 50 5 4 3 3 2 7 60 6 5 4 3 2 8 70 7 6 4 3 2 9 80 8 6 5 4 2 10 90 8 7 5 4 2 11 100 9 8 6 4 3 12 110 10 8 6 5 3 13 120 11 9 7 5 3 14 130 12 10 7 5 3 15 140 13 10 8 6 3 16 150 13 11 8 6 3 17 160 14 12 9 6 4 18 170 15 12 9 7 4 19 180 16 13 10 7 4 20 190 17 14 10 7 4 21 200 18 14 11 8 4 22 210 18 15 11 8 4 23 220 19 16 12 8 5 24 230 20 16 12 9 5 25 240 21 17 13 9 5 26 250 22 18 13 9 5 27 260 23 18 14 10 5 28 270 23 19 14 10 5

29 280 24 20 15 10 6 30 290 25 20 15 11 6 31 300 26 21 16 11 6 32 310 27 22 16 11 6 33 320 28 22 17 12 6 34 330 28 23 17 12 6 35 340 29 24 18 12 1 36 350 30 24 18 1 1 Table 2.6-2 b. The second layer (ml=2) of the correspondence pattern for Ring 6 (i = 6), using the Azimuth step index numbers. This is labeled COR6 in the Flow chart. The reference ring numbers provide the kl values and the five ring numbers across the top provide the 11 numbers. Note that the zeros for the Azimuth index numbers indicate no correspondence is made and no data is to be taken Only the boxed values are included in the LUT.

Reference Reference StepNumbers for Ring StepAngle (deg) Ring 5 Ring 4 Ring 5 Ring 2 Ring 1 0 0 0 0 0 0 2 10 0 0 0 0 0 3 20 0 0 0 0 0 4 30 4 0 3 0 2 5 40 0 0 0 0 0 6 50 0 0 4 0 0 7 60 0 0 0 0 0 8 70 0 0 5 0 0 9 80 0 0 0 0 0 10 90 9 0 6 0 3 <BR> <BR> <BR> 11 100 0 0 0 0 0<BR> <BR> <BR> <BR> <BR> <BR> 12 110 0 0 7 0 0<BR> <BR> <BR> <BR> <BR> <BR> 13 120 0 0 0 0 0<BR> <BR> <BR> <BR> <BR> <BR> 14 130 0 0 8 0 0<BR> <BR> <BR> <BR> <BR> <BR> <BR> 15 140 0 0 0 0 0 16 150 14 0 9 0 4 17 160 0 0 0 0 0 18 170 0 0 10 0 0 19 180 0 0 0 0 0 20 190 0 0 11 0 0 21 200 0 0 0 0 0 22 210 19 0 12 0 5 23 220 0 0 0 0 0 24 230 0 0 13 0 0 25 240 0 0 0 0 0 28 250 0 0 14 0 0 27 260 0 0 0 0 0 28 270 24 0 15 0 6 25 280 0 0 0 0 0

30 290 0 0 16 0 0 31 300 0 0 0 0 0 32 310 0 0 17 0 0 33 320 0 0 0 0 0 34 330 29 0 18 0 1 35 340 0 0 0 0 0 36 350 0 0 1 0 0 Table 2.6-3. The only layer (ml=1) of the correspondence pattern for Ring 5 (i = 5), using the Azimuth step index numbers. This is labeled COR5 in the Flow chart. The reference ring numbers provide the kl values and the four ring numbers across the top provide the 11 numbers. Note the partial repetition of some of the Azimuth index numbers. Only the boxed values are included in the LUT.

Reference Reference Step numbers for Ring Step Angle(deg) Ring4 Ring3 Ring2 Ring1 1 0 1 1 1 1 2122211 3 24 3 2 2<BR> 4 36 3 3 2 2<BR> 5 48 4 3 3 2<BR> 6 60 5 4 3 2<BR> 7 72 6 5 3 2<BR> 8 84 7 5 4 2 9 96 7 6 4 3 10 10 8 6 5 3 11 120 9 7 5 3 12 132 10 8 5 3 13 144 11 8 6 3 14 156 11 9 6 4 15 168 12 9 7 4 16 180 13 10 7 4 17 192 14 11 7 4 18 204 15 11 8 4 19 216 15 12 8 5 20 228 16 12 9 5 21 240 17 13 9 5 22 252 18 14 9 5 23 264 19 14 10 5 24 276 19 15 10 6 25 285 20 15 11 6 26 300 21 16 11 6 27 312 22 17 11 6 28 324 23 17 12 6 25 336 23 18 12 1 30 348 24 18 1 1

Note that in the tables with the second layer, we have two data points equally spaced from the reference point. This sampling scheme makes sure that both data points are to be used in the calculation. Additionally, it is easy to see that the interior data points are used by more than one reference point when looking"inward"to the observation station, Thus, instead of having an ever-narrowing spatial regime due to a constant angle, we are essentially covering a constant width path towards the observation point.

Table 2.6-4 a. The first layer (ml=1) of the correspondence pattern for Ring 4 (i = 4), using the Azimuth step index numbers This is labeled COR4 in the Flow chart. The reference ring numbers provide the kl values and the three ring numbers across the top provide the 11 numbers. Note the partial repetition of some of the Azimuth index numbers. Only the boxed values are included in the LUT.

Reference Reference Step numbers for Ring Step Angle(deg) Ring3 Ring2 Ring1 1 0 1 1 1 2 15 2 1 1 3 30 2 2 1 4 45 3 2 2 5 60 4 3 2 6 75 5 3 2 7 90 5 4 2 8 105 8 4 3 9 120 7 5 3 10 135 8 5 3 11 1 50 8 6 3 12 165 9 6 4 13 180 10 7 4 14 195 11 7 4 15 210 11 8 4 16 225 12 8 5 17 240 13 9 5 18 255 14 9 5 19 270 14 10 5 20 285 15 10 5 21 300 16 11 6 22 315 17 11 6 23 350 17 12 6 24 345 18 12 1

This provides us with the equivalent of sampling from several different directions with respect to the observation station, especially in the inner rings. All data points are used at least once and sometimes much more than once. This is especially true with respect to the inner rings. Also, because of the intrinsic symmetry of the scan pattern rings, each of the inner rings with respect to a reference ring will exhibit a significant symmetry in the data points selected for comparison and in the pattern of their appearance in the LUTs. This can be seen through an inspection of the LUTs presented in the tables in this step. Since the LUTs are only the boxed portion of each of these tables, the other rows and columns are there for reference and to provide a listing of the Elevation and Azimuth indices.

Table 2.6-4 b. The second layer (ml=2) of the correspondence pattern for Ring 4 (i = 4), using the Azimuth step index numbers. This is labeled COR4 in the Flow chart. The reference ring numbers provide the kl values and the three ring numbers across the top provide the 11 numbers. Note that the zeros for the Azimuth index numbers indicate no correspondence is made and no data is to be taken. Only the boxed values are included in the LUT Reference Reference Step numbers for Ring Step Angle (deg) Ring 3 Ring 2 Ring 1 1 0 0 0 0 2 15 0 2 0 3 30 3 0 2 4 45 0 3 0 5 60 0 0 0 6 75 0 4 0 7 90 6 0 3 8 105 0 5 0 9 120 0 0 0 10 120 0 0 0 11 150 9 0 4 12 165 0 7 0 13 180 0 0 0 14 195 0 8 0 15 210 12 0 5 16 225 0 9 0 17 240 0 0 0 18 255 0 10 0 19 270 15 0 6 20 285 0 11 0

21 300 0 0 0 22 315 0 12 0 23 330 18 0 1 24 345 0 1 0 Table 2.6-5. The only layer (ml=1) of the correspondence pattern for Ring 3 (i = 3), using the Azimuth step index numbers. This is labeled COR3 in the Flow chart. The reference ring numbers provide the kl values and the two ring numbers across the top provide the 11 numbers. Note the partial repetition of some of the Azimuth index numbers. Only the boxed values are included in the LUT.

Reference Reference Step numbers for Ring Step Angle(deg) Ring2 Ring1 1 0 1 1 2 20 2 1 3 40 2 2 4 60 3 2 5 80 4 2 6 100 4 3 7 120 5 3 8 140 6 3 9 180 6 4 10 180 7 4 11 200 8 4 12 220 8 5 13 240 9 5 14 260 10 5 15 280 10 6 16 300 11 6 17 320 12 1 18 340 12 1 Table 2.6-6 a. The first layer (ml=1) of the correspondence pattern for Ring 2 (i = 2), using the Azimuth step index numbers. This is labeled COR2 in the Flow chart. The reference ring numbers provide the kl values and the two ring numbers across the top provide the 11 numbers. Note the repetition of some of the Azimuth index numbers. Only the boxed values are included in the LUT.

Reference Reference Step numbers Ring Step Angle (deg) for Ring 1 1 0 1 2 30 1 3 60 2 4 90 2 5 120 3

6 150 2 7 180 4 8 210 4 9 240 5 10 270 5 11 300 6 12 330 6 Table 2.6-6 b. The second sayer (ml=2) of the correspondence pattern for Ring 2 (i = 2), using the Azimuth step index numbers. This is labeled COR2 in the Flow chart. The reference ring numbers provide the klvalues and the ring number at the top provides the 11 number (=1).

Note that the zeros for the Azimuth index numbers indicate no correspondence is made and no data is to be taken. Only the boxed values are included in the LUT Reference Reference Step numbers Ring Step Angle for Ring 1 1 0 0 2 30 2 3 60 0 4 90 3 5 120 0 6 150 4 7 180 0 8 210 5 9 240 0 10 270 6 11 300 0 12 330 1 Having defined the appropriate LUT corresponding to the current reference ring, the algorithm then progresses to step 2.7.

2.7 Azimuth Initiation For this step, we again initiate or reset an azimuth index. This azimuth index is to be set as 11=1.

The algorithm progresses to step 2.8.

2.8 Data Type Check This is the next branch point in the software This is a check on whether the range and height values have already been determined to be part of a cloud bank, that is, the side of one (The first time through the data, when i=6, there will be no data sets of this type.) Inputs or program flows to this branch point come from either step 2.7 or step 2.1 1. If the data has already been determined to be part of a cloud bank, then the algorithm proceeds to step 2.9. If no such determination has been made to date then the software will proceed to step 2.11.

2.9 Index Check This is a branch point which provides an Azimuth index check. The azimuth index is checked to see if it has reached its maximum value, where 11 max = 6 X i. If the maximum has not been reached, then the software passes to step 2.10. If the maximum azimuth index has been reached, then the software passes to step 2.29 where the decision will be made as to whether to loop back to the beginning of this section.

2.10 Azimuth Index increment This step is reached from the"no"branch of step 2.9. The azimuth, 11, index is here incremented by 1. The software then loops back to step 2.8, to read the next range and height values and check their data type.

2.11 Elevation Index Setting This step is reached from the"No"branch of step 2.8. If access comes via this route, we are here setting the Elevation index for the first elevation ring inside the reference ring. Access can also be reached from step 2.28. In this case, we will have not yet evaluated all possible points inside the appropriate reference ring with respect to the indexed reference points and are ready to go to the next reference point. In this case, we have to re-initalize or re-index the Elevation index to the first ring inside the reference ring. All comparisons are to be individually made with respect to the reference ring data points. In either case, the algorithm then progresses to step 2.12.

2.12 LUT Indices In this step we initially set the third of the LUT indices as well an index which monitors the data type in the cloud bank determination. The ml (= 1) index is set to initially define the layer of the LUT in which we are working. The tracking index, in, for the two-loop structure which follows is initialized (in = 0). Access initially comes from step 2.11. It is also possible to have access from step 2.23 where we have determined that we are not yet looking straight up. The algorithm then progresses to step 2.13.

2.13 Azimuth Correspondence Determination In this step we use the active LUT to determine the Azimuth index for the data point we want to compare with the reference data point We have a 2-dimensional array to work from, since the ml layer determination has been made. If ml =1,

access to this step has come from step 2.12. If ml =2, indicating that we are in the second layer of the LUT, access has either come from step where we have determined the data to be the type which contributes to the cloud bank determination, or step 2.26, where we have determined the data to be the type which contributes to the areal coverage determination. Further, note that ml can only equal 2 when i = 6,4 or 2 in the sampling scheme used. The Azimuth index of the data point to be evaluated is determined to be the value in the LUT specified by the k2 value for the Elevation index of the ring the data point is located in and by 11, which is the Azimuth index of the reference data point. Once this determination is made the process moves to step 2.14.

2.14 Data Status Check 1 In this step the values of 12 and in are given their first logic checks. If 12-0, we are unambiguously in the second layer of a LUT and there is no data point correspondence to worry about. Thus, when 12-0, no data comparison is to be made. However, if it is also true that in=2, then the previous data point, as specified in the lower layer of the LUT, has been determined to be part of a cloud bank In this case, the process branches to step 2.20, in the cloud bank determination loop. This is done to make sure the data Elevation indexing (k2) is done correctly. If either one of these conditions is not met, however, the process proceeds to the

next step, 2.15, where another branch point is provided.

2.15 Data Status ; Check 2 In this step the values of 12 and in are given their second logic checks. If 12 =0, we are again unambiguously in the second layer of a LUT and there is no data point correspondence to worry about. Again, when 12 =0, no data comparison is to be made. However, if it is also true that in = 1, then the previous data point, as specified in the lower layer of the LUT, has been determined to be necessary for use in sky coverage analysis. In this cease, the process branches to step 2.25, in the sky coverage determination loop, to guarantee that the proper indexing has been made. If either one of these conditions is not met, however, the process proceeds to the next step, 2.16, where the determination of data type for the data point indexed in this second layer can actually start.

2.16 Range Read In this step we read the value of the range, defined by our previously determined k2 and 12 Elevation and Azimuth indices, which was calculated from the laser ranger data and tabulated in step 1.8. Note that this step can only be reached if we are in the first layer of the LUT or if we have a non-zero value in the second layer generated index for the corresponding data point. The processing then moves to step 2.17.

2.17 Reference Range Comparison The range value read in the previous step is row compared to the reference value determined in step 2.3 and the process branching occurs. Although it has not been analytically determined what the acceptable change in range is to provide evidence of a cloud bank, I am tentatively assuming that a reasonable estimate of the change in range is one-half of the ring separation, that is, l\Rp = 1.25km. Note that this is 1 J2 the distance between scan rings as defined at the reference altitude (12,000, 5000 or 30,000 feet) and is approximately /2 the distance between any two adjacent data points so defined. This is an initial value to provide a start in data analysis, and as such is still subject to further study. At the very least, the data taken during the first portion of this study program will be used to reconsider, and perhaps refine, the range interval used in these calculations. In fact, is necessary that we do so in this phase. We must have a reasonable value for this range interval. Note, however, that this won't affect the software flow at all. Thus, and in general, if the range data is within the interval Rp(11) = ARp, for some ARp, then the data point is defined to be part of a cloud bank. (Note that the only such data points which are so classified are those which are above the current reference point.

This means that the outer reference point is, by definition, a part of the areal coverage determination. Reference points from inner rings are probably not part of a cloud bank, but it is possible. The logic will appropriately handle this because, once a ring is defined to be a reference ring the comparison will still be made.) If the data point has been determined to be part of the side of a cloud bank, then the process steps to step2.18. If the range data is outside the reference interval, then the data point has to be used for the areal coverage and is not part of a cloud bank. In this case, the processing steps to step 2.20

2.18 Data Typing When the processing reaches this step, the data has been determined to be part of a cloud bank structure. The cloud data type is defined by the CH3 (k2,12) variable. If this step of the algorithm flow is reached, this index is set to indicate that the data is part of a cloud bank.

This is done by setting CH3 (k2,12) =-2..

The negative number is an easy one to search on later in Sections 3 and 4 of this algorithm flow. In those cases we can either look for the value of that variable or, since we have a negative number assigned for the cloud bank data, use a logical operation to Proceed with the analysis. Once this variable value has been set, the flow proceeds to the next branch step in step 2.19.

2.19 LUT Layer Determination This branching step is one which checks to see if there is another layer to the LUTs. As noted in step 2 6, only those tables with reference rings where the Elevation index is an even number (6,4, or 2) will have that second layer, because of the sampling geometry. If this condition is met (three possible cases), then there is another layer to the LUT defining the data which must be evaluated. In this case, the processing passes on to step 2.20. If, however, the reference ring Elevation index is odd (two cases where is not even or a"no"), then the processing passes on to step 2.22.

2.20 LUT Layer Check Reached in part from 2.19, the LUT layer index is interrogated to see if the active layer is the

second one. If the answer is"yes,"then the first and second layers have both been evaluated and the processing passes to step 2.22. If the answer is"no,"then all we have evaluated to date is the first layer, for a possible cloud bank determination. In this case we must still check on the second layer. To do so, we must first move to step 2.21. The other means by which this step can be reached is from step 2.14. There we checked to see if the index (in = 2) had been set for the cloud band determination and the 12 variable was valued at 0. If so, the process stepped over to this step. This permits a decision to be made to evaluate higher elevation angles in the case where there is a cloud bank present if the determination is made for either of the data points examined. In this case, this branch point check will by definition see that ml =2, the answer is yes,"and the process will automatically route to step 2.22.

2.21 Layer Index Setting In this step the layer indexes will be set. The layer index will be set to ml =2.

The branch identification will be set to indicate that the previous data was determined to be a cloud side bank measurement, i. e., in =2.

After setting, the process loops back to step 2.13, where the next Azimuth Correspondence Determination will be made.

2.22 Elevation Index Decrement This step is reached in one of two ways. In the first case, from step 2.19, the reference elevation index (i) is odd. The alternative approach if from step 2.20, where we have looked

at the layer index. If the value for ml =2, then i is even and we have already examined both layers in the LUT. As a result of either path. we will have to decrement the elevation index for the data point which we are evaluating and proceed to the next step, step 2.23.

2.23 Elevation Check in this step the elevation angle is check to see if the laser ranger is pointing straight up (i e., whether k2 = 0). If the index indicates that the angle is not vertical then the process goes back to step 2.12, with the next elevation angle data points to be now considered. (Note that in step 2.12, the LUT layer index ml, and the tracking index, in, are re-initialized.) If the elevation index shows that the data is for a point straight up from the observation location, a"yes,"then no cloud bank determination can be made. Since we have just decremented the Elevation index, we have not yet tried to calculate a cloud coverage number for this data point. This branch step guarantees that we won't even try to do so. In this case the process control proceeds to step 2.27, where a determination of the azimuth index will be made.

2.24 LUT Layer Determination This branching step is one which checks to see if there is another layer to the LUTs, and exactly parallels the function of step 2.19. As noted in step 2.6, only those tables with reference rings where the Elevation index is an even number (6,4, or 2) will have that second layer, because of the sampling geometry. If this condition is met (three possible cases), then there is another layer to the LUT defining the data which must be evaluated. In this case, the

processing passes on to step 2.25. If, however, the reference ring Elevation index is odd (two cases where it is not even or a"no"), then the processing passes on to step 2.27.

2.25 LUT Layer Check Reached in part from 2.24, the LUT layer index is interrogated to see if the active layer is the second one. (Note that this step also parallels 2.20 in structure and purpose.) If the answer is "yes," ml =2, then the first and second layers have both been evaluated and the processing passes to step 2.27. If the answer is"no,"then all we have evaluated to date is the first layer, for a possible cloud bank determination In this case we must still check on the second layer. To do so, we must first move to step 2.25. The other means by which this step can be reached is from step 2.14. There we checked to see if the index (in = 2) had been set for the cloud band determination and the 12 variable was valued at 0. If so, the process stepped over to this step. This permits a decision to be made to evaluate higher elevation angles in the case where there is a cloud return, but no cloud bank, present if the determination is made for either of the data points examined. In this case, this branch point check will by definition see that ml=2, the answer is"yes,"and the process will automatically route to step 2.27.

2.26 Layer Index Setting In this step the layer indexes will be set. The layer index will be set to ml =2.

The branch identification will be set to indicate that the previous data was determined to be a cloud coverage measurement, i. e., in= 1.

After setting, the process loops back to step 2.13 (the same location where the process has sent the analysis after the parallel effort of step 2.21)'where the next Azimuth Correspondence Determination will be made.

2.27 Azimuth Index Check In this step we check to see if we have evaluated all of the data points in the reference ring for cloud bank correspondence in inner rings. This means that we have to check the azimuth index in the reference ring. Since this step is reached only after all determinations have been made for a given reference azimuth, it controls both sides of the logic structure, i. e., the cloud bank and areal coverage determinations. Thus, this logical branch point is reached from step 2.23 on the cloud bank side of the processing or from either 2.24 or 2.25 on the areal coverage portion of the process. The last azimuth check on the index merely evaluates whether or not the reference azimuth index is equal to 6 times the reference ring elevation index, i. e., whether we have 11 =6Xi or not. If this is not true, we have not yet evaluated all the data with respect to all of the reference ring points and the process proceeds to step 2.2B, for the next step. If we have reached the last azimuth point in the reference ring, then process control passes to step 2.29.

2.28 Azimuth Increment In this step, reached since we have not yet evaluated the all the data points In the reference ring, the azimuth index for the reference ring is incremented, i. e., 11 = 11 + 1.

Having done this, the process steps to step 2.11, where the test elevation index is reinitialized 2.29 Reference Elevation Check This step is reached from step 2.27, where the determination was made that the last azimuth position in the current reference ring had been reached and evaluated. Here a check is made to see if we have completed the possible range of reference ring elevations. We do this by checking to see if i=2.

If this is not true, then the process must continue with the next, adjacent, inner ring.

Accordingly, the logic flow would then take us to step 2.30. The reason for this is that we cannot permit the situation to arise where i = 1.

In this case the only inner data points to compare with that ring is the single point where the laser ranger is pointing straight up. We have already discussed how this is not a measurement from which a cloud bank determination can be made. The straight up point, like the outer ring, must by definition be used in the areal coverage calculations only. The difference is that the outer ring can be used as a cloud bank reference. If the condition is met that i =2, then we have already finished with the last possible reference ring (ring 2), and the logic flow

has reached the end of this Section. The process then can proceed to either Sections 3 or 4.

Although perhaps done sequentially, the remaining processes are truly parallel and only need access to the same set of data. Those two sections will be the topics of the next two papers.

2.30 Reference Fling Elevation Index Decrement When this step is reached, the decision has been made as to whether or not there is another reference ring to be evaluated. This step then decrements the reference ring Elevation Index by 1, j=i-l, to provide the new index setting. The process then steps back to step 2.1, where the azimuth index is to be reset and cloud bank and areal coverage determinations are made on the next set of data.

SECTION 3-Cloud Bank Determination This section of the logical flow for the sky coverage determination can proceed in parallel with Section 4, the Cloud Coverage Determination. Not only is it an Independent calculation, but the data used in this section is complementary data set when compared with that used in Section 4. There is no subset of the data used by both sets and all of the data samples acquired do provide the sum of both sets, with one possible exception. The lower level measurements taken for the cloud bank have to be included in the Cloud Coverage Determination of Section 4 and could be used in some additional measure of the Cloud Bank determination. However, in this embodiment of the invention, all of the data points that are selected for analysis in this Section have already been determined to provide cloud bank

measurements.

Echo range measurements fall in three specific classes: clear sky measurements; cloud detection measurements; and, cloud bank measurements. The first set exhibits no usable return signal for the laser ranging detector and is treated semi-independently in the cloud coverage determination section. The second set consists of return signals from the lower surfaces of any areal distributed cloud structures and are usable in cloud coverage analyses.

The third set of return signals are from the sides of cloud structures and cloud banks and are usable only in the cloud bank measurements. The third data grouping thus provides the data set for cloud coverage determinations, and these data are so used in this section of the processing. The transition point then, is from Step 2.29 in the detailed process flow.

Proceeding from that point.

3.1 Elevation Indexing As done earlier in this processing, in this step we are defining a reference ring from the standpoint of data processing to be the outer ring of our sample set. The elevation index is set accordingly at i = 6.

3.2 Data Point Count Initiate In this step we initiate counting the number of data points included in these calculations This index variable, id3 = 0 is initialized here and is used to control some of the logic branches in this section of the

software Note that ids is used as the total number of data points being considered in this Section.

3.3 Azimuth Indexing This step starts the process of defining the reference ranges for the cloud bank determination.

The Azimuth index counting starts at the j=1 position. Note that in all of these steps, the convention is that the ordered pairs i, j or kl will stand for the Elevation and Azimuth indices, respectively, even If referred to separately. This includes those indices with numerical extensions, e. g., k2 or 12. So i and k always refer to the Elevation indices and j and 1 always refer to the Azimuth indices. We then step to the first logical operation of this Section 3.4 Data Type Check This section is reached from one of two steps in the process. The first is where the first Azimuth index value has just been set (Step 3.2). The second route is after other data has been evaluated, or at least considered, and the j index has been incremented in step 3.7. In either case the data file is evaluated to check for the data type. This may be done in either of two fashions. That is, we can check on the value of the variable CH3j, j or we can do a logic check on the sign of the variable's value. in either case, we are effectively asking whether CH3i, j < 0 or not. If the answer is yes, then we proceed to section 3.5 for data tabulating. If the answer is no, which means that the data is to be used in the cloud coverage determination only, we then

proceed to step 3.7. Moving on to step 3.5 means that we will only be incrementing to the next data point for checking. We also should include the base, or lowest altitude, measurements in the cloud bank determinations. Those base measurements are set to a value which can also be checked. Step 2.18 will thus have to also set the value of CH3(k2+1, 11) =-1 for those data points. These data points will thus be used in both the Cloud Bank Determination here and in the Cloud Coverage Determination of Section 4. In step 4.3, we will have to check to see if we have either CH3(i, j) = 0 or CH3(i, j) =-1.

This permits these measurements to be used in both branches of the process flow and will give a better measure of the cloud bank extent, without putting a bias in the cloud coverage processing which would result in an underestimation of that parameter.

3.5 Record Working Data In this step we record only those data points which have been selected for processing in the cloud bank calculation We then will be working with only this subset of the total data acquired Once this data has been recorded we proceed to step 3 6 3.6 Data Point Count Increment In this step we count the number of data points included in these calculations This index variable,

id3 = id3 + 1, is used to control some of the logic branches in this section of the software Note that id3 is used as a reference to the total number of data points being considered in this Section (Once a complete count is made the process will branch to the data characterization) This step leads to 3 7.

3.7 Azimuth Index Check This step is reached either from the No branch of step 3,4, where we were checking on whether we had a cloud bank data point or from step 3.6 If we have dropped down to this point from there 3,4 then we will have wanted to bypass the cloud bank coverage section and continue with the indexing. Here we are checking the azimuth index if j 6xi then we must proceed to step 3 8 for azimuth incrementing If, on the other hand, we have the "Yes"branch where j =6xi, then we have reached the last data point in the scan ring under consideration and must proceed to 3. s for elevation decrementing, equivalent to increasing the elevation angle.

3.8 Azimuth Index Increment From the"No"side of step 3.7, we have determined that we have not looked at all of the azimuth points in the scan ring being evaluated. Here, we provide the increment in the Azimuth index, j=j+1,

to proceed with that evaluation for the next data point. The process then proceeds back to step 3.3.

3.9 Elevation Index Decrement From the"Yes"side of step 3.7, we have determined that we have looked at all of the azimuth points in the scan ring currently being examined. Here, we provide the decrement in the Elevation index, i=i-1, to proceed with that examination for the next elevation ring to be considered. The process then proceeds to step 3.10, where the Elevation index will be checked for orientation.

3.10 Straight-up Check We reach this step from step 3.9. This step merely checks to see if the data point under consideration is for the straight up scan position, where i = 0.

If the answer is"Yes,"this indicates that all of the data points have been examined to see that all clear sky condition points, in the current data set, have been identified and recorded. The exception to this is that the straight up point by definition cannot be part of any cloud bank and thus by definition must be an areal coverage data point. This step assures that we will not try to process that data point in such a fashion. The process flow then proceeds to step 3.11.

If i0,. all of the data points have not yet been so evaluated (a"No") and the evaluation flow then

proceeds back to step 3.3, where the Azimuth index will be re-initialized and the process continued.

3.11 Cloud Bank Location In this step we locate all bank measurements in Azimuth (Az) and Range (R). The purpose here is to order the data in such a fashion that the generation of a bank location and a determination of the extent of each bank can be made There are several ways to make this determination. One is to collect all data points where the combination of azimuth and rage values would say that two or more data sets, where a data set is defined to be those data points roughly matching in azimuth and range but differing in vertical extent, are within some distance of each other, for example, an initial value of 4 km for the measure separating two data sets. Once a pair of such determinations are made, a check can be made to see if there are any others which will meet that criterion for either of the data sets. The bank extent would then grow to match the acquired data. The total length and the orientation of the cloud bank (s) under consideration could then be determined. Another way of determining cloud bank location and extent is to use a triangular area minimization approach. Again, a criterion about the maximum acceptable distance between adjacent sets of"vertical"data would have to be followed.

3.12 Height Determinations For some range ofAz AAz and a corresponding R AR, which is a measure of what data points can be considered to be arranged in a locally vertical orientation, we need to determine a measure of the lowest and highest heights measured. This gives a measure of the Local"

vertical extent of a cloud bank. Within this data set, we can define the highest value of CH1 to provide a measure of the maximum bank height. Conversely, the lowest value of CH1 would give a measure of the cloud base. The methodology used in determining the acceptable variations in azimuth and range will depend in part on the approach used in Section 2, specifically step 2.6, where we defined the correlation pattern (in the form of Look-up Tables) to be used in generating data points for cloud bank comparisons. Alternative schemes could also be appropriate. Thus, the AAz and AR ranges, and especially the former, will be a function of how far the data points acquired are from the observation station. In one sense, it might even be considered that the AAz is a function of R A combination of this data with that acquired in step 3.11, would thus provide a measure of both the vertical and horizontal extent of any cloud bank determinations.

3.13 Cloud Bank Motion Given the above compilation of information, and assuming that similar information is available from previous data acquisition scans, it is possible to make some determinations about cloud bank motion (s). There are several approaches that can be used. Here examples of approaches. Note that clouds will generally not move so much in the period of time between scans that it would not be possible to track a given cloud bank. Looking at the ends of the bank distribution, it would be possible to generate a time differential estimate of their positional change, i. e., a velocity. Similarly, one could generate an equation which describes the position and extent of a cloud bank in the environs of the observation station for each of the scans of data collected. From this, one can generate the minimum predicted distance from the observation station. Successive scans would provide the information needed to generate a

report on the rate of approach to or departure from the observation station. If such information is of interest, it would also be possible to watch the time varying changes in the vertical extent of clouds, using the same data sets, in an analogous manner.

3.14 Generate Report This section is where the formal numerical summary of the location and extent of any cloud banks) is generated This is data which is appropriate to be communicated to the FAA offices for inclusion in their reports to the locally distributed or arriving or departing aircraft under their control.

SECTION 4-Cloud Coverage Determination This Section of the logical flow for the sky coverage determination can proceed in parallel with Section 3, the Cloud Bank Determination. Not only is it an independent calculation, but the data used in this section is an entirely complementary data set when compared with that used in Section 3. There is no subset of the data used by both sets and all of the data samples acquired do provide the sum of both sets. Thus, no data is left unused, either. Measurements have been shown to this point to fall in three specific classes: clear sky measurements; cloud detection measurements; and, cloud bank measurements. The first set exhibits no usable return signal for the laser ranging detector. The second set consists of or provides return signals from the lower surfaces of any really distributed cloud structures and are usable in cloud coverage analyses. The third set of return signals are from the sides of cloud structures and cloud banks and are usable only in the cloud bank measurements. The first two data groupings thus provide the data set for cloud coverage determinations, and they are so used in

this section of the processing. The transition point then, is from Step 2.29 in the detailed process flow. We proceed from that point.

4.1 Elevation Indexing As done earlier in this processing, in this step we are defining a reference ring from the standpoint of data processing to be the outer ring of our sample set. The elevation index is set accordingly at i = 6.

4.2 Azimuth Indexing This step starts the process of defining the reference ranges for the cloud bank determination.

The Azimuth index counting starts at the j=1 position. Note that in all of these steps, the convention is that the ordered pairs i, j or k, 1 will stand for the Elevation and Azimuth indices, respectively, even if referred to separately. This includes those indices with numerical extensions, e. g., k2 or 12. So i and k always refer to the Elevation indices and j and 1 always refer to the Azimuth indices. We then step to the first logical operation of this Section.

4.3 Data Type Check This section is reached from one of two steps in the process. The first is where the first Azimuth index value has just been set (Step 4.2). The second route is after other data has been evaluated or at least considered and the j index has been incremented in step 4.9. In

either case the data file is evaluated to check for the data type. This may be done in either fashion. That is we can check on the value of the variable CH3i, j or we can do a logic check on the sign of the variable's value. In either case, we are asking whether CH3i, j = 0 or not. If the answer is yes, then we proceed to section 4.4 for data tabulating. If the answer is no, which means that the data is to be used in the cloud bank determination, we then proceed to step 4.8. The intermediate steps are dealing only with the data points which are to be used in this section. Moving on to step 4.8 means that we will only be incrementing to the next data point for checking.

4.4 Record Working Data In this step we record only those data points which have been selected for processing in the sky coverage calculation. We then will be working with only this subset of the total data acquired. Once this data has been recorded we proceed to step 4.5.

4.5 Data Point Count In this step we count the number of data points included in these calculations. This index variable, id = idl, is used to control some of the logic branches in this section of the software. Note that idl is used as a reference to the total number of data points being considered in this Section. Once a complete count is made, the process goes on to step 4.6.

4.6 Cloud Height Check In this step we consider the case where we do not have any valid return from the data, indicating that the range is beyond the sampling distance. This is a check to see if the data has been set to the value of CH1 = le9= 109, a value large enough so that it will never be the result of a valid signal return. If this variable has been so set, then this data is to be binned in a special location for the clear sky measurement which is done in step 4.7. If the data is not to be binned in this fashion, the flow proceeds to step 4.9.

4.7 Clear Sky Binning In this step we place all of the data points which have been determined to be"returns"from a clear sky. These data points are treated separately from the others and are generally not to be used in any other binning exercise. A possible exception to this is if there are not enough data points in this set to provide a measurable percentage of sky coverage in terms of the FAA definition. In this case, these data points could be grouped with those data points where the returns are from the extreme outer end of the reliable laser ranger effective range. When this portion of the data has been properly binned, the flow proceeds to step 4.8.

4.8 Decrement Data Count In this step, the Data count index is decremented, id = id-1, for each of the data points determined to be a"return"from a clear sky region being sampled.

We then proceed to step 4.9.

4.9 Straight-up Check We reach this step from two possible locations. If the data point in step 4.6 is found to be not corresponding to clear sky conditions, then we drop directly here. If clear sky conditions are determined, then we have reached this point from step 4.8. This step merely checks to see if the data point under consideration is for the straight up scan position, where i = 0.

If the answer is yes, this indicates that all of the data points have been examined to see that all clear sky condition points, in the current data set, have been identified and recorded. The process flow then proceeds to step 4.13. If i_O, all of the data points have not yet been so evaluated ("No") and the evaluation flow then proceeds to step 4.10. In addition, the data acquired in the clear sky determination from steps 4.6 and 4.7 will be provided to step 4.35 in the process flow. There is no need for us to use this data until much later in the flow and there is no need to carry it along in the processing subsequent to step 4.10.

4.10 Azimuth Index Check This step is reached either from the"No"branch of step 4.9, which effectively checks to make sure we have covered all of the data points, or from the"No"branch of the earlier step 4.3, where we were checking on whether we had a cloud bank data point. If we have dropped down to this point from there, 4.3, then we will have wanted to bypass the areal coverage section and continue with the indexing. The reason we are not worried about the status of the straight up point when i=0 to define the location is that it by definition must be an areal coverage data point and we will never have reached this step, due to the 4.3 branch. Here we are checking the azimuth index.

If j _ 6 x i, then we must proceed to step 4.11 for azimuth incrementing. If, on the other hand, j =6xi, then we have reached the last data point in the scan ring under consideration and must proceed to 4.12 for elevation incrementing.

4.11 Azimuth Index Increment From the"No"side of step 4.10, we have determined that we have not looked at all of the azimuth points in the scan ring being evaluated. Here, we provide the increment in the Azimuth index, j=j+1, to proceed with that evaluation for the next data point. The process then proceeds back to step 4.3.

4.12 Elevation Index Decrement From the"Yes"side of step 4.10, we have determined that we have looked at all of the azimuth points in the scan ring currently being examined. Here, we provide the decrement in

the Elevation index, i=i-1, to proceed with that examination for the next elevation ring to be considered. The process then proceeds back to step 4.2, where the Azimuth index will be reset to the initial value.

4.13 Height Bin Setting This step is reached from the"Yes"side of step 4.9, which means that we have looked at all of the data points and generated the complete set of those data points which can be used in the sky coverage calculation. In this step we set the size of the height bins to 100 feet, h= 100. which is the initial, and minimum, height bin size. The process then moves on to step 4.14.

4.14 Histogram Increment This step is reached from both step 4.13 and from the branching step 4.29, which will be described later. There is one difference from the histogram generated here when compared to a classical one. In this projection effort, the histograms will be generated by use of a rolling window, incremented at some subinterval of the bin size. For our purposes here, it is assumed that the starting/initial subinterval will be one-tenth of the bin size, i. e., hs = 0. 1*h.

The reason for doing this type of approach is to maximize the probability of determining an appropriately thresholded measurement. This will address the possibility that we could have two adjacent altitude bins which split the measurements from a cloud layer, resulting in neither one of them being thresholded/selected. After the calculation/setting of the histogram

increment the process goes on to step 4.15.

4.15 Minimum Height We reach this step from 4.14, where we set the height increment. The minimum height used in the binning exercise for the cloud coverage data is defined to be the lowest value at which a complete bin may be constructed. The projection construction will start from this lowest possible altitude, which is one half the bin height. If we call this the altitude height, ha, we thus start building the projection at a value of ha = h/2.

We then proceed to step 4.16.

4.16 Histogram Projection In this step we generate the histogram of the data using the height bins specified in step 4.13 or possibly as incremented in step 4.28, the latter referred to indirectly. For this altitude, the bin under consideration will include all height values in the interval defined by ha-h/2 3 CH1 3 ha + h/2 All values within the interval from will be assigned in histogram format with the subinterval spacing indicated. We then proceed to step 4.17.

4.17 Height Increment After having collected all of the data (step 4.16) in the altitude interval, the histogram height is incremented by the subinterval amount. Thus, ha = ha + hs.

The next step, 4.18, is a branch point.

4.18 Data Check Reached from 4.17, this step is merely a check to see if all of the data has been assigned to bins. If the answer is"Yes,"the process goes to step 4.20. If the answer is"No,"not all of the data has yet been used and the process goes to the branch point in step 4.19.

4.19 Check Histogram Height Upon reaching this step from 4.18, we must check to see if the altitude is above the maximum realizable for the laser ranging system being used. For our initial considerations, we have assumed that the maximum usable range for the laser ranger is 15.44 km, as discussed in Section 1. Thus, if the histogram altitude is larger than the value ha > we will have included all of the data points except those coming from a clear sky"return."In this case we will proceed to step 4.20. However, if we have not reached this altitude and have not used all of the data points, then we must go back to step 4.16 and redo the earlier calculation with the incremented histogram altitude generated in step 4.17.

4.20 Thresholding This step is reached from either of the"Yes"branches of steps 4.18 and 4.19. Here we evaluate the rolling window generated histogram and apply a selected threshold to the data.

We have initially assumed a threshold of 5 counts for this approach as being a reasonable minimum number. As mentioned above, the rolling window increases the probability of

finding such a data set. We are then ready for the decision point in step 4.21 Threshold Check In this step we are checking to see if there are any bins which have been selected as having the minimum number of counts. If the answer is"No,"the bin size must be increased or incremented and the process goes to step 4.28. If there are thresholded values, a"Yes,"then the process must go to step 4.22.

4.22 Distribution Calculations For the thresholded regimes, we must calculate the means (hm) and standard deviations of the histograms. Since the histograms have been generated by a rolling window, the separation is not equivalent to the size of the bin. Therefore, for the first estimate, we shall assume that the mean is that value for which the highest single histogram value has been determined. If two or more adjacent histogram values have the same threshold levels, the mean will be the average of the height values for those windowed bins. Once the means have been calculated we then have to determine a standard deviation, so. A simple way to do this is to use all of the data in the interval hm-2h < hm < hm + 2h where the interval length is another variable number which must be considered during the course of this effort. Another possibility is to expand the interval over which the calculations are to be made by including all of the range included within the thresholded subintervals plus the two additional bin distances on either side. This could be represented by including all the data points from

hm-t-2h < hm-t to hm+t < hm+t +2h where hm-t is the lowest altitude adjacent to the mean where the threshold is exceeded, and hm+t is the highest altitude adjacent to the mean where the threshold is exceeded.

From this step, the process flow proceeds directly to step 4.23.

4.23 Data Point Classification This step in the process separates the data into two groups. As such, it may be considered an implicit branch point. On one hand, we will have the data that was included in the thresholded regimes as calculated in the previous step. We have already calculated the mean altitude for these thresholded data points and the standard deviation, for that layer, about those points.

We now select all of those data points which occur in the interval of hm-2 So<hm<hm+2so.

The data points are also counted and the number of points selected for inclusion in the data set where ids = number of data points selected.

These data points will be now removed from the current working data set and passed, with the flow, to step 4.24. The handling flow, with respect to the remaining data, goes to step 4.28 for those data points which have not been removed by the thresholding process, and those few data points which will be identified as being between thresholded data sets. (Further processing will be necessary to classify them as being appropriately thresholded.) For this

reason, this connection from 4.23 to 4.28 is given by a dashed line.

4.24 Decrement Data Count In this step the available data count is decremented by the amount of the data points selected.

That is, id = id-ids.

The process then goes to step 4.25. (The available data count is also communicated to step 4.28 through 4.24, 4.25 and 4.26 because the processing will not proceed without the proper information being provided by 4.27.) 4.25 Altitude Recording The data is compiled in the form which can be used in the FAA type report to be filed. For each of the sets of data included to this point, the areal coverage for the distribution It should be noted that this will be an accumulated data set, where all of the data included in this set will be used in the calculation of the areal coverage required. The data will be generated in the form of the mean altitude at the requisite level of accuracy, the number of data points within the thresholded regime, ids, and the areal coverage for each of these thresholded data sets. (The latter calculation may be made at the position in the flow delineated by step if it seems appropriate to do so.) This will also include the corresponding reports or calculations for any adjacent populations, assuming they have also been selected in the thresholding. If there are any data points which are between two data sets (which have been selected by the thresholding) such that the number of data points is less than the thresholding limit, then these data points are to be included in the number count for the layer which is the

one below the data being considered. We can call the number of data points so selected ids2 The earlier determined altitude will not change. This may, however, affect the calculation of the areal coverage by a given thresholded data set.

4.26 Decrement Data Count In this step the available data count is further decremented by the number of data points added to the layers already selected in the previous step. That is, id = id-ids2.

The process then goes to step 4.27.

4.27 Count Check In this step the data is checked to see if there is sufficient data available to provide any more thresholded measurements. This means that we must have more than enough data to be thresholded in a layer. Thus, we check to see if id < 5.

If we get a"No,"then we can proceed with the looping back through 4.28. This portion of the process is the enabling step, which allows step 4.28 to proceed with the additional threshold processing. If the answer is a"Yes,"then we can proceed to step 4.28 Reinitiate Threshold Calculation This step does not proceed unless we have received a"No"from step 4.27, showing that we have not processed all of the data. This is also in part indicated by the dashed line from step 4.23. In this step, the remaining data is to be retabulated to be used as input to subsequent

thresholding. If no new data thresholds have been identified earlier, all of the earlier data will be still available for use at this point, and we will have bypassed this path (by proceeding from step 4.21 to 4.29 as mentioned earlier). The number of data points which can be used in this revised threshold calculation is the possibly twice recalculated value, id. (See steps 4.24 and 4.26.) The processing now flows to step 4.29.

4.29 Increment Height Bin Size This step is reached from 4.19, after it has been determined that we lack any thresholded data.

It may also be reached from step 4.28, where we have removed some of the thresholded data from that under consideration and must now increment the bin size to handle the rest of the data. Here we increment the current bin size by 100 feet. That is, h = h+100.

Then we proceed to step 4.30.

4.30 Bin Size Check From step 4.29, we now check to see if the bin size has become too large. The comparison is made to a 2000 foot bin size, h < 2000, which may be too large. We will have to check this number further, as experimental data becomes available and familiarity with the processing is developed.. This value is currently given to allow the flow discussion to proceed. If the bin size is still below this value, a"Yes," then the flow leads back to step 4.14 for the start of the generation of a new histogram profile.

If the bin size has reached this value, then we will wish to terminate the processing and the

flow progresses on to step 4.32.

4.31 Layer Count In this step, reached from step 4.27, we order the"layers"selected in the thresholding process and the number of data points associated with each of them. The term"layers"may be something of a misnomer in this context, because it is not absolutely necessary that the measured data points be all adjacent to each other and hence part of a cohesive atmospheric structure. Rather the conditions are such that the coverage can be so described. This would then include the actual data from such a structure. The process flow goes to step 4.33.

4.32 Count Accumulation This step is reached only if the bin size has reached 2000 feet and there have been no thresholded bins selected or all of the data remaining data has not been used and cannot be included in one or more of the threshold-determined layers. In this case the total or remaining cloud coverage will have to be accumulated as"broken."This also means that these values will have to be accumulated from the bottom heights upwards and the"eighths"sky coverage calculated on that basis. Coverage will thus increase with altitude, which is also consistent with the METAR document. This latter accumulation will be done in step 4.33.

4.33 Sky Coverage Here we calculate the sky coverage due to the measured and thresholded values assembled to this point. This step is reached from both steps 4.31 and 4.32, where we have accumulated the data points associated with layers and broken measurements, respectively. We start from

the lowest altitude, increasing that altitude as we make the calculations. If the lowest measurements are from a layer of data that has been thresholded, we will calculate the area coverage for that layer. If there are a multiple number of measurements which did not have enough significance to be allocated to a layer in the histogram, then these are to be accumulated until the first layer is reached. The average altitude will be calculated and the sky coverage listed as broken for that altitude. We then step on to 4.34.

4.34 Altitude Increase This step is reached from either 4.33 or 4.36. The altitude is increased until the next thresholded layer is reached and a similar calculation is made. Data points which were not thresholded but lie between layers will be allocated to the layer which is closest to them in altitude. The next step in the process flow is step 4.36.

4.35 Clear Sky Coverage This step is reached from very early in this Section, namely step 4.9. The data acquired and used here is not and has not been needed in any other portion of this process section. This is the calculation of the areal coverage provided by clear sky measurements, again in eighths.

One point to consider is that there might be a need to classify these measurements in the "broken"category. This is a subject requiring further thought and analysis. The flow from this step leads to step 4.36.

4.36 All Data Used Check In this step, reached from both 4.34 and 4.35, the data is checked to determine whether all of

the data points, idl in number, have been used. If the answer is"No,"the process goes back to step 4.34, because we will not need to consider the clear sky data more than once. We may, however, have to consider the multiply-thresholded data in the looping fashion described here. If the answer is"Yes,"we have used all of the available data and the process goes to step 4.37.

4.37 Coverage Addition Areal coverage is calculated in a cumulative fashion from the lowest altitude. The coverage is determined by adding the coverage determined for the lower layers to the measured numbers for the higher altitudes. The areal coverage will by definition increase with altitude.

This is consistent with the METAR requirements for the FAA. The data will thus be noted in terms of areal coverage (in eighths) vs altitude. Note that the areal weighting for each data point will be the same for all of the data points no matter how many of the initially acquired data points have been used in Section 3 for the cloud bank determination.

4.38 Generate Report This section is where the formal numerical summary of the sky coverage is generated. This is the data which must be communicated to the FAA offices for inclusion in their reports to the aircraft under their control.

While the invention has been described in terms of a single preferred embodiment, those skilled in the art will recognize that the invention can be practiced with modification within the spirit and scope of the appended claims