Changeset 24165
- Timestamp:
- 09/27/19 10:50:57 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/sealevelmodel.m
r24156 r24165 22 22 mergedcaps = 0; 23 23 transitions = {}; 24 eltransitions = {}; 24 25 %}}} 25 26 end … … 85 86 slm.earth = {}; 86 87 slm.miscellaneous = miscellaneous(); 87 slm.settings = settings();88 slm.settings = issmsettings(); 88 89 slm.private = private(); 89 90 slm.cluster = generic(); 90 91 slm.range = {}; 91 92 slm.transitions = {}; 93 slm.eltransitions = {}; 92 94 end 93 95 %}}} … … 152 154 force=getfieldvalue(options,'force',0); 153 155 156 %for elements: 157 xe=self.earth.mesh.x(self.earth.mesh.elements)*[1;1;1]/3; 158 ye=self.earth.mesh.y(self.earth.mesh.elements)*[1;1;1]/3; 159 ze=self.earth.mesh.z(self.earth.mesh.elements)*[1;1;1]/3; 160 154 161 for i=1:length(self.icecaps), 155 162 mdi=self.icecaps{i}; 156 163 mdi=TwoDToThreeD(mdi); 157 164 165 %for elements: 166 xei=mdi.mesh.x(mdi.mesh.elements)*[1;1;1]/3; 167 yei=mdi.mesh.y(mdi.mesh.elements)*[1;1;1]/3; 168 zei=mdi.mesh.z(mdi.mesh.elements)*[1;1;1]/3; 169 158 170 disp(sprintf('Computing vertex intersections for basin %s',self.basins{i}.name)); 159 171 160 172 self.transitions{end+1}=meshintersect3d(self.earth.mesh.x,self.earth.mesh.y,self.earth.mesh.z,mdi.mesh.x,mdi.mesh.y,mdi.mesh.z,'force',force); 161 173 174 self.eltransitions{end+1}=meshintersect3d(xe,ye,ze,xei,yei,zei,'force',force); 162 175 end 163 176 … … 335 348 disp(sprintf('Earth: %i/%g',mvi,timei)); 336 349 end % }}} 350 function transfer(self,string) % {{{ 351 %Recover field size in one icecap: 352 eval(['n=length(self.icecaps{1}.' string ');']); 353 if n==self.icecaps{1}.mesh.numberofvertices, 354 eval(['self.earth.' string '=zeros(self.earth.mesh.numberofvertices,1);']); 355 for i=1:length(self.icecaps), 356 eval(['self.earth.' string '(self.transitions{' num2str(i) '})=self.icecaps{' num2str(i) '}.' string ';']); 357 end 358 elseif n==self.icecaps{1} .mesh.numberofelements, 359 eval(['self.earth.' string '=zeros(self.earth.mesh.numberofelements,1);']); 360 for i=1:length(self.icecaps), 361 eval(['self.earth.' string '(self.eltransitions{' num2str(i) '})=self.icecaps{' num2str(i) '}.' string ';']); 362 end 363 else 364 error('not supported yet'); 365 end 366 end % }}} 337 367 function self=homogeneize(self,noearth) % {{{ 338 368 if nargin==1,
Note:
See TracChangeset
for help on using the changeset viewer.