Changeset 12938
- Timestamp:
- 08/07/12 15:35:45 (13 years ago)
- Location:
- issm/trunk-jpl/src/m/classes
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/model/model.py
r12762 r12938 32 32 from miscellaneous import miscellaneous 33 33 from private import private 34 from EnumDefinitions import * 34 35 #}}} 36 35 37 class model(object): 36 38 #properties … … 51 53 52 54 self.debug = debug() 53 self.verbose = verbose( )55 self.verbose = verbose('solution',True,'qmu',True,'control',True) 54 56 self.settings = settings() 55 57 self.solver = solver() 58 # need EnumToString for these to work 59 # if ismumps: 60 # md.solver.addoptions(DiagnosticVertAnalysisEnum(),mumpsoptions) 61 # else: 62 # md.solver.addoptions(DiagnosticVertAnalysisEnum(),iluasmoptions) 56 63 self.cluster = generic() 57 64 … … 70 77 self.qmu = qmu() 71 78 72 self.results = [];79 self.results = {} 73 80 self.radaroverlay = radaroverlay() 74 81 self.miscellaneous = miscellaneous() 75 82 self.private = private() 76 83 #}}} 84 77 85 def __repr__(obj): 78 86 # {{{ Display … … 111 119 string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("radaroverlay","[%s,%s]" % ("1x1",obj.radaroverlay.__class__.__name__),"radar image for plot overlay")) 112 120 string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("miscellaneous","[%s,%s]" % ("1x1",obj.miscellaneous.__class__.__name__),"miscellaneous fields")) 113 return string; 114 #}}} 121 return string 122 # }}} 123 124 def checkmessage(self,string): # {{{ 125 print ("model not consistent: %s" % string) 126 self.private.isconsistent=False 127 # }}} 128 -
issm/trunk-jpl/src/m/classes/verbose.m
r12663 r12938 42 42 case 1, 43 43 binary=varargin{1}; 44 if ischar(binary),44 if ischar(binary), 45 45 if strcmpi(binary,'all'), 46 46 binary=2^11-1; %all ones … … 51 51 verbose=BinaryToVerbose(verbose,binary); 52 52 end 53 elseif isnumeric(binary), 54 verbose=BinaryToVerbose(verbose,binary); 53 55 end 54 56 otherwise, -
issm/trunk-jpl/src/m/classes/verbose.py
r12038 r12938 1 #module imports 2 from fielddisplay import fielddisplay 1 from pairoptions import * 2 from MatlabFuncs import * 3 from WriteData import * 4 from EnumDefinitions import * 3 5 4 class verbose: 5 #properties 6 def __init__(self): 7 # {{{ Properties 6 class verbose(object): 7 """ 8 VERBOSE class definition 9 10 Available verbosity levels: 11 mprocessor : model processing 12 module : modules 13 solution : solution sequence 14 solver : solver info (extensive) 15 convergence : convergence criteria 16 control : control method 17 qmu : sensitivity analysis 18 19 Usage: 20 verbose=verbose(); 21 verbose=verbose(3); 22 verbose=verbose('001100'); 23 verbose=verbose('module',True,'solver',False); 24 25 WARNING: some parts of this file are Synchronized with src/c/shared/Numerics/Verbosity.h 26 Do not modify these sections. See src/c/shared/Numerics/README for more info 27 """ 28 29 def __init__(self,*args): # {{{ 30 #BEGINFIELDS 8 31 self.mprocessor = False 9 32 self.module = False … … 13 36 self.control = False 14 37 self.qmu = False 15 #}}} 16 def __repr__(obj): 17 # {{{ Display 18 string="%s%s%s\n\n"%("class '",obj.__class__.__name__,"'=") 19 string="%s%s\n"%(string," %15s : %s"%("mprocessor",obj.mprocessor)) 20 string="%s%s\n"%(string," %15s : %s"%("module",obj.module)) 21 string="%s%s\n"%(string," %15s : %s"%("solution",obj.solution)) 22 string="%s%s\n"%(string," %15s : %s"%("solver",obj.solver)) 23 string="%s%s\n"%(string," %15s : %s"%("convergence",obj.convergence)) 24 string="%s%s\n"%(string," %15s : %s"%("control",obj.control)) 25 string="%s%s\n"%(string," %15s : %s"%("qmu",obj.qmu)) 26 return string 27 #}}} 38 #ENDFIELDS 39 40 if not len(args): 41 #Don't do anything 42 pass 43 44 elif len(args) == 1: 45 binary=args[0] 46 if isinstance(binary,str): 47 if strcmpi(binary,'all'): 48 binary=2**11-1 #all ones 49 self.BinaryToVerbose(binary) 50 self.solver=False #Do not use by default 51 else: 52 binary=int(binary,2) 53 self.BinaryToVerbose(binary) 54 elif isinstance(binary,(int,float)): 55 self.BinaryToVerbose(int(binary)) 56 57 else: 58 #Use options to initialize object 59 self=pairoptions(*args).AssignObjectFields(self) 60 61 #Cast to logicals 62 listproperties=vars(self) 63 for [fieldname,fieldvalue] in listproperties.iteritems(): 64 if isinstance(fieldvalue,bool) or isinstance(fieldvalue,(int,float)): 65 setattr(self,fieldname,bool(fieldvalue)) 66 else: 67 raise TypeError("verbose supported field values are logicals only (True or False)") 68 # }}} 69 70 def VerboseToBinary(self): # {{{ 71 72 #BEGINVERB2BIN 73 binary=0 74 if self.mprocessor: 75 binary=binary | 1 76 if self.module: 77 binary=binary | 2 78 if self.solution: 79 binary=binary | 4 80 if self.solver: 81 binary=binary | 8 82 if self.convergence: 83 binary=binary | 16 84 if self.control: 85 binary=binary | 32 86 if self.qmu: 87 binary=binary | 64 88 #ENDVERB2BIN 89 90 return binary 91 # }}} 92 93 def BinaryToVerbose(self,binary): # {{{ 94 95 #BEGINBIN2VERB 96 self.mprocessor =bool(binary & 1) 97 self.module =bool(binary & 2) 98 self.solution =bool(binary & 4) 99 self.solver =bool(binary & 8) 100 self.convergence=bool(binary & 16) 101 self.control =bool(binary & 32) 102 self.qmu =bool(binary & 64) 103 #ENDBIN2VERB 104 # }}} 105 106 def checkconsistency(self,md,solution,analyses): # {{{ 107 return md 108 # }}} 109 110 def __repr__(self): # {{{ 111 112 #BEGINDISP 113 s ="class '%s' = \n" % type(self) 114 s+=" %15s : %s\n" % ('mprocessor',self.mprocessor) 115 s+=" %15s : %s\n" % ('module',self.module) 116 s+=" %15s : %s\n" % ('solution',self.solution) 117 s+=" %15s : %s\n" % ('solver',self.solver) 118 s+=" %15s : %s\n" % ('convergence',self.convergence) 119 s+=" %15s : %s\n" % ('control',self.control) 120 s+=" %15s : %s\n" % ('qmu',self.qmu) 121 #ENDDISP 122 123 return s 124 # }}} 125 126 def marshall(self,fid): # {{{ 127 WriteData(fid,'data',VerboseToBinary(self),'enum',VerboseEnum,'format','Integer') 128 # }}} 129
Note:
See TracChangeset
for help on using the changeset viewer.