title: Mixing numpy and OO in numerical work
body: <p>First, I'd like to know if it's good practice in general to use an OO approach in numerical work.</p>
  
  <p>Second, a possible use case for OO would be to encapsulate in some object the parameters of some model. Say, I want to study parabolas of the form ax^2 + bx +c. So I would encapsulate a, b, c in some Parabola object. I can plot it and so on. Now, let's say, I want to explore the location of the vertical axis of parabolas. Basically, without OO, I could just plot say a surface of all vertical axis locations w.r.t. a and b (that would be two numpy arrays) for a few given value of c's.</p>
  
  <p>My question is, how do I do such surface plot with the extra OO layer without sacrificing (too much) on numpy performance?</p>
  
  <p><strong>Extra explanation</strong></p>
  
  <p>A way to go with the OO approach would be to create a matrix of Parabola objects for a range of values of parameters a and b. But this way would handle possibly very big objects instead of plain numpy arrays of parameter range.</p>