by Michael W. Douglas, Javier Murillo, John F. Mejía, Raquel Orozco and Jose M. Gálvez,
September 20, 2004.

Click here for a Microsoft Word Version of this tutorial

Click here for the spanish version of this tutorial

Back to the PACS-SONET Homepage



Chapter 1. What is CORRIGE?

Chapter 2. How to obtain CORRIGE.

Chapter 3. Running CORRIGE for the first time.
3.1. Information needed to use CORRIGE.
3.2. Format of the INPUT FILE.
3.2.1. Name of the file.
3.2.2. Header: File Identifier.
3.2.3. Header: Labels.
3.2.4. Data.
3.3 Format of the OUTPUT FILES.
3.4 Using the program.
3.4.1. Gathering the program and files in the same folder.
3.4.2. Starting CORRIGE.
3.4.3. Parts of the screen. The Sounding Section. The Commands. The Zoom Section.
3.4.4. How to interpret wind barbs.
3.4.5. Flipping screens.
3.4.6. Navigating along the sounding.
3.4.7. Commands used to correct the data.
3.4.8. Saving the corrections.
3.4.9. Exiting the program.

Chapter 4. Errors and how to correct them.
4.1. Importance of knowing all sorts of possible errors.
4.2. Observational errors.
4.2.1. Angle read off by one degree.
4.2.2. Scale in reversed order.
4.2.3. Balloon crossing through the center of the sky.
4.3 Processing errors.
4.3.1. Ten degree errors.
4.3.2. One to nine degree errors.
4.4 Error detection with CORRIGE.

4.4.1. Using the angles to detect errors.
4.4.2. Using the wind profile to detect errors.
4.4.3. Evident errors using CORRIGE.
4.4.4. Subtle errors.

4.5 Examples.
4.5.1. Obvious errors .
4.5.2. Balloon crossing the north .

Chapter 5. Problems and solutions.
5.1. The program is not showing the data when I open the file.
5.2. I cannot load the data to work with.
5.3. I need to go back to the WINDOWS mode without exiting.

Chapter 6. Quick CORRIGE summary.


The purpose of this tutorial is to present all the aspects related to the use of the program CORRIGE to process pilot balloon observations. This program will allow the user to convert angles captured with a meteorological theodolite into wind information. CORRIGE was first developed by Jose Luis Carrasco currently a member of the Mexican Weather Service. The motivation was to process the pilot balloon data that resulted from the EMVER 93 Experiment held in Mexico. After some years, the program was subject to some modifications and the most recent version was written by Doug Kennedy from the National Severe Storms Laboratory (NSSL) of the National Oceanic and Atmospheric Administration (NOAA). The final version of CORRIGE was released in the late 1990's.

Chapter 1. What is CORRIGE?

CORRIGE is a small program made to convert pilot balloon angle data into wind observations. It also allows the user to subjectively make corrections to the data. When executed, the program displays a graphic interface that can graph evolution of the elevation angle and azimuth angle with time, and finally the wind profile. Allowing the user to zoom in or zoom out in order to check for strange readings, CORRIGE helps the user to depict the location and magnitude of the errors, and furthermore, correct them.

Chapter 2. How to obtain CORRIGE?

The program can be easily downloaded from the PACS-SONET website of the National Severe Storms Laboratory (NSSL) through the following addresses:


If you find any problems when carrying out this procedure you can contact the following persons: Javier Murillo at, Michael W. Douglas at, John F. Mejia at, Raquel K. Orozco at or Jose M. Galvez at in order to obtain the program.

Chapter 3. Running CORRIGE for the first time.

If you are running CORRIGE for the first time you will need to know how to use the program but also you will need to learn about the format of the input and output files. This chapter covers in detail the input and output of CORRIGE and how to use the program starting from scratch.

3.1 Information needed to use CORRIGE.

To use CORRIGE you need to have three things available: An INPUT FILE (1), information about the elevation of the site (2), and the estimated ascent rate of the pilot balloon (3).

Figure 1. Diagram illustrating CORRIGE's input and output.

The INPUT FILE contains information of the pilot balloon sounding in the form of time, elevation and azimuth angle of the balloon as viewed through the optical theodolite. The elevation of the site, and the ascent rate are both estimated quantities. The elevation will be useful only to transform the vertical axis of the wind profile from meters above ground level (m AGL) into meters above sea level (m ASL). The ascent rate, however, is essential for the calculations of the winds. Even though this quantity may be slightly modified by eddies in the lowest portion of the atmosphere, it will approximate to a constant. This is an important assumption you should be aware of when dealing with pilot balloon observations: The ascent rate is used as a constant.

Even though you may have been given the elevation and ascent rate information along with the raw data files, we will now briefly discuss the procedures followed to obtain them. The elevation can be found either on a detailed map or averaging many GPS altitude readings on the site. The ascent rate, however, is harder to obtain. You need to perform numerous double theodolite tests, then select the good soundings, and finally average them.

You can also run CORRIGE for many files without having to restart the program each time. There is an option to modify the ascent rate or the elevation of the site if needed. This may be necessary when some of the soundings either need a different ascent rate or correspond to different locations.

