Changeset 20690 for issm/trunk-jpl/src/m/classes/inversion.js
- Timestamp:
- 06/03/16 10:05:11 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/inversion.js
r19901 r20690 120 120 var yts=365.0*24.0*3600.0; 121 121 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'); 125 125 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); 137 137 if(this.thickness_obs.length==md.mesh.numberofelements) mattype=2; 138 138 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); 142 141 143 142 //process control parameters 144 143 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'); 151 146 152 147 //process cost functions 153 148 num_cost_functions=this.cost_functions[0].length; 154 149 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'); 157 152 }//}}} 158 153 this.fix=function() { //{{{
Note:
See TracChangeset
for help on using the changeset viewer.