Changeset 19041
- Timestamp:
- 01/26/15 18:43:11 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/m1qn3inversion.py
r18994 r19041 24 24 self.incomplete_adjoint = 0 25 25 self.control_parameters = float('NaN') 26 self.control_scaling_factors = float('NaN') 26 27 self.maxsteps = 0 27 28 self.maxiter = 0 … … 43 44 print 'converting inversion to m1qn3inversion' 44 45 inv=args[0] 46 #first call setdefaultparameters: 47 self.setdefaultparameters() 48 49 #then go fish whatever is available in the inversion object provided to the constructor 45 50 self.iscontrol = inv.iscontrol 46 51 self.incomplete_adjoint = inv.incomplete_adjoint … … 64 69 string="%s\n%s"%(string,fielddisplay(self,'incomplete_adjoint','1: linear viscosity, 0: non-linear viscosity')) 65 70 string="%s\n%s"%(string,fielddisplay(self,'control_parameters','ex: [''FrictionCoefficient''], or [''MaterialsRheologyBbar'']')) 71 string="%s\n%s"%(string,fielddisplay(self,'control_scaling_factors','order of magnitude of each control (useful for multi-parameter optimization)')) 66 72 string="%s\n%s"%(string,fielddisplay(self,'maxsteps','maximum number of iterations (gradient computation)')) 67 73 string="%s\n%s"%(string,fielddisplay(self,'maxiter','maximum number of Function evaluation (forward run)')) … … 96 102 #drag and B are supported yet) 97 103 self.control_parameters='FrictionCoefficient' 104 105 #Scaling factor for each control 106 self.control_scaling_factors=1 98 107 99 108 #number of iterations … … 122 131 md = checkfield(md,'fieldname','inversion.incomplete_adjoint','values',[0,1]) 123 132 md = checkfield(md,'fieldname','inversion.control_parameters','cell',1,'values',supportedcontrols()) 133 md = checkfield(md,'fieldname','inversion.control_scaling_factors','size',[num_controls],'>',0,'NaN',1) 124 134 md = checkfield(md,'fieldname','inversion.maxsteps','numel',[1],'>=',0) 125 135 md = checkfield(md,'fieldname','inversion.maxiter','numel',[1],'>=',0) … … 148 158 return 149 159 WriteData(fid,'object',self,'class','inversion','fieldname','incomplete_adjoint','format','Boolean') 160 WriteData(fid,'object',self,'class','inversion','fieldname','control_scaling_factors','format','DoubleMat','mattype',3) 150 161 WriteData(fid,'object',self,'class','inversion','fieldname','maxsteps','format','Integer') 151 162 WriteData(fid,'object',self,'class','inversion','fieldname','maxiter','format','Integer')
Note:
See TracChangeset
for help on using the changeset viewer.