3.2 Format of the INPUT FILE.

The INPUT FILE is a plain text file (ASCII format), which contains a header and then information regarding the time, elevation angle and azimuth angle captured during the pilot balloon sounding. It can be edited with any text editor, but if you use Windows, we recommend Notepad. You can also export it from EXCEL as "text delimited by tabulations". The name of the file must contain only 8 characters because CORRIGE does not behave well with files with longer names.

Figure 2. An example of an INPUT FILE for corrige.

The header is contained in the first two rows of the file. The content of the first row is the file identifier. It is quite flexible and is used only as a reference in order to verify the place an time when the observation was performed. The second row contains the labels corresponding to the three columns of data, which start in the third row. The first column contains the time in minutes, the second contains the elevation angle of the balloon and the third one the azimuth angle. The angles need to be expressed in decimal notation and using dots for decimal places. CORRIGE does not accept sexagesimal notation (minutes and seconds), and does not accept commas either.

Figure 2 is an example of an INPUT FILE for CORRIGE. Before passing to the next section, we will analyze some details that can be observed in this example file and may be useful to the users.

3.2.1. Name of the file.

The name of the file must have 8 characters, as we mentioned earlier. The filename should include information of the date, time and ideally a short identifier assigned to the site. In this example the name of the site was not included. The format used was month, date, year and hour (MMDDYYHH). The extension could be set as ".dat" or ".txt". Some format examples are:

YYMMDDHH -Year (YY), month (MM), date (DD) and hour (HH). This is a standard format, and contains complete information about the date of the file. Notice that it is recommended to place the largest time interval first just to aid file organization. Year goes before month, month before day, and day before hour. The only significant restriction of this file is that it does not contain the name of the site, so if it gets out of its folder you may not know what site it belongs to. This is why it is so important to locate the information of the sounding in the first row of the file itself as we will soon discuss in detail.

SSMMDDHH - Coded name of the site (SS), month (MM), date (DD), and hour (HH). This format is slightly more useful in the sense that moving the file from its folder will still tell information about the site. The only restriction would be that you would not be able to process different years at 1 time.

SSSMMDDC - This is the PACS-SONET Network standard format. The first three characters correspond to a code assigned for each pibal station. The month and date come next. Finally, the hour is also coded.

It is recommended to place the hour in UTC time units, however, all these details are up to the user. This is why it is very important to know your data and your archives in detail before processing them.

3.2.2. Header: File Identifier.

The purpose of the heading is to include as much reference information in the sounding as possible, especially the information that could not be included in the name of the file. All this information will be placed in the first line. A recommended format is:

"Name of the site, complete date and time, ascent rate, type of balloon"

Remember that this line can contain both numbers and letters (i.e. numeric or alpha-numeric characters) therefore you can place any information you want.

3.2.3. Header: Labels.

The labels are placed in the second row. As the data must be organized in columns starting with time, elevation and azimuth, the labels should follow the same order. The language, abbreviations or any of these details do not matter. It is just as a reference.

3.2.4. Data.

The data must be stored in three columns starting with the time, then the elevation angle and finally the azimuth angle. Whenever there is a blank space in the dataset, you just have to leave it blank as CORRIGE is designed to ignore this blank space. This can be viewed in the example at times 5.5 and 7 seconds. Also keep in mind that all the data that requires decimal places must be typed using a dot instead of a comma, since CORRIGE ignores the decimals if a comma is used as a separator.

3.3 Format of the OUTPUT FILE.

CORRIGE creates two output files. Both files are in text format and therefore can be read by any text editor. Both files have the same name as the INPUT file, but will differ in the extensions. One of them will have extension "COR" and the other "WIN".

Figure 3. Example of a WIN file.

The COR file has exactly the same format as the input file. The only difference is that it contains the corrected version of the data. The WIN contains all the wind information in at least two different forms. An example can be found in figure 3.

The first column in the WIN file represents the time in seconds. The second and third columns contain the height of the balloon in meters above ground level (m AGL) and in meters above sea level (m ASL) respectively. The fourth and fifth columns indicate the position of the balloon in meters using as a reference point the origin. The sixth and seventh columns contain the direction and magnitude of the wind respectively. The direction is in degrees using the decimal system and the magnitude is in meters per second. The last two columns contain the zonal and meridional components both in meters per second. The WIN file is the desired output of the program.

When you save the data using CORRIGE's "write" command, the output files do not replace the input files so you end up with three output files per sounding: The DAT, COR and WIN files. This is a useful feature as you may sometimes want to know what corrections, if any, were applied to your sounding file, if that were the case. Corrections using CORRIGE will be thoroughly described in chapter 4.

3.4 Using the program.

The core question: How to use CORRIGE? The program consists in one single and fairly small (170 KB) executable file named "CPP2.EXE". It can be executed on any WINDOWS PC by clicking or double clicking on it. As this file is very small, it is easy to obtain and move between folders or devices, which is very convenient. The program does not run on the Windows graphic environment. This is a relatively old program that runs under the DOS operating system.

