Changeset 2091


Ignore:
Timestamp:
01/02/07 10:43:07 (12 years ago)
Author:
domlowe
Message:

making coordinate reference systems and netcdf output CF compliant

Location:
TI02-CSML/trunk/csml
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • TI02-CSML/trunk/csml/API/genSubset.py

    r2083 r2091  
    66 
    77 
    8 def _subsetDomain(time,times, domain,**kwargs): 
     8def _subsetDomain(timeaxis,times, domain,**kwargs): 
    99    '''takes the domain and returns a subset according to the keyword selection criteria 
    1010    time = name of time dimension 
     
    1717        straxisValues='' 
    1818        if key in kwargs: 
    19             if key ==time: 
     19            if key ==timeaxis: 
    2020                straxisValues=strTimes 
    2121                arraySize=len(strTimes.split()) 
     
    4444                                    
    4545        subsetDomain[key]=straxisValues 
    46         if key != time: 
     46        if key != timeaxis: 
    4747            arraySize=len(subsetDomain[key].split(',')) 
    4848        else: 
  • TI02-CSML/trunk/csml/API/ops_GridSeriesFeature.py

    r2084 r2091  
    136136        time=csml.API.ops_AbstractFeature.__getCDtime(time).torel(calunits) 
    137137        floatTimes.append(time.value) 
    138     nc.addAxis('t',floatTimes,isTime=1,units=calunits,calendar=caltype) 
     138    nc.addAxis('time',floatTimes,isTime=1,units=calunits,calendar=caltype) 
     139     
    139140    for ord in ords: 
    140         print ord.coordAxisLabel.CONTENT 
    141141        vals=[] 
    142142        lon,lat=None,None 
    143         if ord.coordAxisLabel.CONTENT=='Time': 
     143        if ord.coordAxisLabel.CONTENT=='time': 
    144144            continue 
    145145        else: 
     
    147147                if val != ' ': 
    148148                    vals.append(float(val))   
    149                     print vals 
    150         if ord.coordAxisLabel.CONTENT=='Lon': 
     149        if ord.coordAxisLabel.CONTENT=='longitude': 
    151150            lon=1 
    152151            name='longitude' 
    153         elif ord.coordAxisLabel.CONTENT=='Lat': 
     152        elif ord.coordAxisLabel.CONTENT=='latitude': 
    154153            lat=1 
    155154            name='latitude' 
     
    159158        nc.addAxis(name,vals,isLon=lon,isLat=lat,units='')#to do, units attribute for CF compliance 
    160159    if len(ords)==3: 
    161         axes=['t',axisorder[1],axisorder[2]] 
     160        axes=['time',axisorder[1],axisorder[2]] 
    162161    elif len(ords)==2: 
    163         axes=['t',axisorder[1]] 
    164     #print fulldata 
    165     print axes 
     162        axes=['time',axisorder[1]] 
    166163    nc.addVariable(fulldata,self.id, axes,units='') #to do, units attribute for CF compliance 
    167     print 'added' 
    168164    nc.closeFinishedFile() 
    169165    return subsettedFeature, pathToSubsetNetCDF 
  • TI02-CSML/trunk/csml/csmllibs/csmlcrs.py

    r2061 r2091  
    2121         
    2222        # define lon lat pressure time CRS:         
    23         crs=CRSystem(srsName='ndg:crs:xypt', axes =['Lon', 'Lat','Pressure','Time']) 
     23        crs=CRSystem(srsName='ndg:crs:xypt', axes =['longitude', 'latitude','pressure','time']) 
    2424        crs.lonAxis=0 
    2525        crs.latAxis=1 
     
    2828         
    2929        # define lon lat height time CRS:         
    30         crs=CRSystem(srsName='ndg:crs:xyht', axes =['Lon', 'Lat','Height','Time']) 
     30        crs=CRSystem(srsName='ndg:crs:xyht', axes =['longitude', 'latitude','height','time']) 
    3131        crs.lonAxis=0 
    3232        crs.latAxis=1 
     
    3535         
    3636        # define lon lat time CRS: 
    37         crs=CRSystem(srsName='ndg:crs:xyt', axes =['Lon', 'Lat','Time']) 
     37        crs=CRSystem(srsName='ndg:crs:xyt', axes =['longitude', 'latitude','time']) 
    3838        self.systems['ndg:crs:xyt']=crs 
    3939        crs.lonAxis=0 
     
    8686            unittype='unknown' 
    8787            if string.lower(unit) in ['second', 'seconds', 's', 'mins','minute','minutes','hour','hours','h','hr','hrs','day','days']: 
    88                 unittype='Time' 
     88                unittype='time' 
    8989            elif string.lower(unit)[:10] in ['days since', 'seconds si', 'minutes si', 'hours sinc','months sin', 'years sinc']: 
    90                 unittype='Time' 
     90                unittype='time' 
    9191            elif string.lower(unit) in ['mbar', 'pa','level']: 
    92                 unittype='Pressure' 
     92                unittype='pressure' 
    9393            elif string.lower(unit) in ['m', 'km']: 
    94                 unittype='Height' 
     94                unittype='height' 
    9595            elif string.lower(unit) in ['degrees_north', 'degrees_south']: 
    96                 unittype='Lat' 
     96                unittype='latitude' 
    9797            elif string.lower(unit) in ['degrees_east','degrees_west']: 
    98                 unittype='Lon' 
     98                unittype='longitude' 
    9999            crsMap.append(unittype) 
    100100         
Note: See TracChangeset for help on using the changeset viewer.