Changeset 20160
- Timestamp:
- 02/15/16 14:17:44 (9 years ago)
- Location:
- issm/trunk-jpl/src/m/classes
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/model.py
r19527 r20160 25 25 from initialization import initialization 26 26 from rifts import rifts 27 from slr import slr 27 28 from debug import debug 28 29 from verbose import verbose … … 85 86 self.initialization = initialization() 86 87 self.rifts = rifts() 88 self.slr = slr() 87 89 88 90 self.debug = debug() … … 129 131 'initialization',\ 130 132 'rifts',\ 133 'slr',\ 131 134 'debug',\ 132 135 'verbose',\ … … 169 172 string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("initialization","[%s,%s]" % ("1x1",obj.initialization.__class__.__name__),"initial guess/state")) 170 173 string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("rifts","[%s,%s]" % ("1x1",obj.rifts.__class__.__name__),"rifts properties")) 174 string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("slr","[%s,%s]" % ("1x1",obj.slr.__class__.__name__),"slr forcings")) 171 175 string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("debug","[%s,%s]" % ("1x1",obj.debug.__class__.__name__),"debugging tools (valgrind, gprof)")) 172 176 string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("verbose","[%s,%s]" % ("1x1",obj.verbose.__class__.__name__),"verbosity level in solve")) -
issm/trunk-jpl/src/m/classes/slr.py
r20158 r20160 17 17 def __init__(self): # {{{ 18 18 self.deltathickness = NaN 19 self.sealevel = NaN 19 20 self.maxiter = 0 20 21 self.reltol = 0 21 self. bstol = 022 self.abstol = 0 22 23 self.love_h = 0 #provided by PREM model() 23 24 self.love_k = 0 #ideam … … 76 77 return self 77 78 #}}} 78 79 79 def checkconsistency(self,md,solution,analyses): # {{{ 80 80 … … 83 83 return md 84 84 85 md = checkfield(md,'fieldname','slr.deltathickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices 1]) 85 md = checkfield(md,'fieldname','slr.deltathickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1]) 86 md = checkfield(md,'fieldname','slr.sealevel','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1]) 86 87 md = checkfield(md,'fieldname','slr.love_h','NaN',1,'Inf',1) 87 88 md = checkfield(md,'fieldname','slr.love_k','NaN',1,'Inf',1) … … 93 94 94 95 #check that love numbers are provided at the same level of accuracy: 95 if (size(self.love_h, 1) != size(self.love_k,1)),96 if (size(self.love_h,0) != size(self.love_k,0)): 96 97 error('slr error message: love numbers should be provided at the same level of accuracy') 97 98 98 99 return md 99 100 # }}} 100 def defaultoutputs(self,md) # {{{101 return ['Sealevel riseS']101 def defaultoutputs(self,md): # {{{ 102 return ['Sealevel'] 102 103 # }}} 103 def marshall(self,md,fid) # {{{104 def marshall(self,md,fid): # {{{ 104 105 WriteData(fid,'object',self,'class','sealevelrise','fieldname','deltathickness','format','DoubleMat','mattype',1) 106 WriteData(fid,'data',self.sealevel,'mattype',1,'format','DoubleMat','enum',SealevelEnum(),'timeserieslength',md.mesh.numberofvertices+1) 105 107 WriteData(fid,'object',self,'class','sealevelrise','fieldname','reltol','format','Double') 106 108 WriteData(fid,'object',self,'class','sealevelrise','fieldname','abstol','format','Double') … … 114 116 WriteData(fid,'object',self,'class','sealevelrise','fieldname','degacc','format','Double') 115 117 WriteData(fid,'object',self,'class','sealevelrise','fieldname','transitions','format','MatArray') 116 118 117 119 #process requested outputs 118 120 outputs = self.requested_outputs 119 pos = find(ismember(outputs,'default')) 120 if (!isempty(pos)) 121 outputs(pos) = [] #remove 'default' from outputs 122 outputs = [outputs defaultoutputs(self,md)] #add defaults 123 WriteData(fid,'data',outputs,'enum',SealevelriseRequestedOutputsEnum,'format','StringArray') 124 121 indices = [i for i, x in enumerate(outputs) if x == 'default'] 122 if len(indices) > 0: 123 outputscopy=outputs[0:max(0,indices[0]-1)]+self.defaultoutputs(md)+outputs[indices[0]+1:] 124 outputs =outputscopy 125 WriteData(fid,'data',outputs,'enum',SealevelriseRequestedOutputsEnum(),'format','StringArray') 125 126 # }}}
Note:
See TracChangeset
for help on using the changeset viewer.