Changeset 19067


Ignore:
Timestamp:
02/02/15 14:48:16 (10 years ago)
Author:
Eric.Larour
Message:

CHG: added local field, to control computation of global or local (i.e. element wise) metrics.

File:
1 edited

Legend:

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

    r19040 r19067  
    88%                    'observation',md.geometry.surface,...
    99%                    'timeinterpolation','nearestneighbor',...
     10%                    'local',1,...
    1011%                    'weights',ones(md.mesh.numberofvertices,1),...
    1112%                    'weights_enum',WeightsSurfaceObservationsEnum);
     
    2223                observation_enum  = NaN; %enum for observed field.
    2324                timeinterpolation = '';
     25                local             = 1;
    2426                weights           = NaN; %weight coefficients for every vertex
    2527                weights_enum      = NaN; %enum to identify this particular set of weights
     
    4143                                self.observation=getfieldvalue(options,'observation',NaN);
    4244                                self.observation_enum=getfieldvalue(options,'observation_enum');
     45                                self.local=getfieldvalue(options,'local',1);
    4346                                self.timeinterpolation=getfieldvalue(options,'timeinterpolation','nearestneighbor');
    4447                                self.weights=getfieldvalue(options,'weights',NaN);
     
    4851                end % }}}
    4952                function self = setdefaultparameters(self) % {{{
     53                        self.local=1;
    5054                        self.timeinterpolation='nearestneighbor';
    5155                end % }}}
     
    5559                                error('misfit error message: ''name'' field should be a string!');
    5660                        end
    57                         md = checkfield(md,'fieldname','self.definitionenum','field',self.definitionenum,'values',[Outputdefinition1Enum,Outputdefinition2Enum,Outputdefinition3Enum,Outputdefinition4Enum,Outputdefinition5Enum,Outputdefinition6Enum,Outputdefinition7Enum,Outputdefinition8Enum,Outputdefinition9Enum,Outputdefinition10Enum]);
     61                        md = checkfield(md,'fieldname','self.definitionenum','field',self.definitionenum,'values',[Outputdefinition1Enum:Outputdefinition100Enum]);
    5862
    5963                        if ~ischar(self.timeinterpolation),
     
    7478                        fielddisplay(self,'observation','observed field that we compare the model against');
    7579                        fielddisplay(self,'observation_enum','observation enum');
     80                        fielddisplay(self,'local','is the response local to the elements, or global? (default is 1)''');
    7681                        fielddisplay(self,'timeinterpolation','interpolation routine used to interpolate misfit between two time steps (default is ''nearestneighbor''');
    7782                        fielddisplay(self,'weights','weights (at vertices) to apply to the misfit');
     
    8691                WriteData(fid,'object',self,'fieldname','observation','format','DoubleMat','mattype',1,'timeserieslength',md.mesh.numberofvertices+1);
    8792                WriteData(fid,'object',self,'fieldname','observation_enum','format','Integer');
     93                WriteData(fid,'object',self,'fieldname','local','format','Integer');
    8894                WriteData(fid,'object',self,'fieldname','timeinterpolation','format','String');
    8995                WriteData(fid,'object',self,'fieldname','weights','format','DoubleMat','mattype',1,'timeserieslength',md.mesh.numberofvertices+1);
Note: See TracChangeset for help on using the changeset viewer.