︠2c64fab1-75f3-41a3-835b-76dbf0c79ef0s︠ def func(x): return 1/(1+2*abs(x)) a=-2 b=2 plot(func(x),(x,-2,2)) x_l=[] x_l2=[] y_l=[] y_l2=[] xn1=0 xn2=0 n1=17 for k in range(17): xn1=-2+(0.25)*k x_l.append((xn1).n()) y_l.append(func(xn1.n())) x_l len(x_l) n2=n1*3 for k in range(n2): xn2=-2+(0.08)*k x_l2.append(xn2.n()) y_l2.append(func(xn2).n()) x_l2 def lin(x1,x2,y1,y2,x): return ((x-x1)/(x2-x1))*(y2-y1)+y1 def for_lin(x): for j in range(len(x_l)): if x>x_l[j]: return lin(x_l[j],x_l[j+1],y_l[j],y_l[j+1],x) s=0 def inter(xl,yl,n,t): f=matrix(RR,n+1) for i in range(n+1): f[i,0]=yl[i] for k in range(1,n+1): for i in range(n+1-k): f[i,k]=(f[i+1,k-1]-f[i,k-1])/(xl[i+k]-xl[i]) s=yl[0] for k in range(1,n+1): r=1 for i in range(k): r=r*(t-xl[i]) s+=f[0,k]*r return s interlist = [] for i in range(len(x_l2)): t=-2+0.08*i t.n() interlist.append(inter(x_l,y_l,n1-1,t)) ︡6caade4c-082d-4e18-89dd-f63887d848dd︡{"file":{"filename":"/projects/8c5413ca-f684-4acd-a3d8-951eb02e8832/.sage/temp/compute2-us/9323/tmp_3uP_Gp.svg","show":true,"text":null,"uuid":"87233f75-2741-4865-a47c-b5293fbaa4d0"},"once":false}︡{"html":"
"}︡{"stdout":"[-2.00000000000000, -1.75000000000000, -1.50000000000000, -1.25000000000000, -1.00000000000000, -0.750000000000000, -0.500000000000000, -0.250000000000000, 0.000000000000000, 0.250000000000000, 0.500000000000000, 0.750000000000000, 1.00000000000000, 1.25000000000000, 1.50000000000000, 1.75000000000000, 2.00000000000000]\n"}︡{"stdout":"17\n"}︡{"stdout":"[-2.00000000000000, -1.92000000000000, -1.84000000000000, -1.76000000000000, -1.68000000000000, -1.60000000000000, -1.52000000000000, -1.44000000000000, -1.36000000000000, -1.28000000000000, -1.20000000000000, -1.12000000000000, -1.04000000000000, -0.960000000000000, -0.880000000000000, -0.800000000000000, -0.720000000000000, -0.640000000000000, -0.560000000000000, -0.480000000000000, -0.400000000000000, -0.320000000000000, -0.240000000000000, -0.160000000000000, -0.0800000000000001, 0.000000000000000, 0.0800000000000001, 0.160000000000000, 0.240000000000000, 0.320000000000000, 0.400000000000000, 0.480000000000000, 0.560000000000000, 0.640000000000000, 0.720000000000000, 0.800000000000000, 0.880000000000000, 0.960000000000000, 1.04000000000000, 1.12000000000000, 1.20000000000000, 1.28000000000000, 1.36000000000000, 1.44000000000000, 1.52000000000000, 1.60000000000000, 1.68000000000000, 1.76000000000000, 1.84000000000000, 1.92000000000000, 2.00000000000000]\n"}︡{"stdout":"-2.00000000000000\n-1.92000000000000\n-1.84000000000000\n-1.76000000000000\n-1.68000000000000\n-1.60000000000000\n-1.52000000000000\n-1.44000000000000\n-1.36000000000000\n-1.28000000000000\n-1.20000000000000\n-1.12000000000000\n-1.04000000000000\n-0.960000000000000\n-0.880000000000000\n-0.800000000000000\n-0.720000000000000\n-0.640000000000000\n-0.560000000000000\n-0.480000000000000\n-0.400000000000000\n-0.320000000000000\n-0.240000000000000\n-0.160000000000000\n-0.0800000000000001\n0.000000000000000\n0.0800000000000001\n0.160000000000000\n0.240000000000000\n0.320000000000000\n0.400000000000000\n0.480000000000000\n0.560000000000000\n0.640000000000000\n0.720000000000000\n0.800000000000000\n0.880000000000000\n0.960000000000000\n1.04000000000000\n1.12000000000000\n1.20000000000000\n1.28000000000000\n1.36000000000000\n1.44000000000000\n1.52000000000000\n1.60000000000000\n1.68000000000000\n1.76000000000000\n1.84000000000000\n1.92000000000000\n2.00000000000000\n"}︡{"done":true}︡ ︠3b8f1e19-5f09-44a2-8b2f-0d031846dc96s︠ y_l y_l2 ︡186a82c2-04c3-4f8e-8e30-db1dc6fd14f4︡{"stdout":"[0.200000000000000, 0.222222222222222, 0.250000000000000, 0.285714285714286, 0.333333333333333, 0.400000000000000, 0.500000000000000, 0.666666666666667, 1.00000000000000, 0.666666666666667, 0.500000000000000, 0.400000000000000, 0.333333333333333, 0.285714285714286, 0.250000000000000, 0.222222222222222, 0.200000000000000]\n"}︡{"stdout":"[0.200000000000000, 0.206611570247934, 0.213675213675214, 0.221238938053097, 0.229357798165138, 0.238095238095238, 0.247524752475248, 0.257731958762887, 0.268817204301075, 0.280898876404494, 0.294117647058824, 0.308641975308642, 0.324675324675325, 0.342465753424658, 0.362318840579710, 0.384615384615385, 0.409836065573771, 0.438596491228070, 0.471698113207547, 0.510204081632653, 0.555555555555556, 0.609756097560976, 0.675675675675676, 0.757575757575758, 0.862068965517241, 1.00000000000000, 0.862068965517241, 0.757575757575757, 0.675675675675675, 0.609756097560976, 0.555555555555556, 0.510204081632653, 0.471698113207547, 0.438596491228070, 0.409836065573770, 0.384615384615385, 0.362318840579710, 0.342465753424658, 0.324675324675325, 0.308641975308642, 0.294117647058823, 0.280898876404494, 0.268817204301075, 0.257731958762887, 0.247524752475248, 0.238095238095238, 0.229357798165138, 0.221238938053097, 0.213675213675214, 0.206611570247934, 0.200000000000000]\n"}︡{"done":true}︡ ︠98c52e7e-e643-4395-846d-af50ed10c118s︠ n2 for j in range(len(x_l2)): t=-2+j*(0.08) t inter(x_l2,y_l2,n2-1,t) ︡49994d9d-5ff0-453b-bd02-60cab74738a9︡{"stdout":"51\n"}︡{"stdout":"-2.00000000000000\n0.200000000000000\n-1.92000000000000\n0.206611570247934\n-1.84000000000000\n0.213675213675214\n-1.76000000000000\n0.221238938053097\n-1.68000000000000\n0.229357798165138\n-1.60000000000000\n0.238095238095238\n-1.52000000000000\n0.247524752475247\n-1.44000000000000\n0.257731958762887\n-1.36000000000000\n0.268817204301075\n-1.28000000000000\n0.280898876404494\n-1.20000000000000\n0.294117647058823\n-1.12000000000000\n0.308641975308642\n-1.04000000000000\n0.324675324675325\n-0.960000000000000\n0.342465753424657\n-0.880000000000000\n0.362318840579710\n-0.800000000000000\n0.384615384615385\n-0.720000000000000\n0.409836065573771\n-0.640000000000000\n0.438596491228070\n-0.560000000000000\n0.471698113207547\n-0.480000000000000\n0.510204081632653\n-0.400000000000000\n0.555555555555556\n-0.320000000000000\n0.609756097560976\n-0.240000000000000\n0.675675675675676\n-0.160000000000000\n0.757575757575758\n-0.0800000000000001\n0.862068965517242\n0.000000000000000\n1.00000000000000"}︡{"stdout":"\n0.0800000000000001\n0.862068965517241\n0.160000000000000\n0.757575757575760\n0.240000000000000\n0.675675675675720\n0.320000000000000\n0.609756097560876\n0.400000000000000\n0.555555555554747\n0.480000000000000\n0.510204081656411\n0.560000000000000\n0.471698113920866\n0.640000000000000\n0.438596493797377\n0.720000000000000\n0.409836057573557\n0.800000000000000\n0.384615486487746\n0.880000000000000\n0.362316429615021\n0.960000000000000\n0.342473506927490\n1.04000000000000\n0.324748218059540\n1.12000000000000\n0.309021711349487\n1.20000000000000\n0.295476436614990\n1.28000000000000\n0.292613983154297\n1.36000000000000\n0.236015319824219\n1.44000000000000\n0.493263244628906\n1.52000000000000\n1.72489929199219\n1.60000000000000\n4.40856933593750\n1.68000000000000\n64.4486083984375\n1.76000000000000\n14.9992675781250\n1.84000000000000\n484.848144531250\n1.92000000000000\n2567.78222656250\n2.00000000000000\n2773.57812500000\n"}︡{"done":true}︡ ︠0bb68b17-9bd0-4c47-b76d-5d3fb8081afbs︠ # interlist: points interlistpoints = [] l2points = [] for i in range(len(interlist)): interlistpoints.append((x_l2[i], interlist[i])) l2points.append((x_l2[i], y_l2[i])) for k in range(len(interlistpoints)): if interlistpoints[k][1] < -5: interlistpoints[k] = (0, 0) l2points[k] = (0, 0) show(points(interlistpoints, rgbcolor=(0.2, 0.1, 0.1), pointsize=15) + points(l2points, rgbcolor=(0.7, 0.1, 0.1), pointsize=15) + plot(func(x),(x,-2,2)), aspect_ratio='automatic') ︡3e512d80-2f4e-42b6-a356-4d43bf42b354︡{"file":{"filename":"/projects/8c5413ca-f684-4acd-a3d8-951eb02e8832/.sage/temp/compute2-us/9323/tmp_S6A0vc.svg","show":true,"text":null,"uuid":"45691d89-78e3-4155-aaca-a431dad3f620"},"once":false}︡{"html":""}︡{"done":true}︡ ︠65e42c7a-7870-45bb-9db8-2228db5d311c︠