source: issm/oecreview/Archive/16554-17801/ISSM-17221-17222.diff@ 17802

Last change on this file since 17802 was 17802, checked in by Mathieu Morlighem, 11 years ago

Added archives

File size: 4.3 KB
RevLine 
[17802]1Index: ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
2===================================================================
3--- ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h (revision 17221)
4+++ ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h (revision 17222)
5@@ -678,6 +678,7 @@
6 /*Levelset related enums (will be moved to appropriate place when finished){{{*/
7 TransientIslevelsetEnum,
8 ExtrapolationVariableEnum,
9+ IceMaskNodeActivationEnum,
10 /*}}}*/
11 MaximumNumberOfDefinitionsEnum
12 };
13Index: ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
14===================================================================
15--- ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp (revision 17221)
16+++ ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp (revision 17222)
17@@ -637,6 +637,7 @@
18 case LliboutryDuvalEnum : return "LliboutryDuval";
19 case TransientIslevelsetEnum : return "TransientIslevelset";
20 case ExtrapolationVariableEnum : return "ExtrapolationVariable";
21+ case IceMaskNodeActivationEnum : return "IceMaskNodeActivation";
22 case MaximumNumberOfDefinitionsEnum : return "MaximumNumberOfDefinitions";
23 default : return "unknown";
24
25Index: ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
26===================================================================
27--- ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp (revision 17221)
28+++ ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp (revision 17222)
29@@ -652,6 +652,7 @@
30 else if (strcmp(name,"LliboutryDuval")==0) return LliboutryDuvalEnum;
31 else if (strcmp(name,"TransientIslevelset")==0) return TransientIslevelsetEnum;
32 else if (strcmp(name,"ExtrapolationVariable")==0) return ExtrapolationVariableEnum;
33+ else if (strcmp(name,"IceMaskNodeActivation")==0) return IceMaskNodeActivationEnum;
34 else if (strcmp(name,"MaximumNumberOfDefinitions")==0) return MaximumNumberOfDefinitionsEnum;
35 else stage=7;
36 }
37Index: ../trunk-jpl/src/m/classes/mask.m
38===================================================================
39--- ../trunk-jpl/src/m/classes/mask.m (revision 17221)
40+++ ../trunk-jpl/src/m/classes/mask.m (revision 17222)
41@@ -38,6 +38,14 @@
42 function marshall(obj,md,fid) % {{{
43 WriteData(fid,'object',obj,'fieldname','groundedice_levelset','format','DoubleMat','mattype',1);
44 WriteData(fid,'object',obj,'fieldname','ice_levelset','format','DoubleMat','mattype',1);
45+
46+ % get mask of vertices of elements with ice
47+ isice=md.mask.ice_levelset<=0.;
48+ vlist = zeros(md.mesh.numberofvertices,1);
49+ pos=find(sum(isice(md.mesh.elements),2)>0);
50+ vlist(md.mesh.elements(pos,:))=1;
51+ WriteData(fid,'data',vlist,'enum',IceMaskNodeActivationEnum(),'format','DoubleMat','mattype',1);
52+
53 end % }}}
54 end
55 end
56Index: ../trunk-jpl/src/m/classes/mask.py
57===================================================================
58--- ../trunk-jpl/src/m/classes/mask.py (revision 17221)
59+++ ../trunk-jpl/src/m/classes/mask.py (revision 17222)
60@@ -1,3 +1,4 @@
61+import numpy
62 from fielddisplay import fielddisplay
63 from EnumDefinitions import *
64 from checkfield import *
65@@ -42,4 +43,11 @@
66 def marshall(self,md,fid): # {{{
67 WriteData(fid,'object',self,'fieldname','groundedice_levelset','format','DoubleMat','mattype',1)
68 WriteData(fid,'object',self,'fieldname','ice_levelset','format','DoubleMat','mattype',1)
69+
70+ # get mask of vertices of elements with ice
71+ isice=numpy.array(md.mask.ice_levelset<=0.,int)
72+ vlist = numpy.zeros((md.mesh.numberofvertices,1), dtype=int)
73+ pos=numpy.nonzero(numpy.sum(isice[md.mesh.elements-1],axis=1))[0]
74+ vlist[md.mesh.elements[pos,:]-1]=1
75+ WriteData(fid,'data',vlist,'enum',IceMaskNodeActivationEnum(),'format','DoubleMat','mattype',1);
76 # }}}
77Index: ../trunk-jpl/src/m/enum/EnumDefinitions.py
78===================================================================
79--- ../trunk-jpl/src/m/enum/EnumDefinitions.py (revision 17221)
80+++ ../trunk-jpl/src/m/enum/EnumDefinitions.py (revision 17222)
81@@ -629,4 +629,5 @@
82 def LliboutryDuvalEnum(): return StringToEnum("LliboutryDuval")[0]
83 def TransientIslevelsetEnum(): return StringToEnum("TransientIslevelset")[0]
84 def ExtrapolationVariableEnum(): return StringToEnum("ExtrapolationVariable")[0]
85+def IceMaskNodeActivationEnum(): return StringToEnum("IceMaskNodeActivation")[0]
86 def MaximumNumberOfDefinitionsEnum(): return StringToEnum("MaximumNumberOfDefinitions")[0]
Note: See TracBrowser for help on using the repository browser.