Wind profile program

Output from wind profile program

There are two formats of output available from the wind profile program: CSV, which can be loaded into Microsoft Excel; and netCDF. The logical parameter lCsv found in InputVariables.F90 needs to be set to TRUE to produce a CSV output file, the logical parameter lNetcdf, also found in InputVariables.F90, needs to be set to TRUE to produce a netCDF output file. Either lCsv or lNetcdf or both must be set to TRUE for the code to run.

The desired longitude (<longitude>), latitude (<latitude>), height (<height>) the start date (<startDate>) and the end date (<endDate>) are used in the naming conventions for both types of files which are of the form,

where <extension> is `.csv' for the CSV format and `.nc' for the netCDF format.

CSV format

CSV is an ASCII format that can loaded into Microsoft Excel. It is just columns of data separated by commas with each line representing one time measurement. The columns in this file are:

  • Date: the date in the form YYYY-MM-DD HH:MM, e.g. 1993-05-09 04:30
  • Decimal day since 1950: this is the number of days since the start of 1950. Midday on 1 Jan 1950 would have a decimal date of 0.5.
  • Speed: the wind speed in m/s.
  • Angle: the angle in degrees. A Northward wind is 0 degrees and the other angles are taken in a clockwise direction.

netCDF format

The advantage of netCDF over the CSV file is that it's about sixth the size and there are lots of routines to read in netCDF data in most compiler and graphical languages, such as C++, FORTRAN, IDL and Matlab (although Matlab requires the netCDF toolbox). It seems to be increasingly the data format of choice, and I'd recommend using this file format unless you want to use Microsoft Excel.

The speed and the angle in the netCDF file are two dimensional arrays with the fastest changing dimension being hours and the slowest being days. In FORTRAN they are referenced as (hours, days) where hours is of size 24 (in C++ they are referenced as (days, hours)). The days are counted from the start of our starting year, where the starting year is given in the "units" attribute for days, e.g.

        int days(days) ;
                days:units = "days since 1979-1-1 0:0:0" ;
Note that because it is days since a particular date, the 1st January 1979 in this case is day 0 and day 1 is the 2nd January 1979. This follows the CF conventions.

Things to do now


Page navigation