Changeset 22843


Ignore:
Timestamp:
06/15/18 07:10:11 (7 years ago)
Author:
bdef
Message:

BUG: fixing toolkits to be able to run from nc models

Location:
issm/trunk-jpl/src/m
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/m/classes/toolkits.py

    r21049 r22843  
    8080
    8181                #write header
    82                 fid.write("%s%s%s\n" % ('%Petsc options file: ',filename,' written from Matlab toolkits array'))
     82                fid.write("%s%s%s\n" % ('%Toolkits options file: ',filename,' written from Python toolkits array'))
    8383
    8484                #start writing options
     
    8888                        #first write analysis:
    8989                        fid.write("\n+%s\n" % analysis)    #append a + to recognize it's an analysis enum
    90 
    9190                        #now, write options
    9291                        for optionname,optionvalue in options.iteritems():
  • issm/trunk-jpl/src/m/io/loadvars.py

    r21657 r22843  
    5858        if whichdb(filename):
    5959                print "Loading variables from file '%s'." % filename
    60                
     60
    6161                my_shelf = shelve.open(filename,'r') # 'r' for read-only
    6262                if nvdict:
     
    167167                                                elif vardim==2:
    168168                                                        #dealling with dict
    169                                                         if varval.dtype==str:
    170                                                                 Tree.__dict__[str(var)]=OrderedDict(zip(varval[:,0], varval[:,1]))
     169                                                        if varval.dtype==str: #that is for toolkits wich needs to be ordered
     170                                                                if any(varval[:,0]=='toolkit'):                                                         #toolkit definition have to be first
     171                                                                        Tree.__dict__[str(var)]=OrderedDict([('toolkit', str(varval[np.where(varval[:,0]=='toolkit')[0][0],1]))])
     172
     173                                                                strings1=[str(arg[0]) for arg in varval if arg[0]!='toolkits']
     174                                                                strings2=[str(arg[1]) for arg in varval if arg[0]!='toolkits']
     175                                                                Tree.__dict__[str(var)].update(zip(strings1, strings2))
    171176                                                        else:
    172177                                                                if type(Tree)==list:
Note: See TracChangeset for help on using the changeset viewer.