Example #1
0
 def uploadSpatial(self, slf):
     variables = self.variables
     slf = SLF(slf)
     for frame in range(slf.NFRAME):
         for v in ['fs', 'u', 'v']:
             self['s', v,
                  frame] = slf.getVarsIndexes([variables[v]['slf name']])
Example #2
0
    def getTranspose(slf, output):
        if not os.path.exists(output):
            slf = SLF(slf)
            nnode = slf.NPOIN2
            ntime = slf.NFRAME
            nvar = slf.NVAR
            fp = np.memmap(output,
                           dtype='float32',
                           mode='w+',
                           shape=(nnode, nvar, ntime))

            for frame in range(slf.NFRAME):
                print("{} of{}".format(frame, slf.NFRAME))
                fp[:, :, frame] = slf.getVALUES(frame).T
Example #3
0
def addVars(input,output):
  slf = SLF(input)
  
  slf.addVAR({'name':'VARIABLE2','unit':'m'})
  
  range = np.arange(slf.NPOIN3) / float(slf.NPOIN3-1)
  values = range[...,np.newaxis] + [0,1]
  values = values[...,np.newaxis]
  values = np.einsum('kij->jik',values)
  slf.values = values
  slf.writeSLF(output)
  slf.printAtt()
Example #4
0
def addFrames(input,output):
  slf = SLF(input)
  
  range = np.arange(slf.NPOIN3) / float(slf.NPOIN3-1)
  values = range[...,np.newaxis] + [0,1]
  values = values[...,np.newaxis]
  values = np.einsum('kij->ijk',values)
  slf.values = values
  slf.writeSLF(output)
  slf.printAtt()
Example #5
0
def addVarToOriginal(input,output):
  slf = SLF(input)
  original = np.zeros((slf.NFRAME,slf.NVAR,slf.NPOIN3),np.float32)
  for t in range(slf.NFRAME):
      original[t] = slf.getVALUES(t)
      
  slf.addVAR({'name':'area','unit':'m2'})
  
  rangea = np.arange(slf.NPOIN3) / float(slf.NPOIN3-1)
  
  ranget = rangea[np.newaxis,np.newaxis,...] + [[[0]],[[1]]]
  
  rangeb = rangea[...,np.newaxis] + [0,1]
  rangec = rangeb[...,np.newaxis]
  rangec = np.einsum('kij->ijk',rangec)
  

  values = np.concatenate((original,rangec), axis=1)

  slf.values = values
  slf.writeSLF(output)
  slf.printAtt()
Example #6
0
def addFrameVars(input,output):
  slf = SLF(input)
  
  slf.addVAR({'name':'VARIABLE2','unit':'m'})
  values = np.zeros((10,slf.NVAR,slf.NPOIN3),np.float32)
  for t in range(10):
    for ivar in range(slf.NVAR):
      values[t,ivar] = (np.arange(slf.NPOIN3) / float(slf.NPOIN3-1) + t + ivar)
  
  slf.values = values
  slf.writeSLF(output)
  print("readSLF - NPOIN3:{0},NVAR:{1}, NELEM3:{2}, shape:{3}".format(slf.NPOIN3,slf.NVAR,slf.NELEM3,slf.values.shape))
  print("addVars - min:{0}, max:{1}".format(np.min(slf.values),np.max(slf.values)))
Example #7
0
 def uploadTemparol(self, slf, npy):
     slf = SLF(npy)
     gnode = 1000
     nnode = slf.NPOIN2
     ntime = slf.NFRAME
     nvar = slf.NVAR
     fp = np.memmap(npy,
                    dtype='float32',
                    mode='r',
                    shape=(nnode, nvar, ntime))
     # Save array in memory to S3
     for i in np.arange(0, nnode, gnode):
         _slice = slice(i, np.minimum(nnode, i + gnode))
         for i, v in enumerate(['fs', 'u', 'v']):
             self['t', v, _slice] = fp[_slice, i]
Example #8
0
def readSLF(filename):
  slf = SLF(filename)
  slf.printAtt()
Example #9
0
def createEmptySLF(filename):
  slf=SLF()
  slf.writeSLF(filename)
  slf.printAtt()
Example #10
0
def changeValuesV1(input,output):
  slf = SLF(input)
  slf.values = slf.values + 1.0 
  slf.writeSLF(output)
  slf.printAtt()
Example #11
0
 def __init__(self, filePath=''):
     SLF.__init__(self, filePath)