3.4.1 Gathering the program and the files in the same folder.

Figure 4. Files and program CPP2.EXE must be in the same folder.

CORRIGE has to be in the same folder as the files you want to process. Therefore, you can copy the "CPP2.EXE" file into the folder where your input data is stored. You will find that it is easier to move or copy the program into the folder where the files are instead of moving all your files onto the program's folder.

3.4.2. Starting CORRIGE

To start the program you typically click or double click on the "CPP2.EXE" object (list item, thumbnail, direct access, icon, etc.). When you do this, the computer screen will turn black and display the screen shown in figure 5. The first thing the program will ask is the station elevation in meters above sea level (m ASL). You have to use the "backspace" key to erase the default value and place the right elevation for your site. The program will first ask for the Station Elevation.

Figure 5 . CORRIGE's environment as soon as you start running.

Figure 6. The second step is introducing the rise rate or ascent rate of the balloon.

After doing this you press ENTER and a new question will appear: The ascent rate of the pilot balloon in meters per second (see figure 6). You should proceed the same way: Use the "backspace" key to erase the default value given and enter the ascent rate. Hit ENTER. After answering these two questions you will be inside the program and ready to start loading your files. Figure 7 illustrates this but note that from now on we will invert the colors of CORRIGE's screen in order to help you save ink if you decide to print this document.

Figure 7. Empty screen ready for you to start working with the files.

3.4.3. Parts of the screen.

The program offers three divverenf views or screen modes: A mode to display the elevation angle, another to display the azimuth angle and a final one to display the wind profile. In the three views, however, the screen layout remains the same.

The screen is divided in three parts. The largest part named as "Sounding Section" in this tutorial, corresponds to the graphic of the entire sounding. This section covers about 70% of the screen and is the big box located to the left of the two small boxes. The smallest two sections appear on the right hand side of the screen. The upper-right section, which will be addressed as the "Command Section", contains the list of commands available for the operation of the program. Finally, the lower-right box, the "Zoom Section", is a window that zooms in the sounding. Sounding Section.

The entire sounding is displayed on the Sounding Section. The first two modes will show the angles and the third mode the wind profile. When the angles are displayed, the x-axis shows the time and the y-axis the angle in degrees. When the wind profile is displayed the x-axis disappears and the y-axis remains but now it shows the heights in m AGL. A description can be found in figure 9.

Figure 8. Parts of the screen.

Figure 9. Sounding section screen modes. The Commands.

The command section will always appear in the right-upper side of the screen regardless of the graphic view. It serves just as a reference and reminder. The commands are simple letters and signs located in the keyboard and you can execute them just by pressing them. The windows contain all the commands needed to use CORRIGE. Table 2 shows a detailed list of the commands.

Letter "L" - Opens a dialog box to load the files.

Letter "W" - Opens a dialog box to write the files.

"Right arrow" - Advances one position. It moves the cursor towards the right when you are in the angle screen and moves it up when you are in the wind profile screen.

"Left arrow" - Retreats one position. It moves the cursor left when you are in the angle screen and moves it down when you are in the wind profile screen.

Letter "R" - Resets the changes whenever you made any corrections.

"Arrow Up" - Corrects the data adding one degree to the angle's current value.

"Arrow Down" - Corrects the data subtracting one degree to the angle's current value.

Letter "C" - Corrects the data making a linear interpolation and using neighboring observations. Not recommended. Should be used as least as possible.

Letter "T" - Probably the most used, switches graphic views of CORRIGE. Goes from the azimuth angle screen onto the elevation angle screen, into the wind profile screen and back into the azimuth angle screen.

Numbers 1-9 - Allow you to switch along different vertical resolutions on the zoom window.

Letter "S" - Opens a dialog box to modify the ascent rate.

Letter "E" - Opens a dialog box to modify the station elevation.

Escape - Opens a dialog box to quit the program.

The most used commands will be the right and left arrows to navigate through the sounding; the up and down arrows to correct errors by adding or subtracting one degree; the command "T" to flip between different screen modes (angles or wind profile); the command "L" to load files and the command "W" to write files. The command "ESC" will also be needed to exit the program. The rest of the commands are not used with the same frequency but are useful and sometimes necessary. The Zoom-in Section.

The axes in the zoom-in section do not have labels, however, they will be the same as the ones in the sounding screen. Whenever CORRIGE is in angle mode, this window gives the user the option to modify the vertical resolution of the scale in to ease the detection of errors. You can do this by pressing any numbers from one to nine. Number one will change the vertical resolution to one degree per mark (the default) resulting on the largest vertical resolution. Number nine, in contrast, results on the lowest vertical resolution displaying nine degrees per mark. Figure 10 shows an example of an error (look for the discontinuity on the curve) in which the use of the higher resolution becomes critical to detect it. Use lower resolutions whenever the slope of the curve is too steep to show several points in the zoom-in window. After reading this tutorial you will learn that to detect errors you must revise at least a couple of neighboring observations to the left and also to the right of the error.

Figure 10. Zoom section.

