Changeset 23664


Ignore:
Timestamp:
01/28/19 02:20:21 (6 years ago)
Author:
bdef
Message:

BUG: fix to hydrology colapse and minor change in hydrologydc

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

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/m/classes/hydrologydc.py

    r22899 r23664  
    148148
    149149        def defaultoutputs(self,md): # {{{
    150                 list = ['SedimentHeadHydrostep','SedimentHeadResidual','EffectivePressureHydrostep']
     150                list = ['SedimentHeadHydrostep','SedimentHeadResidual','EffectivePressureHydrostep','HydrologydcMaskThawedNode','HydrologydcMaskThawedElt']
    151151                if self.isefficientlayer==1:
    152152                        list.extend(['EplHeadHydrostep','HydrologydcMaskEplactiveNode','HydrologydcMaskEplactiveElt','EplHeadSlopeX','EplHeadSlopeY','HydrologydcEplThicknessHydrostep'])
     
    204204                        md = checkfield(md,'fieldname','hydrology.epl_max_thickness','numel',[1],'>',0.)
    205205                        md = checkfield(md,'fieldname','hydrology.epl_initial_thickness','numel',[1],'>',0.)
    206                         md = checkfield(md,'fieldname','hydrology.epl_colapse_thickness','numel',[1],'>',0.)
     206                        md = checkfield(md,'fieldname','hydrology.epl_colapse_thickness','numel',[1],'>',0.,'<',self.epl_initial_thickness)
    207207                        md = checkfield(md,'fieldname','hydrology.epl_thick_comp','numel',[1],'values',[0,1])
    208208                        md = checkfield(md,'fieldname','hydrology.eplflip_lock','>=',0.,'numel',[1])
  • issm/trunk-jpl/src/m/classes/model.py

    r23654 r23664  
    783783
    784784                # Hydrologydc variables
    785                 if type(md.hydrology) is 'hydrologydc':
    786                         md.hydrology.spcsediment_head=project2d(md,md.hydrology.spcsediment_head,1)
    787                         md.hydrology.sediment_transmitivity=project2d(md,md.hydrology.sediment_transmitivity,1)
    788                         md.hydrology.basal_moulin_input=project2d(md,md.hydrology.basal_moulin_input,1)
    789                         md.hydrology.mask_thawed_node=project2d(md,md.hydrology.mask_thawed_node,1)
    790                         if md.hydrology.isefficientlayer == 1:
    791                                 md.hydrology.mask_eplactive_node=project2d(md,md.hydrology.mask_eplactive_node,1)
    792                                 md.hydrology.spcepl_head=project2d(md,md.hydrology.spcepl_head,1)
     785                hydrofields=md.hydrology.__dict__.keys()
     786                for field in hydrofields:
     787                        try:
     788                                isvector=np.logical_or(np.shape(md.hydrology.__dict__[field])[0]==md.mesh.numberofelements,
     789                                                                                                                         np.shape(md.hydrology.__dict__[field])[0]==md.mesh.numberofvertices)
     790                        except IndexError:
     791                                isvector=False
     792                        #we colpase only fields that are vertices or element based
     793                        if isvector:
     794                                md.hydrology.__dict__[field]=project2d(md,md.hydrology.__dict__[field],1)
    793795
    794796                #boundary conditions
Note: See TracChangeset for help on using the changeset viewer.