Changeset 23236


Ignore:
Timestamp:
09/10/18 13:43:29 (7 years ago)
Author:
Mathieu Morlighem
Message:

CHG: updated numberedcostfunction

File:
1 edited

Legend:

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

    r22402 r23236  
    1 %M1QN3INVERSION class definition
     1%NUMBEREDCOSTFUNCTION class definition
    22%
    33%   Usage:
     
    4444                function md = checkconsistency(self,md,solution,analyses) % {{{
    4545
    46                         num_costfunc=size(md.inversion.cost_functions,2);
     46                        num_costfunc=size(self.cost_functions,2);
    4747
    48                         md = checkfield(md,'fieldname','inversion.cost_functions','size',[1 num_costfunc],'values',supportedcostfunctions());
    49                         md = checkfield(md,'fieldname','inversion.cost_functions_coefficients','size',[md.mesh.numberofvertices num_costfunc],'>=',0);
    50 
     48                        md = checkfield(md,'fieldname','md.outputdefinition.definition{X}.dependent{X}.cost_functions','field',self.cost_functions,'size',[1 num_costfunc],'values',supportedcostfunctions());
     49                        md = checkfield(md,'fieldname','md.outputdefinition.definition{X}.cost_functions_coefficients','field',self.cost_functions_coefficients,'size',[md.mesh.numberofvertices numel(self.cost_functions)],'>=',0);
     50                       
    5151                        if strcmp(solution,'BalancethicknessSolution')
    52                                 md = checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices 1],'NaN',1,'Inf',1);
    53                                 md = checkfield(md,'fieldname','inversion.surface_obs','size',[md.mesh.numberofvertices 1],'NaN',1,'Inf',1);
     52                                md = checkfield(md,'fieldname','md.outputdefinition.definition{X}.thickness_obs','field',self.thickness_obs,'size',[md.mesh.numberofvertices 1],'NaN',1,'Inf',1);
     53                                md = checkfield(md,'fieldname','md.outputdefinition.definition{X}.surface_obs','field',self.surface_obs,'size',[md.mesh.numberofvertices 1],'NaN',1,'Inf',1);
    5454                        elseif strcmp(solution,'BalancethicknessSoftSolution')
    55                                 md = checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices 1],'NaN',1,'Inf',1);
     55                                md = checkfield(md,'fieldname','md.outputdefinition.definition{X}.thickness_obs','field',self.thickness_obs,'size',[md.mesh.numberofvertices 1],'NaN',1,'Inf',1);
    5656                        else
    57                                 md = checkfield(md,'fieldname','inversion.vx_obs','size',[md.mesh.numberofvertices 1],'NaN',1,'Inf',1);
     57                                md = checkfield(md,'fieldname','md.outputdefinition.definition{X}.vx_obs','field',self.vx_obs,'size',[md.mesh.numberofvertices 1],'NaN',1,'Inf',1);
    5858                                if ~strcmp(domaintype(md.mesh),'2Dvertical'),
    59                                         md = checkfield(md,'fieldname','inversion.vy_obs','size',[md.mesh.numberofvertices 1],'NaN',1,'Inf',1);
     59                                        md = checkfield(md,'fieldname','md.outputdefinition.definition{X}.vy_obs','field',self.vy_obs,'size',[md.mesh.numberofvertices 1],'NaN',1,'Inf',1);
    6060                                end
    6161                        end
Note: See TracChangeset for help on using the changeset viewer.