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
  • ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h

     
    678678        /*Levelset related enums (will be moved to appropriate place when finished){{{*/
    679679        TransientIslevelsetEnum,
    680680        ExtrapolationVariableEnum,
     681        IceMaskNodeActivationEnum,
    681682        /*}}}*/
    682683        MaximumNumberOfDefinitionsEnum
    683684};
  • ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp

     
    637637                case LliboutryDuvalEnum : return "LliboutryDuval";
    638638                case TransientIslevelsetEnum : return "TransientIslevelset";
    639639                case ExtrapolationVariableEnum : return "ExtrapolationVariable";
     640                case IceMaskNodeActivationEnum : return "IceMaskNodeActivation";
    640641                case MaximumNumberOfDefinitionsEnum : return "MaximumNumberOfDefinitions";
    641642                default : return "unknown";
    642643
  • ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp

     
    652652              else if (strcmp(name,"LliboutryDuval")==0) return LliboutryDuvalEnum;
    653653              else if (strcmp(name,"TransientIslevelset")==0) return TransientIslevelsetEnum;
    654654              else if (strcmp(name,"ExtrapolationVariable")==0) return ExtrapolationVariableEnum;
     655              else if (strcmp(name,"IceMaskNodeActivation")==0) return IceMaskNodeActivationEnum;
    655656              else if (strcmp(name,"MaximumNumberOfDefinitions")==0) return MaximumNumberOfDefinitionsEnum;
    656657         else stage=7;
    657658   }
  • ../trunk-jpl/src/m/classes/mask.m

     
    3838                function marshall(obj,md,fid) % {{{
    3939                        WriteData(fid,'object',obj,'fieldname','groundedice_levelset','format','DoubleMat','mattype',1);
    4040                        WriteData(fid,'object',obj,'fieldname','ice_levelset','format','DoubleMat','mattype',1);
     41
     42                        % get mask of vertices of elements with ice
     43                        isice=md.mask.ice_levelset<=0.;
     44                        vlist = zeros(md.mesh.numberofvertices,1);
     45                        pos=find(sum(isice(md.mesh.elements),2)>0);
     46                        vlist(md.mesh.elements(pos,:))=1;
     47                        WriteData(fid,'data',vlist,'enum',IceMaskNodeActivationEnum(),'format','DoubleMat','mattype',1);
     48
    4149                end % }}}
    4250        end
    4351end
  • ../trunk-jpl/src/m/classes/mask.py

     
     1import numpy
    12from fielddisplay import fielddisplay
    23from EnumDefinitions import *
    34from checkfield import *
     
    4243        def marshall(self,md,fid):    # {{{
    4344                WriteData(fid,'object',self,'fieldname','groundedice_levelset','format','DoubleMat','mattype',1)
    4445                WriteData(fid,'object',self,'fieldname','ice_levelset','format','DoubleMat','mattype',1)
     46
     47                # get mask of vertices of elements with ice
     48                isice=numpy.array(md.mask.ice_levelset<=0.,int)
     49                vlist = numpy.zeros((md.mesh.numberofvertices,1), dtype=int)
     50                pos=numpy.nonzero(numpy.sum(isice[md.mesh.elements-1],axis=1))[0]
     51                vlist[md.mesh.elements[pos,:]-1]=1
     52                WriteData(fid,'data',vlist,'enum',IceMaskNodeActivationEnum(),'format','DoubleMat','mattype',1);
    4553        # }}}
  • ../trunk-jpl/src/m/enum/EnumDefinitions.py

     
    629629def LliboutryDuvalEnum(): return StringToEnum("LliboutryDuval")[0]
    630630def TransientIslevelsetEnum(): return StringToEnum("TransientIslevelset")[0]
    631631def ExtrapolationVariableEnum(): return StringToEnum("ExtrapolationVariable")[0]
     632def IceMaskNodeActivationEnum(): return StringToEnum("IceMaskNodeActivation")[0]
    632633def MaximumNumberOfDefinitionsEnum(): return StringToEnum("MaximumNumberOfDefinitions")[0]
Note: See TracBrowser for help on using the repository browser.