__color__ ticket summary component milestone type owner priority created status _changetime _description _reporter 1 2 Create sodar package sodar sodar-1.0 task cbc blocker 1181572439 closed 1185154419 Create a sodar package. No functionality. Just a blank slate. cbc 3 3 Add test framework sodar sodar-1.0 enhancement cbc * major 1181589537 assigned 1181589935 Add a unittest based framework. cbc 3 5 Add class to split daily file into samples sodar sodar-1.0 task cbc major 1184015947 closed 1184018784 Ingest a daily file as a string and create multiple objects representing the fifteen minute samples. cbc 3 6 Add classes to split daily file samples into headers and bodies sodar sodar-1.0 task cbc major 1184087997 closed 1185154815 The __init__ method of each sodar.Data object should be augmented to generate instances of two new objects: Header and Body, representing the respective sections of each daily file sample. cbc 3 7 Add deep copy funtionality to Data class sodar sodar-1.0 task cbc major 1187622938 closed 1187636429 Requires __deepcopy__ in Body, Header, and Sample classes. cbc 3 8 Add string to float and NaN conversion to Data class sodar sodar-1.0 task cbc major 1187623091 closed 1187636451 Create structures to put data in numeric format and correct for invalid values. cbc 3 9 Compute sample time interval sodar sodar-1.0 task cbc major 1187623798 closed 1187642485 Difference adjacent sample times. Accumulate discreet difference totals. Take vote of most likely sample time from totals. cbc 3 10 Correct for missing samples sodar sodar-1.0 task cbc * major 1187623904 assigned 1187645854 Fill in Data copy with !NaNs for missing samples. cbc 3 11 Compute minimum altitude sodar sodar-1.0 task cbc major 1187624015 closed 1187651989 Accumulate totals of discreet minimum altitude across all samples. Take vote of most likely min altitude from totals. cbc 3 12 Compute maximum overall altitude sodar sodar-1.0 task cbc major 1187624163 closed 1187887607 Compute maximum altitude across all samples by accumulating stats. cbc 3 13 Compute number of altitudes sodar sodar-1.0 task cbc major 1187624391 closed 1190140646 Accumulate number of altitudes across all samples and vote on most popular. cbc 3 14 Compute altitude interval sodar sodar-1.0 task cbc major 1187624475 closed 1190141432 Determine altitude interval from min alt, max alt, and number of alts. cbc 3 15 Correct for missing altitudes sodar sodar-1.0 task cbc * major 1187624603 assigned 1187624609 Fix up data copies for missing altitudes so that arrays are orthogonal. cbc 3 16 Mark the maximum altitude with good data for each sample sodar sodar-1.0 task cbc * major 1187625199 assigned 1187625214 ...and find the minimum of those maximums across all samples. cbc 3 17 Mark the minimum altitude with good data for each sample sodar sodar-1.0 task cbc * major 1187625334 assigned 1187625351 ...and find maximum of those minimums across all samples. cbc 3 18 Convert directions to radian sodar sodar-1.0 task cbc major 1187625470 closed 1190141466 Original direction is in degrees CW from North. cbc 3 19 Construct colorspec for c matrix sodar sodar-1.0 task cbc * major 1187625574 assigned 1187625706 Convert speed to matplotlib colorspec. cbc 3 20 Compute u, v arrays sodar sodar-1.0 task cbc major 1187625663 closed 1190146265 Using speed and direction normalized to one. cbc 3 21 Move array normalization methods to new ProcessedData class sodar sodar-1.0 task cbc major 1189007282 closed 1189034043 Create a !ProcessedData class which takes a Data instance as an argument for initialization. Rename the Data class to !RawData. Move methods associated with normalizing data samples and creating an array suitable for plotting to the !ProcessedData class. Instances of !ProcessedData will be fed to plotting methods rather than instances of the !RawData class. This preserves the easy semantics for accessing raw data in !RawData instances and separates them from the semantics for manipulating the processed data attributes of the !ProcessedData class. The !ProcessedData class also has the added constraint of requiring an array library which the !RawData class doesn't need. cbc 3 22 Add ArrayData class sodar sodar-1.0 task cbc major 1190140405 closed 1190141494 Rename !ProcessedData as !FormattedData. Factor formattedData.py to create a new class !ArrayData in its own module. cbc 4 4 Add setup.py sodar sodar-1.0 enhancement cbc minor 1181589614 closed 1206453733 Add a distutils based installation mechanism. cbc