Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download

All published worksheets from http://sagenb.org

Views: 168695
Image: ubuntu2004
p=points([(1,3),(2,1),(3,2),(4,-1)]) p
A=matrix([[1,1],[1,2],[1,3],[1,4]]) b=vector([3,1,2,-1])
html("$%s\\vec c=%s$"%(latex(A),latex(b.transpose())))
\left(11121314\begin{array}{rr} 1 & 1 \\ 1 & 2 \\ 1 & 3 \\ 1 & 4 \end{array}\right)\vec c=\left(3121\begin{array}{r} 3 \\ 1 \\ 2 \\ -1 \end{array}\right)

Solve ATAc=ATbA^TA\vec c=A^T\vec b

m=A.transpose()*A
m.solve_right(A.transpose()*b)
(4, -11/10)
p+plot(4-(11/10)*x,(x,0,5))

Now let's fit a quadratic function.

A=matrix([[1,1,1^2],[1,2,2^2],[1,3,3^2],[1,4,4^2]]) b=vector([3,1,2,-1])
html("$%s\\vec c=%s$"%(latex(A),latex(b.transpose())))
\left(1111241391416\begin{array}{rrr} 1 & 1 & 1 \\ 1 & 2 & 4 \\ 1 & 3 & 9 \\ 1 & 4 & 16 \end{array}\right)\vec c=\left(3121\begin{array}{r} 3 \\ 1 \\ 2 \\ -1 \end{array}\right)
m=A.transpose()*A m
[ 4 10 30] [ 10 30 100] [ 30 100 354]
m.solve_right(A.transpose()*b)
(11/4, 3/20, -1/4)
p+plot(4-(11/10)*x,(x,0,5))+plot(11/4+(3/20)*x+(-1/4)*x^2,(x,0,5),color='green')

And finally a cubic.  We expect the cubic to exactly go through the points since there are 4 points and a cubic has 4 constants to pick.

A=matrix([[1,1,1^2,1^3],[1,2,2^2,2^3],[1,3,3^2,3^3],[1,4,4^2,4^3]]) b=vector([3,1,2,-1])
html("$%s\\vec c=%s$"%(latex(A),latex(b.transpose())))
\left(1111124813927141664\begin{array}{rrrr} 1 & 1 & 1 & 1 \\ 1 & 2 & 4 & 8 \\ 1 & 3 & 9 & 27 \\ 1 & 4 & 16 & 64 \end{array}\right)\vec c=\left(3121\begin{array}{r} 3 \\ 1 \\ 2 \\ -1 \end{array}\right)
m=A.transpose()*A m
[ 4 10 30 100] [ 10 30 100 354] [ 30 100 354 1300] [ 100 354 1300 4890]
m.solve_right(A.transpose()*b)
(15, -58/3, 17/2, -7/6)
p+plot(4-(11/10)*x,(x,0,5))+plot(11/4+(3/20)*x+(-1/4)*x^2,(x,0,5),color='green')+plot(15+(-58/3)*x+(17/2)*x^2+(-7/6)*x^3,(x,0.5,4.5))