Guest User

Untitled

a guest
Sep 23rd, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.47 KB | None | 0 0
  1. import bisect
  2.  
  3. class InterpTable(object):
  4. '''
  5. a look up table that linearly interperlates between values
  6. '''
  7. def __init__(self, x, y):
  8. self.x = x
  9. self.y = y
  10.  
  11. def __getitem__(self, v):
  12. j = bisect.bisect_left(self.x, v)
  13. i = j-1
  14. if i < 0 :
  15. return self.y[0]
  16. if j >= len(self.x) :
  17. return self.y[ -1 ]
  18. return self.y[i] + (v-self.x[i])*(self.y[j]-self.y[i])/(self.x[j]-self.x[i])
Add Comment
Please, Sign In to add comment