Changeset 3342


Ignore:
Timestamp:
08/02/08 22:03:38 (12 years ago)
Author:
astephen
Message:
 
Location:
nappy/trunk/nappy
Files:
1 deleted
2 edited
1 copied

Legend:

Unmodified
Added
Removed
  • nappy/trunk/nappy/Plans for re-factoring 2008.txt

    r3334 r3342  
    11= Changes needed to make Nappy fit for purpose = 
    2  
    32 
    43 * Need error checking throughout - making it more robust but also checking on read will make Nappy a useful NASA Ames checker replacement. 
     
    76 
    87 * Need to make an egg of it, but in the meantime we also need it installed as: 
     8     
     9 * GET REST FROM WIKI! 
    910 
    10    * nappy-0.2.3 
    11      * nappy 
    12      * bin 
    13      * nappy/nc_interface 
    14      * nappy/cdms_utils/ 
    15      * nappy/utils 
    16      * nappy/na_file 
    17      * nappy/contrib/aircraft 
    18      
     11------------------- 
     12!NAPpy stands for NASA Ames Processing in Python. It is a BADC tool that we use for 
    1913 
    20  * GET REST FROM WIKI! 
     14converting NASA Ames format to NetCDF (and vice versa). Since we intend to base the 
     15 
     16UKCIP08 output formats on NASA Ames and we are working in python it is sensible for us 
     17 
     18to extend !NAPpy to do the conversion process. 
     19 
     20The definition task will involve liaison with the BADC team members working on the data 
     21 
     22formats tasks. We need to decide what is required in terms of: 
     23 
     24    * actual formats 
     25    * mappings to/from NetCDF 
     26    * mapping to/from other formats (if required).  
     27 
     28    AS and CK have been analysing the required changes to make Nappy suitable for automated conversion of NetCDF-CF in DCIP to NASA Ames / CSV variant. 
     29 
     30        Here is an initial list of issues 
     31 
     32    *Put in the option to order variables explicitly, rather than relying on nasa_ames_var_number attributes. 
     33 
     34    *Support for 2110 – NX for the quickest changing IV needs to be converted to an auxiliary variable which does not fit nicely into the structure. In principle the second independent variable length changes at each first independent variable value but we may need it fixed. 
     35 
     36    * Refactoring to make it clearer and functions shorter but not too short. 
     37    * Add an option for the learning column. 
     38    * Proper use of FFI selection. 
     39    * In cdms2na.py, stopping filling an axis once the start and increment are known may not be enough. May need to populate all of the axis. 
     40    * Column headings for Excel users, this will clash with the current #End of normal comments# lines. 
     41    * Is it still right that the 4010 class is the same as 2010? 
     42    * Does comma separation option work correctly – any consequences for RDATE and DATE which retains some space separation? 
     43    * float rounding in nappy to get difference between independent variable values - and degree of accuracy (8.3f etc) 
     44    * cdms2na() needs argument "variable_order" that is a list of the order you want them to appear in 2110. 
     45    * Need sensible handling of rotated grid data where found (might be wrapper outside of nappy 
     46    * FFI 2110 is best for 2D columns for Excel etc. - Nappy must support this  
    2147 
    2248 
     
    2753localRules/aircraft.py - Need to consider how this can be a sub-class of Cdms2NA so that we push all the odd code into separate modules. Need to encapstulate the differences into one or two methods that are small and can be overridden. 
    2854 
    29 ====== 
    30 bin/scanFAAM.py - put in contrib 
    31  
    32 ====== 
    33  
    34 version.py - put in config file. 
    35  
    36 ====== 
    37  
    38 general.py --> call it utils/xxxxx.py 
    39  
    40 textParser --> utils/text_parser.py 
    41  
    42 naError.py --> na_error/na_error.py 
    43  
    44 naCore.py --> na_file/na_core.py 
    45  
    46 listManipulator -_> utils/list_manipulator.py 
    47  
    48 cdmsMap.py --> put in config file given simplicity 
    49  
    50 Need utils/parse_config.py 
     55 * dump all aircraft stuff in  an unsupported dir without refactoring in. 
    5156 
    5257====== 
  • nappy/trunk/nappy/nc_interface/cdms_to_na.py

    r3329 r3342  
    4242arrayToList = nappy.utils.list_manipulator.arrayToList 
    4343listOfListsCreator = nappy.utils.list_manipulator.listOfListsCreator 
    44  
    45  
    46 def isAuxAndVar(avar, var): 
    47     """ 
    48     Compares two cdms variables and returns true if the first dimension of the 
    49     main variable is the only dimension the auxiliary variable is defined against. 
    50     """ 
    51     if len(avar.shape)>1: 
    52         return 0 
    53     auxax=avar.getAxis(0) 
    54     varax=var.getAxis(0) 
    55     return compareAxes(auxax, varax) 
    56  
    57  
    5844getBestName = nappy.cdms_utils.var_utils.getBestName 
    5945getMissingValue = nappy.cdms_utils.var_utils.getMissingValue 
    6046flatten2DTimeAxis = nappy.contrib.aircraft.aircraft_utils.flatten2DTimeAxis 
    6147modifyNADictCopy = nappy.utils.common_utils.modifyNADictCopy 
    62  
    63  
    64  
    65 GOT HERE GOT HERE GOT HERE GOT HERE 
    6648 
    6749 
Note: See TracChangeset for help on using the changeset viewer.