Changeset 7244


Ignore:
Timestamp:
01/31/11 08:46:25 (14 years ago)
Author:
Mathieu Morlighem
Message:

added mask option

Location:
issm/trunk/src/m/model/plot
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/m/model/plot/plotdoc.m

    r7143 r7244  
    118118disp('       ''textweight'':  same as standard ''FontWeight'' matlab option applied to text, use a cell of strings if more than one');
    119119disp('       ''textcolor'':  same as standard ''color'' matlab option applied to text, use a cell of strings if more than one');
    120 disp('       ''iceshelf'': ''none'' if ice shelves are to not be plotted');
    121 disp('       ''icesheet'': ''none'' if ice sheets are to not be plotted');
     120disp('       ''mask'': list of flags of size numberofgrids or numberofelements. Only ''true'' values are plotted ');
    122121disp('       ''partitionedges'': ''off'' by default. overlay plot of partition edges');
    123122disp('       ''log'': value of log');
  • issm/trunk/src/m/model/plot/processdata.m

    r7098 r7244  
    118118        end
    119119
    120         %ice sheet only?
    121         if getfieldvalue(options,'iceshelf',1)==0,
    122                 data(find(md.elementoniceshelf),:)=NaN;
     120        %Mask?
     121        if exist(options,'mask'),
     122                flags=getfieldvalue(options,'mask');
     123                pos=find(~flags);
     124                if length(flags)==md.numberofgrids,
     125                        [pos2 dummy]=find(ismember(md.elements,pos));
     126                        data(pos2,:)=NaN;
     127                elseif length(flags)==md.numberofelements
     128                        data(pos,:)=NaN;
     129                else
     130                        disp('plotmodel warning: mask length not supported yet (supported length are md.numberofgrids and md.numberofelements');
     131                end
    123132        end
    124         %ice shelf only?
    125         if getfieldvalue(options,'icesheet',1)==0,
    126                 data(find(~md.elementoniceshelf),:)=NaN;
    127         end
    128         %no water?
    129         if getfieldvalue(options,'water',1)==0,
    130                 data(find(md.elementonwater),:)=NaN;
    131         end
     133
    132134        %log?
    133135        if exist(options,'log'),
     
    145147if (datasize(1)==md.numberofgrids & datasize(2)==1),
    146148        datatype=2;
    147         %ice sheet only?
    148         if getfieldvalue(options,'iceshelf',1)==0,
    149                 pos=find(md.gridoniceshelf);
    150                 data(pos,:)=NaN;
     149
     150        %Mask?
     151        if exist(options,'mask'),
     152                flags=getfieldvalue(options,'mask');
     153                pos=find(~flags);
     154                if length(flags)==md.numberofgrids,
     155                        data(pos,:)=NaN;
     156                elseif length(flags)==md.numberofelements
     157                        data(md.elements(pos,:),:)=NaN;
     158                else
     159                        disp('plotmodel warning: mask length not supported yet (supported length are md.numberofgrids and md.numberofelements');
     160                end
    151161        end
    152         %ice shelf only?
    153         if getfieldvalue(options,'icesheet',1)==0,
    154                 pos=find(md.gridonicesheet);
    155                 data(pos,:)=NaN;
    156         end
    157         %no water?
    158         if getfieldvalue(options,'water',1)==0,
    159                 pos=find(md.gridonwater);
    160                 data(pos,:)=NaN;
    161         end
     162
    162163        %log?
    163164        if exist(options,'log'),
     
    167168                data=log(data)/log(getfieldvalue(options,'log'));
    168169        end
    169 
    170170end
    171171
Note: See TracChangeset for help on using the changeset viewer.