Changeset 14162


Ignore:
Timestamp:
12/13/12 15:20:10 (12 years ago)
Author:
Mathieu Morlighem
Message:

NEW: added weak balance thickness

Location:
issm/trunk-jpl/src/m
Files:
3 edited

Legend:

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

    r14142 r14162  
    8686                        md = checkfield(md,'inversion.tao','values',[0 1]);
    8787                        md = checkfield(md,'inversion.incomplete_adjoint','values',[0 1]);
    88                         md = checkfield(md,'inversion.control_parameters','cell',1,'values',{'BalancethicknessThickeningRate' 'FrictionCoefficient' 'MaterialsRheologyBbar' 'MaterialsRheologyZbar' 'Vx' 'Vy'});
     88                        md = checkfield(md,'inversion.control_parameters','cell',1,'values',...
     89                                {'BalancethicknessThickeningRate' 'FrictionCoefficient' 'MaterialsRheologyBbar' 'MaterialsRheologyZbar' 'Vx' 'Vy' 'Thickness'});
    8990                        md = checkfield(md,'inversion.nsteps','numel',1,'>=',1);
    9091                        md = checkfield(md,'inversion.maxiter_per_step','size',[md.inversion.nsteps 1],'>=',0);
    9192                        md = checkfield(md,'inversion.step_threshold','size',[md.inversion.nsteps 1]);
    92                         md = checkfield(md,'inversion.cost_functions','size',[md.inversion.nsteps num_costfunc],'values',[101:105 201 501:505]);
     93                        md = checkfield(md,'inversion.cost_functions','size',[md.inversion.nsteps num_costfunc],'values',[101:105 201 501:506]);
    9394                        md = checkfield(md,'inversion.cost_functions_coefficients','size',[md.mesh.numberofvertices num_costfunc],'>=',0);
    9495                        md = checkfield(md,'inversion.gradient_only','values',[0 1]);
     
    9899
    99100                        if solution==BalancethicknessSolutionEnum()
     101                                md = checkfield(md,'inversion.thickness_obs','size',[md.mesh.numberofvertices 1],'NaN',1);
     102                        elseif solution==WeakBalancethicknessSolutionEnum()
    100103                                md = checkfield(md,'inversion.thickness_obs','size',[md.mesh.numberofvertices 1],'NaN',1);
    101104                        else
     
    177180                        pos=find(data==504); data(pos)=ThicknessAlongGradientEnum();
    178181                        pos=find(data==505); data(pos)=ThicknessAcrossGradientEnum();
     182                        pos=find(data==506); data(pos)=BalancethicknessMisfitEnum();
    179183                        WriteData(fid,'data',data,'enum',InversionCostFunctionsEnum(),'format','DoubleMat','mattype',3);
    180184                        WriteData(fid,'data',num_cost_functions,'enum',InversionNumCostFunctionsEnum(),'format','Integer');
  • issm/trunk-jpl/src/m/consistency/ismodelselfconsistent.m

    r13729 r14162  
    6969                analyses=[BalancethicknessAnalysisEnum()];
    7070
     71        case WeakBalancethicknessSolutionEnum(),
     72                numanalyses=1;
     73                analyses=[BalancethicknessAnalysisEnum()];
     74
    7175        case SurfaceSlopeSolutionEnum(),
    7276                numanalyses=1;
  • issm/trunk-jpl/src/m/solve/process_solve_options.m

    r13043 r14162  
    1111if ~ismember(solution_type,[DiagnosticSolutionEnum(),PrognosticSolutionEnum(),ThermalSolutionEnum(),...
    1212                SteadystateSolutionEnum(),TransientSolutionEnum(),EnthalpySolutionEnum(),...
    13                 BalancethicknessSolutionEnum(),BedSlopeSolutionEnum(),SurfaceSlopeSolutionEnum(),HydrologySolutionEnum(),FlaimSolutionEnum()]),
     13                BalancethicknessSolutionEnum(),WeakBalancethicknessSolutionEnum(),BedSlopeSolutionEnum(),...
     14                SurfaceSlopeSolutionEnum(),HydrologySolutionEnum(),FlaimSolutionEnum()]),
    1415        error(['process_solve_options error message: solution_type ' EnumToString(solution_type) ' not supported yet!']);
    1516end
Note: See TracChangeset for help on using the changeset viewer.