HP Forums
Finding quadratic function from two points and known max value - Printable Version

+- HP Forums (https://www.hpmuseum.org/forum)
+-- Forum: Not HP Calculators (/forum-7.html)
+--- Forum: Not remotely HP Calculators (/forum-9.html)
+--- Thread: Finding quadratic function from two points and known max value (/thread-8945.html)



Finding quadratic function from two points and known max value - Dave Britten - 08-31-2017 12:57 PM

I need to work this into a C# program for generating points along an arc, and the math is making me cross-eyed.

Essentially, I know two points on the parabola, I know the y value of the maximum (but not x), and I know that the second derivative is negative, i.e. the coefficient of x^2 is negative. All the typical approaches of treating it as a system of 3 linear equations seem to rely on having three known points, but I've got two, plus an additional equation 2*a*x_3+b=0 where x_3 is unknown.

Is there a straight-forward way of tackling this without pulling a bunch of numeric and matrix libraries into the program?


RE: Finding quadratic function from two points and known max value - grsbanks - 08-31-2017 01:03 PM

Short answer: nope.

Just like a linear function can be defined with 2 points, a quadratic function needs 3 points to be defined.

The best you can get is a family of functions that pass through the two points you know and have the known maximum.

In the more general case, a polynomial of order n (ax^n+bx^(n-1)+cx^(n-2)...) requires n+1 points and you end up solving a system of n+1 simultaneous equations to get your coefficients.


RE: Finding quadratic function from two points and known max value - Dave Britten - 08-31-2017 01:09 PM

Well, I've got two points, plus a known maximum value. Intuitively, I think that uniquely defines a parabola, though I could be wrong.


RE: Finding quadratic function from two points and known max value - Nigel (UK) - 08-31-2017 02:46 PM

I think that there are two possible solutions, but I could be wrong too!

Let the maximum y-value be \(c\) and let this occur at \(x=b\), where \(b\) is as yet unknown. Then the parabola's equation can be written as
$$y=c-a(x-b)^2,$$
where \(a\) is another unknown.

We know two points \((x_1, y_1)\) and \((x_2, y_2)\) on the curve. Substituting these into the equation above gives
$$\eqalign{y_1=c-a(x_1-b)^2\cr
y_2=c-a(x_2-b)^2\cr}.$$
Rearranging gives
$${x_1-b\over x_2-b}=\pm\sqrt{c-y_1\over c-y_2}.$$
The value of \(b\) is between \(x_1\) and \(x_2\) if the right-hand side is negative and outside this range otherwise; this is where the ambiguity comes in. Since \(c\), \(y_1\), and \(y_2\) are known the right hand side can be computed and a sign chosen; this means that \(b\) can be found, and then either of the previous equations can be used to give \(a\).

Is this what you are looking for?

Nigel (UK)


RE: Finding quadratic function from two points and known max value - Dave Britten - 08-31-2017 05:02 PM

Oh yes, I see what you mean. In the cases I'm dealing with, the x value of the vertex will always lie between the two known points, so that narrows it down to a single possible function.


RE: Finding quadratic function from two points and known max value - Dave Britten - 08-31-2017 05:31 PM

Yup, right on the money. Just find b with "b = (x2 * sqrt((c - y1)/(c - y2)) + x1) / (sqrt((c - y1)/(c - y2)) + 1)", then find a with "a = (c - y1)/(x1 - b)^2". Then you've got your a, b, and c for the vertex form, and you can calculate y values. Thanks Nigel.