The zoom section, as mentioned priorly, does the same function when changing into the wind profile mode. In this window, however, both the horizontal and vertical scales of the zoom remain fixed. This zoom, though, will always be good enough as to show you the vertical structure of a section of the profile composed by 9 levels, as indicates the example used as figure 11.

The zoom window in the wind profile screen displays information about wind profile using wind barbs. It also includes information of the wind velocity in knots to the left of the barbs, and the elevation above sea level to the right of the sounding wind barbs. This will aid the user to get accurate data instead of having to estimate it using the barbs.

The wind barbs are graphed in knots and following the north hemisphere format which implies that for an easterly flow the velocity barb should be underneath the direction barb. This does not affect the data, it is just a convention.

Figure 11. Zoom section in the wind profile window.

3.4.4. How to interpret wind barbs.

A wind barb is a symbol that transmits information about the wind velocity and wind direction in an easy way. It was designed to ease the interpretation of weather maps and now it is very useful when analyzing vertical wind profiles as well. The tip of the barb, which sometimes is a circle, indicates the location of the station or the place where the wind is being measured.

The long line that departs from the circle represents the wind direction. A barb that departs towards the north (up) indicates that the wind is coming from the north. A barb that departs towards the east (right) indicates a wind coming from the east, and so on.

Figure 12. Zoom section in the wind profile window.

The small line that departs from the long one indicates the wind speed. A short line indicates 5 knots and a long line 10 knots. A triangle indicates 50 knots. Whenever this line is absent the wind is between 0 and 2 knots. When there is no wind even the long line disappears and a secondary circle is drawn around the station circle. Figure 12 displays some examples regarding this topic.

3.4.5. Flipping screens.

As soon as we load a file, the azimuth angle profile screen APPEARS. In the graphic, the x-axis is the time in minutes and the y-axis is the angle in degrees. To flip into the elevation angle profile screen you only need to press the letter "T" on the keyboard. To further flip into the wind profile screen you need to do it again. Pressing "T" for the third time will lead you back to the azimuth angle screen. Flipping the screens is necessary to correct the data. See figure 13.

Figure 13. Flipping screens.

3.4.6. Navigating along the sounding.

To navigate along the sounding you need the right and left arrows. These keys allow you to advance or retreat in the angle windows and to go up or down in the wind profile windows. This is necessary because you often want to zoom in a specific part of the sounding, so you need to position the cursor in the section of interest. This is also essential as many soundings need at least minor corrections and you need to place the cursor in every value that needs to be corrected, as will be described in the next section.

3.4.7. Commands used to correct the data.

Whenever you identified an error that can be corrected using CORRIGE, which will be treated in the next chapter, you have to first place the cursor over the observation and then correct it. To place the cursor over the observation you can navigate using the left and right arrows. After you do this you can correct the data by hitting the up or down arrows, which will add or subtract an amount of 1 degree per hit.

Figure 14. Example of how to correct the data.

Another method to correct the data is using the command "C", which performs a linear interpolation using the surrounding observations. This second method is not recommended unless it becomes really necessary. Most of the errors can be corrected using the first method, especially considering that most of them will be integer number differences.

3.4.8. Writing the new data.

To write the corrected data you only need to press the letter "W" on the keyboard. Inmediately the program will ask you the question "Filename to savir" and displaying the name of the file you just opened. You are free to press ENTER because CORRIGE will not erase or modify your input file. It will only create the two output files which have the same name but different extensions: COR and WIN. If you regret saving the data you can press "Esc" and the window will close without saving your data.

3.4.9. Exiting CORRIGE.

CORRIGE can be exited using the command "Escape" or "Esc" located in the left and upper part of the keyboard. Whenever you press the program will ask you the question "You wanna salir?" and to exit you just need to press the letter "y" that corresponds to "yes". By pressing "n" the program brings you back to the screen you were working on.

Chapter 4. Errors and how to correct them.

Chapter 4 will cover the subject of errors that occur during pilot balloon observations. We will review the importance of knowing the types of errors, then go through observational and processing errors, then about how to detect the errors using CORRIGE and then how to correct specific errors. Finally we will go through some examples that may help you understand the process of correcting errors with CORRIGE.

4.1 Importance of knowing all sorts of possible errors.

The process of gathering research data is a long one, unfortunately, and it is exposed to different sources of error. Whenever the dataset is finally archived in a computer the quality may have been reduced by a large sum of errors of different kinds. To make the best out of the dataset you will need to clean it by going through quality control procedures. To do this it will be therefore important to know all sources of error, understand which ones can be corrected, learn how to correct them, and furthermore, correct them.

4.2 Observational errors

This is the broadest group of possible errors that may take place during the process of gathering pilot balloon data. They occur during the process of observation. Observational errors tend to be related mainly to an bad reading mistaken by the observer, but also due to other causes such as a lost of adjustment in the optical theodolite, a lack of precision, and mistaken setting of the equipment. This section of the tutorial will discuss the most common types of observational errors starting with the most frequent ones. Even though some examples will be included, most of the examples will be presented in section 4.6 of this tutorial.

