source: issm/oecreview/Archive/24684-25833/ISSM-24860-24861.diff

Last change on this file was 25834, checked in by Mathieu Morlighem, 4 years ago

CHG: added 24684-25833

File size: 88.8 KB
RevLine 
[25834]1Index: ../trunk-jpl/src/m/geometry/VolumeAboveFloatation.m
2===================================================================
3--- ../trunk-jpl/src/m/geometry/VolumeAboveFloatation.m (revision 24860)
4+++ ../trunk-jpl/src/m/geometry/VolumeAboveFloatation.m (revision 24861)
5@@ -32,7 +32,7 @@
6 V = areas.*(surface-base+min(rho_water/rho_ice*bathymetry,0.));
7
8 %5. take out the ones that are outside of levelset or floating
9-pos = find(min(md.mask.ice_levelset(index),[],2)>0 | min(md.mask.groundedice_levelset(index),[],2)<0);
10+pos = find(min(md.mask.ice_levelset(index),[],2)>0 | min(md.mask.ocean_levelset(index),[],2)<0);
11 V(pos) = 0;
12
13 %sum individual contributions
14Index: ../trunk-jpl/src/m/classes/groundingline.py
15===================================================================
16--- ../trunk-jpl/src/m/classes/groundingline.py (revision 24860)
17+++ ../trunk-jpl/src/m/classes/groundingline.py (revision 24861)
18@@ -51,7 +51,7 @@
19 if(not m.strcmp(self.migration, 'None') and md.transient.isgroundingline and solution == 'TransientSolution'):
20 if np.any(np.isnan(md.geometry.bed)):
21 md.checkmessage("requesting grounding line migration, but bathymetry is absent!")
22- pos = np.nonzero(md.mask.groundedice_levelset > 0.)[0]
23+ pos = np.nonzero(md.mask.ocean_levelset > 0.)[0]
24 if any(np.abs(md.geometry.base[pos] - md.geometry.bed[pos]) > 10**-10):
25 md.checkmessage("base not equal to bed on grounded ice!")
26 if any(md.geometry.bed - md.geometry.base > 10**-9):
27Index: ../trunk-jpl/src/m/classes/groundingline.m
28===================================================================
29--- ../trunk-jpl/src/m/classes/groundingline.m (revision 24860)
30+++ ../trunk-jpl/src/m/classes/groundingline.m (revision 24861)
31@@ -36,11 +36,11 @@
32 if isnan(md.geometry.bed),
33 md = checkmessage(md,['requesting grounding line migration, but bathymetry is absent!']);
34 end
35- pos=find(md.mask.groundedice_levelset>0. & md.mask.ice_levelset<=0);
36+ pos=find(md.mask.ocean_levelset>0. & md.mask.ice_levelset<=0);
37 if any(abs(md.geometry.base(pos)-md.geometry.bed(pos))>10^-10),
38 md = checkmessage(md,['base not equal to bed on grounded ice!']);
39 end
40- pos=find(md.mask.groundedice_levelset<=0. & md.mask.ice_levelset<=0);
41+ pos=find(md.mask.ocean_levelset<=0. & md.mask.ice_levelset<=0);
42 if any(md.geometry.bed(pos) - md.geometry.base(pos) > 10^-9),
43 md = checkmessage(md,['bed superior to base on floating ice!']);
44 end
45Index: ../trunk-jpl/src/m/classes/maskpsl.m
46===================================================================
47--- ../trunk-jpl/src/m/classes/maskpsl.m (revision 24860)
48+++ ../trunk-jpl/src/m/classes/maskpsl.m (revision 24861)
49@@ -5,7 +5,7 @@
50
51 classdef maskpsl
52 properties (SetAccess=public)
53- groundedice_levelset = NaN;
54+ ocean_levelset = NaN;
55 ice_levelset = NaN;
56 ocean_levelset = NaN;
57 land_levelset = NaN;
58@@ -19,7 +19,7 @@
59 end
60 methods
61 function self = extrude(self,md) % {{{
62- self.groundedice_levelset=project3d(md,'vector',self.groundedice_levelset,'type','node');
63+ self.ocean_levelset=project3d(md,'vector',self.ocean_levelset,'type','node');
64 self.ice_levelset=project3d(md,'vector',self.ice_levelset,'type','node');
65 self.ocean_levelset=project3d(md,'vector',self.ocean_levelset,'type','node');
66 self.land_levelset=project3d(md,'vector',self.land_levelset,'type','node');
67@@ -39,7 +39,7 @@
68
69 if strcmpi(solution,'LoveSolution'), return; end;
70
71- md = checkfield(md,'fieldname','mask.groundedice_levelset','size',[md.mesh.numberofvertices 1]);
72+ md = checkfield(md,'fieldname','mask.ocean_levelset','size',[md.mesh.numberofvertices 1]);
73 md = checkfield(md,'fieldname','mask.ice_levelset' ,'size',[md.mesh.numberofvertices 1]);
74 md = checkfield(md,'fieldname','mask.ocean_levelset','size',[md.mesh.numberofvertices 1]);
75 md = checkfield(md,'fieldname','mask.land_levelset','size',[md.mesh.numberofvertices 1]);
76@@ -46,7 +46,7 @@
77 end % }}}
78 function disp(self) % {{{
79 disp(sprintf(' masks:'));
80- fielddisplay(self,'groundedice_levelset','is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0');
81+ fielddisplay(self,'ocean_levelset','is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0');
82 fielddisplay(self,'ice_levelset','presence of ice if < 0, icefront position if = 0, no ice if > 0');
83 fielddisplay(self,'ocean_levelset','is the vertex on the ocean ? yes if = 1, no if = 0');
84 fielddisplay(self,'land_levelset','is the vertex on the land ? yes if = 1, no if = 0');
85@@ -54,7 +54,7 @@
86 end % }}}
87 function marshall(self,prefix,md,fid) % {{{
88 WriteData(fid,prefix,'name','md.mask.type','data',class(md.mask),'format','String');
89- WriteData(fid,prefix,'object',self,'class','mask','fieldname','groundedice_levelset','format','DoubleMat','mattype',1);
90+ WriteData(fid,prefix,'object',self,'class','mask','fieldname','ocean_levelset','format','DoubleMat','mattype',1);
91 WriteData(fid,prefix,'object',self,'class','mask','fieldname','ice_levelset','format','DoubleMat','mattype',1);
92 WriteData(fid,prefix,'object',self,'class','mask','fieldname','ocean_levelset','format','DoubleMat','mattype',1);
93 WriteData(fid,prefix,'object',self,'class','mask','fieldname','land_levelset','format','DoubleMat','mattype',1);
94@@ -61,7 +61,7 @@
95 end % }}}
96 function savemodeljs(self,fid,modelname) % {{{
97 fprintf(fid,'%s.mask=new maskpsl();\n',modelname);
98- writejs1Darray(fid,[modelname '.mask.groundedice_levelset'],self.groundedice_levelset);
99+ writejs1Darray(fid,[modelname '.mask.ocean_levelset'],self.ocean_levelset);
100 writejs1Darray(fid,[modelname '.mask.ice_levelset'],self.ice_levelset);
101 writejs1Darray(fid,[modelname '.mask.ocean_levelset'],self.ocean_levelset);
102 writejs1Darray(fid,[modelname '.mask.land_levelset'],self.land_levelset);
103Index: ../trunk-jpl/src/m/classes/geometry.m
104===================================================================
105--- ../trunk-jpl/src/m/classes/geometry.m (revision 24860)
106+++ ../trunk-jpl/src/m/classes/geometry.m (revision 24861)
107@@ -71,7 +71,7 @@
108 if any(self.bed-self.base>10^-12),
109 md = checkmessage(md,['base<bed on one or more vertex']);
110 end
111- pos = find(md.mask.groundedice_levelset>0);
112+ pos = find(md.mask.ocean_levelset>0);
113 if any(abs(self.bed(pos)-self.base(pos))>10^-9),
114 md = checkmessage(md,['equality base=bed on grounded ice violated']);
115 end
116Index: ../trunk-jpl/src/m/classes/stressbalance.m
117===================================================================
118--- ../trunk-jpl/src/m/classes/stressbalance.m (revision 24860)
119+++ ../trunk-jpl/src/m/classes/stressbalance.m (revision 24861)
120@@ -100,7 +100,7 @@
121 md = checkfield(md,'fieldname','stressbalance.vertex_pairing','>',0);
122 end
123 %singular solution
124- if ((~(any(~isnan(md.stressbalance.spcvx)) | any(~isnan(md.stressbalance.spcvy)))) & ~any(md.mask.groundedice_levelset>0)),
125+ if ((~(any(~isnan(md.stressbalance.spcvx)) | any(~isnan(md.stressbalance.spcvy)))) & ~any(md.mask.ocean_levelset>0)),
126 disp(sprintf('\n !!! Warning: no spc applied, model might not be well posed if no basal friction is applied, check for solution crash\n'));
127 end
128 %CHECK THAT EACH LINES CONTAINS ONLY NAN VALUES OR NO NAN VALUES
129@@ -116,7 +116,7 @@
130 end
131 %CHECK THAT NO rotation specified for FS Grounded ice at base
132 if strcmp(domaintype(md.mesh),'3D') & md.flowequation.isFS,
133- pos=find(md.mask.groundedice_levelset>0. & md.mesh.vertexonbase);
134+ pos=find(md.mask.ocean_levelset>0. & md.mesh.vertexonbase);
135 if any(~isnan(md.stressbalance.referential(pos,:))),
136 md = checkmessage(md,['no referential should be specified for basal vertices of grounded ice']);
137 end
138Index: ../trunk-jpl/src/m/classes/mask.m
139===================================================================
140--- ../trunk-jpl/src/m/classes/mask.m (revision 24860)
141+++ ../trunk-jpl/src/m/classes/mask.m (revision 24861)
142@@ -5,7 +5,7 @@
143
144 classdef mask
145 properties (SetAccess=public)
146- groundedice_levelset = NaN;
147+ ocean_levelset = NaN;
148 ice_levelset = NaN;
149 end
150 methods (Static)
151@@ -22,7 +22,7 @@
152 end
153 methods
154 function self = extrude(self,md) % {{{
155- self.groundedice_levelset=project3d(md,'vector',self.groundedice_levelset,'type','node');
156+ self.ocean_levelset=project3d(md,'vector',self.ocean_levelset,'type','node');
157 self.ice_levelset=project3d(md,'vector',self.ice_levelset,'type','node');
158 end % }}}
159 function self = mask(varargin) % {{{
160@@ -39,7 +39,7 @@
161 function md = checkconsistency(self,md,solution,analyses) % {{{
162 if strcmpi(solution,'LoveSolution'), return; end;
163
164- md = checkfield(md,'fieldname','mask.groundedice_levelset','timeseries',1,'NaN',1);
165+ md = checkfield(md,'fieldname','mask.ocean_levelset','timeseries',1,'NaN',1);
166 md = checkfield(md,'fieldname','mask.ice_levelset','NaN',1,'size',[md.mesh.numberofvertices 1]);
167 isice=(md.mask.ice_levelset<=0);
168 if sum(isice)==0,
169@@ -49,16 +49,16 @@
170 function disp(self) % {{{
171 disp(sprintf(' masks:'));
172
173- fielddisplay(self,'groundedice_levelset','is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0');
174+ fielddisplay(self,'ocean_levelset','is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0');
175 fielddisplay(self,'ice_levelset','presence of ice if < 0, icefront position if = 0, no ice if > 0');
176 end % }}}
177 function marshall(self,prefix,md,fid) % {{{
178- WriteData(fid,prefix,'object',self,'fieldname','groundedice_levelset','format','DoubleMat','mattype',1,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts);
179+ WriteData(fid,prefix,'object',self,'fieldname','ocean_levelset','format','DoubleMat','mattype',1,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts);
180 WriteData(fid,prefix,'object',self,'fieldname','ice_levelset','format','DoubleMat','mattype',1);
181 end % }}}
182 function savemodeljs(self,fid,modelname) % {{{
183
184- writejs1Darray(fid,[modelname '.mask.groundedice_levelset'],self.groundedice_levelset);
185+ writejs1Darray(fid,[modelname '.mask.ocean_levelset'],self.ocean_levelset);
186 writejs1Darray(fid,[modelname '.mask.ice_levelset'],self.ice_levelset);
187
188 end % }}}
189Index: ../trunk-jpl/src/m/classes/maskpsl.py
190===================================================================
191--- ../trunk-jpl/src/m/classes/maskpsl.py (revision 24860)
192+++ ../trunk-jpl/src/m/classes/maskpsl.py (revision 24861)
193@@ -13,7 +13,7 @@
194 # maskpsl = maskpsl()
195
196 def __init__(self, *args): # {{{
197- self.groundedice_levelset = float('NaN')
198+ self.ocean_levelset = float('NaN')
199 self.ice_levelset = float('NaN')
200 self.ocean_levelset = float('NaN')
201 self.land_levelset = float('NaN')
202@@ -26,7 +26,7 @@
203
204 def __repr__(self): # {{{
205 string = ' masks:'
206- string = "%s\n%s" % (string, fielddisplay(self, 'groundedice_levelset', 'is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0'))
207+ string = "%s\n%s" % (string, fielddisplay(self, 'ocean_levelset', 'is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0'))
208 string = "%s\n%s" % (string, fielddisplay(self, 'ice_levelset', 'presence of ice if < 0, icefront position if = 0, no ice if > 0'))
209 string = "%s\n%s" % (string, fielddisplay(self, 'ocean_levelset', 'is the vertex on the ocean ? yes if = 1, no if = 0'))
210 string = "%s\n%s" % (string, fielddisplay(self, 'land_levelset', 'is the vertex on the land ? yes if = 1, no if = 0'))
211@@ -49,7 +49,7 @@
212 # }}}
213
214 def checkconsistency(self, md, solution, analyses): # {{{
215- md = checkfield(md, 'fieldname', 'mask.groundedice_levelset', 'size', [md.mesh.numberofvertices])
216+ md = checkfield(md, 'fieldname', 'mask.ocean_levelset', 'size', [md.mesh.numberofvertices])
217 md = checkfield(md, 'fieldname', 'mask.ice_levelset', 'size', [md.mesh.numberofvertices])
218 md = checkfield(md, 'fieldname', 'mask.ocean_levelset', 'size', [md.mesh.numberofvertices])
219 md = checkfield(md, 'fieldname', 'mask.land_levelset', 'size', [md.mesh.numberofvertices])
220@@ -71,7 +71,7 @@
221 # }}}
222
223 def extrude(self, md): # {{{
224- self.groundedice_levelset = project3d(md, 'vector', self.groundedice_levelset, 'type', 'node')
225+ self.ocean_levelset = project3d(md, 'vector', self.ocean_levelset, 'type', 'node')
226 self.ice_levelset = project3d(md, 'vector', self.ice_levelset, 'type', 'node')
227 self.ocean_levelset = project3d(md, 'vector', self.ocean_levelset, 'type', 'node')
228 self.land_levelset = project3d(md, 'vector', self.land_levelset, 'type', 'node')
229@@ -89,7 +89,7 @@
230
231 def marshall(self, prefix, md, fid): # {{{
232 WriteData(fid, prefix, 'name', 'md.mask.type', 'data', type(md.mask).__name__, 'format', 'String')
233- WriteData(fid, prefix, 'object', self, 'class', 'mask', 'fieldname', 'groundedice_levelset', 'format', 'DoubleMat', 'mattype', 1)
234+ WriteData(fid, prefix, 'object', self, 'class', 'mask', 'fieldname', 'ocean_levelset', 'format', 'DoubleMat', 'mattype', 1)
235 WriteData(fid, prefix, 'object', self, 'class', 'mask', 'fieldname', 'ice_levelset', 'format', 'DoubleMat', 'mattype', 1)
236 WriteData(fid, prefix, 'object', self, 'class', 'mask', 'fieldname', 'ocean_levelset', 'format', 'DoubleMat', 'mattype', 1)
237 WriteData(fid, prefix, 'object', self, 'class', 'mask', 'fieldname', 'land_levelset', 'format', 'DoubleMat', 'mattype', 1)
238@@ -96,7 +96,7 @@
239 # }}}
240
241 def savemodeljs(self, fid, modelname): # {{{
242- writejs1Darray(fid, [modelname, '.mask.groundedice_levelset'], self.groundedice_levelset)
243+ writejs1Darray(fid, [modelname, '.mask.ocean_levelset'], self.ocean_levelset)
244 writejs1Darray(fid, [modelname, '.mask.ice_levelset'], self.ice_levelset)
245 writejs1Darray(fid, [modelname, '.mask.ocean_levelset'], self.ocean_levelset)
246 writejs1Darray(fid, [modelname, '.mask.land_levelset'], self.land_levelset)
247Index: ../trunk-jpl/src/m/classes/flowequation.py
248===================================================================
249--- ../trunk-jpl/src/m/classes/flowequation.py (revision 24860)
250+++ ../trunk-jpl/src/m/classes/flowequation.py (revision 24861)
251@@ -119,7 +119,7 @@
252
253 if 'StressbalanceSIAAnalysis' in analyses:
254 if any(self.element_equation == 1):
255- if np.any(np.logical_and(self.vertex_equation, md.mask.groundedice_levelset)):
256+ if np.any(np.logical_and(self.vertex_equation, md.mask.ocean_levelset)):
257 print("\n !!! Warning: SIA's model is not consistent on ice shelves !!!\n")
258
259 return md
260Index: ../trunk-jpl/src/m/classes/geometry.py
261===================================================================
262--- ../trunk-jpl/src/m/classes/geometry.py (revision 24860)
263+++ ../trunk-jpl/src/m/classes/geometry.py (revision 24861)
264@@ -63,7 +63,7 @@
265 md = checkfield(md, 'fieldname', 'geometry.bed', 'NaN', 1, 'Inf', 1, 'size', [md.mesh.numberofvertices])
266 if np.any(self.bed - self.base > 10**-12):
267 md.checkmessage('base < bed on one or more vertex')
268- pos = np.where(md.mask.groundedice_levelset > 0)
269+ pos = np.where(md.mask.ocean_levelset > 0)
270 if np.any(np.abs(self.bed[pos] - self.base[pos]) > 10**-9):
271 md.checkmessage('equality base = bed on grounded ice violated')
272 md = checkfield(md, 'fieldname', 'geometry.bed', 'NaN', 1, 'Inf', 1, 'size', [md.mesh.numberofvertices])
273Index: ../trunk-jpl/src/m/classes/model.py
274===================================================================
275--- ../trunk-jpl/src/m/classes/model.py (revision 24860)
276+++ ../trunk-jpl/src/m/classes/model.py (revision 24861)
277@@ -840,7 +840,7 @@
278 md.geometry.base = project2d(md, md.geometry.base, 1)
279 if isinstance(md.geometry.bed, np.ndarray):
280 md.geometry.bed = project2d(md, md.geometry.bed, 1)
281- md.mask.groundedice_levelset = project2d(md, md.mask.groundedice_levelset, 1)
282+ md.mask.ocean_levelset = project2d(md, md.mask.ocean_levelset, 1)
283 md.mask.ice_levelset = project2d(md, md.mask.ice_levelset, 1)
284
285 #OutputDefinitions
286Index: ../trunk-jpl/src/m/classes/stressbalance.py
287===================================================================
288--- ../trunk-jpl/src/m/classes/stressbalance.py (revision 24860)
289+++ ../trunk-jpl/src/m/classes/stressbalance.py (revision 24861)
290@@ -155,7 +155,7 @@
291 md.checkmessage("Vectors in stressbalance.referential (columns 1 to 3 and 4 to 6) must be orthogonal")
292 #CHECK THAT NO rotation specified for FS Grounded ice at base
293 if m.strcmp(md.mesh.domaintype(), '3D') and md.flowequation.isFS:
294- pos = np.nonzero(np.logical_and(md.mask.groundedice_levelset, md.mesh.vertexonbase))
295+ pos = np.nonzero(np.logical_and(md.mask.ocean_levelset, md.mesh.vertexonbase))
296 if np.any(np.logical_not(np.isnan(md.stressbalance.referential[pos, :]))):
297 md.checkmessage("no referential should be specified for basal vertices of grounded ice")
298
299Index: ../trunk-jpl/src/m/classes/mask.py
300===================================================================
301--- ../trunk-jpl/src/m/classes/mask.py (revision 24860)
302+++ ../trunk-jpl/src/m/classes/mask.py (revision 24861)
303@@ -15,7 +15,7 @@
304
305 def __init__(self): # {{{
306 self.ice_levelset = float('NaN')
307- self.groundedice_levelset = float('NaN')
308+ self.ocean_levelset = float('NaN')
309
310 #set defaults
311 self.setdefaultparameters()
312@@ -25,7 +25,7 @@
313 def __repr__(self): # {{{
314 string = " masks:"
315
316- string = "%s\n%s" % (string, fielddisplay(self, "groundedice_levelset", "is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0"))
317+ string = "%s\n%s" % (string, fielddisplay(self, "ocean_levelset", "is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0"))
318 string = "%s\n%s" % (string, fielddisplay(self, "ice_levelset", "presence of ice if < 0, icefront position if = 0, no ice if > 0"))
319 return string
320 #}}}
321@@ -32,7 +32,7 @@
322
323 def extrude(self, md): # {{{
324 self.ice_levelset = project3d(md, 'vector', self.ice_levelset, 'type', 'node')
325- self.groundedice_levelset = project3d(md, 'vector', self.groundedice_levelset, 'type', 'node')
326+ self.ocean_levelset = project3d(md, 'vector', self.ocean_levelset, 'type', 'node')
327 return self
328 #}}}
329
330@@ -53,6 +53,6 @@
331 # }}}
332
333 def marshall(self, prefix, md, fid): # {{{
334- WriteData(fid, prefix, 'object', self, 'fieldname', 'groundedice_levelset', 'format', 'DoubleMat', 'mattype', 1)
335+ WriteData(fid, prefix, 'object', self, 'fieldname', 'ocean_levelset', 'format', 'DoubleMat', 'mattype', 1)
336 WriteData(fid, prefix, 'object', self, 'fieldname', 'ice_levelset', 'format', 'DoubleMat', 'mattype', 1)
337 # }}}
338Index: ../trunk-jpl/src/m/classes/flowequation.m
339===================================================================
340--- ../trunk-jpl/src/m/classes/flowequation.m (revision 24860)
341+++ ../trunk-jpl/src/m/classes/flowequation.m (revision 24861)
342@@ -128,7 +128,7 @@
343 end
344 if ismember('StressbalanceSIAAnalysis',analyses),
345 if any(self.element_equation==1),
346- if(self.vertex_equation & md.mask.groundedice_levelset<0.),
347+ if(self.vertex_equation & md.mask.ocean_levelset<0.),
348 disp(sprintf('\n !!! Warning: SIA''s model is not consistent on ice shelves !!!\n'));
349 end
350 end
351Index: ../trunk-jpl/src/m/classes/model.m
352===================================================================
353--- ../trunk-jpl/src/m/classes/model.m (revision 24860)
354+++ ../trunk-jpl/src/m/classes/model.m (revision 24861)
355@@ -362,8 +362,8 @@
356 md.geometry.bed=project2d(md,md.geometry.bed,1);
357 end
358
359- if ~isnan(md.mask.groundedice_levelset),
360- md.mask.groundedice_levelset=project2d(md,md.mask.groundedice_levelset,1);
361+ if ~isnan(md.mask.ocean_levelset),
362+ md.mask.ocean_levelset=project2d(md,md.mask.ocean_levelset,1);
363 end
364 if ~isnan(md.mask.ice_levelset),
365 md.mask.ice_levelset=project2d(md,md.mask.ice_levelset,1);
366Index: ../trunk-jpl/src/m/contrib/morlighem/dassflow/exportgmsh.m
367===================================================================
368--- ../trunk-jpl/src/m/contrib/morlighem/dassflow/exportgmsh.m (revision 24860)
369+++ ../trunk-jpl/src/m/contrib/morlighem/dassflow/exportgmsh.m (revision 24861)
370@@ -1,13 +1,13 @@
371-function exportgmsh(mesh,groundedice_levelset,filename),
372+function exportgmsh(mesh,ocean_levelset,filename),
373 %EXPORTGMSH - export mesh to gmsh format
374 %
375 % http://www.geuz.org/gmsh/doc/texinfo/#MSH-ASCII-file-format
376 %
377 % Usage:
378-% exportgmsh(mesh,groundedice_levelset,filename)
379+% exportgmsh(mesh,ocean_levelset,filename)
380 %
381 % Example:
382-% exportgmsh(md.mesh,md.mask.groundedice_levelset,'temp.msh')
383+% exportgmsh(md.mesh,md.mask.ocean_levelset,'temp.msh')
384
385 fid=fopen(filename,'w');
386
387@@ -30,7 +30,7 @@
388 tria = 2;
389
390 %Create flags
391-grounded = sum(groundedice_levelset(mesh.segments(:,1:2))>0,2);
392+grounded = sum(ocean_levelset(mesh.segments(:,1:2))>0,2);
393 A = zeros(nbs,2);
394 pos = find(mesh.segmentmarkers==4);
395 A(pos,:)=repmat([1,4],[numel(pos) 1]);
396Index: ../trunk-jpl/src/m/contrib/larour/ecco/MeltingGroundingLines.m
397===================================================================
398--- ../trunk-jpl/src/m/contrib/larour/ecco/MeltingGroundingLines.m (revision 24860)
399+++ ../trunk-jpl/src/m/contrib/larour/ecco/MeltingGroundingLines.m (revision 24861)
400@@ -6,7 +6,7 @@
401 %
402
403 %get nodes on ice sheet and on ice shelf
404-pos_shelf=find(md.mask.groundedice_levelset<0.);
405+pos_shelf=find(md.mask.ocean_levelset<0.);
406 pos_GL=intersect(unique(md.mesh.elements(find(md.mask.elementongroundedice),:)),unique(md.mesh.elements(find(md.mask.elementonfloatingice),:)));
407
408 for i=1:length(pos_shelf)
409Index: ../trunk-jpl/src/m/contrib/tsantos/mismip/gl_position.m
410===================================================================
411--- ../trunk-jpl/src/m/contrib/tsantos/mismip/gl_position.m (revision 24860)
412+++ ../trunk-jpl/src/m/contrib/tsantos/mismip/gl_position.m (revision 24861)
413@@ -2,7 +2,7 @@
414
415 %initialization of some variables
416 if isfield(md.results,'TransientSolution')
417- data = md.results.TransientSolution(step).MaskGroundediceLevelset;
418+ data = md.results.TransientSolution(step).MaskOceanLevelset;
419 if isfield(md.results.TransientSolution,'MeshElements')
420 index = md.results.TransientSolution(step).MeshElements;
421 x = md.results.TransientSolution(step).MeshX;
422@@ -13,7 +13,7 @@
423 y = md.mesh.y;
424 end
425 else
426- data = md.mask.groundedice_levelset;
427+ data = md.mask.ocean_levelset;
428 index = md.mesh.elements;
429 x = md.mesh.x;
430 y = md.mesh.y;
431Index: ../trunk-jpl/src/m/contrib/tsantos/mismip/gl_position_static.m
432===================================================================
433--- ../trunk-jpl/src/m/contrib/tsantos/mismip/gl_position_static.m (revision 24860)
434+++ ../trunk-jpl/src/m/contrib/tsantos/mismip/gl_position_static.m (revision 24861)
435@@ -2,7 +2,7 @@
436
437 %initialization of some variables
438 if isfield(md.results,'TransientSolution') & false
439- data = md.results.TransientSolution(step).MaskGroundediceLevelset;
440+ data = md.results.TransientSolution(step).MaskOceanLevelset;
441 if isfield(md.results.TransientSolution,'MeshElements')
442 index = md.results.TransientSolution(step).MeshElements;
443 x = md.results.TransientSolution(step).MeshX;
444@@ -13,7 +13,7 @@
445 y = md.mesh.y;
446 end
447 else
448- data = md.mask.groundedice_levelset;
449+ data = md.mask.ocean_levelset;
450 index = md.mesh.elements;
451 x = md.mesh.x;
452 y = md.mesh.y;
453Index: ../trunk-jpl/src/m/contrib/tsantos/remesh.m
454===================================================================
455--- ../trunk-jpl/src/m/contrib/tsantos/remesh.m (revision 24860)
456+++ ../trunk-jpl/src/m/contrib/tsantos/remesh.m (revision 24861)
457@@ -62,7 +62,7 @@
458 NewModel.geometry.base = md.results.TransientSolution(time_step).Base;
459 NewModel.geometry.bed = md.results.TransientSolution(time_step).Bed;%md.geometry.bed; %use from parameterize
460 NewModel.geometry.thickness = md.results.TransientSolution(time_step).Thickness;
461-NewModel.mask.groundedice_levelset = md.results.TransientSolution(time_step).MaskGroundediceLevelset;
462+NewModel.mask.ocean_levelset = md.results.TransientSolution(time_step).MaskOceanLevelset;
463
464 %copy other data
465 NewModel.miscellaneous = md.miscellaneous;
466Index: ../trunk-jpl/src/m/boundaryconditions/SetMarineIceSheetBC.py
467===================================================================
468--- ../trunk-jpl/src/m/boundaryconditions/SetMarineIceSheetBC.py (revision 24860)
469+++ ../trunk-jpl/src/m/boundaryconditions/SetMarineIceSheetBC.py (revision 24861)
470@@ -31,7 +31,7 @@
471 else:
472 #Guess where the ice front is
473 vertexonfloatingice = np.zeros((md.mesh.numberofvertices))
474- pos = np.nonzero(np.sum(md.mask.groundedice_levelset[md.mesh.elements - 1] < 0., axis=1) > 0.)[0]
475+ pos = np.nonzero(np.sum(md.mask.ocean_levelset[md.mesh.elements - 1] < 0., axis=1) > 0.)[0]
476 vertexonfloatingice[md.mesh.elements[pos].astype(int) - 1] = 1.
477 vertexonicefront = np.logical_and(np.reshape(md.mesh.vertexonboundary, (-1, )), vertexonfloatingice > 0.)
478
479@@ -102,7 +102,7 @@
480 md.thermal.spctemperature[pos] = md.initialization.temperature[pos] #impose observed temperature on surface
481 if not isinstance(md.basalforcings.geothermalflux, np.ndarray) or not np.size(md.basalforcings.geothermalflux, axis=0) == md.mesh.numberofvertices:
482 md.basalforcings.geothermalflux = np.zeros((md.mesh.numberofvertices))
483- md.basalforcings.geothermalflux[np.nonzero(md.mask.groundedice_levelset > 0.)] = 50. * 10.**- 3 #50mW / m2
484+ md.basalforcings.geothermalflux[np.nonzero(md.mask.ocean_levelset > 0.)] = 50. * 10.**- 3 #50mW / m2
485 else:
486 print(" no thermal boundary conditions created: no observed temperature found")
487
488Index: ../trunk-jpl/src/m/boundaryconditions/SetMarineIceSheetBC.m
489===================================================================
490--- ../trunk-jpl/src/m/boundaryconditions/SetMarineIceSheetBC.m (revision 24860)
491+++ ../trunk-jpl/src/m/boundaryconditions/SetMarineIceSheetBC.m (revision 24861)
492@@ -32,7 +32,7 @@
493 vertexonicefront=double(md.mesh.vertexonboundary & incontour);
494 else
495 %Guess where the ice front is
496- pos=find(sum(md.mask.groundedice_levelset(md.mesh.elements)<0.,2) >0.);
497+ pos=find(sum(md.mask.ocean_levelset(md.mesh.elements)<0.,2) >0.);
498 vertexonfloatingice=zeros(md.mesh.numberofvertices,1);
499 vertexonfloatingice(md.mesh.elements(pos,:))=1.;
500 vertexonicefront=double(md.mesh.vertexonboundary & vertexonfloatingice);
501@@ -101,7 +101,7 @@
502 end
503 if (length(md.basalforcings.geothermalflux)~=md.mesh.numberofvertices),
504 md.basalforcings.geothermalflux=zeros(md.mesh.numberofvertices,1);
505- md.basalforcings.geothermalflux(find(md.mask.groundedice_levelset>0.))=50.*10.^-3; %50mW/m2
506+ md.basalforcings.geothermalflux(find(md.mask.ocean_levelset>0.))=50.*10.^-3; %50mW/m2
507 end
508 else
509 disp(' no thermal boundary conditions created: no observed temperature found');
510Index: ../trunk-jpl/src/m/mesh/modelmerge2d.m
511===================================================================
512--- ../trunk-jpl/src/m/mesh/modelmerge2d.m (revision 24860)
513+++ ../trunk-jpl/src/m/mesh/modelmerge2d.m (revision 24861)
514@@ -94,7 +94,7 @@
515
516 %now we can go through classes and transfer.
517 md=transfer_fields(md,md1,md2,'geometry',{'thickness','surface','bed','base'});
518- md=transfer_fields(md,md1,md2,'mask',{'groundedice_levelset','ice_levelset','ocean_levelset','land_levelset','glacier_levelset'});
519+ md=transfer_fields(md,md1,md2,'mask',{'ocean_levelset','ice_levelset','ocean_levelset','land_levelset','glacier_levelset'});
520 md=transfer_fields(md,md1,md2,'smb',{'mass_balance'});
521 if strcmpi(class(md1.basalforcings),'linearbasalforcings'),
522 md=transfer_fields(md,md1,md2,'basalforcings',{'groundedice_melting_rate','geothermalflux'});
523Index: ../trunk-jpl/src/m/mesh/TwoDToThreeD.m
524===================================================================
525--- ../trunk-jpl/src/m/mesh/TwoDToThreeD.m (revision 24860)
526+++ ../trunk-jpl/src/m/mesh/TwoDToThreeD.m (revision 24861)
527@@ -37,5 +37,5 @@
528 md.mask=mask;
529 else
530 md.mask.ice_levelset=mask.ice_levelset;
531- md.mask.groundedice_levelset=mask.groundedice_levelset;
532+ md.mask.ocean_levelset=mask.ocean_levelset;
533 end
534Index: ../trunk-jpl/src/m/regional/BasinConstrainShelf.m
535===================================================================
536--- ../trunk-jpl/src/m/regional/BasinConstrainShelf.m (revision 24860)
537+++ ../trunk-jpl/src/m/regional/BasinConstrainShelf.m (revision 24861)
538@@ -65,7 +65,7 @@
539 md.stressbalance.spcvy(pos)=md.inversion.vy_obs(pos);
540
541 %iceshelves: any vertex on floating ice is spc'd
542-pos=find(md.mask.groundedice_levelset<0.);
543+pos=find(md.mask.ocean_levelset<0.);
544 md.stressbalance.spcvx(pos)=md.inversion.vx_obs(pos);
545 md.stressbalance.spcvy(pos)=md.inversion.vy_obs(pos);
546
547Index: ../trunk-jpl/src/m/miscellaneous/diagnostics.m
548===================================================================
549--- ../trunk-jpl/src/m/miscellaneous/diagnostics.m (revision 24860)
550+++ ../trunk-jpl/src/m/miscellaneous/diagnostics.m (revision 24861)
551@@ -34,7 +34,7 @@
552
553 %grounding line :
554 if getfieldvalue(options,'gl',0),
555- contours=contourlevelzero(md,md.mask.groundedice_levelset,0);
556+ contours=contourlevelzero(md,md.mask.ocean_levelset,0);
557 expwrite(contours,[path '/groundingline.exp']);
558 exp2shp([path '/groundingline.shp'],[path '/groundingline.exp']);
559 end
560Index: ../trunk-jpl/src/m/miscellaneous/transientrestart.m
561===================================================================
562--- ../trunk-jpl/src/m/miscellaneous/transientrestart.m (revision 24860)
563+++ ../trunk-jpl/src/m/miscellaneous/transientrestart.m (revision 24861)
564@@ -54,8 +54,8 @@
565 end
566
567 %Update mask
568-if isfield(results,'MaskGroundediceLevelset'),
569- md.mask.groundedice_levelset = results.MaskGroundediceLevelset;
570+if isfield(results,'MaskOceanLevelset'),
571+ md.mask.ocean_levelset = results.MaskOceanLevelset;
572 end
573 if isfield(results,'MaskIceLevelset'),
574 md.mask.ice_levelset = results.MaskIceLevelset;
575Index: ../trunk-jpl/src/m/parameterization/sethydrostaticmask.py
576===================================================================
577--- ../trunk-jpl/src/m/parameterization/sethydrostaticmask.py (revision 24860)
578+++ ../trunk-jpl/src/m/parameterization/sethydrostaticmask.py (revision 24861)
579@@ -3,7 +3,7 @@
580
581 def setmask(md):
582 """
583- SETHYDROSTATICMASK - establish groundedice_levelset field
584+ SETHYDROSTATICMASK - establish ocean_levelset field
585
586 Determines grounded and floating ice position based on
587 md.geometry.bed and md.geometry.thickness
588@@ -19,13 +19,13 @@
589 raise IOError("hydrostaticmask error message: fields in md.geometry do not have the right size.")
590
591 # grounded ice level set
592- md.mask.groundedice_levelset = md.geometry.thickness + md.geometry.bed * md.materials.rho_water / md.materials.rho_ice
593+ md.mask.ocean_levelset = md.geometry.thickness + md.geometry.bed * md.materials.rho_water / md.materials.rho_ice
594
595 #Check consistency of geometry
596- if any(md.geometry.base[np.nonzero(md.mask.groundedice_levelset > 0.)] != md.geometry.bed[np.nonzero(md.mask.groundedice_levelset > 0.)]):
597+ if any(md.geometry.base[np.nonzero(md.mask.ocean_levelset > 0.)] != md.geometry.bed[np.nonzero(md.mask.ocean_levelset > 0.)]):
598 print("WARNING: md.geometry.bed and md.geometry.base not equal on grounded ice")
599
600- if any(md.geometry.base[np.nonzero(md.mask.groundedice_levelset <= 0.)] < md.geometry.bed[np.nonzero(md.mask.groundedice_levelset <= 0.)]):
601+ if any(md.geometry.base[np.nonzero(md.mask.ocean_levelset <= 0.)] < md.geometry.bed[np.nonzero(md.mask.ocean_levelset <= 0.)]):
602 print("WARNING: md.geometry.base < md.geometry.bed on floating ice")
603
604 return md
605Index: ../trunk-jpl/src/m/parameterization/setmask.py
606===================================================================
607--- ../trunk-jpl/src/m/parameterization/setmask.py (revision 24860)
608+++ ../trunk-jpl/src/m/parameterization/setmask.py (revision 24861)
609@@ -55,8 +55,8 @@
610 #}}}
611
612 #level sets
613- md.mask.groundedice_levelset = -1. * np.ones(md.mesh.numberofvertices)
614- md.mask.groundedice_levelset[md.mesh.elements[np.nonzero(elementongroundedice), :] - 1] = 1.
615+ md.mask.ocean_levelset = -1. * np.ones(md.mesh.numberofvertices)
616+ md.mask.ocean_levelset[md.mesh.elements[np.nonzero(elementongroundedice), :] - 1] = 1.
617
618 if(len(args)):
619 md.mask.ice_levelset = 1. * np.ones(md.mesh.numberofvertices)
620Index: ../trunk-jpl/src/m/parameterization/sethydrostaticmask.m
621===================================================================
622--- ../trunk-jpl/src/m/parameterization/sethydrostaticmask.m (revision 24860)
623+++ ../trunk-jpl/src/m/parameterization/sethydrostaticmask.m (revision 24861)
624@@ -1,5 +1,5 @@
625 function md=sethydrostaticmask(md)
626-%SETHYDROSTATICMASK - establish groundedice_levelset field
627+%SETHYDROSTATICMASK - establish ocean_levelset field
628 %
629 % Determines grounded and floating ice position based on
630 % md.geometry.bed and md.geometry.thickness
631@@ -15,15 +15,15 @@
632 end
633
634 %grounded ice level set
635-md.mask.groundedice_levelset=md.geometry.thickness+md.geometry.bed*md.materials.rho_water/md.materials.rho_ice;
636+md.mask.ocean_levelset=md.geometry.thickness+md.geometry.bed*md.materials.rho_water/md.materials.rho_ice;
637
638 %Check consistency of geometry
639-pos=find(md.mask.groundedice_levelset>0);
640+pos=find(md.mask.ocean_levelset>0);
641 if(any(md.geometry.base(pos)~=md.geometry.bed(pos))),
642 disp('WARNING: md.geometry.bed and md.geometry.base not equal on grounded ice');
643 end
644
645-pos=find(md.mask.groundedice_levelset<=0);
646+pos=find(md.mask.ocean_levelset<=0);
647 if(any(md.geometry.base(pos)<md.geometry.bed(pos))),
648 disp('WARNING: md.geometry.base < md.geometry.bed on floating ice');
649 end
650Index: ../trunk-jpl/src/m/parameterization/setmask.m
651===================================================================
652--- ../trunk-jpl/src/m/parameterization/setmask.m (revision 24860)
653+++ ../trunk-jpl/src/m/parameterization/setmask.m (revision 24861)
654@@ -52,8 +52,8 @@
655 %}}}
656
657 %level sets
658-md.mask.groundedice_levelset=vertexongroundedice;
659-md.mask.groundedice_levelset(find(vertexongroundedice==0.))=-1.;
660+md.mask.ocean_levelset=vertexongroundedice;
661+md.mask.ocean_levelset(find(vertexongroundedice==0.))=-1.;
662
663 if(nargin>3)
664 if(varargin(1)=='icedomain')
665Index: ../trunk-jpl/src/m/parameterization/killberg.m
666===================================================================
667--- ../trunk-jpl/src/m/parameterization/killberg.m (revision 24860)
668+++ ../trunk-jpl/src/m/parameterization/killberg.m (revision 24861)
669@@ -2,7 +2,7 @@
670 function ice_levelset = killberg(md)
671 %KILLBERG - kill ice berg
672 %
673-% check md.mask.ice_levelset and md.mask.groundedice_levelset and
674+% check md.mask.ice_levelset and md.mask.ocean_levelset and
675 % remove icebergs from md.mask.ice_levelset. This function is adapted
676 % from src/c/modules/KillIcebergsx/KillIcebergsx.cpp
677 %
678@@ -24,7 +24,7 @@
679
680 %do not go through elements that are grounded, mark flag as 1 (done)
681 %and initialize mask as 1 for all vertices of these elements
682-isgrounded = max(md.mask.groundedice_levelset(md.mesh.elements),[],2)>0;
683+isgrounded = max(md.mask.ocean_levelset(md.mesh.elements),[],2)>0;
684 pos = find(isgrounded);
685 element_flag(pos) = 1;
686 mask(md.mesh.elements(pos,:)) = 1;
687Index: ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
688===================================================================
689--- ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp (revision 24860)
690+++ ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp (revision 24861)
691@@ -626,10 +626,9 @@
692 case LoadingforceXEnum : return "LoadingforceX";
693 case LoadingforceYEnum : return "LoadingforceY";
694 case LoadingforceZEnum : return "LoadingforceZ";
695- case MaskGroundediceLevelsetEnum : return "MaskGroundediceLevelset";
696+ case MaskOceanLevelsetEnum : return "MaskOceanLevelset";
697 case MaskIceLevelsetEnum : return "MaskIceLevelset";
698 case MaskLandLevelsetEnum : return "MaskLandLevelset";
699- case MaskOceanLevelsetEnum : return "MaskOceanLevelset";
700 case MasstransportSpcthicknessEnum : return "MasstransportSpcthickness";
701 case MaterialsRheologyBEnum : return "MaterialsRheologyB";
702 case MaterialsRheologyBbarEnum : return "MaterialsRheologyBbar";
703Index: ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
704===================================================================
705--- ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp (revision 24860)
706+++ ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp (revision 24861)
707@@ -641,10 +641,9 @@
708 else if (strcmp(name,"LoadingforceX")==0) return LoadingforceXEnum;
709 else if (strcmp(name,"LoadingforceY")==0) return LoadingforceYEnum;
710 else if (strcmp(name,"LoadingforceZ")==0) return LoadingforceZEnum;
711- else if (strcmp(name,"MaskGroundediceLevelset")==0) return MaskGroundediceLevelsetEnum;
712+ else if (strcmp(name,"MaskOceanLevelset")==0) return MaskOceanLevelsetEnum;
713 else if (strcmp(name,"MaskIceLevelset")==0) return MaskIceLevelsetEnum;
714 else if (strcmp(name,"MaskLandLevelset")==0) return MaskLandLevelsetEnum;
715- else if (strcmp(name,"MaskOceanLevelset")==0) return MaskOceanLevelsetEnum;
716 else if (strcmp(name,"MasstransportSpcthickness")==0) return MasstransportSpcthicknessEnum;
717 else if (strcmp(name,"MaterialsRheologyB")==0) return MaterialsRheologyBEnum;
718 else if (strcmp(name,"MaterialsRheologyBbar")==0) return MaterialsRheologyBbarEnum;
719@@ -751,11 +750,11 @@
720 else if (strcmp(name,"SmbMAdd")==0) return SmbMAddEnum;
721 else if (strcmp(name,"SmbMassBalanceClimate")==0) return SmbMassBalanceClimateEnum;
722 else if (strcmp(name,"SmbMassBalance")==0) return SmbMassBalanceEnum;
723+ else if (strcmp(name,"SmbMassBalanceSubstep")==0) return SmbMassBalanceSubstepEnum;
724 else stage=7;
725 }
726 if(stage==7){
727- if (strcmp(name,"SmbMassBalanceSubstep")==0) return SmbMassBalanceSubstepEnum;
728- else if (strcmp(name,"SmbMassBalanceTransient")==0) return SmbMassBalanceTransientEnum;
729+ if (strcmp(name,"SmbMassBalanceTransient")==0) return SmbMassBalanceTransientEnum;
730 else if (strcmp(name,"SmbMeanLHF")==0) return SmbMeanLHFEnum;
731 else if (strcmp(name,"SmbMeanSHF")==0) return SmbMeanSHFEnum;
732 else if (strcmp(name,"SmbMeanULW")==0) return SmbMeanULWEnum;
733@@ -874,11 +873,11 @@
734 else if (strcmp(name,"Outputdefinition12")==0) return Outputdefinition12Enum;
735 else if (strcmp(name,"Outputdefinition13")==0) return Outputdefinition13Enum;
736 else if (strcmp(name,"Outputdefinition14")==0) return Outputdefinition14Enum;
737+ else if (strcmp(name,"Outputdefinition15")==0) return Outputdefinition15Enum;
738 else stage=8;
739 }
740 if(stage==8){
741- if (strcmp(name,"Outputdefinition15")==0) return Outputdefinition15Enum;
742- else if (strcmp(name,"Outputdefinition16")==0) return Outputdefinition16Enum;
743+ if (strcmp(name,"Outputdefinition16")==0) return Outputdefinition16Enum;
744 else if (strcmp(name,"Outputdefinition17")==0) return Outputdefinition17Enum;
745 else if (strcmp(name,"Outputdefinition18")==0) return Outputdefinition18Enum;
746 else if (strcmp(name,"Outputdefinition19")==0) return Outputdefinition19Enum;
747@@ -997,11 +996,11 @@
748 else if (strcmp(name,"BasalforcingsPico")==0) return BasalforcingsPicoEnum;
749 else if (strcmp(name,"BeckmannGoosseFloatingMeltRate")==0) return BeckmannGoosseFloatingMeltRateEnum;
750 else if (strcmp(name,"BedSlopeSolution")==0) return BedSlopeSolutionEnum;
751+ else if (strcmp(name,"BoolExternalResult")==0) return BoolExternalResultEnum;
752 else stage=9;
753 }
754 if(stage==9){
755- if (strcmp(name,"BoolExternalResult")==0) return BoolExternalResultEnum;
756- else if (strcmp(name,"BoolInput")==0) return BoolInputEnum;
757+ if (strcmp(name,"BoolInput")==0) return BoolInputEnum;
758 else if (strcmp(name,"BoolInput2")==0) return BoolInput2Enum;
759 else if (strcmp(name,"IntInput2")==0) return IntInput2Enum;
760 else if (strcmp(name,"BoolParam")==0) return BoolParamEnum;
761@@ -1120,11 +1119,11 @@
762 else if (strcmp(name,"IceMassScaled")==0) return IceMassScaledEnum;
763 else if (strcmp(name,"IceVolumeAboveFloatation")==0) return IceVolumeAboveFloatationEnum;
764 else if (strcmp(name,"IceVolumeAboveFloatationScaled")==0) return IceVolumeAboveFloatationScaledEnum;
765+ else if (strcmp(name,"IceVolume")==0) return IceVolumeEnum;
766 else stage=10;
767 }
768 if(stage==10){
769- if (strcmp(name,"IceVolume")==0) return IceVolumeEnum;
770- else if (strcmp(name,"IceVolumeScaled")==0) return IceVolumeScaledEnum;
771+ if (strcmp(name,"IceVolumeScaled")==0) return IceVolumeScaledEnum;
772 else if (strcmp(name,"IcefrontMassFlux")==0) return IcefrontMassFluxEnum;
773 else if (strcmp(name,"IcefrontMassFluxLevelset")==0) return IcefrontMassFluxLevelsetEnum;
774 else if (strcmp(name,"Incremental")==0) return IncrementalEnum;
775@@ -1243,11 +1242,11 @@
776 else if (strcmp(name,"Penta")==0) return PentaEnum;
777 else if (strcmp(name,"PentaInput")==0) return PentaInputEnum;
778 else if (strcmp(name,"Profiler")==0) return ProfilerEnum;
779+ else if (strcmp(name,"ProfilingCurrentFlops")==0) return ProfilingCurrentFlopsEnum;
780 else stage=11;
781 }
782 if(stage==11){
783- if (strcmp(name,"ProfilingCurrentFlops")==0) return ProfilingCurrentFlopsEnum;
784- else if (strcmp(name,"ProfilingCurrentMem")==0) return ProfilingCurrentMemEnum;
785+ if (strcmp(name,"ProfilingCurrentMem")==0) return ProfilingCurrentMemEnum;
786 else if (strcmp(name,"ProfilingSolutionTime")==0) return ProfilingSolutionTimeEnum;
787 else if (strcmp(name,"Regionaloutput")==0) return RegionaloutputEnum;
788 else if (strcmp(name,"Regular")==0) return RegularEnum;
789Index: ../trunk-jpl/src/c/shared/Enum/Enum.vim
790===================================================================
791--- ../trunk-jpl/src/c/shared/Enum/Enum.vim (revision 24860)
792+++ ../trunk-jpl/src/c/shared/Enum/Enum.vim (revision 24861)
793@@ -624,10 +624,9 @@
794 syn keyword cConstant LoadingforceXEnum
795 syn keyword cConstant LoadingforceYEnum
796 syn keyword cConstant LoadingforceZEnum
797-syn keyword cConstant MaskGroundediceLevelsetEnum
798+syn keyword cConstant MaskOceanLevelsetEnum
799 syn keyword cConstant MaskIceLevelsetEnum
800 syn keyword cConstant MaskLandLevelsetEnum
801-syn keyword cConstant MaskOceanLevelsetEnum
802 syn keyword cConstant MasstransportSpcthicknessEnum
803 syn keyword cConstant MaterialsRheologyBEnum
804 syn keyword cConstant MaterialsRheologyBbarEnum
805Index: ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
806===================================================================
807--- ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h (revision 24860)
808+++ ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h (revision 24861)
809@@ -621,10 +621,9 @@
810 LoadingforceXEnum,
811 LoadingforceYEnum,
812 LoadingforceZEnum,
813- MaskGroundediceLevelsetEnum,
814+ MaskOceanLevelsetEnum,
815 MaskIceLevelsetEnum,
816 MaskLandLevelsetEnum,
817- MaskOceanLevelsetEnum,
818 MasstransportSpcthicknessEnum,
819 MaterialsRheologyBEnum,
820 MaterialsRheologyBbarEnum,
821Index: ../trunk-jpl/src/c/modules/FloatingiceMeltingRatePicox/FloatingiceMeltingRatePicox.cpp
822===================================================================
823--- ../trunk-jpl/src/c/modules/FloatingiceMeltingRatePicox/FloatingiceMeltingRatePicox.cpp (revision 24860)
824+++ ../trunk-jpl/src/c/modules/FloatingiceMeltingRatePicox/FloatingiceMeltingRatePicox.cpp (revision 24861)
825@@ -45,8 +45,8 @@
826 femmodel->parameters->FindParam(&maxbox,BasalforcingsPicoMaxboxcountEnum);
827 IssmDouble* dmax_basin_cpu=xNew<IssmDouble>(num_basins);
828
829- InputDuplicatex(femmodel,MaskGroundediceLevelsetEnum,DistanceToGroundinglineEnum);
830- femmodel->DistanceToFieldValue(MaskGroundediceLevelsetEnum,0.,DistanceToGroundinglineEnum);
831+ InputDuplicatex(femmodel,MaskOceanLevelsetEnum,DistanceToGroundinglineEnum);
832+ femmodel->DistanceToFieldValue(MaskOceanLevelsetEnum,0.,DistanceToGroundinglineEnum);
833
834 InputDuplicatex(femmodel,MaskIceLevelsetEnum,DistanceToCalvingfrontEnum);
835 femmodel->DistanceToFieldValue(MaskIceLevelsetEnum,0.,DistanceToCalvingfrontEnum);
836Index: ../trunk-jpl/src/c/modules/GroundinglineMigrationx/GroundinglineMigrationx.cpp
837===================================================================
838--- ../trunk-jpl/src/c/modules/GroundinglineMigrationx/GroundinglineMigrationx.cpp (revision 24860)
839+++ ../trunk-jpl/src/c/modules/GroundinglineMigrationx/GroundinglineMigrationx.cpp (revision 24861)
840@@ -136,7 +136,7 @@
841 vec_phi=new Vector<IssmDouble>(vertices->NumberOfVertices());
842 for(i=0;i<elements->Size();i++){
843 Element* element=xDynamicCast<Element*>(elements->GetObjectByOffset(i));
844- element->GetVectorFromInputs(vec_phi,MaskGroundediceLevelsetEnum,VertexPIdEnum);
845+ element->GetVectorFromInputs(vec_phi,MaskOceanLevelsetEnum,VertexPIdEnum);
846 }
847 vec_phi->Assemble();
848 phi=vec_phi->ToMPISerial();
849Index: ../trunk-jpl/src/c/cores/transient_core.cpp
850===================================================================
851--- ../trunk-jpl/src/c/cores/transient_core.cpp (revision 24860)
852+++ ../trunk-jpl/src/c/cores/transient_core.cpp (revision 24861)
853@@ -196,7 +196,7 @@
854 if(VerboseSolution()) _printf0_(" computing new grounding line position\n");
855 GroundinglineMigrationx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
856
857- femmodel->parameters->SetParam(MaskGroundediceLevelsetEnum,InputToExtrudeEnum);
858+ femmodel->parameters->SetParam(MaskOceanLevelsetEnum,InputToExtrudeEnum);
859 extrudefrombase_core(femmodel);
860 femmodel->parameters->SetParam(BaseEnum,InputToExtrudeEnum);
861 extrudefrombase_core(femmodel);
862@@ -207,7 +207,7 @@
863 femmodel->profiler->Stop(GROUNDINGLINECORE);
864
865 if(save_results){
866- int outputs[3] = {SurfaceEnum,BaseEnum,MaskGroundediceLevelsetEnum};
867+ int outputs[3] = {SurfaceEnum,BaseEnum,MaskOceanLevelsetEnum};
868 femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],3);
869 }
870 }
871@@ -231,7 +231,7 @@
872 if(VerboseSolution()) _printf0_(" computing requested outputs\n");
873 femmodel->RequestedOutputsx(&femmodel->results,requested_outputs,numoutputs,save_results);
874 if(isgroundingline && (groundingline_migration==AggressiveMigrationEnum || groundingline_migration==ContactEnum)){
875- int outputs[1] = {MaskGroundediceLevelsetEnum};
876+ int outputs[1] = {MaskOceanLevelsetEnum};
877 femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],1,save_results);
878 }
879
880Index: ../trunk-jpl/src/c/classes/Loads/Riftfront.cpp
881===================================================================
882--- ../trunk-jpl/src/c/classes/Loads/Riftfront.cpp (revision 24860)
883+++ ../trunk-jpl/src/c/classes/Loads/Riftfront.cpp (revision 24861)
884@@ -85,7 +85,7 @@
885 this->fill = IoRiftfillToEnum(reCast<int,IssmDouble>(*(iomodel->Data("md.rifts.riftstruct")+RIFTINFOSIZE*i+7)));
886 this->friction=*(iomodel->Data("md.rifts.riftstruct")+RIFTINFOSIZE*i+8);
887 this->fractionincrement=*(iomodel->Data("md.rifts.riftstruct")+RIFTINFOSIZE*i+10);
888- this->shelf=reCast<bool,IssmDouble>(iomodel->Data("md.mask.groundedice_levelset")[node1-1]<0.);
889+ this->shelf=reCast<bool,IssmDouble>(iomodel->Data("md.mask.ocean_levelset")[node1-1]<0.);
890
891 //parameters and hooked fields: we still can't point to them, they may not even exist. Configure will handle this.
892 this->parameters=NULL;
893Index: ../trunk-jpl/src/c/classes/FemModel.h
894===================================================================
895--- ../trunk-jpl/src/c/classes/FemModel.h (revision 24860)
896+++ ../trunk-jpl/src/c/classes/FemModel.h (revision 24861)
897@@ -194,7 +194,6 @@
898 void GetMesh(int** elementslist, IssmDouble** x, IssmDouble** y, int* numberofvertices, int* numberofelements);
899 void SetMesh(int** elementslist, IssmDouble** x, IssmDouble** y, int* numberofvertices, int* numberofelements);
900 void GetMeshOnPartition(Vertices* femmodel_vertices,Elements* femmodel_elements,IssmDouble** px, IssmDouble** py, IssmDouble** pz, int** pelementslist,int** psidtoindex);
901- void GetGroundediceLevelSet(IssmDouble** pmasklevelset);
902 void CreateElements(int newnumberofelements,int elementswidth,int* newelementslist,bool* my_elements,Elements* elements);
903 void CreateMaterials(int newnumberofelements,bool* my_elements,Materials* materials);
904 void CreateConstraints(Vertices* newfemmodel_vertices,int analysis_enum,Constraints* newfemmodel_constraints);
905Index: ../trunk-jpl/src/c/classes/FemModel.cpp
906===================================================================
907--- ../trunk-jpl/src/c/classes/FemModel.cpp (revision 24860)
908+++ ../trunk-jpl/src/c/classes/FemModel.cpp (revision 24861)
909@@ -3349,7 +3349,7 @@
910 }
911
912 /*Update inputs*/
913- element->AddInput2(MaskGroundediceLevelsetEnum,&phi[0],P1Enum);
914+ element->AddInput2(MaskOceanLevelsetEnum,&phi[0],P1Enum);
915 element->AddInput2(ThicknessEnum,&h[0],P1Enum);
916 element->AddInput2(BaseEnum,&b[0],P1Enum);
917 }
918@@ -3670,37 +3670,6 @@
919 return;
920 }
921 /*}}}*/
922-void FemModel::GetGroundediceLevelSet(IssmDouble **pmasklevelset){/*{{{*/
923-
924- int elementswidth = this->GetElementsWidth();//just 2D mesh, tria elements
925- int numberofvertices = this->vertices->NumberOfVertices();
926-
927- IssmDouble* elementlevelset=xNew<IssmDouble>(elementswidth);
928- int* elem_vertices=xNew<int>(elementswidth);
929- Vector<IssmDouble>* vmasklevelset=new Vector<IssmDouble>(numberofvertices);
930-
931- for(int i=0;i<this->elements->Size();i++){
932- Element* element=xDynamicCast<Element*>(this->elements->GetObjectByOffset(i));
933- element->GetInputListOnVertices(elementlevelset,MaskGroundediceLevelsetEnum);
934- element->GetVerticesSidList(elem_vertices);
935- vmasklevelset->SetValue(elem_vertices[0],elementlevelset[0],INS_VAL);
936- vmasklevelset->SetValue(elem_vertices[1],elementlevelset[1],INS_VAL);
937- vmasklevelset->SetValue(elem_vertices[2],elementlevelset[2],INS_VAL);
938- }
939-
940- /*Assemble*/
941- vmasklevelset->Assemble();
942-
943- /*Serialize and set output*/
944- (*pmasklevelset)=vmasklevelset->ToMPISerial();
945-
946- /*Cleanup*/
947- xDelete<IssmDouble>(elementlevelset);
948- xDelete<int>(elem_vertices);
949- delete vmasklevelset;
950-
951-}
952-/*}}}*/
953 void FemModel::CreateElements(int newnumberofelements,int elementswidth,int* newelementslist,bool* my_elements,Elements* elements){/*{{{*/
954
955 /*newlementslist is in Matlab indexing*/
956@@ -4365,7 +4334,7 @@
957
958 for(int i=0;i<this->elements->Size();i++){
959 Element* element=xDynamicCast<Element*>(this->elements->GetObjectByOffset(i));
960- element->GetInputListOnVertices(elementlevelset,MaskGroundediceLevelsetEnum);
961+ element->GetInputListOnVertices(elementlevelset,MaskOceanLevelsetEnum);
962 int sid = element->Sid();
963 vmasklevelset->SetValue(sid,(elementlevelset[0]+elementlevelset[1]+elementlevelset[2])/3.,INS_VAL);
964 }
965@@ -4430,7 +4399,7 @@
966
967 /*Here, "zero level set" means grounding line or ice front, depending on the level set type*/
968 /*pzerolevelset_points are the element center points with zero level set. X and Y coords*/
969- if(levelset_type!=MaskGroundediceLevelsetEnum && levelset_type!=MaskIceLevelsetEnum){
970+ if(levelset_type!=MaskOceanLevelsetEnum && levelset_type!=MaskIceLevelsetEnum){
971 _error_("level set type not implemented yet!");
972 }
973
974@@ -5417,7 +5386,7 @@
975 /*Fill hmaxvertices*/
976 if(this->amrbamg->thicknesserror_threshold>0) this->GethmaxVerticesFromEstimators(hmaxvertices_serial,ThicknessErrorEstimatorEnum);
977 if(this->amrbamg->deviatoricerror_threshold>0) this->GethmaxVerticesFromEstimators(hmaxvertices_serial,DeviatoricStressErrorEstimatorEnum);
978- if(this->amrbamg->groundingline_distance>0) this->GethmaxVerticesFromZeroLevelSetDistance(hmaxvertices_serial,MaskGroundediceLevelsetEnum);
979+ if(this->amrbamg->groundingline_distance>0) this->GethmaxVerticesFromZeroLevelSetDistance(hmaxvertices_serial,MaskOceanLevelsetEnum);
980 if(this->amrbamg->icefront_distance>0) this->GethmaxVerticesFromZeroLevelSetDistance(hmaxvertices_serial,MaskIceLevelsetEnum);
981 }
982
983@@ -5529,7 +5498,7 @@
984 int sid,numberofpoints;
985
986 switch(levelset_type){
987- case MaskGroundediceLevelsetEnum:
988+ case MaskOceanLevelsetEnum:
989 threshold = this->amrbamg->groundingline_distance;
990 resolution = this->amrbamg->groundingline_resolution;
991 break;
992@@ -5691,7 +5660,7 @@
993
994 /*Here, "zero level set" means grounding line or ice front, depending on the level set type*/
995 /*pverticedistance is the minimal vertice distance to the grounding line or ice front*/
996- if(levelset_type!=MaskGroundediceLevelsetEnum && levelset_type!=MaskIceLevelsetEnum){
997+ if(levelset_type!=MaskOceanLevelsetEnum && levelset_type!=MaskIceLevelsetEnum){
998 _error_("level set type not implemented yet!");
999 }
1000
1001@@ -5753,7 +5722,7 @@
1002 int newnumberofelements = -1;
1003
1004 /*Get fields, if requested*/
1005- if(this->amr->groundingline_distance>0) this->GetElementDistanceToZeroLevelSet(&gl_distance,MaskGroundediceLevelsetEnum);
1006+ if(this->amr->groundingline_distance>0) this->GetElementDistanceToZeroLevelSet(&gl_distance,MaskOceanLevelsetEnum);
1007 if(this->amr->icefront_distance>0) this->GetElementDistanceToZeroLevelSet(&if_distance,MaskIceLevelsetEnum);
1008 if(this->amr->thicknesserror_threshold>0) this->ThicknessZZErrorEstimator(&thicknesserror);
1009 if(this->amr->deviatoricerror_threshold>0) this->ZZErrorEstimator(&deviatoricerror);
1010@@ -5855,7 +5824,7 @@
1011
1012 /*Here, "zero level set" means grounding line or ice front, depending on the level set type*/
1013 /*pverticedistance is the minimal vertice distance to the grounding line or ice front*/
1014- if(levelset_type!=MaskGroundediceLevelsetEnum && levelset_type!=MaskIceLevelsetEnum){
1015+ if(levelset_type!=MaskOceanLevelsetEnum && levelset_type!=MaskIceLevelsetEnum){
1016 _error_("level set type not implemented yet!");
1017 }
1018
1019Index: ../trunk-jpl/src/c/classes/Elements/Penta.cpp
1020===================================================================
1021--- ../trunk-jpl/src/c/classes/Elements/Penta.cpp (revision 24860)
1022+++ ../trunk-jpl/src/c/classes/Elements/Penta.cpp (revision 24861)
1023@@ -286,7 +286,7 @@
1024 /*Retrieve all inputs and parameters we will need*/
1025 Input2* vx_input = this->GetInput2(VxAverageEnum); _assert_(vx_input);
1026 Input2* vy_input = this->GetInput2(VyAverageEnum); _assert_(vy_input);
1027- Input2* gr_input = this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gr_input);
1028+ Input2* gr_input = this->GetInput2(MaskOceanLevelsetEnum); _assert_(gr_input);
1029 Input2* bs_input = this->GetInput2(BaseEnum); _assert_(bs_input);
1030 Input2* B_input = this->GetInput2(MaterialsRheologyBbarEnum); _assert_(B_input);
1031 Input2* n_input = this->GetInput2(MaterialsRheologyNEnum); _assert_(n_input);
1032@@ -1246,7 +1246,7 @@
1033 Element::GetInputListOnVertices(&bed[0],BedEnum);
1034 Element::GetInputListOnVertices(&surface[0],SurfaceEnum);
1035 Element::GetInputListOnVertices(&pressure[0],PressureEnum);
1036- Element::GetInputListOnVertices(&phi[0],MaskGroundediceLevelsetEnum);
1037+ Element::GetInputListOnVertices(&phi[0],MaskOceanLevelsetEnum);
1038 IssmDouble rho_ice = FindParam(MaterialsRhoIceEnum);
1039 IssmDouble rho_water = FindParam(MaterialsRhoSeawaterEnum);
1040 IssmDouble gravity = FindParam(ConstantsGEnum);
1041@@ -1385,7 +1385,7 @@
1042 IssmDouble f1,f2;
1043
1044 /*Recover parameters and values*/
1045- Element::GetInputListOnVertices(&gl[0],MaskGroundediceLevelsetEnum);
1046+ Element::GetInputListOnVertices(&gl[0],MaskOceanLevelsetEnum);
1047
1048 /*Be sure that values are not zero*/
1049 if(gl[0]==0.) gl[0]=gl[0]+epsilon;
1050@@ -1439,7 +1439,7 @@
1051 IssmDouble xyz_bis[NUMVERTICES2D][3];
1052
1053 /*Recover parameters and values*/
1054- Element::GetInputListOnVertices(&gl[0],MaskGroundediceLevelsetEnum);
1055+ Element::GetInputListOnVertices(&gl[0],MaskOceanLevelsetEnum);
1056
1057 /*Be sure that values are not zero*/
1058 if(gl[0]==0.) gl[0]=gl[0]+epsilon;
1059@@ -2068,7 +2068,7 @@
1060 /*Make sure there is a grounding line here*/
1061 if(!IsOnBase()) return 0;
1062 if(!IsIceInElement()) return 0;
1063- if(!IsZeroLevelset(MaskGroundediceLevelsetEnum)) return 0;
1064+ if(!IsZeroLevelset(MaskOceanLevelsetEnum)) return 0;
1065
1066 /*Scaled not implemented yet...*/
1067 _assert_(!scaled);
1068@@ -2083,7 +2083,7 @@
1069 this->GetVerticesCoordinates(&xyz_list);
1070
1071 /*Recover parameters and values*/
1072- Element::GetInputListOnVertices(&gl[0],MaskGroundediceLevelsetEnum);
1073+ Element::GetInputListOnVertices(&gl[0],MaskOceanLevelsetEnum);
1074
1075 /*Be sure that values are not zero*/
1076 if(gl[0]==0.) gl[0]=gl[0]+epsilon;
1077@@ -3187,7 +3187,7 @@
1078 density=rho_ice/rho_water;
1079 Element::GetInputListOnVertices(&h[0],ThicknessEnum);
1080 Element::GetInputListOnVertices(&r[0],BedEnum);
1081- Element::GetInputListOnVertices(&gl[0],MaskGroundediceLevelsetEnum);
1082+ Element::GetInputListOnVertices(&gl[0],MaskOceanLevelsetEnum);
1083
1084 /*go through vertices, and figure out which ones are on the ice sheet, and want to unground: */
1085 for(int i=0;i<NUMVERTICES;i++){
1086@@ -3281,7 +3281,7 @@
1087 /*Get inputs*/
1088 Input2* slopex_input=this->GetInput2(BedSlopeXEnum); _assert_(slopex_input);
1089 Input2* slopey_input=this->GetInput2(BedSlopeYEnum); _assert_(slopey_input);
1090- Input2* groundedicelevelset_input=this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(groundedicelevelset_input);
1091+ Input2* groundedicelevelset_input=this->GetInput2(MaskOceanLevelsetEnum); _assert_(groundedicelevelset_input);
1092
1093 /*Loop over basal nodes and update their CS*/
1094 GaussPenta* gauss = new GaussPenta();
1095@@ -4173,7 +4173,7 @@
1096 /*Get material parameters :*/
1097 rho_ice=FindParam(MaterialsRhoIceEnum);
1098 Input2* floatingmelt_input = this->GetInput2(BasalforcingsFloatingiceMeltingRateEnum); _assert_(floatingmelt_input);
1099- Input2* gllevelset_input = this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
1100+ Input2* gllevelset_input = this->GetInput2(MaskOceanLevelsetEnum); _assert_(gllevelset_input);
1101 Input2* scalefactor_input = NULL;
1102 if(scaled==true){
1103 scalefactor_input = this->GetInput2(MeshScaleFactorEnum); _assert_(scalefactor_input);
1104@@ -4218,7 +4218,7 @@
1105 /*Get material parameters :*/
1106 rho_ice=FindParam(MaterialsRhoIceEnum);
1107 Input2* groundedmelt_input = this->GetInput2(BasalforcingsGroundediceMeltingRateEnum); _assert_(groundedmelt_input);
1108- Input2* gllevelset_input = this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
1109+ Input2* gllevelset_input = this->GetInput2(MaskOceanLevelsetEnum); _assert_(gllevelset_input);
1110 Input2* scalefactor_input = NULL;
1111 if(scaled==true){
1112 scalefactor_input = this->GetInput2(MeshScaleFactorEnum); _assert_(scalefactor_input);
1113Index: ../trunk-jpl/src/c/classes/Elements/Seg.cpp
1114===================================================================
1115--- ../trunk-jpl/src/c/classes/Elements/Seg.cpp (revision 24860)
1116+++ ../trunk-jpl/src/c/classes/Elements/Seg.cpp (revision 24861)
1117@@ -263,7 +263,7 @@
1118 IssmDouble gl[NUMVERTICES];
1119
1120 /*Recover parameters and values*/
1121- Element::GetInputListOnVertices(&gl[0],MaskGroundediceLevelsetEnum);
1122+ Element::GetInputListOnVertices(&gl[0],MaskOceanLevelsetEnum);
1123
1124 /*Be sure that values are not zero*/
1125 if(gl[0]==0.) gl[0]=gl[0]+epsilon;
1126Index: ../trunk-jpl/src/c/classes/Elements/Tetra.cpp
1127===================================================================
1128--- ../trunk-jpl/src/c/classes/Elements/Tetra.cpp (revision 24860)
1129+++ ../trunk-jpl/src/c/classes/Elements/Tetra.cpp (revision 24861)
1130@@ -696,7 +696,7 @@
1131 /*Get inputs*/
1132 Input2* slopex_input=this->GetInput2(BedSlopeXEnum); _assert_(slopex_input);
1133 Input2* slopey_input=this->GetInput2(BedSlopeYEnum); _assert_(slopey_input);
1134- Input2* groundedicelevelset_input=this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(groundedicelevelset_input);
1135+ Input2* groundedicelevelset_input=this->GetInput2(MaskOceanLevelsetEnum); _assert_(groundedicelevelset_input);
1136 vertexonbase = xNew<IssmDouble>(numnodes);
1137 this->GetInputListOnNodesVelocity(&vertexonbase[0],MeshVertexonbaseEnum);
1138
1139Index: ../trunk-jpl/src/c/classes/Elements/Element.cpp
1140===================================================================
1141--- ../trunk-jpl/src/c/classes/Elements/Element.cpp (revision 24860)
1142+++ ../trunk-jpl/src/c/classes/Elements/Element.cpp (revision 24861)
1143@@ -1985,7 +1985,7 @@
1144 int migration_style;
1145 parameters->FindParam(&migration_style,GroundinglineMigrationEnum);
1146
1147- Input2* input = this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(input);
1148+ Input2* input = this->GetInput2(MaskOceanLevelsetEnum); _assert_(input);
1149
1150 if(migration_style==SubelementMigrationEnum){ //Floating if all nodes are floating
1151 if(input->GetInputMax() <= 0.) shelf=true;
1152@@ -2005,7 +2005,7 @@
1153 }/*}}}*/
1154 bool Element::IsGrounded(){/*{{{*/
1155
1156- Input2* input=this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(input);
1157+ Input2* input=this->GetInput2(MaskOceanLevelsetEnum); _assert_(input);
1158 if(input->GetInputMax() > 0.){
1159 return true;
1160 }
1161@@ -2257,7 +2257,7 @@
1162 GetInputListOnVertices(&b[0],BaseEnum);
1163 GetInputListOnVertices(&r[0],BedEnum);
1164 GetInputListOnVertices(&sl[0],SealevelEnum);
1165- GetInputListOnVertices(&phi[0],MaskGroundediceLevelsetEnum);
1166+ GetInputListOnVertices(&phi[0],MaskOceanLevelsetEnum);
1167 rho_water = FindParam(MaterialsRhoSeawaterEnum);
1168 rho_ice = FindParam(MaterialsRhoIceEnum);
1169 density = rho_ice/rho_water;
1170@@ -2311,7 +2311,7 @@
1171 /*do nothing*/
1172 }
1173 }
1174- this->AddInput2(MaskGroundediceLevelsetEnum,&phi[0],P1Enum);
1175+ this->AddInput2(MaskOceanLevelsetEnum,&phi[0],P1Enum);
1176
1177 /*Update inputs*/
1178 this->AddInput2(SurfaceEnum,&s[0],P1Enum);
1179Index: ../trunk-jpl/src/c/classes/Elements/Tria.cpp
1180===================================================================
1181--- ../trunk-jpl/src/c/classes/Elements/Tria.cpp (revision 24860)
1182+++ ../trunk-jpl/src/c/classes/Elements/Tria.cpp (revision 24861)
1183@@ -313,7 +313,7 @@
1184 Input2* vx_input = this->GetInput2(VxEnum); _assert_(vx_input);
1185 Input2* vy_input = this->GetInput2(VyEnum); _assert_(vy_input);
1186 Input2* B_input = this->GetInput2(MaterialsRheologyBbarEnum); _assert_(B_input);
1187- Input2* gr_input = this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gr_input);
1188+ Input2* gr_input = this->GetInput2(MaskOceanLevelsetEnum); _assert_(gr_input);
1189 Input2* bs_input = this->GetInput2(BaseEnum); _assert_(bs_input);
1190 Input2* smax_fl_input = this->GetInput2(CalvingStressThresholdFloatingiceEnum); _assert_(smax_fl_input);
1191 Input2* smax_gr_input = this->GetInput2(CalvingStressThresholdGroundediceEnum); _assert_(smax_gr_input);
1192@@ -1365,7 +1365,7 @@
1193 Element::GetInputListOnVertices(&bed[0],BedEnum);
1194 Element::GetInputListOnVertices(&surface[0],SurfaceEnum);
1195 Element::GetInputListOnVertices(&pressure[0],PressureEnum);
1196- Element::GetInputListOnVertices(&phi[0],MaskGroundediceLevelsetEnum);
1197+ Element::GetInputListOnVertices(&phi[0],MaskOceanLevelsetEnum);
1198 IssmDouble rho_ice = FindParam(MaterialsRhoIceEnum);
1199 IssmDouble rho_water = FindParam(MaterialsRhoSeawaterEnum);
1200 IssmDouble gravity = FindParam(ConstantsGEnum);
1201@@ -1571,7 +1571,7 @@
1202 IssmDouble f1,f2;
1203
1204 /*Recover parameters and values*/
1205- Element::GetInputListOnVertices(&gl[0],MaskGroundediceLevelsetEnum);
1206+ Element::GetInputListOnVertices(&gl[0],MaskOceanLevelsetEnum);
1207
1208 /*Be sure that values are not zero*/
1209 if(gl[0]==0.) gl[0]=gl[0]+epsilon;
1210@@ -1627,7 +1627,7 @@
1211
1212 /*Recover parameters and values*/
1213 parameters->FindParam(&domaintype,DomainTypeEnum);
1214- Element::GetInputListOnVertices(&gl[0],MaskGroundediceLevelsetEnum);
1215+ Element::GetInputListOnVertices(&gl[0],MaskOceanLevelsetEnum);
1216
1217 /*Be sure that values are not zero*/
1218 if(gl[0]==0.) gl[0]=gl[0]+epsilon;
1219@@ -2877,7 +2877,7 @@
1220
1221 /*Make sure there is a grounding line here*/
1222 if(!IsIceInElement()) return 0;
1223- if(!IsZeroLevelset(MaskGroundediceLevelsetEnum)) return 0;
1224+ if(!IsZeroLevelset(MaskOceanLevelsetEnum)) return 0;
1225
1226 /*Scaled not implemented yet...*/
1227 _assert_(!scaled);
1228@@ -2893,7 +2893,7 @@
1229
1230 /*Recover parameters and values*/
1231 parameters->FindParam(&domaintype,DomainTypeEnum);
1232- Element::GetInputListOnVertices(&gl[0],MaskGroundediceLevelsetEnum);
1233+ Element::GetInputListOnVertices(&gl[0],MaskOceanLevelsetEnum);
1234
1235 /*Be sure that values are not zero*/
1236 if(gl[0]==0.) gl[0]=gl[0]+epsilon;
1237@@ -3825,7 +3825,7 @@
1238 density=rho_ice/rho_water;
1239 Element::GetInputListOnVertices(&h[0],ThicknessEnum);
1240 Element::GetInputListOnVertices(&r[0],BedEnum);
1241- Element::GetInputListOnVertices(&gl[0],MaskGroundediceLevelsetEnum);
1242+ Element::GetInputListOnVertices(&gl[0],MaskOceanLevelsetEnum);
1243
1244 /*go through vertices, and figure out which ones are grounded and want to unground: */
1245 for(int i=0;i<NUMVERTICES;i++){
1246@@ -3896,7 +3896,7 @@
1247
1248 /*Get inputs*/
1249 Input2* slope_input=this->GetInput2(BedSlopeXEnum); _assert_(slope_input);
1250- Input2* groundedicelevelset_input=this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(groundedicelevelset_input);
1251+ Input2* groundedicelevelset_input=this->GetInput2(MaskOceanLevelsetEnum); _assert_(groundedicelevelset_input);
1252 vertexonbase = xNew<IssmDouble>(numnodes);
1253 this->GetInputListOnNodesVelocity(&vertexonbase[0],MeshVertexonbaseEnum);
1254
1255@@ -4642,7 +4642,7 @@
1256 /*Get material parameters :*/
1257 rho_ice=FindParam(MaterialsRhoIceEnum);
1258 Input2* floatingmelt_input = this->GetInput2(BasalforcingsFloatingiceMeltingRateEnum); _assert_(floatingmelt_input);
1259- Input2* gllevelset_input = this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
1260+ Input2* gllevelset_input = this->GetInput2(MaskOceanLevelsetEnum); _assert_(gllevelset_input);
1261 Input2* scalefactor_input = NULL;
1262 if(scaled==true){
1263 scalefactor_input = this->GetInput2(MeshScaleFactorEnum); _assert_(scalefactor_input);
1264@@ -4687,7 +4687,7 @@
1265 /*Get material parameters :*/
1266 rho_ice=FindParam(MaterialsRhoIceEnum);
1267 Input2* groundedmelt_input = this->GetInput2(BasalforcingsGroundediceMeltingRateEnum); _assert_(groundedmelt_input);
1268- Input2* gllevelset_input = this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
1269+ Input2* gllevelset_input = this->GetInput2(MaskOceanLevelsetEnum); _assert_(gllevelset_input);
1270 Input2* scalefactor_input = NULL;
1271 if(scaled==true){
1272 scalefactor_input = this->GetInput2(MeshScaleFactorEnum); _assert_(scalefactor_input);
1273@@ -5622,7 +5622,7 @@
1274 }
1275
1276 /*early return if we are fully floating:*/
1277- Input2* gr_input=this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gr_input);
1278+ Input2* gr_input=this->GetInput2(MaskOceanLevelsetEnum); _assert_(gr_input);
1279 if (gr_input->GetInputMax()<=0){
1280 constant=0; this->AddInput2(SealevelEustaticMaskEnum,&constant,P0Enum);
1281 *peustatic=0; //do not forget to assign this pointer, otherwise, global eustatic will be garbage!
1282@@ -6128,7 +6128,7 @@
1283 if(!IsIceOnlyInElement() && !IsWaterInElement()) return;
1284
1285 /*early return if we are fully floating: */
1286- Input2* gr_input=this->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gr_input);
1287+ Input2* gr_input=this->GetInput2(MaskOceanLevelsetEnum); _assert_(gr_input);
1288 if(gr_input->GetInputMax()<=0)return;
1289
1290 /*recover computational flags: */
1291Index: ../trunk-jpl/src/c/analyses/HydrologyGlaDSAnalysis.cpp
1292===================================================================
1293--- ../trunk-jpl/src/c/analyses/HydrologyGlaDSAnalysis.cpp (revision 24860)
1294+++ ../trunk-jpl/src/c/analyses/HydrologyGlaDSAnalysis.cpp (revision 24861)
1295@@ -135,7 +135,7 @@
1296 iomodel->FetchDataToInput(inputs2,elements,"md.mesh.vertexonsurface",MeshVertexonsurfaceEnum);
1297 }
1298 iomodel->FetchDataToInput(inputs2,elements,"md.mask.ice_levelset",MaskIceLevelsetEnum);
1299- iomodel->FetchDataToInput(inputs2,elements,"md.mask.groundedice_levelset",MaskGroundediceLevelsetEnum);
1300+ iomodel->FetchDataToInput(inputs2,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum);
1301 iomodel->FetchDataToInput(inputs2,elements,"md.hydrology.bump_height",HydrologyBumpHeightEnum);
1302 iomodel->FetchDataToInput(inputs2,elements,"md.hydrology.sheet_conductivity",HydrologySheetConductivityEnum);
1303 iomodel->FetchDataToInput(inputs2,elements,"md.hydrology.neumannflux",HydrologyNeumannfluxEnum);
1304Index: ../trunk-jpl/src/c/analyses/StressbalanceVerticalAnalysis.cpp
1305===================================================================
1306--- ../trunk-jpl/src/c/analyses/StressbalanceVerticalAnalysis.cpp (revision 24860)
1307+++ ../trunk-jpl/src/c/analyses/StressbalanceVerticalAnalysis.cpp (revision 24861)
1308@@ -353,7 +353,7 @@
1309 element->GetVerticesCoordinatesBase(&xyz_list_base);
1310 element->GetInputValue(&approximation,ApproximationEnum);
1311 Input2* base_input=element->GetInput2(BaseEnum); _assert_(base_input);
1312- Input2* groundedice_input=element->GetInput2(MaskGroundediceLevelsetEnum); _assert_(groundedice_input);
1313+ Input2* groundedice_input=element->GetInput2(MaskOceanLevelsetEnum); _assert_(groundedice_input);
1314 Input2* groundedice_melting_input=element->GetInput2(BasalforcingsGroundediceMeltingRateEnum); _assert_(groundedice_melting_input);
1315 Input2* floatingice_melting_input=element->GetInput2(BasalforcingsFloatingiceMeltingRateEnum); _assert_(floatingice_melting_input);
1316 Input2* vx_input=element->GetInput2(VxEnum); _assert_(vx_input);
1317Index: ../trunk-jpl/src/c/analyses/LevelsetAnalysis.cpp
1318===================================================================
1319--- ../trunk-jpl/src/c/analyses/LevelsetAnalysis.cpp (revision 24860)
1320+++ ../trunk-jpl/src/c/analyses/LevelsetAnalysis.cpp (revision 24861)
1321@@ -243,12 +243,12 @@
1322 case Domain2DhorizontalEnum:
1323 vx_input=basalelement->GetInput2(VxEnum); _assert_(vx_input);
1324 vy_input=basalelement->GetInput2(VyEnum); _assert_(vy_input);
1325- gr_input=basalelement->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gr_input);
1326+ gr_input=basalelement->GetInput2(MaskOceanLevelsetEnum); _assert_(gr_input);
1327 break;
1328 case Domain3DEnum:
1329 vx_input=basalelement->GetInput2(VxAverageEnum); _assert_(vx_input);
1330 vy_input=basalelement->GetInput2(VyAverageEnum); _assert_(vy_input);
1331- gr_input=basalelement->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gr_input);
1332+ gr_input=basalelement->GetInput2(MaskOceanLevelsetEnum); _assert_(gr_input);
1333 break;
1334 default: _error_("mesh "<<EnumToStringx(domaintype)<<" not supported yet");
1335 }
1336Index: ../trunk-jpl/src/c/analyses/HydrologyShaktiAnalysis.cpp
1337===================================================================
1338--- ../trunk-jpl/src/c/analyses/HydrologyShaktiAnalysis.cpp (revision 24860)
1339+++ ../trunk-jpl/src/c/analyses/HydrologyShaktiAnalysis.cpp (revision 24861)
1340@@ -105,7 +105,7 @@
1341 iomodel->FetchDataToInput(inputs2,elements,"md.mesh.vertexonsurface",MeshVertexonsurfaceEnum);
1342 }
1343 iomodel->FetchDataToInput(inputs2,elements,"md.mask.ice_levelset",MaskIceLevelsetEnum);
1344- iomodel->FetchDataToInput(inputs2,elements,"md.mask.groundedice_levelset",MaskGroundediceLevelsetEnum);
1345+ iomodel->FetchDataToInput(inputs2,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum);
1346 iomodel->FetchDataToInput(inputs2,elements,"md.basalforcings.groundedice_melting_rate",BasalforcingsGroundediceMeltingRateEnum);
1347 iomodel->FetchDataToInput(inputs2,elements,"md.basalforcings.geothermalflux",BasalforcingsGeothermalfluxEnum);
1348 iomodel->FetchDataToInput(inputs2,elements,"md.hydrology.head",HydrologyHeadEnum);
1349Index: ../trunk-jpl/src/c/analyses/HydrologyPismAnalysis.cpp
1350===================================================================
1351--- ../trunk-jpl/src/c/analyses/HydrologyPismAnalysis.cpp (revision 24860)
1352+++ ../trunk-jpl/src/c/analyses/HydrologyPismAnalysis.cpp (revision 24861)
1353@@ -32,7 +32,7 @@
1354
1355 /*Add input to elements*/
1356 iomodel->FetchDataToInput(inputs2,elements,"md.mask.ice_levelset",MaskIceLevelsetEnum);
1357- iomodel->FetchDataToInput(inputs2,elements,"md.mask.groundedice_levelset",MaskGroundediceLevelsetEnum);
1358+ iomodel->FetchDataToInput(inputs2,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum);
1359 iomodel->FetchDataToInput(inputs2,elements,"md.basalforcings.groundedice_melting_rate",BasalforcingsGroundediceMeltingRateEnum);
1360 iomodel->FetchDataToInput(inputs2,elements,"md.hydrology.drainage_rate",HydrologyDrainageRateEnum);
1361 iomodel->FetchDataToInput(inputs2,elements,"md.hydrology.watercolumn_max",HydrologyWatercolumnMaxEnum);
1362Index: ../trunk-jpl/src/c/analyses/MasstransportAnalysis.cpp
1363===================================================================
1364--- ../trunk-jpl/src/c/analyses/MasstransportAnalysis.cpp (revision 24860)
1365+++ ../trunk-jpl/src/c/analyses/MasstransportAnalysis.cpp (revision 24861)
1366@@ -149,7 +149,7 @@
1367 iomodel->FetchDataToInput(inputs2,elements,"md.geometry.base",BaseEnum);
1368 iomodel->FetchDataToInput(inputs2,elements,"md.slr.sealevel",SealevelEnum,0);
1369 iomodel->FetchDataToInput(inputs2,elements,"md.mask.ice_levelset",MaskIceLevelsetEnum);
1370- iomodel->FetchDataToInput(inputs2,elements,"md.mask.groundedice_levelset",MaskGroundediceLevelsetEnum);
1371+ iomodel->FetchDataToInput(inputs2,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum);
1372 iomodel->FetchDataToInput(inputs2,elements,"md.basalforcings.groundedice_melting_rate",BasalforcingsGroundediceMeltingRateEnum);
1373 iomodel->FetchDataToInput(inputs2,elements,"md.initialization.vx",VxEnum);
1374 iomodel->FetchDataToInput(inputs2,elements,"md.initialization.vy",VyEnum);
1375@@ -621,7 +621,7 @@
1376 element->FindParam(&stabilization,MasstransportStabilizationEnum);
1377 Input2* gmb_input = element->GetInput2(BasalforcingsGroundediceMeltingRateEnum); _assert_(gmb_input);
1378 Input2* fmb_input = element->GetInput2(BasalforcingsFloatingiceMeltingRateEnum); _assert_(fmb_input);
1379- Input2* gllevelset_input = element->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
1380+ Input2* gllevelset_input = element->GetInput2(MaskOceanLevelsetEnum); _assert_(gllevelset_input);
1381 Input2* ms_input = element->GetInput2(SmbMassBalanceEnum); _assert_(ms_input);
1382 Input2* thickness_input = element->GetInput2(ThicknessEnum); _assert_(thickness_input);
1383 Input2* vxaverage_input = element->GetInput2(VxAverageEnum); _assert_(vxaverage_input);
1384@@ -736,7 +736,7 @@
1385 Input2* gmb_input = element->GetInput2(BasalforcingsGroundediceMeltingRateEnum); _assert_(gmb_input);
1386 Input2* fmb_input = element->GetInput2(BasalforcingsFloatingiceMeltingRateEnum); _assert_(fmb_input);
1387 Input2* ms_input = element->GetInput2(SmbMassBalanceEnum); _assert_(ms_input);
1388- Input2* gllevelset_input = element->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
1389+ Input2* gllevelset_input = element->GetInput2(MaskOceanLevelsetEnum); _assert_(gllevelset_input);
1390 Input2* thickness_input = element->GetInput2(ThicknessEnum); _assert_(thickness_input);
1391
1392 /*Recover portion of element that is grounded*/
1393@@ -857,7 +857,7 @@
1394 basalelement->GetInputListOnVertices(&oldthickness[0],ThicknessOldEnum);
1395 basalelement->GetInputListOnVertices(&oldbase[0],BaseOldEnum);
1396 basalelement->GetInputListOnVertices(&oldsurface[0],SurfaceOldEnum);
1397- basalelement->GetInputListOnVertices(&phi[0],MaskGroundediceLevelsetEnum);
1398+ basalelement->GetInputListOnVertices(&phi[0],MaskOceanLevelsetEnum);
1399 basalelement->GetInputListOnVertices(&sealevel[0],SealevelEnum);
1400 basalelement->GetInputListOnVertices(&cumdeltathickness[0],SealevelriseCumDeltathicknessOldEnum);
1401
1402@@ -1069,7 +1069,7 @@
1403 element->FindParam(&stabilization,MasstransportStabilizationEnum);
1404 Input2* gmb_input = element->GetInput2(BasalforcingsGroundediceMeltingRateEnum); _assert_(gmb_input);
1405 Input2* fmb_input = element->GetInput2(BasalforcingsFloatingiceMeltingRateEnum); _assert_(fmb_input);
1406- Input2* gllevelset_input = element->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
1407+ Input2* gllevelset_input = element->GetInput2(MaskOceanLevelsetEnum); _assert_(gllevelset_input);
1408 Input2* ms_input = element->GetInput2(SmbMassBalanceEnum); _assert_(ms_input);
1409 Input2* vxaverage_input = element->GetInput2(VxAverageEnum); _assert_(vxaverage_input);
1410 Input2* vyaverage_input = element->GetInput2(VyAverageEnum); _assert_(vyaverage_input);
1411Index: ../trunk-jpl/src/c/analyses/SealevelriseAnalysis.cpp
1412===================================================================
1413--- ../trunk-jpl/src/c/analyses/SealevelriseAnalysis.cpp (revision 24860)
1414+++ ../trunk-jpl/src/c/analyses/SealevelriseAnalysis.cpp (revision 24861)
1415@@ -34,7 +34,7 @@
1416 }
1417
1418 /*Create inputs: */
1419- iomodel->FetchDataToInput(inputs2,elements,"md.mask.groundedice_levelset",MaskGroundediceLevelsetEnum);
1420+ iomodel->FetchDataToInput(inputs2,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum);
1421 iomodel->FetchDataToInput(inputs2,elements,"md.mask.ice_levelset",MaskIceLevelsetEnum);
1422 //those only if we have requested geodetic computations:
1423 iomodel->FetchData(&geodetic,"md.slr.geodetic");
1424Index: ../trunk-jpl/src/c/analyses/GLheightadvectionAnalysis.cpp
1425===================================================================
1426--- ../trunk-jpl/src/c/analyses/GLheightadvectionAnalysis.cpp (revision 24860)
1427+++ ../trunk-jpl/src/c/analyses/GLheightadvectionAnalysis.cpp (revision 24861)
1428@@ -222,7 +222,7 @@
1429 IssmDouble *bed = xNew<IssmDouble>(numnodes);
1430 IssmDouble *ls_active = xNew<IssmDouble>(numnodes);
1431
1432- element->GetInputListOnNodes(&mask[0],MaskGroundediceLevelsetEnum);
1433+ element->GetInputListOnNodes(&mask[0],MaskOceanLevelsetEnum);
1434 element->GetInputListOnNodes(&bed[0],BaseEnum);
1435 element->GetInputListOnNodes(&ls_active[0],IceMaskNodeActivationEnum);
1436
1437Index: ../trunk-jpl/src/c/analyses/HydrologyShreveAnalysis.cpp
1438===================================================================
1439--- ../trunk-jpl/src/c/analyses/HydrologyShreveAnalysis.cpp (revision 24860)
1440+++ ../trunk-jpl/src/c/analyses/HydrologyShreveAnalysis.cpp (revision 24861)
1441@@ -63,7 +63,7 @@
1442 iomodel->FetchDataToInput(inputs2,elements,"md.mesh.vertexonsurface",MeshVertexonsurfaceEnum);
1443 }
1444 iomodel->FetchDataToInput(inputs2,elements,"md.mask.ice_levelset",MaskIceLevelsetEnum);
1445- iomodel->FetchDataToInput(inputs2,elements,"md.mask.groundedice_levelset",MaskGroundediceLevelsetEnum);
1446+ iomodel->FetchDataToInput(inputs2,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum);
1447 iomodel->FetchDataToInput(inputs2,elements,"md.basalforcings.groundedice_melting_rate",BasalforcingsGroundediceMeltingRateEnum);
1448 iomodel->FetchDataToInput(inputs2,elements,"md.initialization.watercolumn",WatercolumnEnum);
1449
1450Index: ../trunk-jpl/src/c/analyses/StressbalanceSIAAnalysis.cpp
1451===================================================================
1452--- ../trunk-jpl/src/c/analyses/StressbalanceSIAAnalysis.cpp (revision 24860)
1453+++ ../trunk-jpl/src/c/analyses/StressbalanceSIAAnalysis.cpp (revision 24861)
1454@@ -160,7 +160,7 @@
1455 }
1456
1457 iomodel->FetchDataToInput(inputs2,elements,"md.geometry.thickness",ThicknessEnum);
1458- iomodel->FetchDataToInput(inputs2,elements,"md.mask.groundedice_levelset",MaskGroundediceLevelsetEnum);
1459+ iomodel->FetchDataToInput(inputs2,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum);
1460 if(ismovingfront){
1461 if(iomodel->domaintype!=Domain2DhorizontalEnum)
1462 iomodel->FetchDataToInput(inputs2,elements,"md.mesh.vertexonbase",MeshVertexonbaseEnum); // required for updating active nodes
1463Index: ../trunk-jpl/src/c/analyses/StressbalanceAnalysis.cpp
1464===================================================================
1465--- ../trunk-jpl/src/c/analyses/StressbalanceAnalysis.cpp (revision 24860)
1466+++ ../trunk-jpl/src/c/analyses/StressbalanceAnalysis.cpp (revision 24861)
1467@@ -102,7 +102,7 @@
1468 iomodel->FetchData(&vertices_type,NULL,NULL,"md.flowequation.vertex_equation");
1469 iomodel->FetchData(&nodeonFS,NULL,NULL,"md.flowequation.borderFS");
1470 iomodel->FetchData(&nodeonbase,NULL,NULL,"md.mesh.vertexonbase");
1471- iomodel->FetchData(&groundedice_ls,NULL,NULL,"md.mask.groundedice_levelset");
1472+ iomodel->FetchData(&groundedice_ls,NULL,NULL,"md.mask.ocean_levelset");
1473 if(iomodel->domaintype==Domain3DEnum){
1474 iomodel->FetchData(&spcvz,&Mz,&Nz,"md.stressbalance.spcvz");
1475 }
1476@@ -129,7 +129,7 @@
1477 iomodel->DeleteData(vertices_type,"md.flowequation.vertex_equation");
1478 iomodel->DeleteData(nodeonFS,"md.flowequation.borderFS");
1479 iomodel->DeleteData(nodeonbase,"md.mesh.vertexonbase");
1480- iomodel->DeleteData(groundedice_ls,"md.mask.groundedice_levelset");
1481+ iomodel->DeleteData(groundedice_ls,"md.mask.ocean_levelset");
1482
1483 /*Pressure spc*/
1484 int count = constraints->Size();
1485@@ -201,7 +201,7 @@
1486 if(iomodel->domaintype==Domain3DEnum)iomodel->FetchData(&nodeonHO,NULL,NULL,"md.flowequation.borderHO");
1487 if(iomodel->domaintype==Domain3DEnum)iomodel->FetchData(&nodeonFS,NULL,NULL,"md.flowequation.borderFS");
1488 if(iomodel->domaintype==Domain3DEnum)iomodel->FetchData(&nodeonbase,NULL,NULL,"md.mesh.vertexonbase");
1489- if(iomodel->domaintype==Domain3DEnum)iomodel->FetchData(&groundedice_ls,NULL,NULL,"md.mask.groundedice_levelset");
1490+ if(iomodel->domaintype==Domain3DEnum)iomodel->FetchData(&groundedice_ls,NULL,NULL,"md.mask.ocean_levelset");
1491 iomodel->FetchData(&vertices_type,NULL,NULL,"md.flowequation.vertex_equation");
1492 iomodel->FetchData(&surface,NULL,NULL,"md.geometry.surface");
1493 iomodel->FetchData(&z,NULL,NULL,"md.mesh.z");
1494@@ -431,7 +431,7 @@
1495 if(iomodel->domaintype==Domain3DEnum)iomodel->DeleteData(nodeonHO,"md.flowequation.borderHO");
1496 if(iomodel->domaintype==Domain3DEnum)iomodel->DeleteData(nodeonFS,"md.flowequation.borderFS");
1497 if(iomodel->domaintype==Domain3DEnum)iomodel->DeleteData(nodeonbase,"md.mesh.vertexonbase");
1498- if(iomodel->domaintype==Domain3DEnum)iomodel->DeleteData(groundedice_ls,"md.mask.groundedice_levelset");
1499+ if(iomodel->domaintype==Domain3DEnum)iomodel->DeleteData(groundedice_ls,"md.mask.ocean_levelset");
1500 iomodel->DeleteData(vertices_type,"md.flowequation.vertex_equation");
1501 iomodel->DeleteData(surface,"md.geometry.surface");
1502 iomodel->DeleteData(z,"md.mesh.z");
1503@@ -495,7 +495,7 @@
1504 /*Create Riffront loads for rifts: */
1505 if(numrifts){
1506 iomodel->FetchData(&riftinfo,&numriftsegments,NULL,"md.rifts.riftstruct");
1507- iomodel->FetchData(5,"md.rifts.riftstruct","md.geometry.thickness","md.geometry.base","md.geometry.surface","md.mask.groundedice_levelset");
1508+ iomodel->FetchData(5,"md.rifts.riftstruct","md.geometry.thickness","md.geometry.base","md.geometry.surface","md.mask.ocean_levelset");
1509 for(i=0;i<numriftsegments;i++){
1510 if(iomodel->my_elements[reCast<int,IssmDouble>(*(riftinfo+RIFTINFOSIZE*i+2))-1]){
1511 loads->AddObject(new Riftfront(count+1,i,iomodel));
1512@@ -502,7 +502,7 @@
1513 count++;
1514 }
1515 }
1516- iomodel->DeleteData(5,"md.rifts.riftstruct","md.geometry.thickness","md.geometry.base","md.geometry.surface","md.mask.groundedice_levelset");
1517+ iomodel->DeleteData(5,"md.rifts.riftstruct","md.geometry.thickness","md.geometry.base","md.geometry.surface","md.mask.ocean_levelset");
1518 xDelete<IssmDouble>(riftinfo);
1519 }
1520 }/*}}}*/
1521@@ -757,7 +757,7 @@
1522 iomodel->FetchDataToInput(inputs2,elements,"md.geometry.base",BaseEnum);
1523 iomodel->FetchDataToInput(inputs2,elements,"md.slr.sealevel",SealevelEnum,0);
1524 iomodel->FetchDataToInput(inputs2,elements,"md.mask.ice_levelset",MaskIceLevelsetEnum);
1525- iomodel->FetchDataToInput(inputs2,elements,"md.mask.groundedice_levelset",MaskGroundediceLevelsetEnum);
1526+ iomodel->FetchDataToInput(inputs2,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum);
1527 iomodel->FetchDataToInput(inputs2,elements,"md.initialization.vx",VxEnum,0.);
1528 iomodel->FetchDataToInput(inputs2,elements,"md.initialization.vy",VyEnum,0.);
1529 iomodel->FetchDataToInput(inputs2,elements,"md.stressbalance.loadingforcex",LoadingforceXEnum);
1530@@ -1441,7 +1441,7 @@
1531 /*Recover portion of element that is grounded*/
1532 if(!(friction_style==SubelementFriction2Enum)) phi=element->GetGroundedPortion(xyz_list);
1533 if(friction_style==SubelementFriction2Enum){
1534- gllevelset_input=element->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
1535+ gllevelset_input=element->GetInput2(MaskOceanLevelsetEnum); _assert_(gllevelset_input);
1536 element->GetGroundedPart(&point1,&fraction1,&fraction2,&mainlyfloating);
1537 gauss = element->NewGauss(point1,fraction1,fraction2,mainlyfloating,2);
1538 }
1539@@ -2479,7 +2479,7 @@
1540 /*Recover portion of element that is grounded*/
1541 if(!(friction_style==SubelementFriction2Enum)) phi=element->GetGroundedPortion(xyz_list_base);
1542 if(friction_style==SubelementFriction2Enum){
1543- gllevelset_input=element->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
1544+ gllevelset_input=element->GetInput2(MaskOceanLevelsetEnum); _assert_(gllevelset_input);
1545 element->GetGroundedPart(&point1,&fraction1,&fraction2,&mainlyfloating);
1546 gauss = element->NewGauss(point1,fraction1,fraction2,mainlyfloating,2);
1547 }
1548@@ -3962,7 +3962,7 @@
1549 if(!(friction_style==SubelementFriction2Enum)) phi=element->GetGroundedPortion(xyz_list_base);
1550 if(friction_style==SubelementFriction2Enum){
1551 if(domaintype==Domain2DverticalEnum) _error_("Subelement Friction 2 not implemented yet for Flowline");
1552- gllevelset_input=element->GetInput2(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
1553+ gllevelset_input=element->GetInput2(MaskOceanLevelsetEnum); _assert_(gllevelset_input);
1554 element->GetGroundedPart(&point1,&fraction1,&fraction2,&mainlyfloating);
1555 //gauss = element->NewGauss(point1,fraction1,fraction2,mainlyfloating,2);
1556 gauss=element->NewGaussBase(3);
1557Index: ../trunk-jpl/src/c/analyses/HydrologyDCInefficientAnalysis.cpp
1558===================================================================
1559--- ../trunk-jpl/src/c/analyses/HydrologyDCInefficientAnalysis.cpp (revision 24860)
1560+++ ../trunk-jpl/src/c/analyses/HydrologyDCInefficientAnalysis.cpp (revision 24861)
1561@@ -792,7 +792,7 @@
1562 IssmDouble* groundedice = xNew<IssmDouble>(numnodes);
1563
1564 basalelement->GetInputListOnVertices(&meltingrate[0],BasalforcingsGroundediceMeltingRateEnum);
1565- basalelement->GetInputListOnVertices(&groundedice[0],MaskGroundediceLevelsetEnum);
1566+ basalelement->GetInputListOnVertices(&groundedice[0],MaskOceanLevelsetEnum);
1567
1568 /*if melting rate is not positive and node is not floating, deactivate*/
1569 for(int i=0;i<numnodes;i++){
1570Index: ../trunk-jpl/src/c/analyses/ThermalAnalysis.cpp
1571===================================================================
1572--- ../trunk-jpl/src/c/analyses/ThermalAnalysis.cpp (revision 24860)
1573+++ ../trunk-jpl/src/c/analyses/ThermalAnalysis.cpp (revision 24861)
1574@@ -134,7 +134,7 @@
1575 iomodel->FetchDataToInput(inputs2,elements,"md.geometry.base",BaseEnum);
1576 iomodel->FetchDataToInput(inputs2,elements,"md.slr.sealevel",SealevelEnum,0);
1577 iomodel->FetchDataToInput(inputs2,elements,"md.mask.ice_levelset",MaskIceLevelsetEnum);
1578- iomodel->FetchDataToInput(inputs2,elements,"md.mask.groundedice_levelset",MaskGroundediceLevelsetEnum);
1579+ iomodel->FetchDataToInput(inputs2,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum);
1580 if(iomodel->domaintype!=Domain2DhorizontalEnum){
1581 iomodel->FetchDataToInput(inputs2,elements,"md.mesh.vertexonbase",MeshVertexonbaseEnum);
1582 iomodel->FetchDataToInput(inputs2,elements,"md.mesh.vertexonsurface",MeshVertexonsurfaceEnum);
1583Index: ../trunk-jpl/src/c/analyses/EnthalpyAnalysis.cpp
1584===================================================================
1585--- ../trunk-jpl/src/c/analyses/EnthalpyAnalysis.cpp (revision 24860)
1586+++ ../trunk-jpl/src/c/analyses/EnthalpyAnalysis.cpp (revision 24861)
1587@@ -138,7 +138,7 @@
1588 iomodel->FetchDataToInput(inputs2,elements,"md.slr.sealevel",SealevelEnum,0);
1589 iomodel->FetchDataToInput(inputs2,elements,"md.geometry.base",BaseEnum);
1590 iomodel->FetchDataToInput(inputs2,elements,"md.mask.ice_levelset",MaskIceLevelsetEnum);
1591- iomodel->FetchDataToInput(inputs2,elements,"md.mask.groundedice_levelset",MaskGroundediceLevelsetEnum);
1592+ iomodel->FetchDataToInput(inputs2,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum);
1593 if(iomodel->domaintype!=Domain2DhorizontalEnum){
1594 iomodel->FetchDataToInput(inputs2,elements,"md.mesh.vertexonbase",MeshVertexonbaseEnum);
1595 iomodel->FetchDataToInput(inputs2,elements,"md.mesh.vertexonsurface",MeshVertexonsurfaceEnum);
1596Index: ../trunk-jpl/src/c/analyses/FreeSurfaceBaseAnalysis.cpp
1597===================================================================
1598--- ../trunk-jpl/src/c/analyses/FreeSurfaceBaseAnalysis.cpp (revision 24860)
1599+++ ../trunk-jpl/src/c/analyses/FreeSurfaceBaseAnalysis.cpp (revision 24861)
1600@@ -295,7 +295,7 @@
1601 /*Retrieve all inputs and parameters*/
1602 basalelement->GetVerticesCoordinates(&xyz_list);
1603 basalelement->FindParam(&dt,TimesteppingTimeStepEnum);
1604- Input2* groundedice_input = basalelement->GetInput2(MaskGroundediceLevelsetEnum); _assert_(groundedice_input);
1605+ Input2* groundedice_input = basalelement->GetInput2(MaskOceanLevelsetEnum); _assert_(groundedice_input);
1606 Input2* gmb_input = basalelement->GetInput2(BasalforcingsGroundediceMeltingRateEnum); _assert_(gmb_input);
1607 Input2* fmb_input = basalelement->GetInput2(BasalforcingsFloatingiceMeltingRateEnum); _assert_(fmb_input);
1608 Input2* base_input = basalelement->GetInput2(BaseEnum); _assert_(base_input);
1609@@ -410,7 +410,7 @@
1610 if(!element->IsOnBase()) continue;
1611
1612 int numnodes = element->GetNumberOfNodes();
1613- Input2* groundedice_input = element->GetInput2(MaskGroundediceLevelsetEnum); _assert_(groundedice_input);
1614+ Input2* groundedice_input = element->GetInput2(MaskOceanLevelsetEnum); _assert_(groundedice_input);
1615 Input2* onbase_input = element->GetInput2(MeshVertexonbaseEnum); _assert_(onbase_input);
1616 Input2* base_input = element->GetInput2(BaseEnum); _assert_(base_input);
1617
Note: See TracBrowser for help on using the repository browser.