Changeset 15595
- Timestamp:
- 07/24/13 15:28:57 (12 years ago)
- Location:
- issm/trunk-jpl/src
- Files:
-
- 1 added
- 18 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/Elements/Penta.cpp
r15567 r15595 2357 2357 name==FrictionCoefficientEnum || 2358 2358 name==GLlevelsetEnum || 2359 name== IcelevelsetEnum ||2359 name==MaskIcelevelsetEnum || 2360 2360 name==GradientEnum || 2361 2361 name==OldGradientEnum || … … 7974 7974 7975 7975 /*Retrieve all inputs and parameters*/ 7976 GetInputListOnVertices(&ls[0], IcelevelsetEnum);7976 GetInputListOnVertices(&ls[0],MaskIcelevelsetEnum); 7977 7977 7978 7978 /*If the level set is awlays <=0, there is no ice front here*/ … … 8005 8005 rho_ice =matpar->GetRhoIce(); 8006 8006 gravity =matpar->GetG(); 8007 GetZeroLevelsetCoordinates(&xyz_list_front[0][0],xyz_list, IcelevelsetEnum);8007 GetZeroLevelsetCoordinates(&xyz_list_front[0][0],xyz_list,MaskIcelevelsetEnum); 8008 8008 GetAreaCoordinates(&area_coordinates[0][0],xyz_list_front,xyz_list,4); 8009 8009 GetQuadNormal(&normal[0],xyz_list_front); … … 8179 8179 8180 8180 /*Retrieve all inputs and parameters*/ 8181 GetInputListOnVertices(&ls[0], IcelevelsetEnum);8181 GetInputListOnVertices(&ls[0],MaskIcelevelsetEnum); 8182 8182 8183 8183 /*If the level set is awlays <=0, there is no ice front here*/ … … 8209 8209 rho_ice =matpar->GetRhoIce(); 8210 8210 gravity =matpar->GetG(); 8211 GetZeroLevelsetCoordinates(&xyz_list_front[0][0],xyz_list, IcelevelsetEnum);8211 GetZeroLevelsetCoordinates(&xyz_list_front[0][0],xyz_list,MaskIcelevelsetEnum); 8212 8212 GetAreaCoordinates(&area_coordinates[0][0],xyz_list_front,xyz_list,4); 8213 8213 GetQuadNormal(&normal[0],xyz_list_front); -
issm/trunk-jpl/src/c/classes/Elements/Tria.cpp
r15567 r15595 1848 1848 name==BedEnum || 1849 1849 name==GLlevelsetEnum || 1850 name== IcelevelsetEnum ||1850 name==MaskIcelevelsetEnum || 1851 1851 name==SurfaceSlopeXEnum || 1852 1852 name==SurfaceSlopeYEnum || … … 3155 3155 3156 3156 /*Retrieve all inputs and parameters*/ 3157 GetInputListOnVertices(&ls[0], IcelevelsetEnum);3157 GetInputListOnVertices(&ls[0],MaskIcelevelsetEnum); 3158 3158 3159 3159 /*If the level set is awlays <0, there is no ice front here*/ … … 3187 3187 rho_ice =matpar->GetRhoIce(); 3188 3188 gravity =matpar->GetG(); 3189 GetZeroLevelsetCoordinates(&xyz_list_front[0][0],xyz_list, IcelevelsetEnum);3189 GetZeroLevelsetCoordinates(&xyz_list_front[0][0],xyz_list,MaskIcelevelsetEnum); 3190 3190 GetAreaCoordinates(&area_coordinates[0][0],xyz_list_front,xyz_list,2); 3191 3191 GetSegmentNormal(&normal[0],xyz_list_front); -
issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateElementsVerticesAndMaterials.cpp
r15433 r15595 82 82 83 83 /*Fetch data:*/ 84 iomodel->FetchData(6,MeshXEnum,MeshYEnum,MeshZEnum,BedEnum,ThicknessEnum, IcelevelsetEnum);84 iomodel->FetchData(6,MeshXEnum,MeshYEnum,MeshZEnum,BedEnum,ThicknessEnum,MaskIcelevelsetEnum); 85 85 CreateNumberNodeToElementConnectivity(iomodel); 86 86 … … 96 96 97 97 /*Free data: */ 98 iomodel->DeleteData(6,MeshXEnum,MeshYEnum,MeshZEnum,BedEnum,ThicknessEnum, IcelevelsetEnum);98 iomodel->DeleteData(6,MeshXEnum,MeshYEnum,MeshZEnum,BedEnum,ThicknessEnum,MaskIcelevelsetEnum); 99 99 100 100 /*Assign output pointer: */ -
issm/trunk-jpl/src/c/modules/ModelProcessorx/DiagnosticHoriz/UpdateElementsDiagnosticHoriz.cpp
r15564 r15595 56 56 iomodel->FetchDataToInput(elements,MaskElementonfloatingiceEnum); 57 57 iomodel->FetchDataToInput(elements,MaskElementonwaterEnum); 58 iomodel->FetchDataToInput(elements, IcelevelsetEnum);58 iomodel->FetchDataToInput(elements,MaskIcelevelsetEnum); 59 59 iomodel->FetchDataToInput(elements,MaterialsRheologyBEnum); 60 60 iomodel->FetchDataToInput(elements,MaterialsRheologyNEnum); -
issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
r15567 r15595 147 147 MaskVertexongroundediceEnum, 148 148 MaskVertexonwaterEnum, 149 IcelevelsetEnum,149 MaskIcelevelsetEnum, 150 150 MaterialsBetaEnum, 151 151 MaterialsHeatcapacityEnum, -
issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
r15567 r15595 155 155 case MaskVertexongroundediceEnum : return "MaskVertexongroundedice"; 156 156 case MaskVertexonwaterEnum : return "MaskVertexonwater"; 157 case IcelevelsetEnum : return "Icelevelset";157 case MaskIcelevelsetEnum : return "MaskIcelevelset"; 158 158 case MaterialsBetaEnum : return "MaterialsBeta"; 159 159 case MaterialsHeatcapacityEnum : return "MaterialsHeatcapacity"; -
issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
r15567 r15595 158 158 else if (strcmp(name,"MaskVertexongroundedice")==0) return MaskVertexongroundediceEnum; 159 159 else if (strcmp(name,"MaskVertexonwater")==0) return MaskVertexonwaterEnum; 160 else if (strcmp(name," Icelevelset")==0) returnIcelevelsetEnum;160 else if (strcmp(name,"MaskIcelevelset")==0) return MaskIcelevelsetEnum; 161 161 else if (strcmp(name,"MaterialsBeta")==0) return MaterialsBetaEnum; 162 162 else if (strcmp(name,"MaterialsHeatcapacity")==0) return MaterialsHeatcapacityEnum; -
issm/trunk-jpl/src/m/boundaryconditions/SetIceShelfBC.m
r14529 r15595 64 64 %plug onto model 65 65 md.diagnostic.icefront=pressureload; 66 md.mask.icelevelset(find(nodeonicefront))=0; 66 67 67 68 %Create zeros basalforcings and surfaceforcings -
issm/trunk-jpl/src/m/boundaryconditions/SetIceShelfBC.py
r15521 r15595 74 74 #plug onto model 75 75 md.diagnostic.icefront=pressureload 76 pos=numpy.nonzero(nodeonicefront)[0] 77 md.mask.icelevelset[pos]=0 76 78 77 79 #Create zeros basalforcings and surfaceforcings -
issm/trunk-jpl/src/m/boundaryconditions/SetMarineIceSheetBC.m
r14529 r15595 74 74 %plug onto model 75 75 md.diagnostic.icefront=pressureload; 76 md.mask.icelevelset(find(vertexonicefront))=0; 76 77 77 78 %Create zeros basalforcings and surfaceforcings -
issm/trunk-jpl/src/m/boundaryconditions/SetMarineIceSheetBC.py
r14529 r15595 80 80 #plug onto model 81 81 md.diagnostic.icefront=pressureload 82 pos=numpy.nonzero(vertexonicefront)[0] 83 md.mask.icelevelset[pos]=0 82 84 83 85 #Create zeros basalforcings and surfaceforcings -
issm/trunk-jpl/src/m/classes/mask.m
r15413 r15595 12 12 vertexongroundedice = NaN; 13 13 vertexonwater = NaN; 14 vertexonrock = NaN; 14 vertexonrock = NaN; 15 icelevelset = NaN; 15 16 end 16 17 methods … … 34 35 md = checkfield(md,'mask.vertexongroundedice','size',[md.mesh.numberofvertices 1],'values',[0 1]); 35 36 md = checkfield(md,'mask.vertexonwater' ,'size',[md.mesh.numberofvertices 1],'values',[0 1]); 37 md = checkfield(md,'mask.icelevelset' ,'size',[md.mesh.numberofvertices 1]); 38 isice=(md.mask.icelevelset>0); 39 if any(sum(isice(md.mesh.elements),2)==0), 40 error('elements with no ice not implemented yet, each element should have at least one vertex with md.mask.icelevelset > 0'); 41 end 36 42 %md = checkfield(md,'mask.vertexonrock' ,'size',[md.mesh.numberofvertices 1],'values',[0 1]); 37 43 end % }}} … … 46 52 fielddisplay(obj,'vertexonwater','vertex on water flags list'); 47 53 fielddisplay(obj,'vertexonrock','vertex on rock flags list'); 54 fielddisplay(obj,'icelevelset','presence of ice if > 0, icefront position if = 0, no ice if < 0'); 48 55 end % }}} 49 56 function marshall(obj,md,fid) % {{{ … … 57 64 pos=md.diagnostic.icefront(:,1:end-2); 58 65 icelevelset(pos(:))=0; 59 WriteData(fid,' data',icelevelset,'format','DoubleMat','mattype',1,'enum',IcelevelsetEnum());66 WriteData(fid,'object',obj,'fieldname','icelevelset','format','DoubleMat','mattype',1); 60 67 end % }}} 61 68 end -
issm/trunk-jpl/src/m/classes/mask.py
r15434 r15595 19 19 self.vertexongroundedice = float('NaN') 20 20 self.vertexonwater = float('NaN') 21 self.icelevelset = float('NaN') 21 22 22 23 #set defaults … … 33 34 string="%s\n%s"%(string,fielddisplay(self,"elementonwater","element on water flags list")) 34 35 string="%s\n%s"%(string,fielddisplay(self,"vertexonwater","vertex on water flags list")) 36 string="%s\n%s"%(string,fielddisplay(self,"icelevelset","presence of ice if > 0, icefront position if = 0, no ice if < 0")) 35 37 return string 36 38 #}}} … … 46 48 md = checkfield(md,'mask.vertexongroundedice' ,'size',[md.mesh.numberofvertices],'values',[0,1]) 47 49 md = checkfield(md,'mask.vertexonwater' ,'size',[md.mesh.numberofvertices],'values',[0,1]) 50 md = checkfield(md,'mask.icelevelset' ,'size',[md.mesh.numberofvertices]) 48 51 49 52 return md … … 60 63 pos=md.diagnostic.icefront[:,:-2] 61 64 icelevelset[pos[:].astype(int)-1]=0; 62 WriteData(fid,' data',icelevelset,'format','DoubleMat','mattype',1,'enum',IcelevelsetEnum())65 WriteData(fid,'object',self,'fieldname','icelevelset','format','DoubleMat','mattype',1) 63 66 # }}} -
issm/trunk-jpl/src/m/classes/model/model.m
r15564 r15595 225 225 md.mask.vertexonrock=project2d(md,md.mask.vertexonrock,1); 226 226 end 227 md.mask.icelevelset=project2d(md,md.mask.icelevelset,1); 227 228 228 229 %lat long … … 772 773 md.mask.vertexonwater=project3d(md,'vector',md.mask.vertexonwater,'type','node'); 773 774 md.mask.vertexonrock=project3d(md,'vector',md.mask.vertexonrock,'type','node'); 775 md.mask.icelevelset=project3d(md,'vector',md.mask.icelevelset,'type','node'); 774 776 if ~isnan(md.inversion.cost_functions_coefficients),md.inversion.cost_functions_coefficients=project3d(md,'vector',md.inversion.cost_functions_coefficients,'type','node');end; 775 777 if ~isnan(md.inversion.min_parameters),md.inversion.min_parameters=project3d(md,'vector',md.inversion.min_parameters,'type','node');end; -
issm/trunk-jpl/src/m/classes/model/model.py
r15564 r15595 661 661 md.mask.elementonwater=project3d(md,'vector',md.mask.elementonwater,'type','element') 662 662 md.mask.vertexonwater=project3d(md,'vector',md.mask.vertexonwater,'type','node') 663 md.mask.iceleveset=project3d(md,'vector',md.mask.icelevelset,'type','node') 663 664 if not numpy.any(numpy.isnan(md.inversion.cost_functions_coefficients)): 664 665 md.inversion.cost_functions_coefficients=project3d(md,'vector',md.inversion.cost_functions_coefficients,'type','node');end; -
issm/trunk-jpl/src/m/enum/EnumDefinitions.py
r15567 r15595 1941 1941 return StringToEnum('MaskVertexonwater')[0] 1942 1942 1943 def IcelevelsetEnum():1944 """ 1945 ICELEVELSETENUM - Enum ofIcelevelset1946 1947 WARNING: DO NOT MODIFY THIS FILE 1948 this file has been automatically generated by src/c/shared/Enum/Synchronize.sh 1949 Please read src/c/shared/Enum/README for more information 1950 1951 Usage: 1952 macro= IcelevelsetEnum()1953 """ 1954 1955 return StringToEnum(' Icelevelset')[0]1943 def MaskIcelevelsetEnum(): 1944 """ 1945 MASKICELEVELSETENUM - Enum of MaskIcelevelset 1946 1947 WARNING: DO NOT MODIFY THIS FILE 1948 this file has been automatically generated by src/c/shared/Enum/Synchronize.sh 1949 Please read src/c/shared/Enum/README for more information 1950 1951 Usage: 1952 macro=MaskIcelevelsetEnum() 1953 """ 1954 1955 return StringToEnum('MaskIcelevelset')[0] 1956 1956 1957 1957 def MaterialsBetaEnum(): -
issm/trunk-jpl/src/m/parameterization/setmask.m
r13006 r15595 48 48 md.mask.vertexonwater=zeros(md.mesh.numberofvertices,1); 49 49 md.mask.elementonwater=zeros(md.mesh.numberofelements,1); 50 md.mask.icelevelset=ones(md.mesh.numberofvertices,1); -
issm/trunk-jpl/src/m/parameterization/setmask.py
r13984 r15595 48 48 md.mask.vertexonwater = numpy.zeros(md.mesh.numberofvertices,bool) 49 49 md.mask.elementonwater = numpy.zeros(md.mesh.numberofelements,bool) 50 md.mask.iceleveset = numpy.ones(md.mesh.numberofvertices,bool) 50 51 51 52 return md
Note:
See TracChangeset
for help on using the changeset viewer.