Finding cubic function from points?

1.7k Views Asked by At

How can I find a cubic function from two known points $\left(50,30\right)$ and $\left(100,0\right)$ which are turning points, hence the gradient at these points is zero. My final function must be in the form $$f(x)= A\left(x + a\right)\left(x + b\right)\left(x + c\right).$$

I already know that $(x+b)= (x-100)$ and $(x+c)=(x-100)$.

So I'm missing $A$ and $a$.

The graph will then be set with a domain so it flows smoothly in this graph

I need very clear steps on finding a graph that flows smoothly and ends up in this form :)

Thank you!

3

There are 3 best solutions below

0
On
  1. Use cubic Hermite interpolation (it will reduce to two terms);
  2. There is a double root at $x=100$ so factorization will be easy.

https://en.wikipedia.org/wiki/Cubic_Hermite_spline#Interpolation_on_a_single_interval

2
On

The cubic function $f(x)$ such that $f'(a)=f'(b)=0$ and $f(a)=0$ with $a\not=b$, is given by $$f(x)=A\int_{a}^x(t-b)(t-a)\,dt=A\int_{0}^{x-a}(s+a-b)s\,ds\\ =A\left[\frac{s^3}{3}+\frac{a-b}{2}s^2\right]_{0}^{x-a} =\frac{A}{6}(2x+a-3b)(x-a)^2$$ where $A$ is a constant to be found by imposing that $f(b)=\frac{A}{6}\cdot (a-b)^3$, that is $A=\frac{6f(b)}{(a-b)^3}$.

For $a=100$, $b=50$ and $f(b)=30$ we get $A=\frac{9}{6250}$ and $$f(x)=\frac{3}{6250}(x-25)(x-100)^2.$$

0
On

Here's the solution for a quintic with 3 determined stationary points at (a,d), (b,d), (c,f)

