Changeset 24866


Ignore:
Timestamp:
05/15/20 20:30:32 (5 years ago)
Author:
Mathieu Morlighem
Message:

CHG: renaming groundedice_levelset -> ocean_levelset (negative if ocean present, positive outside

Location:
issm/trunk-jpl/src/m
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/m/classes/flowequation.js

    r21065 r24866  
    9292                        if(ArrayAnyEqual(ArrayIsMember('StressbalanceSIAAnalysis', analyses),1)){
    9393                                if (ArrayAnyEqual(this.element_equation,1)){
    94                                         if(this.vertex_equation & ArrayAnyBelowStrict(md.mask.groundedice_levelset)){
     94                                        if(this.vertex_equation & ArrayAnyBelowStrict(md.mask.ocean_levelset)){
    9595                                                console.log(sprintf("\n !!! Warning: SIA's model is not consistent on ice shelves !!!\n"));
    9696                                        }
  • issm/trunk-jpl/src/m/classes/groundingline.js

    r23355 r24866  
    3434                                }
    3535                                for (var i=0;i<md.mesh.numberofvertices;i++){
    36                                         if(md.mask.groundedice_levelset[i]>0){
     36                                        if(md.mask.ocean_levelset[i]>0){
    3737                                                md.checkmessage('base not equal to bed on grounded ice!');
    3838                                                break;
  • issm/trunk-jpl/src/m/classes/mask.js

    r21155 r24866  
    77        //properties
    88        // {{{
    9                 this.groundedice_levelset                           = NaN;
     9                this.ocean_levelset                           = NaN;
    1010                this.ice_levelset                           = NaN;
    1111                //}}}
     
    1616                        console.log(sprintf("   mask:"));
    1717
    18                         fielddisplay(this,"groundedice_levelset","is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0");
     18                        fielddisplay(this,"ocean_levelset","is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0");
    1919                        fielddisplay(this,"ice_levelset","presence of ice if < 0, icefront position if = 0, no ice if > 0");
    2020                } //}}}
    2121                this.extrude = function(md) {//{{{
    22                         this.groundedice_levelset=project3d(md,'vector',this.groundedice_levelset,'type','node');
     22                        this.ocean_levelset=project3d(md,'vector',this.ocean_levelset,'type','node');
    2323                        this.ice_levelset=project3d(md,'vector',this.ice_levelset,'type','node');
    2424                        return this;
     
    2929                this.checkconsistency = function(md,solution,analyses){ //{{{
    3030
    31                         checkfield(md,'fieldname','mask.groundedice_levelset','size',[md.mesh.numberofvertices, 1]);
     31                        checkfield(md,'fieldname','mask.ocean_levelset','size',[md.mesh.numberofvertices, 1]);
    3232                        checkfield(md,'fieldname','mask.ice_levelset'        ,'size',[md.mesh.numberofvertices, 1]);
    3333                        var isice=NewArrayFill(md.mesh.numberofvertices,0);
     
    4141                } // }}}
    4242                this.marshall=function(md,prefix,fid) { //{{{
    43             WriteData(fid,prefix,'object',this,'fieldname','groundedice_levelset','format','DoubleMat','mattype',1);
     43            WriteData(fid,prefix,'object',this,'fieldname','ocean_levelset','format','DoubleMat','mattype',1);
    4444            WriteData(fid,prefix,'object',this,'fieldname','ice_levelset','format','DoubleMat','mattype',1);
    4545                }//}}}
  • issm/trunk-jpl/src/m/classes/maskpsl.js

    r20777 r24866  
    77        //properties
    88        // {{{
    9                 this.groundedice_levelset                           = NaN;
     9                this.ocean_levelset                           = NaN;
    1010                this.ice_levelset                           = NaN;
    1111                this.land_levelset                           = NaN;
     
    1818                        console.log(sprintf("   mask:"));
    1919
    20                         fielddisplay(this,"groundedice_levelset","is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0");
     20                        fielddisplay(this,"ocean_levelset","is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0");
    2121                        fielddisplay(this,"ice_levelset","presence of ice if < 0, icefront position if = 0, no ice if > 0");
    2222                        fielddisplay(this,"ocean_levelset","is the vertex on the ocean? yes if = 1, no if = 0");
     
    2828                this.checkconsistency = function(md,solution,analyses){ //{{{
    2929
    30                         checkfield(md,'fieldname','mask.groundedice_levelset','size',[md.mesh.numberofvertices, 1]);
     30                        checkfield(md,'fieldname','mask.ocean_levelset','size',[md.mesh.numberofvertices, 1]);
    3131                        checkfield(md,'fieldname','mask.ice_levelset'        ,'size',[md.mesh.numberofvertices, 1]);
    3232                        checkfield(md,'fieldname','mask.ocean_levelset'        ,'size',[md.mesh.numberofvertices, 1]);
     
    5959                } // }}}
    6060                this.marshall=function(md,prefix,fid) { //{{{
    61                         WriteData(fid,prefix,'object',this,'class','mask','fieldname','groundedice_levelset','format','DoubleMat','mattype',1);
     61                        WriteData(fid,prefix,'object',this,'class','mask','fieldname','ocean_levelset','format','DoubleMat','mattype',1);
    6262                        WriteData(fid,prefix,'object',this,'class','mask','fieldname','ice_levelset','format','DoubleMat','mattype',1);
    6363                        WriteData(fid,prefix,'object',this,'class','mask','fieldname','ocean_levelset','format','DoubleMat','mattype',1);
  • issm/trunk-jpl/src/m/classes/maskpsl.m

    r24861 r24866  
    66classdef maskpsl
    77        properties (SetAccess=public)
    8                 ocean_levelset = NaN;
    9                 ice_levelset         = NaN;
    10                 ocean_levelset = NaN;
    11                 land_levelset = NaN;
     8                ice_levelset     = NaN;
     9                ocean_levelset   = NaN;
     10                land_levelset    = NaN;
    1211                glacier_levelset = NaN;
    1312        end
     
    2019        methods
    2120                function self = extrude(self,md) % {{{
    22                         self.ocean_levelset=project3d(md,'vector',self.ocean_levelset,'type','node');
    2321                        self.ice_levelset=project3d(md,'vector',self.ice_levelset,'type','node');
    2422                        self.ocean_levelset=project3d(md,'vector',self.ocean_levelset,'type','node');
     
    4038                        if strcmpi(solution,'LoveSolution'), return; end;
    4139
    42                         md = checkfield(md,'fieldname','mask.ocean_levelset','size',[md.mesh.numberofvertices 1]);
    4340                        md = checkfield(md,'fieldname','mask.ice_levelset'        ,'size',[md.mesh.numberofvertices 1]);
    4441                        md = checkfield(md,'fieldname','mask.ocean_levelset','size',[md.mesh.numberofvertices 1]);
     
    4744                function disp(self) % {{{
    4845                        disp(sprintf('   masks:'));
    49                         fielddisplay(self,'ocean_levelset','is ice grounded ? grounded ice if > 0, grounding line position if = 0, floating ice if < 0');
    5046                        fielddisplay(self,'ice_levelset','presence of ice if < 0, icefront position if = 0, no ice if > 0');
    5147                        fielddisplay(self,'ocean_levelset','is the vertex on the ocean ? yes if = 1, no if = 0');
     
    5551                function marshall(self,prefix,md,fid) % {{{
    5652                        WriteData(fid,prefix,'name','md.mask.type','data',class(md.mask),'format','String');
    57                         WriteData(fid,prefix,'object',self,'class','mask','fieldname','ocean_levelset','format','DoubleMat','mattype',1);
    5853                        WriteData(fid,prefix,'object',self,'class','mask','fieldname','ice_levelset','format','DoubleMat','mattype',1);
    5954                        WriteData(fid,prefix,'object',self,'class','mask','fieldname','ocean_levelset','format','DoubleMat','mattype',1);
     
    6257                function savemodeljs(self,fid,modelname) % {{{
    6358                        fprintf(fid,'%s.mask=new maskpsl();\n',modelname);
    64                         writejs1Darray(fid,[modelname '.mask.ocean_levelset'],self.ocean_levelset);
    6559                        writejs1Darray(fid,[modelname '.mask.ice_levelset'],self.ice_levelset);
    6660                        writejs1Darray(fid,[modelname '.mask.ocean_levelset'],self.ocean_levelset);
  • issm/trunk-jpl/src/m/classes/maskpsl.py

    r24861 r24866  
    1414
    1515    def __init__(self, *args):  # {{{
    16         self.ocean_levelset = float('NaN')
    1716        self.ice_levelset = float('NaN')
    1817        self.ocean_levelset = float('NaN')
     
    2726    def __repr__(self):  # {{{
    2827        string = '   masks:'
    29         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'))
    3028        string = "%s\n%s" % (string, fielddisplay(self, 'ice_levelset', 'presence of ice if < 0, icefront position if = 0, no ice if > 0'))
    3129        string = "%s\n%s" % (string, fielddisplay(self, 'ocean_levelset', 'is the vertex on the ocean ? yes if = 1, no if = 0'))
     
    5048
    5149    def checkconsistency(self, md, solution, analyses):  # {{{
    52         md = checkfield(md, 'fieldname', 'mask.ocean_levelset', 'size', [md.mesh.numberofvertices])
    5350        md = checkfield(md, 'fieldname', 'mask.ice_levelset', 'size', [md.mesh.numberofvertices])
    5451        md = checkfield(md, 'fieldname', 'mask.ocean_levelset', 'size', [md.mesh.numberofvertices])
     
    7269
    7370    def extrude(self, md):  # {{{
    74         self.ocean_levelset = project3d(md, 'vector', self.ocean_levelset, 'type', 'node')
    7571        self.ice_levelset = project3d(md, 'vector', self.ice_levelset, 'type', 'node')
    7672        self.ocean_levelset = project3d(md, 'vector', self.ocean_levelset, 'type', 'node')
     
    9086    def marshall(self, prefix, md, fid):  # {{{
    9187        WriteData(fid, prefix, 'name', 'md.mask.type', 'data', type(md.mask).__name__, 'format', 'String')
    92         WriteData(fid, prefix, 'object', self, 'class', 'mask', 'fieldname', 'ocean_levelset', 'format', 'DoubleMat', 'mattype', 1)
    9388        WriteData(fid, prefix, 'object', self, 'class', 'mask', 'fieldname', 'ice_levelset', 'format', 'DoubleMat', 'mattype', 1)
    9489        WriteData(fid, prefix, 'object', self, 'class', 'mask', 'fieldname', 'ocean_levelset', 'format', 'DoubleMat', 'mattype', 1)
     
    9792
    9893    def savemodeljs(self, fid, modelname):  # {{{
    99         writejs1Darray(fid, [modelname, '.mask.ocean_levelset'], self.ocean_levelset)
    10094        writejs1Darray(fid, [modelname, '.mask.ice_levelset'], self.ice_levelset)
    10195        writejs1Darray(fid, [modelname, '.mask.ocean_levelset'], self.ocean_levelset)
  • issm/trunk-jpl/src/m/classes/model.js

    r24469 r24866  
    643643                                md.geometry.bed=project2d(md,md.geometry.bed,1);
    644644
    645                         if (!Number.isNaN(md.mask.groundedice_levelset))
    646                                 md.mask.groundedice_levelset=project2d(md,md.mask.groundedice_levelset,1);
     645                        if (!Number.isNaN(md.mask.ocean_levelset))
     646                                md.mask.ocean_levelset=project2d(md,md.mask.ocean_levelset,1);
    647647
    648648                        if (!Number.isNaN(md.mask.ice_levelset))
  • issm/trunk-jpl/src/m/classes/stressbalance.js

    r22576 r24866  
    9797
    9898                //singular solution
    99                 if(!ArrayAnyNaN(md.stressbalance.spcvx) | !ArrayAnyNaN(md.stressbalance.spcvy) |  !ArrayAnyAboveStrict(md.mask.groundedice_levelset,0)){
     99                if(!ArrayAnyNaN(md.stressbalance.spcvx) | !ArrayAnyNaN(md.stressbalance.spcvy) |  !ArrayAnyAboveStrict(md.mask.ocean_levelset,0)){
    100100                        md = checkmessage(md,'model is not well posed (singular). You need at least one node with fixed velocity!');
    101101                        console.log(sprintf('\n !!! Warning: no spc applied, model might not be well posed if no basal friction is applied, check for solution crash\n'));
     
    126126                //CHECK THAT NO rotation specified for FS Grounded ice at base
    127127                if (md.mesh.domaintype() == '3D' & md.flowequation.isFS){
    128                         for(var i=0;i<md.mask.groundedice_levelset.length;i++){
    129                                 if(md.mask.groundedice_levelset[i]>0 & md.mesh.vertexonbase[i]){
     128                        for(var i=0;i<md.mask.ocean_levelset.length;i++){
     129                                if(md.mask.ocean_levelset[i]>0 & md.mesh.vertexonbase[i]){
    130130                                        if(!ArrayIsNan(md.stressbalance.referential[i])){
    131131                                                md.checkmessage('no referential should be specified for basal vertices of grounded ice');
  • issm/trunk-jpl/src/m/parameterization/setmask.js

    r19823 r24866  
    6363
    6464        //level sets
    65         groundedice_levelset=vertexongroundedice;
    66         pos=ArrayFind(vertexongroundedice,0);for(var i=0;i<pos.length;i++) groundedice_levelset[i]=-1;
    67         md.mask.groundedice_levelset=groundedice_levelset;
     65        ocean_levelset=vertexongroundedice;
     66        pos=ArrayFind(vertexongroundedice,0);for(var i=0;i<pos.length;i++) ocean_levelset[i]=-1;
     67        md.mask.ocean_levelset=ocean_levelset;
    6868
    6969        if(arguments.length>3){
Note: See TracChangeset for help on using the changeset viewer.