4.2.1. Angle read off by 1°

This is probably the most frequent error found in pilot balloon observations. It occurs when the observer reads an angle higher or lower than the correct one in 1°. It will tend to happen particularly when the decimals lay between ~.8 and .0, especially if the calibrated drum is not well aligned (it should read exactly zero when the mark on the azimuth scale corresponds exactly with a degree graduation on this scale). The observer may get confused when reading the decimals, and commit a 1 degree error. This error will be obvious within CORRIGE and can be easily corrected. An example can be observed in figure 15.

Figure 15. Angle read off by 1°.

4.2.2. Scale read in reversed order

This error is also common among observers with little experience and it is produced when the observer gets confused with the direction of the scales. This error typically produces readings, which are off by 2°, 4°, 6°, 8°, etc. Sometimes the error can be as high as 18°, but this is does not occur very often.

The confusion occurs because of two facts. The first one is that the elevation angle scale increases towards the right (as any conventional scale in the western hemisphere), whereas the azimuth angle scale increases towards the left, this is, rolls in inverse order. A second fact is that sometimes when the observer reads the angle scale, he/she may find many small degree marks surrounding a simple numerical value, which makes it harder to read than other situations when two numerical values are visible. This may confuse him/her, and since the readings have to be carried out quickly, he/she might unwillingly reverse the scale. Figure 16 illustrates a sounding with a 10 degree error, which may have been caused by this problem.

Some illustrative examples include reading 41 instead of 39, 231.5 instead of 228.5 or 347 instead of 353. If you notice, the correct value is a mirror of the error with respect to the closest product of 10. Analyzing the same examples respectively, the closest product of 10° will be 40° for the first case, 230° for the second case and 350° for the last one. See figure 17.

4.2.3. Balloon crossing through the center of the sky

This error can be common in some locations where persistent wind circulations may cause the balloon to pass near the center of the sky, this is, right above the theodolite. During the observation the proper thing to do is to rotate the theodolite about 180° in order to avoid the elevation angle to become larger than 90°, which would be unrealistic. Sometimes when this situation occurs, however, the observer does not have enough time to rotate the theodolite 180° and he/she may remain following the balloon with the elevation angle higher than 90°. Figures can be found in the example section.

CORRIGE does not accept elevation angles larger than 90°. Any values larger than 90 degrees will be converted by the program to 90.0. If this is the case the program will not plot the sounding correctly. CORRIGE can not help with this type of error and one way to correct it involves the use of a spread sheet or any other program as you need to modify both the elevation and the azimuth angles using formulas.

The procedure to correct this error follows. First you need to depict all the sector of the sounding that has elevation angles equal or larger than 90°. Then you must apply the following equation to the elevation angles:

Final elevation = 180° - Actual elevation

And the following equation to the corresponding azimuth angles:

New azimuth = 180° - Actual azimuth

If the value of any new azimuth angle equals or exceeds 360° you must apply only to those azimuth angles the following relationship:

Final azimuth = Actual Azimuth - 360°

When the file is corrected you should then run CORRIGE in order to correct other possible errors.

4.3 Processing errors.

Processing errors occur when dictating or typing the data. They are less common than the observational errors and all of them can be corrected using CORRIGE, unlike the observational errors, which in some cases will not be correctable using CORRIGE.

4.3.1. Ten degree errors

This is a fairly common error, but it is easy to correct within CORRIGE. Mappens more frequently as a processing error but it can also occur as an observation error. It basically happens when the person typing or digitizing the data could not hear or read well or read well the tens of the angle. The same applies to one, two or even three hundred degree errors.

4.4 Finding errors with CORRIGE.

Input files you process with CORRIGE for the first time will most probably contain both observing and processing errors. There are two ways to start looking for errors with CORRIGE. One of them is to start the detection using the angle curves and the other is start looking at the wind profiles. It is easier to start with the angles and then get some help from the wind profiles for reasons we will describe next. We will also discuss in this section about some criteria proven useful to correct the data.

4.4.1. Detecting errors with the angle profiles.

The easiest way to start depicting errors is using the elevation and azimuth curves. We recommend, however, start using the wind profiles instead as there are some criteria developed for this and the results cab be more reliable. Most of the angle curves tend to be smooth, which eases the detection of errors. Figure 16 is a clear example of this. There is an obvious error in about minute 7 (see arrow), when the azimuth angle profile jumps from a value of about 140° to an angle of about 150° and back to 140°. This seems to be a 10° error. This type of error is very easy to recognize even without zooming on it. In most other cases zooming in on the error becomes necessary.

Figure 16. A 10-degree error example.

Many errors are smaller in magnitude and the zoom-in feature will be very useful to depict them. It is the case of the one degree errors which are relatively common. Sometimes, though, more than one one-degree error may occur very close to each other and complicate things a little. If this is the case, the recommendation is to use the wind profile as a guidance to decide which observations are erroneous and which ones are correct. A good sounding will produce a wind profile with smooth changes in wind direction and speed. Also, values of vertical shear of ~50kt per km or higher should be looked into as possible errors. Only in regions where jets or other wind-related phenomena occur, sharp changes in the wind profile may happen. If this is the case, though, the new wind speed should be consistent in at least 3 observations. Abrupt changes that occur in one observation and disappear in the next one can be taken as errors.

