Each of the .mat files I put on the FTP server has a single structure in it:
DB =
var: 'denhp'
LT: [1x24 double]
matlabd: [140520x1 double]
DATA: [140520x24 double]
ERRORS: [140520x24 double]
DB.var provides the ascii name of the variable in question
denhp - hot proton density, #/cm^3 (n_{hp} in the paper)
denhe - hot electron density, #/cm^3 (n_{he} in the paper)
thp - hot proton temperature, eV (T_{hp} in the paper)
the - hot electron temperature, eV (T_{he} in the paper)
DB.LT gives the local time _centers_ of the 24 1-hour LT bins (1/2-hour centers)
DB.matlabd gives the matlab date number for the _start_ of each 1-hour UT bin (integer hour starts).
So, there's a philosophical inconsistency between DB.LT providing LT bin centers and DB.matlabd providing UT bin starts. Sorry about that.
DB.DATA gives the reanalysis estimate of the quantity in question, with the row number giving the time, and the column number giving the LT
So, DB.DATA(i,j) was taken at time DB.matlabd(i) an local time DB.LT(j)
DB.ERRORS gives the standard error of the reanalysis estimate for each corresponding entry in DATA. For actual measurements, DB.ERROR==0.
Missing values are flagged with NaN. If NaN is a problem for CDFs, then -1 or -1E+10 or -1E+30 or something like that (i.e., negative), will do just fine.
There should be no problem converting the doubles to floats, as long as there's a notion of a "NaN" in the floats.
I might be able to figure out how to turn these into CDFs in matlab myself, but I'd sure like to see an example file you've used to convert a .mat file into a CDF. If you do write any matlab code to do this conversion, I'd love to get it.
Thanks,
-paul