Changeset 24896


Ignore:
Timestamp:
05/22/20 17:18:16 (5 years ago)
Author:
jdquinn
Message:

CHG: MATLAB -> Python translations; fixing previous mistakes (again); cleanup.

Location:
issm/trunk-jpl/src/m/classes
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified issm/trunk-jpl/src/m/classes/mask.m

    r24892 r24896  
    2121                        %2020 May 15th
    2222                        if isstruct(self)
    23             selfnew = mask();
    24             if isfield(self,'ice_levelset')
    25                selfnew.ice_levelset = self.ice_levelset;
    26             end
    27             if isfield(self,'ocean_levelset')
    28                selfnew.ocean_levelset = self.ocean_levelset;
    29             end
    30             if isfield(self,'groundedice_levelset')
    31                disp('WARNING: automatically updated md.mask as groundedice_levelset is now ocean_levelset');
    32                selfnew.ocean_levelset = self.groundedice_levelset;
    33             end
    34             self = selfnew;
     23                                selfnew = mask();
     24                                if isfield(self,'ice_levelset')
     25                                        selfnew.ice_levelset = self.ice_levelset;
     26                                end
     27                                if isfield(self,'ocean_levelset')
     28                                        selfnew.ocean_levelset = self.ocean_levelset;
     29                                end
     30                                if isfield(self,'groundedice_levelset')
     31                                        disp('WARNING: automatically updated md.mask as groundedice_levelset is now ocean_levelset');
     32                                        selfnew.ocean_levelset = self.groundedice_levelset;
     33                                end
     34                                self = selfnew;
    3535                        end
    36 
    37                 end% }}}
     36                end % }}}
    3837        end
    3938        methods
     39                function disp(self) % {{{
     40                        disp(sprintf('   masks:'));
     41
     42                        fielddisplay(self,'ocean_levelset','presence of ocean if < 0, coastline/grounding line if = 0, no ocean if > 0');
     43                        fielddisplay(self,'ice_levelset','presence of ice if < 0, icefront position if = 0, no ice if > 0');
     44                end % }}}
     45                function self = setdefaultparameters(self) % {{{
     46                end % }}}
    4047                function self = extrude(self,md) % {{{
    4148                        self.ocean_levelset=project3d(md,'vector',self.ocean_levelset,'type','node');
     
    5057                        end
    5158                end % }}}
    52                 function self = setdefaultparameters(self) % {{{
    53 
    54                 end % }}}
    5559                function self = oceanset(self,varargin) % {{{
    5660                        if nargin==2,
     
    6367                        else error('oceanset error message: not supported yet');
    6468                        end
    65 
    6669                end % }}}
    6770                function self = iceset(self,varargin) % {{{
     
    7780
    7881                end % }}}
    79         function md = checkconsistency(self,md,solution,analyses) % {{{
     82                function md = checkconsistency(self,md,solution,analyses) % {{{
    8083                        if strcmpi(solution,'LoveSolution'), return; end;
    8184
     
    8689                                warning('no ice present in the domain');
    8790                        end
    88                 end % }}}
    89                 function disp(self) % {{{
    90                         disp(sprintf('   masks:'));
    91 
    92                         fielddisplay(self,'ocean_levelset','presence of ocean if < 0, coastline/grounding line if = 0, no ocean if > 0');
    93                         fielddisplay(self,'ice_levelset','presence of ice if < 0, icefront position if = 0, no ice if > 0');
    9491                end % }}}
    9592                function marshall(self,prefix,md,fid) % {{{
  • TabularUnified issm/trunk-jpl/src/m/classes/mask.py

    r24867 r24896  
    11import numpy as np
     2
     3from checkfield import checkfield
    24from fielddisplay import fielddisplay
    35from project3d import project3d
    4 from checkfield import checkfield
    56from WriteData import WriteData
    67
    78
    89class mask(object):
    9     """
     10    '''
    1011    MASK class definition
    1112
    12        Usage:
    13           mask = mask()
    14     """
    15 
    16     def __init__(self):  # {{{
     13        Usage:
     14            mask = mask()
     15    '''
     16    def __init__(self): # {{{
    1717        self.ice_levelset = float('NaN')
    1818        self.ocean_levelset = float('NaN')
    1919
    20     #set defaults
     20        #set defaults
    2121        self.setdefaultparameters()
    22 
    23     #}}}
    24     def __repr__(self):  # {{{
     22    # }}}
     23    def __repr__(self): # {{{
    2524        string = "   masks:"
    2625
     
    2827        string = "%s\n%s" % (string, fielddisplay(self, "ice_levelset", "presence of ice if < 0, icefront position if = 0, no ice if > 0"))
    2928        return string
    30     #}}}
    31     def extrude(self, md):  # {{{
    32         self.ice_levelset = project3d(md, 'vector', self.ice_levelset, 'type', 'node')
     29    # }}}
     30    def setdefaultparameters(self): # {{{
     31        return self
     32    # }}}
     33    def extrude(self, md): # {{{
     34        self.ice_levelset   = project3d(md, 'vector', self.ice_levelset, 'type', 'node')
    3335        self.ocean_levelset = project3d(md, 'vector', self.ocean_levelset, 'type', 'node')
     36
    3437        return self
    35     #}}}
    36     def setdefaultparameters(self):  # {{{
     38    # }}}
     39    def mask(self, *args): # {{{
     40        nargin = len(args)
     41        if nargin == 0:
     42            self.setdefaultparameters()
     43        else:
     44            raise RuntimeError("constructor not supported")
     45
    3746        return self
    38     #}}}
    39     def checkconsistency(self, md, solution, analyses):  # {{{
    40         if(solution == 'LoveSolution'):
     47    # }}}
     48    def oceanset(self, *args): # {{{
     49        if nargin == 2:
     50            ocean = args[0]
     51            index = args[1]
     52            self.ocean_levelset[index] = -ocean
     53        else:
     54            ocean = args[0]
     55            self.ocean_levelset = -ocean
     56        else:
     57            raise RuntimeError("oceanset error message: not supported yet")
     58
     59        return self
     60    # }}}
     61    def iceset(self, *args): # {{{
     62        if nargin == 2:
     63            ice = args[0]
     64            index = args[1]
     65            self.ice_levelset[index] = -ice
     66        else:
     67            ice = *args[0]
     68            self.ocean_levelset = -ocean
     69        else:
     70            raise RuntimeError("iceset error message: not supported yet")
     71
     72        return self
     73    # }}}
     74    def checkconsistency(self, md, solution, analyses): # {{{
     75        if solution == 'LoveSolution':
    4176            return
    4277
     
    4883        return md
    4984    # }}}
    50     def marshall(self, prefix, md, fid):  # {{{
     85    def marshall(self, prefix, md, fid): # {{{
    5186        WriteData(fid, prefix, 'object', self, 'fieldname', 'ocean_levelset', 'format', 'DoubleMat', 'mattype', 1)
    5287        WriteData(fid, prefix, 'object', self, 'fieldname', 'ice_levelset', 'format', 'DoubleMat', 'mattype', 1)
  • TabularUnified issm/trunk-jpl/src/m/classes/mesh3dsurface.py

    r24895 r24896  
    224224                #first line:
    225225                contour                 = OrderedStruct()
    226                 contour.x               = [self.long[el[0], self.long[el[1]]]
     226                contour.x               = [self.long[el[0]], self.long[el[1]]]
    227227                contour.y               = [self.lat[el[0]], self.lat[el[1]]]
    228228                contour.Geometry        = 'Line'
     
    238238                #second line:
    239239                contour                 = OrderedStruct()
    240                 contour.x               = [self.long[el[2], self.long[el[0]]]
     240                contour.x               = [self.long[el[2]], self.long[el[0]]]
    241241                contour.y               = [self.lat[el[2]], self.lat[el[0]]]
    242242                contour.Geometry        = 'Line'
Note: See TracChangeset for help on using the changeset viewer.