Some legitimate situations in which the profile may appear too sharp are the following. One common situation is when the balloon crosses the north, this is, when the azimuth angle changes from 359° to 0°. The only way for CORRIGE to graph this change is to generate a sharp jump in the azimuth angle that at first seems to be an error. With practice you will find out that this situation is not hard to solve. A 360° jump on the screen will immediately tell you that the jump is justified as long as the rest of the sounding is consistent with the jump. Figure 17 illustrates a situation when this occurred. In this example the jump is a valid situation. Just visualize the first part of the sounding being placed over the 360° mark and the sounding will become smooth.

Figure 17. The balloon crossing the north is reflected as a jump in CORRIGE's azimuth angle profile.

Another realistic situation may cause the angle profiles to look sharp is when the balloon crosses close to the center of the sky. When this happens the elevation angle reaches a maximum, and the azimuth changes very quickly sometimes veering or backing almost 180°. This will not generate jumps as sharp as in the prior case but may generate large and continuous changes in the azimuth angle accompanied by a maximum in the elevation angle that must coincide with the sharpest change in the azimuth. The characteristic signature of this case is that the elevation angle must be high, generally higher than 70 degrees.

A final situation that may be misleading in CORRIGE is when there are sharp wind direction and/or wind speed. These are frequently associated to low-level jets, strong diurnal breezes opposed to the synoptic flow and other particular situations as was mentioned before. The rule of thumb is to check if the change is consistent along the sounding, this is, if the wind speed is consistently higher (or lower) in at least three consecutive levels (readings).

After gathering some practice you will be able to notice when abrupt changes correspond to an error and when not.

4.4.2. Using the wind profile to detect the errors.

Once in a while you may be fooled by the angle profiles. This can happen for example when an error occurs near a change in the slope of the curve or when the elevation angle jumps from a value close to 360 to a value close to zero or viceversa (i.e. the pilot balloon crosses through the north). While the user may be thinking that the jump and the nearby observations may be correct, sometimes there may be hidden errors that are only visible in the wind profile screen. In other cases both the elevation angle profile and the azimuth angle profile may appear smooth enough as to be correct, however some errors may be present that may be more visible when analyzing the wind profile. Even if you find yourself more comfortable by starting with the angle profiles, you should always go through the wind profile as it is the final output, and may show features that the angle profiles will not.

In some situations it may be easier to identify an error through the wind profile screen than through the angle screens. Some useful criteria to identify errors in the wind profile have arisen from knowledge in meteorology. Developing sharp deterministic criteria for the identification of errors, though, is a hard task. Even when applying established criteria, the correction of errors should always be performed carefully. There are cases in which the errors are so small that they become hard to depict, particularly when the scale of the natural variability of the atmospheric flow has an order close to the order of magnitude of the errors.

The criteria used to detect errors in the PACS-SONET pilot balloon data were the following. An error is assumed to be present when either the wind component "u" or "v" changes at a rate of 50 m/s in 1 km, or more. Another criteria more applicable to CORRIGE is to check for possible errors whenever there is a change of 5 knots in the wind speed between one level and the next. An error will almost always exist when the change of speed between two consecutive levels is in the order of 10 knots. It is recommended to use some guidance from the wind direction as well. Strange changes in the wind direction may be related to errors.

Figure 18. Evident errors in the wind profile.

Figure 18 shows some evident errors on the wind profile. In this case the change is of 9 kt in 217 meters, then 15 kt in the next 216 meters, then 21 kt in the next 217-meter layer and finally 14 kt from 7008 to 7225 m ASL. There are many indicators here that tell you that an error is present. Firstly, there are too many abrupt changes in a very small portion of the sounding. In fact, there is an abrupt change in every level through four consecutive levels. Secondly, the magnitude of the changes is in the order of 10 knots and sometimes even 20 knots. The last indicator is that there is also a sharp change in the wind direction. In this case there are probably two errors in the angle data since one error in the angles creates two bad data points in the wind profile. This is due to the particular design of the program and also due to the fact that each angle value is used twice in determining the horizontal displacement of the balloon.

Other criteria that should be considered is that large changes in wind direction can occur, but only when the wind is very weak, this is, close to calm. If you see that the wind direction in your profile is changing significantly in a certain layer and that calls your attention, the first thing you should check is the wind speed. If you find that winds are weaker than 3 knots your data may be correct. If your wind speed, though, is of about 5 kt or larger, you should definitely seek for errors in the angle profiles.


4.4.3. Evident errors that cannot be corrected using CORRIGE .

There are some evident errors that cannot be corrected using CORRIGE. Some of them are listed as follows .

1. When the elevation angle is larger than 90 degrees. This errors shows up as a flat section in the angle curve in color yellow. This error, described priorly in this document, occurs when the balloon crosses the center of the sky and does not give enough time to the observer to turn the theodolite 180 degrees. The way to correct this error is by using a spread sheet or any other program that can apply the equations described in section 4.2.3 .

