[Haskell-beginners] Simple Math Function
Lorenzo Isella
lorenzo.isella at gmail.com
Fri Sep 10 12:35:45 EDT 2010
Dear All,
I am trying to translate some codes of mine into haskell. It looks like
Haskell can shorten quite a bit the implementation of mathematical formulas.
Let us say you have two list of real numbers; let us call them y and t.
The list t is increasing (a sort of time).
Now consider the couples (t_a, y_a) and (t_b,y_b) where
t_a<t_b i.e. two (non-simultaneous) values of t and the corresponding
y_a and y_b. There are no assumptions on y.
What I would like to write is a function which checks the existence
(t_c,y_c), where y_a<y_c<y_b (i.e. y_c is some intermediate time) such that
y_c<y_b+(y_a-y_b)*(t_b-t_c)/(t_b-t_a).
I have already implemented this in other languages, but I ended up with
quite lengthy functions (what if a list is empty, what if it has fewer
than 2-3 elements and so on...).
Also, it would be nice to iterate this function on all possible
combinations (t_a, y_a) and (t_b,y_b), t_a<t_b I can form from my data.
I am not asking someone to 'do my homework', rather I would like to see
how much more compact things can get in haskell.
Many thanks
Lorenzo
More information about the Beginners
mailing list