Advertisement
julietbravo

Untitled

May 25th, 2018
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.92 KB | None | 0 0
  1. class Slice:
  2.     def __init__(self, istart, iend, jstart, jend):
  3.         self.istart = istart
  4.         self.iend   = iend
  5.         self.jstart = jstart
  6.         self.jend   = jend
  7.  
  8.     def __getitem__(self, pos):
  9.         return np.s_[self.jstart+pos[0]:self.jend+pos[0],\
  10.                      self.istart+pos[1]:self.iend+pos[1]]
  11.  
  12.     def __call__(self, j, i):
  13.         return np.s_[self.jstart+j:self.jend+j,\
  14.                      self.istart+i:self.iend+i]
  15.  
  16. offs = Slice(istart, iend, jstart, jend)
  17.  
  18. tend_3 = np.zeros_like(scalar)
  19. tend_3[ offs(0,0) ] = -u[ offs(0,0) ] * (scalar[ offs(0,+1) ] - scalar[ offs(0,-1) ]) / (2*dxy) \
  20.                       -v[ offs(0,0) ] * (scalar[ offs(+1,0) ] - scalar[ offs(-1,0) ]) / (2*dxy)
  21. # OR:
  22. tend_3[ offs(0,0) ] = -u[ offs[0,0] ] * (scalar[ offs[0,+1] ] - scalar[ offs[0,-1] ]) / (2*dxy) \
  23.                       -v[ offs[0,0] ] * (scalar[ offs[+1,0] ] - scalar[ offs[-1,0] ]) / (2*dxy)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement