Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download

All published worksheets from http://sagenb.org

Views: 168703
Image: ubuntu2004
def skalarA(f,g): return (integral(f*g,x,0,1) + integral(diff(f,x)*diff(g,x),x,0,1)) def skalarB(f,g): return integral(f*g,x,0,1) var('x') def gram(base): ortho = [] ortho.append(base[0]) temp = 0 for i in range(1,len(base)): temp = x^i for j in range(i): temp = temp + (skalarA(x^i,base[j])/skalarA(base[j],base[j]))*base[j] ortho.append(temp) return ortho
base = [1,x,x^2,x^3] ortho = gram(base) ortho
[1, x + 1/2, x^2 + 15/16*x + 1/3, x^3 + 25/23*x^2 + 9/10*x + 1/4]
var('a,b,c,d') f(x) = -2/3*x^3 + x^2 + 4*x -2 g(x) = a*x^3 + b*x^2 + c*x + d li = [] ri = [] for i in range(len(ortho)): print "[%d]" %i var('x') li.append(skalarA(g,ortho[i])) ri.append(skalarB(f,ortho[i])) show (skalarA(g,ortho[i]) == skalarB(f,ortho[i]))
[0] x
\newcommand{\Bold}[1]{\mathbf{#1}}x \ {\mapsto}\ \frac{1}{4} \, a + \frac{1}{3} \, b + \frac{1}{2} \, c + d = \left(\frac{1}{6}\right)
[1] x
\newcommand{\Bold}[1]{\mathbf{#1}}x \ {\mapsto}\ \frac{53}{40} \, a + \frac{17}{12} \, b + \frac{19}{12} \, c + d = \left(\frac{8}{15}\right)
[2] x
\newcommand{\Bold}[1]{\mathbf{#1}}x \ {\mapsto}\ \frac{23}{8} \, a + \frac{8111}{2880} \, b + \frac{8}{3} \, c + \frac{109}{96} \, d = \left(\frac{2591}{2880}\right)
[3] x
\newcommand{\Bold}[1]{\mathbf{#1}}x \ {\mapsto}\ \frac{946091}{193200} \, a + \frac{109}{24} \, b + \frac{3573}{920} \, c + \frac{1811}{1380} \, d = \left(\frac{92521}{72450}\right)
#print li m_list = [] for l in li: m = [] for variable in [a,b,c,d]: m.append(l.coefficient(variable)) m_list.append(m) m_list
[[x |--> 1/4, x |--> 1/3, x |--> 1/2, x |--> 1], [x |--> 53/40, x |--> 17/12, x |--> 19/12, x |--> 1], [x |--> 23/8, x |--> 8111/2880, x |--> 8/3, x |--> 109/96], [x |--> 946091/193200, x |--> 109/24, x |--> 3573/920, x |--> 1811/1380]]
li[0].coefficients() k(x) = x^2+3*x print k.coefficients()
[[3, 1], [1, 2]]