Ignore:
Timestamp:
24/01/16 18:33:53 (5 years ago)
Author:
mjuckes
Message:

Adding hdldemo

File:
1 edited

Legend:

Unmodified
Added
Removed
  • CMIP6dreqbuild/trunk/src/workbook/importShDreq2.py

    r555 r558  
    366366  def prepRequestItem(self): 
    367367      thissh = self.skey['requestitem'] 
     368      s1 = collections.defaultdict( set ) 
    368369      for k in thissh: 
    369370        if k[0] != '_': 
    370371          ll = thissh[k][:] 
    371372          ku = str(ll[2]) 
     373          s1[ll[0]].add(ll[-1]) 
    372374## 
    373375          self.exptPnt[ku].append( str(k) ) 
    374  
     376      print 'INFO.dddd: %s: %s' % ('DAMIP',str( s1['DAMIP'] ) ) 
     377      self.tsliceMap = {} 
     378      self.tsliceMap['DAMIP'] = {'18 (1850, 1860, ..,  2010, 2020)':'DAMIP18', 'all':None, '8\n(2030, 2040, .., 2090, 2100)':'DAMIP8', '61\n(1960-2020)':'DAMIP61', '40\n(2026-2045, 2081-2100)':'DAMIP40', '20\n(2081-2100)':'DAMIP20', '42\n(1979-2020)':'DAMIP42' } 
    375379 
    376380      thissh = self.skey['experiment'] 
     
    580584    self.cmv = [] 
    581585    self.cmvUidByFL = collections.defaultdict( cls_s1 ) 
     586    self.cmvUidByTab = collections.defaultdict( cls_s1 ) 
    582587    self.cmvs = set() 
    583588    self.cmvinfo = ('uid','stid','label','title','description','vid', \ 
     
    958963            print 'INFO.088.00002: nov=%s [%s]' % (nov,len(gi)) 
    959964 
    960  
    961965    for c in self.cmv: 
    962       u,v,f = (c[0],c[2],c[21]) 
     966      u,v,f,t = (c[0],c[2],c[21],c[18]) 
    963967      self.cmvUidByFL[f].a[v].append( u )  
     968      self.cmvUidByTab[t].a[v].append( u )  
    964969 
    965970####################################################################################### 
     
    16361641 ## - mip; tab; expt; rlid; ny 
    16371642## defer so that cross-check of "expt" can be done .. or scan this earlier .... 
    1638               kk = ['mip', 'tab', 'expt', 'rlid', 'ny', 'nexmax', 'nenmax', 'nymax','treset'] 
     1643              kk = ['mip', 'tab', 'expt', 'rlid', 'ny', 'nexmax', 'nenmax', 'nymax','treset','info'] 
    16391644              thisl = mycc( '%s %s' % (ll[0],ll[1]) ) 
    16401645              if str( ll[3] ) not in self.rqlPreset: 
     
    16451650              if str( ll[3] ) not in self.requestlinkuid: 
    16461651                print 'SEVERE.005.00005: rlid not found: %s' % str(ll) 
    1647               for j in range(len(kk)): 
     1652              for j in range(len(kk)-1): 
    16481653                if kk[j] == 'ny': 
    16491654                  if ll[j] == '': 
     
    16651670              item.setAttribute( 'esid', self.exptPntUid[ku][0] ) 
    16661671              item.setAttribute( 'esidComment', str(self.exptPntUid[ku]) ) 
     1672              if ll[0] in self.tsliceMap: 
     1673                if type(ll[-1]) in [type(''), type(u'')]: 
     1674                  kkk = string.strip( ll[-1] ) 
     1675                  if kkk in self.tsliceMap[ll[0]]: 
     1676                    v = self.tsliceMap[ll[0]][kkk] 
     1677                    if v != None: 
     1678                      item.setAttribute( 'tslice', '_slice_%s' % v ) 
    16671679################################## 
    16681680          elif k in ['requestvargroup','tablesection']: 
     
    17901802              if str(vid) not in self.importWbMods.vars.d1: 
    17911803  
    1792                   if thisl in self.importWbMods.vars.c1 or (thisl[-2:] in ['17','23'] and thisl[:-2] in self.importWbMods.vars.c1): 
     1804                  if thisl in self.importWbMods.vars.c1 or (thisl[-2:] in ['17','23','27'] and thisl[:-2] in self.importWbMods.vars.c1): 
    17931805                    if thisl in self.importWbMods.vars.c1: 
    17941806                      thisn = thisl 
Note: See TracChangeset for help on using the changeset viewer.