Elevation angles larger than 90 degrees can also occur when the elevation angle column is flipped with the azimuth angle column. Before continuing we should flip the order of the columns using a spread sheet or a text editor .

2. When commas are used instead of dots, the angle curves take the shape of stairs. This happens because CORRIGE ignores the decimals and all the values are assumed to be integers. The solution is to change the commas for dots with a spread sheet or text editor before continuing with CORRIGE .

3. Another error occurs when the azimuth angle is larger than 360 degrees. CORRIGE does nor accept values equal or larger than 360 degrees. If this occurs, the program obtains a fake value by interpolation of neighboring values. The new value will appear as a yellow dot. This error can be corrected using CORRIGE, but it is recommended to be corrected in the DAT file.

4. In some occasions error in the time column might occur. In some soundings a value of “05” was digitized instead of a value of 0.5. Even though this error is very evident in CORRIGE it can not be corrected with the program . Few people detect this error and if they do they do not know how to correct it .

4.4.4. Subtle errors .

This section discusses the errors that are the hardest to detect. These errors can not be corrected using CORRIGE but what is worse is that they can not be detected using CORRIGE either. The most common errors are described as follows .

1. The most common error occurs when the heading has less than two lines. In this case CORRIGE does not read the first observation or the first two observations. In this case the time in the WIN file starts in minute 1.0 or 1.5 .

2. Another frequent error occurs when the time is digitized in sexagesimal format (mm:ss). This error can be easily identified by carefully observing the sounding section, not the zoom section. Most of the times this error will be almost undetectable. When this happens CORRIGE ignores the seconds and the WIN file results in values of 0.0, 1.0, 1.0, 2.0, 2.0, etc in the time column .

4.5. Examples.

In this section we will present a short and very diverse set of examples about how to correct some errors. Please notice that we will discuss the correction of specific errors instead of going though the correction of the entire profile.

4.5.1. Obvious errors.

Obvious errors can be considered to be the several types of degree errors such as 1, 10, 100, 200 and 300 degree errors. These are easy to detect with CORRIGE and also easy to correct. The most common way to proceed is to detect obvious errors in the azimuth angle curve and correct them. The same can be done using the elevation angle curve. At a first glance errors are not obvious so we use zoom-in window to find them. We notice the presence of an error located near observation #7 (figure 19). It is a 1-degree error. Small degree errors may not be obvious unless you use the zoom-in window to detect them. As we are dealing with an obvious error we can correct it and proceed to revise the elevation angle curve. To correct them we only need to subtract 1 degree using the "down arrow" key. Figure 20 shows the corrected angle.

Figure 19. 1-degree error as displayed by the zoom-in window.


Figure 20. The error in the azimuth angle profile is corrected using the down arrow.


After correcting all the obvious errors in the azimuth angle curve we proceed to the elevation angle curve. We find some obvious errors in observations 7 and 8 as shown in the zoom window of figure 21. Observation #7 needs to be added 1 degree and observation #8 needs to be subtracted 1 degree.

Figure 21. Errors in the elevation angle curves.

Figure 22 shows the elevation angle curve after the corrections. Figure 23 shows the wind profile before the corrections and figure 24 after the corrections. When we complete the correction of all the obvious angles we can start correcting the harder ones.

Figure 22. Now we smooth the errors in the elevation angle profile.


Figure 23. Wind profile. The cursor is placed in observation #7.

Figure 24. This time the corrections result on minor changes in the wind profile.

In this case the impact of the corrections have been small. The higher the location of the errors the larger the impact they will have on the sounding.

Example 2: One degree error.

Figure 25 shows a one degree error in the elevation wind profile. This is another simple example. After loading the file we did not find any suspicious observation on the azimuth angle profile, therefore, we switched into the elevation angle profile. The way to correct this error is to add 1 degree.

Figure 25. Elevation angle curve showing a 1-degree error.

Figure 26. Azimuth angle profile.

In this case the azimuth angle curve (figure 26) shows no obvious errors in the observation that corresponds to the error in the elevation angle curve. Figure 27 shows the wind profiles before and after the correction. The impact of this one single correction is small but noticeable. There is a change in direction and wind speed from a northwesterly wind at 4 knots to a west-northwesterly at 7 knots.

Figure 27. Wind profile before correction (A) and after correction (B)..

Example 3: Two degree error.

Figure 28 shows a 11-degree error located at minute 23. It is an obvious error and this one can be detected even without zooming-in on it.

Figure 28. Azimuth angle screen.

Figure 29 shows the error as viewed in the zoom-in window using different vertical resolutions. When large errors like this occur it may be easier to use smaller vertical resolutions when zooming-in. In this case the 2-degree per mark vertical resolutions better displays the error.

Figure 29. Playing with the vertical scale of the zoom screen.