ff(x):=(A * x^(5)) + (B * x^(4)) + (C * x^(3)) + (D * x^(2)) + (E * x) + F
A = (((-2 * a^(4)) * e) + ((2 * a^(4)) * f) + ((2 * b^(4)) * d) - ((2 * b^(4)) * f) - ((2 * c^(4)) * d) + ((2 * c^(4)) * e) - (((4 * a) * b^(3)) * d) + (((4 * a) * b^(3)) * f) + (((4 * a) * c^(3)) * d) - (((4 * a) * c^(3)) * e) + (((4 * b) * c^(3)) * d) - (((4 * b) * c^(3)) * e) + (((4 * a^(3)) * b) * e) - (((4 * a^(3)) * b) * f) + (((4 * a^(3)) * c) * e) - (((4 * a^(3)) * c) * f) - (((4 * b^(3)) * c) * d) + (((4 * b^(3)) * c) * f) - ((((12 * a) * b) * c^(2)) * d) + ((((12 * a) * b) * c^(2)) * e) + ((((12 * a) * b^(2)) * c) * d) - ((((12 * a) * b^(2)) * c) * f) - ((((12 * a^(2)) * b) * c) * e) + ((((12 * a^(2)) * b) * c) * f)) / (((-a^(3)) * b^(6)) + (a^(3) * c^(6)) + ((3 * a^(4)) * b^(5)) - ((3 * a^(4)) * c^(5)) - ((3 * a^(5)) * b^(4)) + ((3 * a^(5)) * c^(4)) + (a^(6) * b^(3)) - (a^(6) * c^(3)) - (b^(3) * c^(6)) + ((3 * b^(4)) * c^(5)) - ((3 * b^(5)) * c^(4)) + (b^(6) * c^(3)) + (((3 * a) * b^(2)) * c^(6)) - (((6 * a) * b^(3)) * c^(5)) + (((6 * a) * b^(5)) * c^(3)) - (((3 * a) * b^(6)) * c^(2)) - (((3 * a^(2)) * b) * c^(6)) + (((15 * a^(2)) * b^(3)) * c^(4)) - (((15 * a^(2)) * b^(4)) * c^(3)) + (((3 * a^(2)) * b^(6)) * c) + (((6 * a^(3)) * b) * c^(5)) - (((15 * a^(3)) * b^(2)) * c^(4)) + (((15 * a^(3)) * b^(4)) * c^(2)) - (((6 * a^(3)) * b^(5)) * c) + (((15 * a^(4)) * b^(2)) * c^(3)) - (((15 * a^(4)) * b^(3)) * c^(2)) - (((6 * a^(5)) * b) * c^(3)) + (((6 * a^(5)) * b^(3)) * c) + (((3 * a^(6)) * b) * c^(2)) - (((3 * a^(6)) * b^(2)) * c))
B = (((4 * a^(5)) * e) - ((4 * a^(5)) * f) - ((4 * b^(5)) * d) + ((4 * b^(5)) * f) + ((4 * c^(5)) * d) - ((4 * c^(5)) * e) + (((5 * a) * b^(4)) * d) - (((5 * a) * b^(4)) * f) - (((5 * a) * c^(4)) * d) + (((5 * a) * c^(4)) * e) - (((5 * b) * c^(4)) * d) + (((5 * b) * c^(4)) * e) + (((5 * a^(2)) * b^(3)) * d) - (((5 * a^(2)) * b^(3)) * f) - (((5 * a^(2)) * c^(3)) * d) + (((5 * a^(2)) * c^(3)) * e) - (((5 * a^(3)) * b^(2)) * e) + (((5 * a^(3)) * b^(2)) * f) - (((5 * a^(3)) * c^(2)) * e) + (((5 * a^(3)) * c^(2)) * f) - (((5 * a^(4)) * b) * e) + (((5 * a^(4)) * b) * f) - (((5 * a^(4)) * c) * e) + (((5 * a^(4)) * c) * f) - (((5 * b^(2)) * c^(3)) * d) + (((5 * b^(2)) * c^(3)) * e) + (((5 * b^(3)) * c^(2)) * d) - (((5 * b^(3)) * c^(2)) * f) + (((5 * b^(4)) * c) * d) - (((5 * b^(4)) * c) * f) + ((((10 * a) * b) * c^(3)) * d) - ((((10 * a) * b) * c^(3)) * e) - ((((15 * a) * b^(2)) * c^(2)) * e) + ((((15 * a) * b^(2)) * c^(2)) * f) - ((((10 * a) * b^(3)) * c) * d) + ((((10 * a) * b^(3)) * c) * f) + ((((15 * a^(2)) * b) * c^(2)) * d) - ((((15 * a^(2)) * b) * c^(2)) * f) - ((((15 * a^(2)) * b^(2)) * c) * d) + ((((15 * a^(2)) * b^(2)) * c) * e) + ((((10 * a^(3)) * b) * c) * e) - ((((10 * a^(3)) * b) * c) * f)) / (((-a^(3)) * b^(6)) + (a^(3) * c^(6)) + ((3 * a^(4)) * b^(5)) - ((3 * a^(4)) * c^(5)) - ((3 * a^(5)) * b^(4)) + ((3 * a^(5)) * c^(4)) + (a^(6) * b^(3)) - (a^(6) * c^(3)) - (b^(3) * c^(6)) + ((3 * b^(4)) * c^(5)) - ((3 * b^(5)) * c^(4)) + (b^(6) * c^(3)) + (((3 * a) * b^(2)) * c^(6)) - (((6 * a) * b^(3)) * c^(5)) + (((6 * a) * b^(5)) * c^(3)) - (((3 * a) * b^(6)) * c^(2)) - (((3 * a^(2)) * b) * c^(6)) + (((15 * a^(2)) * b^(3)) * c^(4)) - (((15 * a^(2)) * b^(4)) * c^(3)) + (((3 * a^(2)) * b^(6)) * c) + (((6 * a^(3)) * b) * c^(5)) - (((15 * a^(3)) * b^(2)) * c^(4)) + (((15 * a^(3)) * b^(4)) * c^(2)) - (((6 * a^(3)) * b^(5)) * c) + (((15 * a^(4)) * b^(2)) * c^(3)) - (((15 * a^(4)) * b^(3)) * c^(2)) - (((6 * a^(5)) * b) * c^(3)) + (((6 * a^(5)) * b^(3)) * c) + (((3 * a^(6)) * b) * c^(2)) - (((3 * a^(6)) * b^(2)) * c))
C = (((-2 * a^(6)) * e) + ((2 * a^(6)) * f) + ((2 * b^(6)) * d) - ((2 * b^(6)) * f) - ((2 * c^(6)) * d) + ((2 * c^(6)) * e) + (((2 * a) * b^(5)) * d) - (((2 * a) * b^(5)) * f) - (((2 * a) * c^(5)) * d) + (((2 * a) * c^(5)) * e) - (((2 * b) * c^(5)) * d) + (((2 * b) * c^(5)) * e) - (((10 * a^(2)) * b^(4)) * d) + (((10 * a^(2)) * b^(4)) * f) + (((10 * a^(2)) * c^(4)) * d) - (((10 * a^(2)) * c^(4)) * e) + (((10 * a^(4)) * b^(2)) * e) - (((10 * a^(4)) * b^(2)) * f) + (((10 * a^(4)) * c^(2)) * e) - (((10 * a^(4)) * c^(2)) * f) - (((2 * a^(5)) * b) * e) + (((2 * a^(5)) * b) * f) - (((2 * a^(5)) * c) * e) + (((2 * a^(5)) * c) * f) + (((10 * b^(2)) * c^(4)) * d) - (((10 * b^(2)) * c^(4)) * e) - (((10 * b^(4)) * c^(2)) * d) + (((10 * b^(4)) * c^(2)) * f) + (((2 * b^(5)) * c) * d) - (((2 * b^(5)) * c) * f) + ((((10 * a) * b) * c^(4)) * d) - ((((10 * a) * b) * c^(4)) * e) - ((((20 * a) * b^(2)) * c^(3)) * d) + ((((20 * a) * b^(2)) * c^(3)) * e) + ((((20 * a) * b^(3)) * c^(2)) * d) - ((((20 * a) * b^(3)) * c^(2)) * f) - ((((10 * a) * b^(4)) * c) * d) + ((((10 * a) * b^(4)) * c) * f) - ((((20 * a^(2)) * b) * c^(3)) * d) + ((((20 * a^(2)) * b) * c^(3)) * e) + ((((20 * a^(2)) * b^(3)) * c) * d) - ((((20 * a^(2)) * b^(3)) * c) * f) - ((((20 * a^(3)) * b) * c^(2)) * e) + ((((20 * a^(3)) * b) * c^(2)) * f) - ((((20 * a^(3)) * b^(2)) * c) * e) + ((((20 * a^(3)) * b^(2)) * c) * f) + ((((10 * a^(4)) * b) * c) * e) - ((((10 * a^(4)) * b) * c) * f)) / (((-a^(3)) * b^(6)) + (a^(3) * c^(6)) + ((3 * a^(4)) * b^(5)) - ((3 * a^(4)) * c^(5)) - ((3 * a^(5)) * b^(4)) + ((3 * a^(5)) * c^(4)) + (a^(6) * b^(3)) - (a^(6) * c^(3)) - (b^(3) * c^(6)) + ((3 * b^(4)) * c^(5)) - ((3 * b^(5)) * c^(4)) + (b^(6) * c^(3)) + (((3 * a) * b^(2)) * c^(6)) - (((6 * a) * b^(3)) * c^(5)) + (((6 * a) * b^(5)) * c^(3)) - (((3 * a) * b^(6)) * c^(2)) - (((3 * a^(2)) * b) * c^(6)) + (((15 * a^(2)) * b^(3)) * c^(4)) - (((15 * a^(2)) * b^(4)) * c^(3)) + (((3 * a^(2)) * b^(6)) * c) + (((6 * a^(3)) * b) * c^(5)) - (((15 * a^(3)) * b^(2)) * c^(4)) + (((15 * a^(3)) * b^(4)) * c^(2)) - (((6 * a^(3)) * b^(5)) * c) + (((15 * a^(4)) * b^(2)) * c^(3)) - (((15 * a^(4)) * b^(3)) * c^(2)) - (((6 * a^(5)) * b) * c^(3)) + (((6 * a^(5)) * b^(3)) * c) + (((3 * a^(6)) * b) * c^(2)) - (((3 * a^(6)) * b^(2)) * c))
D = ((((-3 * a) * b^(6)) * d) + (((3 * a) * b^(6)) * f) + (((3 * a) * c^(6)) * d) - (((3 * a) * c^(6)) * e) + (((3 * b) * c^(6)) * d) - (((3 * b) * c^(6)) * e) + (((5 * a^(2)) * b^(5)) * d) - (((5 * a^(2)) * b^(5)) * f) - (((5 * a^(2)) * c^(5)) * d) + (((5 * a^(2)) * c^(5)) * e) - (((5 * a^(5)) * b^(2)) * e) + (((5 * a^(5)) * b^(2)) * f) - (((5 * a^(5)) * c^(2)) * e) + (((5 * a^(5)) * c^(2)) * f) + (((3 * a^(6)) * b) * e) - (((3 * a^(6)) * b) * f) + (((3 * a^(6)) * c) * e) - (((3 * a^(6)) * c) * f) - (((5 * b^(2)) * c^(5)) * d) + (((5 * b^(2)) * c^(5)) * e) + (((5 * b^(5)) * c^(2)) * d) - (((5 * b^(5)) * c^(2)) * f) - (((3 * b^(6)) * c) * d) + (((3 * b^(6)) * c) * f) - ((((2 * a) * b) * c^(5)) * d) + ((((2 * a) * b) * c^(5)) * e) - ((((5 * a) * b^(2)) * c^(4)) * d) + ((((5 * a) * b^(2)) * c^(4)) * e) + ((((5 * a) * b^(4)) * c^(2)) * d) - ((((5 * a) * b^(4)) * c^(2)) * f) + ((((2 * a) * b^(5)) * c) * d) - ((((2 * a) * b^(5)) * c) * f) - ((((5 * a^(2)) * b) * c^(4)) * d) + ((((5 * a^(2)) * b) * c^(4)) * e) + ((((40 * a^(2)) * b^(2)) * c^(3)) * d) - ((((40 * a^(2)) * b^(2)) * c^(3)) * e) - ((((40 * a^(2)) * b^(3)) * c^(2)) * d) + ((((40 * a^(2)) * b^(3)) * c^(2)) * f) + ((((5 * a^(2)) * b^(4)) * c) * d) - ((((5 * a^(2)) * b^(4)) * c) * f) + ((((40 * a^(3)) * b^(2)) * c^(2)) * e) - ((((40 * a^(3)) * b^(2)) * c^(2)) * f) - ((((5 * a^(4)) * b) * c^(2)) * e) + ((((5 * a^(4)) * b) * c^(2)) * f) - ((((5 * a^(4)) * b^(2)) * c) * e) + ((((5 * a^(4)) * b^(2)) * c) * f) - ((((2 * a^(5)) * b) * c) * e) + ((((2 * a^(5)) * b) * c) * f)) / (((-a^(3)) * b^(6)) + (a^(3) * c^(6)) + ((3 * a^(4)) * b^(5)) - ((3 * a^(4)) * c^(5)) - ((3 * a^(5)) * b^(4)) + ((3 * a^(5)) * c^(4)) + (a^(6) * b^(3)) - (a^(6) * c^(3)) - (b^(3) * c^(6)) + ((3 * b^(4)) * c^(5)) - ((3 * b^(5)) * c^(4)) + (b^(6) * c^(3)) + (((3 * a) * b^(2)) * c^(6)) - (((6 * a) * b^(3)) * c^(5)) + (((6 * a) * b^(5)) * c^(3)) - (((3 * a) * b^(6)) * c^(2)) - (((3 * a^(2)) * b) * c^(6)) + (((15 * a^(2)) * b^(3)) * c^(4)) - (((15 * a^(2)) * b^(4)) * c^(3)) + (((3 * a^(2)) * b^(6)) * c) + (((6 * a^(3)) * b) * c^(5)) - (((15 * a^(3)) * b^(2)) * c^(4)) + (((15 * a^(3)) * b^(4)) * c^(2)) - (((6 * a^(3)) * b^(5)) * c) + (((15 * a^(4)) * b^(2)) * c^(3)) - (((15 * a^(4)) * b^(3)) * c^(2)) - (((6 * a^(5)) * b) * c^(3)) + (((6 * a^(5)) * b^(3)) * c) + (((3 * a^(6)) * b) * c^(2)) - (((3 * a^(6)) * b^(2)) * c))
E = (((((-6 * a) * b) * c^(6)) * d) + ((((6 * a) * b) * c^(6)) * e) + ((((10 * a) * b^(2)) * c^(5)) * d) - ((((10 * a) * b^(2)) * c^(5)) * e) - ((((10 * a) * b^(5)) * c^(2)) * d) + ((((10 * a) * b^(5)) * c^(2)) * f) + ((((6 * a) * b^(6)) * c) * d) - ((((6 * a) * b^(6)) * c) * f) + ((((10 * a^(2)) * b) * c^(5)) * d) - ((((10 * a^(2)) * b) * c^(5)) * e) - ((((20 * a^(2)) * b^(2)) * c^(4)) * d) + ((((20 * a^(2)) * b^(2)) * c^(4)) * e) + ((((20 * a^(2)) * b^(4)) * c^(2)) * d) - ((((20 * a^(2)) * b^(4)) * c^(2)) * f) - ((((10 * a^(2)) * b^(5)) * c) * d) + ((((10 * a^(2)) * b^(5)) * c) * f) - ((((20 * a^(4)) * b^(2)) * c^(2)) * e) + ((((20 * a^(4)) * b^(2)) * c^(2)) * f) + ((((10 * a^(5)) * b) * c^(2)) * e) - ((((10 * a^(5)) * b) * c^(2)) * f) + ((((10 * a^(5)) * b^(2)) * c) * e) - ((((10 * a^(5)) * b^(2)) * c) * f) - ((((6 * a^(6)) * b) * c) * e) + ((((6 * a^(6)) * b) * c) * f)) / (((-a^(3)) * b^(6)) + (a^(3) * c^(6)) + ((3 * a^(4)) * b^(5)) - ((3 * a^(4)) * c^(5)) - ((3 * a^(5)) * b^(4)) + ((3 * a^(5)) * c^(4)) + (a^(6) * b^(3)) - (a^(6) * c^(3)) - (b^(3) * c^(6)) + ((3 * b^(4)) * c^(5)) - ((3 * b^(5)) * c^(4)) + (b^(6) * c^(3)) + (((3 * a) * b^(2)) * c^(6)) - (((6 * a) * b^(3)) * c^(5)) + (((6 * a) * b^(5)) * c^(3)) - (((3 * a) * b^(6)) * c^(2)) - (((3 * a^(2)) * b) * c^(6)) + (((15 * a^(2)) * b^(3)) * c^(4)) - (((15 * a^(2)) * b^(4)) * c^(3)) + (((3 * a^(2)) * b^(6)) * c) + (((6 * a^(3)) * b) * c^(5)) - (((15 * a^(3)) * b^(2)) * c^(4)) + (((15 * a^(3)) * b^(4)) * c^(2)) - (((6 * a^(3)) * b^(5)) * c) + (((15 * a^(4)) * b^(2)) * c^(3)) - (((15 * a^(4)) * b^(3)) * c^(2)) - (((6 * a^(5)) * b) * c^(3)) + (((6 * a^(5)) * b^(3)) * c) + (((3 * a^(6)) * b) * c^(2)) - (((3 * a^(6)) * b^(2)) * c))
F = (((a^(6) * b^(3)) * f) - ((((3 * a^(6)) * b^(2)) * c) * f) + ((((3 * a^(6)) * b) * c^(2)) * e) - ((a^(6) * c^(3)) * e) - (((3 * a^(5)) * b^(4)) * f) + ((((6 * a^(5)) * b^(3)) * c) * f) - ((((5 * a^(5)) * b^(2)) * c^(2)) * e) + ((((5 * a^(5)) * b^(2)) * c^(2)) * f) - ((((6 * a^(5)) * b) * c^(3)) * e) + (((3 * a^(5)) * c^(4)) * e) + (((3 * a^(4)) * b^(5)) * f) - ((((15 * a^(4)) * b^(3)) * c^(2)) * f) + ((((15 * a^(4)) * b^(2)) * c^(3)) * e) - (((3 * a^(4)) * c^(5)) * e) - ((a^(3) * b^(6)) * f) - ((((6 * a^(3)) * b^(5)) * c) * f) + ((((15 * a^(3)) * b^(4)) * c^(2)) * f) - ((((15 * a^(3)) * b^(2)) * c^(4)) * e) + ((((6 * a^(3)) * b) * c^(5)) * e) + ((a^(3) * c^(6)) * e) + ((((3 * a^(2)) * b^(6)) * c) * f) + ((((5 * a^(2)) * b^(5)) * c^(2)) * d) - ((((5 * a^(2)) * b^(5)) * c^(2)) * f) - ((((15 * a^(2)) * b^(4)) * c^(3)) * d) + ((((15 * a^(2)) * b^(3)) * c^(4)) * d) - ((((5 * a^(2)) * b^(2)) * c^(5)) * d) + ((((5 * a^(2)) * b^(2)) * c^(5)) * e) - ((((3 * a^(2)) * b) * c^(6)) * e) - ((((3 * a) * b^(6)) * c^(2)) * d) + ((((6 * a) * b^(5)) * c^(3)) * d) - ((((6 * a) * b^(3)) * c^(5)) * d) + ((((3 * a) * b^(2)) * c^(6)) * d) + ((b^(6) * c^(3)) * d) - (((3 * b^(5)) * c^(4)) * d) + (((3 * b^(4)) * c^(5)) * d) - ((b^(3) * c^(6)) * d)) / ((a^(6) * b^(3)) - (((3 * a^(6)) * b^(2)) * c) + (((3 * a^(6)) * b) * c^(2)) - (a^(6) * c^(3)) - ((3 * a^(5)) * b^(4)) + (((6 * a^(5)) * b^(3)) * c) - (((6 * a^(5)) * b) * c^(3)) + ((3 * a^(5)) * c^(4)) + ((3 * a^(4)) * b^(5)) - (((15 * a^(4)) * b^(3)) * c^(2)) + (((15 * a^(4)) * b^(2)) * c^(3)) - ((3 * a^(4)) * c^(5)) - (a^(3) * b^(6)) - (((6 * a^(3)) * b^(5)) * c) + (((15 * a^(3)) * b^(4)) * c^(2)) - (((15 * a^(3)) * b^(2)) * c^(4)) + (((6 * a^(3)) * b) * c^(5)) + (a^(3) * c^(6)) + (((3 * a^(2)) * b^(6)) * c) - (((15 * a^(2)) * b^(4)) * c^(3)) + (((15 * a^(2)) * b^(3)) * c^(4)) - (((3 * a^(2)) * b) * c^(6)) - (((3 * a) * b^(6)) * c^(2)) + (((6 * a) * b^(5)) * c^(3)) - (((6 * a) * b^(3)) * c^(5)) + (((3 * a) * b^(2)) * c^(6)) + (b^(6) * c^(3)) - ((3 * b^(5)) * c^(4)) + ((3 * b^(4)) * c^(5)) - (b^(3) * c^(6)))

Here's an interactive demo plus derivation (using CAS) of the above https://www.geogebra.org/m/jc3hpzrd