Раздел «Язык Си».PythonSympyExam:

Контрольная работа (задачи 1-9)

Построение функции по точкам - 1

Даны точки. Построить по этим точкам две функции (по вариантам).

Построить графики этих функций.

Вычислить значение функций в точках с х координатами: 0.5, 4, -1, 10. Объясните полученные результаты. Можно ли вычислить значения сплайнов вне отрезка от 0 до 5? Почему?

вариант интерполяционный полином сплайн-интерполяция порядка
1 степенной 3
2 Чебышева 2
3 Лагранжа 1
4 Лаггера 3
5 Эрмита 2
6 Эрмита (вероятностный) 1

Исходные точки:

[0.000000, 1.250000],
[1.000000, 1.116472],
[2.500000, 0.247223],
[3.000000, -0.079148],
[5.000000, -0.523167]

Результаты:

Точные значения:
f(0.5) = 1.240999216492717
f(4.0) = -0.52533551794138922
f(-1)  = 0.96425476967335877
f(10)  = 0.31766764161830657

--------------------------------------
Polynomial
poly([ 0.24722264 -1.67934211  0.07734977  0.79275858  0.03884406])
f(0.500000) =  1.25021831319
f(4.000000) =  -0.556266664783
f(-1.000000) =  0.723800947171
f(10.000000) =  20.4561946548
--------------------------------------
Chebyshev
cheb([ 0.30046405 -1.08477317  0.05809692  0.19818964  0.00485551])
f(0.500000) =  1.25021831319
f(4.000000) =  -0.556266664783
f(-1.000000) =  0.723800947171
f(10.000000) =  20.4561946548
--------------------------------------
Legendre
leg([ 0.28077471 -1.20368696  0.07376312  0.31710343  0.00887864])
f(0.500000) =  1.25021831319
f(4.000000) =  -0.556266664783
f(-1.000000) =  0.723800947171
f(10.000000) =  20.4561946548
--------------------------------------
Laguerre
lag([  30.99529403 -119.13946251  164.73687759  -90.2588281    14.91611899])
f(0.500000) =  1.25021831319
f(4.000000) =  -0.556266664783
f(-1.000000) =  0.723800947171
f(10.000000) =  20.4561946547
--------------------------------------
Hermite
herm([ 0.31503057 -0.24510212  0.04847049  0.09909482  0.00242775])
f(0.500000) =  1.25021831319
f(4.000000) =  -0.556266664783
f(-1.000000) =  0.723800947171
f(10.000000) =  20.4561946548
--------------------------------------
HermiteE
herme([ 0.44110459  0.69893362  0.31041413  0.79275858  0.03884406])
f(0.500000) =  1.25021831319
f(4.000000) =  -0.556266664783
f(-1.000000) =  0.723800947171
f(10.000000) =  20.4561946548
spline(2):
s(0.500000) =  1.1832360788627692
s(4.000000) =  -0.3011573165735435
spline(3):
s(0.500000) =  1.2617330912032743
s(4.000000) =  -0.48715113354782824
spline(4):
s(0.500000) =  1.251134003242776
s(4.000000) =  -0.5565249252458007

Построение функции по точкам - 2

Даны точки. Координаты x в файле и координаты y в файле ниже.

Вариант ax+b ax2+bx+c a*sin(bx)+c b0*sin(pi*x/4)+b1*cos(pi*x/4)+b2*exp(-0.2*x)
1 + +    
2 +   +  
3 +     +
4   + +  
5   +   +
6     + +

Найти приближения функциями указанного вида (свой вариант).

Нарисовать графики точек и функций своего варианта

Вычислить линейное и квадратичное отклонение в точках. Какая из двух кривых лучше приближает по данным точкам и почему.

Вычислите значения полученных функций в точках с х координатами: 4.5, 8, -1, 10. Объясните полученные результаты.

x ax+b ax2+bx+c a*sin(bx)+c b0*sin(pi*x/4)+b1*cos(pi*x/4)+b2*exp(-0.2*x) теоретичская кривая
4.5 0.210937138599 -0.346789305272 -0.541669051584 -0.574354118757 -0.58529567760443801
8 -0.149897713541 0.949451428324 0.995902186082 0.835827409299 0.85094825899732762
-1 0.777963334818 2.82421281278 1.06350425804 0.94807425744 0.96425476967335877
10 -0.356089057621 2.84748305057 1.12253902658 0.315126660288 0.31766764161830657
линейное отклонение -0.00354536373376 0.000126196276604 0.000332501209816 9.1858942266e-05 -
квадратичное отклонение 15.7443091007 2.11708225168 0.312321864548 0.149107742564 -

Attachment sort Action Size Date Who Comment
x_data.txt manage 0.9 K 28 May 2017 - 21:45 TatyanaDerbysheva х координаты
y_data.txt manage 1.0 K 28 May 2017 - 21:46 TatyanaDerbysheva у координаты
fit_all.png manage 64.1 K 28 May 2017 - 21:46 TatyanaDerbysheva  
interpol_zoom.png manage 43.2 K 28 May 2017 - 23:20 TatyanaDerbysheva  
interpol.png manage 51.3 K 28 May 2017 - 23:20 TatyanaDerbysheva