Changeset 204


Ignore:
Timestamp:
04/09/14 12:16:07 (5 years ago)
Author:
mjuckes
Message:

updated SPECS specification

Location:
CCCC/trunk/ceda_cc
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • CCCC/trunk/ceda_cc/c4.py

    r200 r204  
    3939 
    4040pathTmplDict = { 'CORDEX':'%(project)s/%(product)s/%(domain)s/%(institute)s/%(driving_model)s/%(experiment)s/%(ensemble)s/%(model)s/%(model_version)s/%(frequency)s/%(variable)s/files/%%(version)s/',   \ 
    41                  'SPECS':'%(project)s/%(product)s/%(institute)s/%(model)s/%(experiment)s_%(series)s/%(start_date)s/%(frequency)s/%(realm)s/%(table)s/%(variable)s/%(ensemble)s/files/%%(version)s/', \ 
     41                 'SPECS':'%(project)s/%(product)s/%(institute)s/%(model)s/%(experiment)s/%(start_date)s/%(frequency)s/%(realm)s/%(table)s/%(variable)s/%(ensemble)s/files/%%(version)s/', \ 
    4242                 'CMIP5':'%(project)s/%(product)s/%(institute)s/%(model)s/%(experiment)s/%(frequency)s/%(realm)s/%(table)s/%(ensemble)s/files/%%(version)s/%(variable)s/', \ 
    4343                 '__def__':'%(project)s/%(product)s/%(institute)s/%(model)s/%(experiment)s/%(frequency)s/%(realm)s/%(variable)s/%(ensemble)s/files/%%(version)s/', \ 
  • CCCC/trunk/ceda_cc/config/specs_vocabs/exptFamily.txt

    r193 r204  
    1 soilMoistureClimInit [2] 
    2 soilMoistureBestInit [2] 
    3 seaIceClimInit [2] 
    4 seaIceBestInit [2] 
    5 horizlResImpact [2] 
    6 standardStratVertRes [2] 
    7 improvedStratVertRes [2] 
    8 decadal [1] 
    9 historical [1] 
    10 snowBestInit [1] 
    11 snowClimInit [1] 
    12 interactivePhenology [1] 
    13 fixedPhenology [1] 
    14 aerosolImproved [1] 
    15 aerosolsStandard [1] 
    16 obsSolarIrradiance [2] 
    17 constSolarIrradiance [2] 
    18 NMME [1] 
     1soilMoistureInit 
     2seaIceInit 
     3horizlResImpact 
     4improvedStratVertRes 
     5decadal 
     6seasonal 
     7snowInit 
     8phenology 
     9aeorosols 
     10solarIrradiance 
     11stochPerturb 
  • CCCC/trunk/ceda_cc/config/specs_vocabs/globalAts.txt

    r163 r204  
    55experiment_id 
    66forecast_reference_time 
     7startdate 
    78frequency 
    89institution 
     
    2122title 
    2223tracking_id 
    23 series 
  • CCCC/trunk/ceda_cc/config_c4.py

    r193 r204  
    2727validSpecsFrequencies = ['fx','mon','day','6hr'] 
    2828validCcmiFrequencies = ['fx','yr','mon','day','hr','subhr'] 
    29 validSpecsExptFamilies = map( lambda x: string.split( x )[0],  
     29validSpecsExptFamilies = map( lambda x: string.strip( x ),  
    3030                              open( op.join(CC_CONFIG_DIR, 'specs_vocabs/exptFamily.txt' )).readlines() ) 
    3131 
     
    138138               'physics_version':utils.patternControl( 'physics_version', "[0-9]+" ), \ 
    139139               'realization':utils.patternControl( 'realization', "[0-9]+" ), \ 
    140                'project_id':utils.listControl( 'project_id', ['SPECS'] ), \ 
     140               'startdate':utils.patternControl( 'startdate', "S[0-9]{8}" ), \ 
     141               'associated_experiment':utils.patternControl( 'associated_experment', "(?P<val>(N/A|(decadal|seasonal): r\*i[0-9]{1,4}p[0-9]{1,4}))" ), \ 
     142               'project_id':utils.listControl( 'project_id', ['SPECS', 'NMME-SPECS'] ), \ 
    141143               ## 'institution':utils.listControl( 'institution', validSpecsInstitutions ), \ 
    142144               'modeling_realm':utils.listControl( 'realm', ['atmos', 'ocean', 'land', 'landIce', 'seaIce', 'aerosol', 'atmosChem', 'ocnBgchem'], split=True ), \ 
    143                'series':utils.listControl( 'series', ['series1','series2'] ), \ 
    144145             } 
    145146  elif pcfg.project == 'CMIP5': 
     
    206207    elif project == 'SPECS': 
    207208      lrdr = readVocab( 'specs_vocabs/') 
    208       self.requiredGlobalAttributes = [ 'contact', 'product', 'creation_date', 'tracking_id', \ 
    209               'experiment_id', 'series'] 
    210209      self.requiredGlobalAttributes = lrdr.getSimpleList( 'globalAts.txt' ) 
    211210      self.exptFamilies = lrdr.getSimpleList( 'exptFamily.txt', bit=0 ) 
    212       self.controlledGlobalAttributes = [ 'project_id','experiment_id', 'series','frequency','Conventions','modeling_realm', \ 
    213                        'initialization_method','physics_version','realization'] 
    214       self.globalAttributesInFn = [None,'@mip_id','model_id','experiment_id','series','@forecast_reference_time','@ensemble'] 
    215 #sic_Oimon_EC-Earth2_seaIceBestInit_S19910501_series1_r1i1p1_199501-199502.nc  
    216 ## mip_id derived from global attribute Table_id (CMOR convention); experiment family derived from experiment_id, ensemble derived from rip attributes. 
     211      self.controlledGlobalAttributes = [ 'project_id','experiment_id', 'frequency','Conventions','modeling_realm', \ 
     212                       'initialization_method','physics_version','realization','associated_experiment'] 
     213      self.globalAttributesInFn = [None,'@mip_id','model_id','experiment_id','startdate','@ensemble'] 
     214#sic_Oimon_EC-Earth2_seaIceBestInit_S19910501_r1i1p1_199501-199502.nc  
     215## mip_id derived from global attribute Table_id (CMOR convention); ensemble derived from rip attributes. 
    217216      self.requiredVarAttributes = ['long_name', 'standard_name', 'units'] 
    218217      self.drsMappings = {'variable':'@var', 'institute':'institute_id', 'product':'product', 'experiment':'experiment_id', \ 
     
    286285      self.freqIndex = None 
    287286    elif self.project == 'SPECS': 
    288       self.fnPartsOkLen = [7,8] 
    289       self.fnPartsOkFixedLen = [7,] 
    290       self.fnPartsOkUnfixedLen = [8,] 
     287      self.fnPartsOkLen = [6,7] 
     288      self.fnPartsOkFixedLen = [6,] 
     289      self.fnPartsOkUnfixedLen = [7,] 
    291290      self.checkTrangeLen = False 
    292291      self.domainIndex = None 
Note: See TracChangeset for help on using the changeset viewer.