The impact of this error is large and can be easily detected in the wind profile. Figure 30 shows the elevation angle curve in the left panel and the wind profile curve in the right panel. As you can see, there was no obvious error in the elevation angle curve at the observation that corresponds to the error in the azimuth angle curve. The large impact can be attributed to the 11-degree error in the azimuth angle profile.

Figure 30. Always revise elevation angle profile and the wind profile.

Example 4: 100-degree error.

This error is pretty obvious. In this case the observer(s) was(were) distracted and committed the same error in two consecutive observations. It is still an obvious error because the jump was of about 100°, a round number, and after two observations the curve jumped again to follow the initial curve's tendency. The error is even more obvious when analyzing the wind profile. Figure 31 includes the azimuth angle curve, the elevation angle curve and the wind profile. The elevation angle curve was displayed to show that the errors in the wind profile were caused solely by the errors in the azimuth angle profile.

Figure 31. Effects of a 100° error.

Figure 32 shows the corrected errors in the azimuth angle curve and the impact this has in the wind profile.

Figure 32. Correction of a 100° error.

Example 5: Correcting all the obvious errors in an entire profile.

This profile has several obvious errors which can be easily corrected. Figure 33 shows the obvious errors in the elevation angle curve and in the azimuth angle curve and their corrections.

Figure 33. Correction of several obvious errors.

Figure 34 illustrates the wind profile with errors and figure 35 the same profile after the corrections.

Figure 34. Wind profile after initial correction.

Figure 35. Wind profile after all corrections.

4.5.5. Balloon crossing the north.

A peculiar situation occurs when the balloon crosses the north, as described previously in this document. This results in a large jump from values just below 360 degrees to values just above 0 degrees. This jump may initially seem to be an obvious error but it is not. When the jump takes place only once and the curves are smooth in both sides of it, the jump will tend to be valid.

To make sure the jump is valid it is recommended to revise the elevation angle curve and the wind profile. Figure 33 shows an example of a correct sounding. There is large jump in the azimuth angle but both the elevation angle and the wind profile look coherent. Figure 34 also shows a good example of this situation.

Figure 35. Balloon crossing the north.

Figure 36. Balloon crossing the north, another example.

Example 2: Error close to valid jump.

Figure 38 shows an azimuth angle curve. In this case the balloon has crossed the north as suggested by the large jump from near zero to near 340 degrees. There is another jump, however, right after the 340-degree observation. For people with not much practice it may seem hard to detect where the error is, or how to correct it.


Figure 38. What is wrong in this azimuth angle curve?

In this case it is recommended to seek guidance in the wind profile. Before doing this, though, we check the elevation angle curve for errors. Figure 39 shows this curve.

Figure 39. Elevation angle seems fine.

In this case the elevation angle curve appeared to be correct, so any clear errors in the wind profile will be related to the error in the azimuth angle. Figure 40 shows the wind profile with a clear error near 3001 m ASL.

Figure 40. Initial wind profile.

If you have experience with CORRIGE, you will find that there is a 50-degree error in the observation right after the jump. If you are not sure about the magnitude of the error, you can make an initial correction and revise the results using the wind profile until the winds are smooth in direction and speed. Figure 41 displays the corrections done to this profile. The solution was to add 50 degrees into the 230 degree observation.

Figure 41. Profiles before and after the correction.

This is a good example of a situation in which utilizing the wind profile may greatly ease the depiction of errors. You should always revise the wind profile before making any corrections as some sharp features in the angle profiles may be correct.

Chapter 5. Problems and Solutions

5.1. The program is not showing the data when I open the file.

1. Check if the decimals are separated by dots or commas. They should be separated by dots.
2. Check if the file is being opened by any other program such as EXCEL, NOTEPAD, or WORDPAD. Close the file if this is the case and rerun CORRIGE.
3. Close the whole program that was opening the file and rerun CORRIGE again.
4. Check you're opening the right file. Has the file you want been placed in the folder you are running CORRIGE? Or, has CORRIGE been moved to the folder where the files you want to process are?

5.2. I cannot load the data to work with it.

1. Make sure all your files are in the same folder than the program CPP2.EXE before you start running it.
2. Check if the file is being used by any other program. If it is not, try closing all the other programs and rerun CPP2.EXE.
3. Edit one of your data files using NOTEPAD and try to save it that way. Then rerun the program
4. Make sure your files have 8 characters.

5.3. I need to go back to the WINDOWS mode without exiting.

1. Press the keys "Alt" and "Esc" at the same time and CORRIGE will become another window in the taskbar.

Chapter 6. Quick CORRIGE summary.

1. Download the CPP2.EXE program through the following address:
2. Locate this program in the same folder where your input files are.
3. Double click the icon, object file or direct access.
4. Type the altitude of your site.
5. Type the ascent rate used for your sounding.
6. Load a file using the letter “L”, selecting the file and then pressing ENTER.
7. Switch screens using the command “T” and detect errors in the profiles, always seeking guidance through the wind profile, and using the zoom-in windows.
8. Correct the errors by placing the cursor over the bad observation and adding or subtracting as many degrees as necessary with the up or down arrows respectively.
9. Save the corrections using the command “W”.
10. Exit the program by pressing “Esc”.