Changeset 14170


Ignore:
Timestamp:
12/14/12 18:03:41 (12 years ago)
Author:
Mathieu Morlighem
Message:

NEW: added conversion constructor from taoinversion to inversion and viceversa

Location:
issm/trunk-jpl/src/m/classes
Files:
2 edited

Legend:

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

    r14162 r14170  
    3131                                case 0
    3232                                        obj=setdefaultparameters(obj);
     33                                case 1
     34                                        if isa(varargin{1},'taoinversion'),
     35                                                disp('converting taoinversion to inversion');
     36                                                in=varargin{1};
     37                                                obj.iscontrol                   = in.iscontrol;
     38                                                obj.tao                         = 1;
     39                                                obj.incomplete_adjoint          = in.incomplete_adjoint;
     40                                                obj.control_parameters          = in.control_parameters;
     41                                                obj.nsteps                      = in.nsteps;
     42                                                obj.maxiter_per_step            = 10*ones(in.nsteps,1);
     43                                                obj.cost_functions              = repmat(in.cost_functions,in.nsteps,1);
     44                                                obj.cost_functions_coefficients = in.cost_functions_coefficients;
     45                                                obj.gradient_scaling            = 100*ones(in.nsteps,1);
     46                                                obj.cost_function_threshold     = NaN;
     47                                                obj.min_parameters              = in.min_parameters;
     48                                                obj.max_parameters              = in.max_parameters;
     49                                                obj.step_threshold              = .99*ones(in.nsteps,1);
     50                                                obj.vx_obs                      = in.vx_obs;
     51                                                obj.gradient_only               = 0;
     52                                                obj.vy_obs                      = in.vy_obs;
     53                                                obj.vz_obs                      = in.vz_obs;
     54                                                obj.vel_obs                     = in.vel_obs;
     55                                                obj.thickness_obs               = in.thickness_obs;
     56                                        end
    3357                                otherwise
    3458                                        error('constructor not supported');
  • issm/trunk-jpl/src/m/classes/taoinversion.m

    r14165 r14170  
    2525                                case 0
    2626                                        obj=setdefaultparameters(obj);
     27                                case 1
     28                                        if isa(varargin{1},'inversion'),
     29                                                disp('converting inversion to taoinversion');
     30                                                in=varargin{1};
     31                                                obj.iscontrol                   = in.iscontrol;
     32                                                obj.incomplete_adjoint          = in.incomplete_adjoint;
     33                                                obj.control_parameters          = in.control_parameters;
     34                                                obj.nsteps                      = in.nsteps;
     35                                                obj.cost_functions              = in.cost_functions(1,:); %Keep first line only
     36                                                obj.cost_functions_coefficients = in.cost_functions_coefficients;
     37                                                obj.min_parameters              = in.min_parameters;
     38                                                obj.max_parameters              = in.max_parameters;
     39                                                obj.vx_obs                      = in.vx_obs;
     40                                                obj.vy_obs                      = in.vy_obs;
     41                                                obj.vz_obs                      = in.vz_obs;
     42                                                obj.vel_obs                     = in.vel_obs;
     43                                                obj.thickness_obs               = in.thickness_obs;
     44                                        end
    2745                                otherwise
    2846                                        error('constructor not supported');
Note: See TracChangeset for help on using the changeset viewer.