Changeset 13716
- Timestamp:
- 10/17/12 13:53:15 (12 years ago)
- Location:
- issm/trunk-jpl/src/m/classes
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/rifts.m
r13710 r13716 43 43 else 44 44 if ~isnans(obj.riftstruct), 45 md = checkmessage(md,['riftstruct shou d be NaN since numrifts is 0!']);45 md = checkmessage(md,['riftstruct should be NaN since numrifts is 0!']); 46 46 end 47 47 end -
issm/trunk-jpl/src/m/classes/rifts.py
r13715 r13716 18 18 def __init__(self): 19 19 # {{{ Properties 20 self.riftstruct = float('NaN')21 self.riftproperties = float('NaN')20 self.riftstruct = [] 21 self.riftproperties = [] 22 22 23 23 #set defaults … … 56 56 md = checkfield(md,"rifts.riftstruct[%d]['fill']" % i,'values',[WaterEnum(),AirEnum(),IceEnum(),MelangeEnum()]) 57 57 else: 58 if numpy.any(numpy.logical_not(isnans(self.riftstruct))):58 if self.riftstruct and numpy.any(numpy.logical_not(isnans(self.riftstruct))): 59 59 md.checkmessage("riftstruct should be NaN since numrifts is 0!") 60 60 … … 71 71 72 72 numpairs=0 73 if numrifts: 74 for rift in self.riftstruct: 75 numpairs+=numpy.size(rift['penaltypairs'],axis=0) 73 for rift in self.riftstruct: 74 numpairs+=numpy.size(rift['penaltypairs'],axis=0) 76 75 77 76 # 2 for nodes + 2 for elements+ 2 for normals + 1 for length + 1 for fill + 1 for friction + 1 for fraction + 1 for fractionincrement + 1 for state. 78 77 data=numpy.zeros((numpairs,12)) 79 if numrifts: 80 count=0 81 for rift in self.riftstruct: 82 numpairsforthisrift=numpy.size(rift['penaltypairs'],0) 83 data[count:count+numpairsforthisrift,0:7]=rift['penaltypairs'] 84 data[count:count+numpairsforthisrift,7]=rift['fill'] 85 data[count:count+numpairsforthisrift,8]=rift['friction'] 86 data[count:count+numpairsforthisrift,9]=rift['fraction'] 87 data[count:count+numpairsforthisrift,10]=rift['fractionincrement'] 88 data[count:count+numpairsforthisrift,11]=rift['state'].reshape(-1) 89 count+=numpairsforthisrift 78 count=0 79 for rift in self.riftstruct: 80 numpairsforthisrift=numpy.size(rift['penaltypairs'],0) 81 data[count:count+numpairsforthisrift,0:7]=rift['penaltypairs'] 82 data[count:count+numpairsforthisrift,7]=rift['fill'] 83 data[count:count+numpairsforthisrift,8]=rift['friction'] 84 data[count:count+numpairsforthisrift,9]=rift['fraction'] 85 data[count:count+numpairsforthisrift,10]=rift['fractionincrement'] 86 data[count:count+numpairsforthisrift,11]=rift['state'].reshape(-1) 87 count+=numpairsforthisrift 90 88 91 89 WriteData(fid,'data',numrifts,'enum',RiftsNumriftsEnum(),'format','Integer')
Note:
See TracChangeset
for help on using the changeset viewer.