Ignore:
Timestamp:
06/03/16 10:05:11 (9 years ago)
Author:
Mathieu Morlighem
Message:

NEW: marhsall strings instead of enums

File:
1 edited

Legend:

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

    r19901 r20690  
    120120                        var yts=365.0*24.0*3600.0;
    121121
    122                         WriteData(fid,'enum',InversionTypeEnum(),'data',0,'format','Integer');
    123                         WriteData(fid,'object',this,'fieldname','iscontrol','format','Boolean');
    124                         WriteData(fid,'object',this,'fieldname','incomplete_adjoint','format','Boolean');
     122                        WriteData(fid,prefix,'name','md.inversion.type','data',0,'format','Integer');
     123                        WriteData(fid,prefix,'object',this,'fieldname','iscontrol','format','Boolean');
     124                        WriteData(fid,prefix,'object',this,'fieldname','incomplete_adjoint','format','Boolean');
    125125                        if (!this.iscontrol) return;
    126                         WriteData(fid,'object',this,'fieldname','nsteps','format','Integer');
    127                         WriteData(fid,'object',this,'fieldname','maxiter_per_step','format','IntMat','mattype',3);
    128                         WriteData(fid,'object',this,'fieldname','cost_functions_coefficients','format','DoubleMat','mattype',1);
    129                         WriteData(fid,'object',this,'fieldname','gradient_scaling','format','DoubleMat','mattype',3);
    130                         WriteData(fid,'object',this,'fieldname','cost_function_threshold','format','Double');
    131                         WriteData(fid,'object',this,'fieldname','min_parameters','format','DoubleMat','mattype',3);
    132                         WriteData(fid,'object',this,'fieldname','max_parameters','format','DoubleMat','mattype',3);
    133                         WriteData(fid,'object',this,'fieldname','step_threshold','format','DoubleMat','mattype',3);
    134                         WriteData(fid,'object',this,'fieldname','vx_obs','format','DoubleMat','mattype',1,'scale',1./yts);
    135                         WriteData(fid,'object',this,'fieldname','vy_obs','format','DoubleMat','mattype',1,'scale',1./yts);
    136                         WriteData(fid,'object',this,'fieldname','vz_obs','format','DoubleMat','mattype',1,'scale',1./yts);
     126                        WriteData(fid,prefix,'object',this,'fieldname','nsteps','format','Integer');
     127                        WriteData(fid,prefix,'object',this,'fieldname','maxiter_per_step','format','IntMat','mattype',3);
     128                        WriteData(fid,prefix,'object',this,'fieldname','cost_functions_coefficients','format','DoubleMat','mattype',1);
     129                        WriteData(fid,prefix,'object',this,'fieldname','gradient_scaling','format','DoubleMat','mattype',3);
     130                        WriteData(fid,prefix,'object',this,'fieldname','cost_function_threshold','format','Double');
     131                        WriteData(fid,prefix,'object',this,'fieldname','min_parameters','format','DoubleMat','mattype',3);
     132                        WriteData(fid,prefix,'object',this,'fieldname','max_parameters','format','DoubleMat','mattype',3);
     133                        WriteData(fid,prefix,'object',this,'fieldname','step_threshold','format','DoubleMat','mattype',3);
     134                        WriteData(fid,prefix,'object',this,'fieldname','vx_obs','format','DoubleMat','mattype',1,'scale',1./yts);
     135                        WriteData(fid,prefix,'object',this,'fieldname','vy_obs','format','DoubleMat','mattype',1,'scale',1./yts);
     136                        WriteData(fid,prefix,'object',this,'fieldname','vz_obs','format','DoubleMat','mattype',1,'scale',1./yts);
    137137                        if(this.thickness_obs.length==md.mesh.numberofelements) mattype=2;
    138138                        else mattype=1;
    139                         WriteData(fid,'object',this,'class','inversion','fieldname','thickness_obs','format','DoubleMat','mattype',mattype);
    140                         WriteData(fid,'object',this,'class','inversion','fieldname','surface_obs','format','DoubleMat','mattype',mattype);
    141 
     139                        WriteData(fid,prefix,'object',this,'class','inversion','fieldname','thickness_obs','format','DoubleMat','mattype',mattype);
     140                        WriteData(fid,prefix,'object',this,'class','inversion','fieldname','surface_obs','format','DoubleMat','mattype',mattype);
    142141
    143142                        //process control parameters
    144143                        num_control_parameters=this.control_parameters.length;
    145                         data=NewArrayFill(num_control_parameters,0);
    146                         for (var i=0;i<num_control_parameters;i++){
    147                                 data[i]=StringToEnum(this.control_parameters[i]);
    148                         }
    149                         WriteData(fid,'data',data,'enum',InversionControlParametersEnum(),'format','DoubleMat','mattype',3);
    150                         WriteData(fid,'data',num_control_parameters,'enum',InversionNumControlParametersEnum(),'format','Integer');
     144                        WriteData(fid,prefix,'object',this,'fieldname','control_parameters','format','StringArray');
     145                        WriteData(fid,prefix,'data',num_control_parameters,'name','md.inversion.num_control_parameters','format','Integer');
    151146
    152147                        //process cost functions
    153148                        num_cost_functions=this.cost_functions[0].length;
    154149                        data=marshallcostfunctions(this.cost_functions);
    155                         WriteData(fid,'data',data,'enum',InversionCostFunctionsEnum(),'format','DoubleMat','mattype',3);
    156                         WriteData(fid,'data',num_cost_functions,'enum',InversionNumCostFunctionsEnum(),'format','Integer');
     150                        WriteData(fid,prefix,'data',data,'name','md.inversion.cost_functions','format','DoubleMat','mattype',3);
     151                        WriteData(fid,prefix,'data',num_cost_functions,'name','md.inversion.num_cost_functions','format','Integer');
    157152                }//}}}
    158153                this.fix=function() { //{{{
Note: See TracChangeset for help on using the changeset viewer.