Changeset 307


Ignore:
Timestamp:
23/03/15 15:56:08 (5 years ago)
Author:
mjuckes
Message:

updated for globsnow -- via some hacks to the ESA-CCI configuration

Location:
CCCC/trunk/ceda_cc
Files:
14 added
10 edited

Legend:

Unmodified
Added
Removed
  • CCCC/trunk/ceda_cc/config/esacci_vocabs/cciProject.txt

    r263 r307  
    1212Sea Surface Temperature GHRSST 
    1313Soil Moisture SOILMOISTURE 
     14GLOB SNOW  GlobSnow 
  • CCCC/trunk/ceda_cc/config/esacci_vocabs/extraAtts.txt

    r302 r307  
    22org.ghrsst, AATSR-ESACCI-L3U-v1, algorithm=OE2, frequency=1sec 
    33uk.ac.pml, ESACCI-OC-L3S-OC_PRODUCTS-MERGED-1M_MONTHLY_4km_GEO_PML_OC4v6_QAA, algorithm=SeaDAS(v6.4-OCCCI), frequency=mon 
     4fi.fmi, , algorithm=Pulliainen2006, frequency=day 
  • CCCC/trunk/ceda_cc/config/esacci_vocabs/platforms.txt

    r303 r307  
    4242Topex/Poseidon 
    4343TRMM 
     44NIMBUS 
  • CCCC/trunk/ceda_cc/config/esacci_vocabs/procLevel.txt

    r263 r307  
    4747Indicators derived from satellite data. 
    4848ESACCI 
     49*Level 3  
     50L3A 
     51Added for GLOB SNOW 
     52GLOB SNOW 
  • CCCC/trunk/ceda_cc/config/esacci_vocabs/procLevel01.txt

    r263 r307  
    1111L4 
    1212IND 
     13L3A 
  • CCCC/trunk/ceda_cc/config/esacci_vocabs/variableInFile.txt

    r302 r307  
    55BA    burned_area burned_area 
    66OC_PRODUCTS chlor_a mass_concentration_of_chlorophyll_a_in_sea_water 
     7SWE SWE lwe_thickness_of_surface_snow_amount 
  • CCCC/trunk/ceda_cc/config/esacci_vocabs/variables.txt

    r263 r307  
    6767Soil water index degree of saturation absolute SWIS 
    6868Soil water index degree of saturation anomalies SWISA 
     69Snow Water Equivalent SWE 
  • CCCC/trunk/ceda_cc/config_c4.py

    r302 r307  
    443443               'time_coverage_duration':utils.patternControl( 'time_coverage_duration',  'ISO8601 duration', cls='ISO',examples=['P1Y'] ), \ 
    444444               'spatial_resolution':utils.patternControl( 'spatial_resolution',  '([0-9]+(.[0-9]+){0,1})[\s]*(km|m).*', examples=['20km','1 km at nadir'] ), \ 
    445                'project':utils.listControl( 'project', ['Climate Change Initiative - European Space Agency'] ), \ 
     445               'project':utils.listControl( 'project', ['Climate Change Initiative - European Space Agency','CLIPC'] ), \ 
    446446               'cciProject':utils.listControl( 'cciproject', cciProjectList ), \ 
    447447               'var':utils.listControl( 'var', lrdr.getSimpleList( 'variables.txt', bit=-1 ) ) \ 
     
    465465 
    466466  def setEsaCciFNType(self,id): 
    467       self.groupIndex =  self.fnoptions['groupIndex'][id] 
    468       self.trangeIndex = self.fnoptions['trangeIndex'][id] 
    469       self.globalAttributesInFn = self.fnoptions['inFn'][id] 
    470       self.varIndex = self.fnoptions['varIndex'][id] 
     467      if id in [1,2]: 
     468        id1 = 1 
     469      else: 
     470        id1 = id 
     471      self.groupIndex =  self.fnoptions['groupIndex'][id1] 
     472      self.trangeIndex = self.fnoptions['trangeIndex'][id1] 
     473      self.globalAttributesInFn = self.fnoptions['inFn'][id1] 
     474      self.varIndex = self.fnoptions['varIndex'][id1] 
    471475 
    472476 
  • CCCC/trunk/ceda_cc/extractMipInfo.py

    r302 r307  
    614614mips = { "cmip5":NT_mip( 'cmip5','cmip5_vocabs/mip/', 'CMIP5_*' ), 
    615615"ccmi":NT_mip( 'ccmi', 'ccmi_vocabs/mip/', 'CCMI1_*'), 
     616"pmip":NT_mip( 'pmip', 'pmip3_vocabs/mip/', 'PMIP3_*'), 
    616617"cordex":NT_mip( 'cordex', 'cordex_vocabs/mip/', 'CORDEX_*'), 
    617618"specs":NT_mip( 'specs', 'specs_vocabs/mip/', 'SPECS_*') } 
    618619 
    619 mipl = ['cmip5'] 
    620620mipl = mips.keys() 
     621mipl = ['pmip'] 
    621622mips = map( lambda x: mips[x], mipl ) 
    622623r = run() 
  • CCCC/trunk/ceda_cc/utils_c4.py

    r304 r307  
    251251 
    252252    if self.pcfg.projectV.id in ['ESA-CCI']: 
    253       self.test( 'ESACCI' in bits[:2], 'File name not a valid ESA-CCI file name: %s' % fn, abort=True ) 
    254       if bits[0] == 'ESACCI': 
     253      self.test( 'ESACCI' in bits[:2] or 'ESA' == bits[0], 'File name not a valid ESA-CCI file name: %s' % fn, abort=True ) 
     254      if bits[0] == 'ESA': 
     255        self.esaFnId = 2 
     256      elif bits[0] == 'ESACCI': 
    255257        self.esaFnId = 1 
    256258      else: 
     
    266268    self.fnDict = {} 
    267269    if self.pcfg.projectV.id in ['ESA-CCI']: 
    268       l0 = {0:6, 1:5}[self.esaFnId]   
     270      l0 = {0:6, 1:5, 2:5}[self.esaFnId]   
    269271      for i in range(l0): 
    270272        x = self.pcfg.globalAttributesInFn[i] 
     
    282284          else: 
    283285            self.fnDict['additional'] = bits[-2] 
    284       elif self.esaFnId == 1: 
     286      elif self.esaFnId in [1,2]: 
    285287        if len(bits) == 8: 
    286288          self.fnDict['additional'] = bits[-3] 
     
    979981       raise baseException( 'mipVocab.lists called with bad list specifier %s' % k2 ) 
    980982 
    981   def isInTable( self, v, vg ): 
     983  def isInTable( self, v, vg1 ): 
     984    vg = vg1 
     985    if vg == 'ESA': 
     986      vg = 'ESACCI' 
    982987    assert vg in self.varcons.keys(), '%s not found in  self.varcons.keys() [%s]' % (vg,str(self.varcons.keys()) ) 
    983988    return (v in self.varcons[vg].keys()) 
    984989       
    985   def getAttr( self, v, vg, a ): 
     990  def getAttr( self, v, vg1, a ): 
     991    vg = vg1 
     992    if vg == 'ESA': 
     993      vg = 'ESACCI' 
    986994    assert vg in self.varcons.keys(), '%s not found in  self.varcons.keys()' 
    987995    assert v in self.varcons[vg].keys(), '%s not found in self.varcons[%s].keys()' % (v,vg) 
Note: See TracChangeset for help on using the changeset viewer.