интерполяционный полином Ньютона (или полином для интерполирования назад). Этот интерполянт задается тоже в виде (2.11), но его коэффициенты выражаются через значения функции в узлах, расположенных левее заданного аргумента x. Например, если (x n − 1 < x < x n ), то для вычисления коэффициентов второго полинома Ньютона степени n требуются значения y i (i = 0, 1, ..., n). Расчет коэффициентов второго полинома Ньютона делается аналогично расчету для первого полинома. Подробный вывод приводится во всех курсах вычислительной математики (например, [1]), поэтому здесь сразу приведем вид второго интерполянта Ньютона в явной форме: Q n (x) = y n + h x x n − ∆y n − 1 + 2 1 2 ) )( ( h x x x x n n − − − ∆ 2 y n − 2 + + n n h n x x x x ! ) )...( ( 1 − − ∆ n y 0. (2.24) Заметим, что коэффициенты второго интерполянта Ньютона представляются через конечные разности, вычисляемые в различных узлах. Напротив, все конечные разности, необходимые для получения первого интерполянта Ньютона, рассчитываются для одного узла, который выбран в качестве нулевого x 0 Для облегчения практического использования интерполянта (2.24) целесообразно сделать следующую замену переменной q = (x − x n ) / h. (2.25) 25 Тогда второй интерполяционный полином Ньютона приобретет вид: Qn( x) = yn + q ∆ yn-1 + 2 ) 1 ( + qq∆ 2 yn-2 + ! 3 ) 2 )( 1 ( + + qqq∆ 3 yn-3 + + ! ) 1 )...( 1 ( nnqqq− + + ∆ ny0 (2.26) Этот полином n-й степени строится по n точкам, расположенным левее аргумента x, и единственной точке xn, лежащей правее x. Поэтому на практике второй полином Ньютона (2.26) используется, когда требуется вычислить значение неизвестной функции f ( x) для аргумента x, находящегося в конце заданной таблицы узлов. Если для интерполяции используется полином степени m < n – 1 (где n – количество узлов таблицы), то в качестве узла xn выбирается ближайший справа к аргументу x, для которого проводится вычисление интерполянта. Полином Ньютона (2.26) строится по значению функции yn и значениям функции в m узлах, расположенных левее аргумента x. При этом величина (2.25) меньше единицы и погрешность интерполяции с помощью второго полинома Ньютона минимальна (см. § 2.5). Пример 3. Вычислим значение функции f ( x), заданной таблицей 2.3, в точке x = 3,43. На основе общей формулы (2.26) построим второй интерполяционный полином Ньютона 3-го порядка, причем за узел xnпримем значение x3 = 3,5: Q3 ( x) = y3 + q ∆ y2 + 2 ) 1 ( + qq∆ 2 y1 + ! 3 ) 2 )( 1 ( + + qqq∆ 3 y0 Значения конечных разностей, необходимые для расчета, возьмем из таблицы 2.4. Параметр q, согласно определению (2.25), равен (3,43 −3,5)/0,1=−0,7. Расчет значения f( x=3,43) по последней формуле дает f (3,43) = Q3 ( x=3,43) = =0,185+0,7 ⋅0,049−0,7⋅0,3⋅0,01/2+0,7⋅0,3⋅1,3⋅0,003/6 ≈ 0,218. 26 Если удается построить таблицу значений интерполируемой функции для равноотстоящих узлов вида (2.9), то предпочтительнее использовать полиномы Ньютона, а не полином Лагранжа. Для вычисления одного значения полинома (2.21) или (2.26) при рациональном проведении расчетов требуется выполнить n ( n + 1) / 2+ n сложений и вычитаний плюс 3 n умножений и делений. Это значительно меньше, чем при вычислении полинома Лагранжа того же порядка. Оба интерполянта Ньютона используют значения функции в узлах, лежащих по одну сторону от выбранного значения аргумента x. В вычислительной математике также применяются интерполяционные полиномы, построенные на системе равноотстоящих узлов, коэффициенты которых рассчитываются по значениям функции в узлах, расположенных как левее, так и правее заданной точки x. Для построения таких интерполянтов значения узлов удобнее задавать в следующей форме xi = x0 + i⋅ h , где i =0, ±1, ±2, . . . ± n. (2.27) Таким образом, номера узлов принимают как положительные, так и отрицательные значения. Центральный узел имеет нулевой индекс. Будем далее в этом параграфе использовать величину q, определенную формулой (2.20). Приведем без вывода интерполяционную формулу Стирлинга в следующем виде: PS( x) = y0 + q2 0 1 yy∆ + ∆ − + 2 2 q∆ 2 y −1 + ! 3 ) 1 ( 2 − qq2 1 3 2 3 − − ∆ + ∆ yy + + ! 4 ) 1 ( 2 2 − qq∆ 4 y −2 + ! 5 ) 4 )( 1 ( 2 2 − − qqq2 2 5 3 5 − − ∆ + ∆ yy + + ! 6 ) 4 )( 1 ( 2 2 − − qqq∆ 6 y−3 + … + )! 1 2 ( ) ) 1 ( )...( 9 )( 4 )( 1 ( 2 2 2 2 2 − − − − − − nnqqqqq× × 2 ) 1 ( 1 2 1 2 − − − − − ∆ + ∆ nnnnyy + + )! 2 ( ) ) 1 ( )...( 9 )( 4 )( 1 ( 2 2 2 2 2 2 nnqqqqq− − − − − ⋅ ∆ 2 ny− n(2.28) 27 В последнем выражении символами ∆ k y i обозначены конечные разности, определенные формулами: ∆y i = y i+ 1 − y i ; ∆ 2 y i = ∆y i+ 1 − ∆y i и т.д. (2.29) Специальные исследования показали, что интерполяционная формула Стирлинга (2.28) имеет наименьшую погрешность, когда абсолютная величина q ≤ 1/4. Если 1/4 ≤ q ≤ 3/4, то более лучшую точность дает интерполяционная формула Бесселя: P B (x) = 2 1 0 y y + + (q −1/2) ∆y 0 + 2 ) 1 ( − q q ⋅ 2 0 2 1 2 y y ∆ + ∆ − + + ! 3 ) 1 ( ) 2 / 1 ( − − q q q ∆ 3 y −1 + ! 4 ) 2 )( 1 )( 1 ( − + − q q q q ⋅ 2 1 4 2 4 − − ∆ + ∆ y y + + )! 2 ( ) 1 )( )...( 2 )( 2 )( 1 )( 1 ( n n q n q q q q q q − + − + − + − ⋅ 2 1 2 2 + − − ∆ + ∆ n n n n y y + + )! 1 2 ( ) 1 )( )...( 2 )( 2 )( 1 )( 1 ( ) 2 / 1 ( + − + − + − + − − n n q n q q q q q q q ∆ 2n+1 y − n (2.30) В качестве частных случаев приведем квадратичные интерполяционные формулы Стирлинга: P S (x) = y 0 + q 2 0 1 y y ∆ + ∆ − + 2 2 q ∆ 2 y −1 = = y 0 + 2 q ⋅ (y 0 − y −1 ) + 2 2 q (y 1 + y −1 − 2 y 0 ) (2.31) и Бесселя:
28 PB( x) = 2 1 0 yy+ + ( q −1/2) ∆ y0 + 2 ) 1 ( − qq⋅ 2 0 2 1 2 yy∆ + ∆ − = = y0 + q⋅ ( y1 − y0 ) + 4 ) 1 ( − qq ( y2 − y1 − y0 + y−1 ). (2.32) Видно, что для вычисления интерполяционного полинома Стирлинга 2-го порядка надо знать значения интерполируемой функции в трех равноотстоящих узлах. Для вычисления интерполяционного полинома Бесселя 2-го порядка необходимо иметь значения функции уже в четырех узлах. § 2.4. Сплайн - интерполяция Помимо «классических» интерполяционных полиномов, в XX веке получила широкое распространение в практике еще одна разновидность интерполянтов, называемых сплайнами. Исторически они возникли в авиастроении при конструировании обтекаемых профилей. Сплайном S( x) является интерполирующая функция, которая обладает наименьшей кривизной и имеет квадратично интегрируемую вторую производную. Так как сплайн является интерполянтом, то для него должно выполняться условие (2.1): S( xi) = yi = f( xi) ( i = 0, 1, . . ., n). (2.33) Вид функции сплайна S( x) находится из условия минимальности функционала ( ) ( ) ∫ ′′ nxxdxxS0 2 (2.34) Эта функция физически моделируется гибким и упругим стержнем, который проходит через все заданные точки интерполяции. Минимум функционала (2.34) соответствует минимуму упругой потенциальной энергии этого стержня. Особенно часто используется естественный кубический сплайн – полином 3-й степени, удовлетворяющий требованиям (2.33) и (2.34). Такой естественный кубический сплайн является непрерывной 29 функцией и имеет непрерывные первую и вторую производную на интервале интерполяции (x 0 , x n ). Как и в предыдущих параграфах данной главы, интерполянт строится на базе таблицы данных типа (2.9). Таблица с n + 1 узлами определяет n подинтервалов между этими узлами. Кубический полином (естественный сплайн) необходимо построить для каждого подинтервала. Таким образом, интерполяция кубическими сплайнами относится к классу кусочно-многочленной интерполяции. Так как каждый кубический полином характеризуется четырьмя константами, поэтому для построения сплайна S(x) на всем интервале [x 0 ; x n ] необходимо определить 4n параметров. Требование непрерывности функции, ее первой и второй производных во внутренних (n – 1) узлах дает 3(n – 1) уравнения для определения неизвестных параметров. Условие (2.33) для всех (n + 1) узлов дает еще (n + 1) уравнений. Недостающие два условия для однозначного определения естественного сплайна задаются приравниванием нулю вторых производных в точках x 0 и x n S ′′(x 0 ) = S ′′(x n ) = 0, (2.35) что означает нулевую кривизну сплайна на концах интервала. Иногда при построении сплайнов задаются другие граничные условия на концах интервала интерполяции для самих функций или первых производных. После формулировки общих положений займемся конструированием явного вида коэффициентов кубического сплайна. Для этого вначале рассмотрим отдельный подинтервал (x i , x i+ 1 ). Введем обозначения h i = (x i+1 – x i ), (2.36) w = (x – x i ) / h i , (2.37) v = 1 – w = (x i+1 – x) / h i (2.38) Сплайн на подинтервале (x i , x i+ 1 ) удобно представить формулой: S (x) = w y i+ 1 + v y i + h i 2 [ (w 3 – w) σ i+ 1 + (v 3 – v) σ i ], (2.39)
30 где σ i+1 и σ i – константы, которые необходимо выразить через известные величины xi, yi. Очевидно, что функция (2.39) – полином 3-й степени относительно аргумента x. Легко убедиться непосредственной подстановкой, что S( xi) = yi, S( xi+1 ) = yi+1 (2.40) Получим выражения для трех производных функции (2.39): S′ ( x) = ( yi+1 – yi)/ hi + hi[ (3 w2 – 1) σ i+1 – (3 v2 – 1) σ i ], (2.41) S′′ ( x) = 6 ( wσ i+1 + vσ i), (2.42) S′′′ ( x) = 6 ( σ i+1 – σ i) / hi (2.43) Формула (2.41) позволяет получить выражение для первой производной на концах любого подинтервала. Декларированная непрерывность первой производной сплайна S( x) на всем интервале ( x0 , xn) позволяет приравнять правые и левые производные в точках узлов xiВ результате получается соотношение hi− 1 σ i− 1 + 2( hi− 1 + hi) σ i + hiσ i+1 = ∆ i – ∆ i–1 (2.44) В уравнении (2.44) и последующих этого параграфа использовано новое обозначение: ∆ i = ( yi+1 – yi) / hi (2.45) Заметим, что в этом параграфе величины ∆ i, определенные формулой (2.45), называются разделенными разностями, в отличие от конечных разностей (1.1), введенных в главе 1. Соотношения (2.44) получены для всех n – 1 внутренних узлов. Индекс i пробегает значения 1, ..., n− 1. Таким образом, получена система ( n – 1) линейных уравнений относительно неизвестных величин σ iВ качестве недостающих условий можно взять уравнения, выражающие требования (2.35). Можно поступить иначе – использовать единственные кубические полиномы, которые проходят точно через 4 первые и 4 последние точки из заданных xi, yi ( i = 0, . . ., n). Тогда два 31 дополнительных условия на концах интервала (x 0 , x n ) выразятся следующим образом: ( σ 1 – σ 0 ) / h 0 = ∆ 0 (3) , ( σ n – σ n − 1 ) / h n − 1 = ∆ (3) n − 3 , (2.46) где ∆ i (3) = ( ∆ (2) i+ 1 – ∆ (2) i ) / (x i+ 3 – x i ), ∆ i (2) = ( ∆ i+ 1 – ∆ i ) / (x i+ 2 – x i ). (2.47) Полученная система линейных уравнений (2.44) и (2.46) для нахождения n + 1 параметров σ i (i = 0,. . ., n) имеет единственное решение. Матрица коэффициентов при неизвестных σ i может быть записана в следующем виде: − + + + − − − − − − − 1 1 1 1 2 2 2 2 1 1 1 1 0 0 0 0 0 0 0 ) ( 2 0 0 . . 0 ) ( 2 0 0 0 ) ( 2 0 0 0 n n n n n n h h h h h h h h h h h h h h h h . (2.48) Правые части уравнений (свободные члены) соответственно равны: ) 3 ( 0 2 0 ∆ h , ∆ 1 – ∆ 0 , ∆ 2 – ∆ 1 , … , ∆ n − 1 – ∆ n − 2 , − ) 3 ( 3 2 1 − − ∆ n n h Решение полученной системы линейных уравнений удобно реализовать, пользуясь трехдиагональностью матрицы коэффициентов при неизвестных, применяя методы, приведенные в главе 4 настоящего пособия. В результате искомые величины σ i представятся в виде рекуррентных выражений: σ n = β n / α n , σ i = ( β i – h i σ i+ 1 ) / α i ,...i = n – 1, n – 2, …, 0, (2.49) где коэффициенты α i и β i выражаются так: α 0 = – h 0 , α i = 2 (h i − 1 + h i ) – h 2 i − 1 / α i- 1 , i = 1, …, n – 1 (2.50) α n = – h n − 1 – h 2 n − 1 / α n − 1
32 β 0 = h0 2 ∆ 0 (3) β i = ( ∆ i – ∆ i− 1 ) – hi− 1 β i− 1 / α i− 1 , i = 1, …, n – 1 (2.51) β n = – h2 n− 1 ∆ (3) n− 3 – hn− 1 β n− 1 / α n− 1 При необходимости многократно вычислять сплайн его удобнее представить в несколько иной форме: S( x) = yi + bi ( x – xi) + ci ( x – xi) 2 + di ( x – xi) 3 (2.52) где xi≤ x ≤ xi+1 , i = 0, …, n – 1. Преобразование функции (2.39) к форме (2.52) дает следующие выражения для искомых коэффициентов: bi = ( yi+1 – yi) / hi – hi ( σ i+1 + 2 σ i) , ci = 3 σ i , di = ( σ i+1 – σ i) / hi , (2.53) где i = 0 , …, n – 1. Подстановка коэффициентов (2.53) в выражение (2.52) дает функцию сплайна в явном виде для аргументов xi≤ x ≤ xi+1 , лежащих в i- м поддиапазоне интерполяции. Пример 4. Пусть необходимо построить сплайн-интерполянт по набору шести точек, сведенных в таблицу 2.5. Таблица 2.5 i0 1 2 3 4 5 xi1 3 6 7 8 9 yi2 4 7 7 6 5 Для вычисления коэффициентов сплайна целесообразно по формулам (2.36) – (2.38), (2.43) и (2.45) вычислить промежуточные данные и свести их в таблицу 2.6. Таблица 2.6 i xi yi hi ∆ i ∆ i(2) ∆ i(3) 0 1 2 2 1 0 −1/24 1 3 4 3 1 −1/4 −1/20 2 6 7 1 0 −1/2 1/6 33 3 7 7 1 −1 0 4 8 6 1 −1 5 9 5 Пользуясь величинами таблицы 2.6 можно составить систему линейных уравнений (2.44) и (2.46). Запишем эту систему в матричном виде: − − − − = σ σ σ σ σ σ ⋅ − − 6 / 1 0 1 1 0 6 / 1 1 1 0 0 0 0 1 4 1 0 0 0 0 1 4 1 0 0 0 0 1 8 3 0 0 0 0 3 10 2 0 0 0 0 2 2 5 4 3 2 1 0 (2.54) Решением системы (2.54) является следующий набор значений σ i (i = 0, 1,. . ., 5) = {67/708, 2/177, –107/1062, –121/531, 13/1062, 95/531}, которые мы представили в виде обыкновенных дробей. Вычисленные значения σ i и h i (i = 0, 1,. . ., 5) подставляются в формулы (2.36) – (2.39) или (2.52), (2.53), по которым можно получить явный вид сплайна S(x) на каждом i-м поддиапазоне x i ≤ x ≤ x i+ 1 Например, на интервале х ∈[3, 6] (т.е. между узлами i=1 и i=2) сплайн-интерполянт может быть выражен аналитически следующим кубическим полиномом: S 12 (x) = 1,6102 + 0,0226 х + 0,3701 х 2 − 0,0374 х 3 , (2.55) где коэффициенты вычислены с точностью до 0,0001. График полученного сплайна представлен на рис. 2.3. Аналогичным образом можно построить кубические интерполирующие полиномы на всех интервалах, ограниченных узлами таблицы 2.5. В результате получается сплайн-интерполянт для диапазона 1 ≤ x ≤ 9, график которого изображен на рис. 2.4.
34 2 4 6 8 x 3 4 5 6 7 y Рис. 2.3. График сплайн-интерполянта на интервале х ∈[3, 6]. Кружки – исходные данные таблицы 2.4, линия – график полинома (2.55). 2 4 6 8 x 3 4 5 6 7 y Рис. 2.4. График сплайн-интерполянта на интервале х ∈[1, 9]. Кружки – исходные данные таблицы 2.4.
35 § 2.5. Погрешность интерполяционных формул Количественной характеристикой погрешности интерполяционной формулы является остаточный член, который определяется разностью: R( x) = f ( x) – P( x), (2.56) где f( x) – интерполируемая функция, а P( x) – интерполирующий полином. Абсолютная величина остаточного члена может быть принята за оценку погрешности вычисления значения функции f( x) с помощью выбранного интерполирующего полинома. Нам известны только значения функции f( x) в конечном числе узлов, поэтому для аргументов x, не совпадающих с узлами, величину остаточного члена R( x) можно оценить только приближенно. Расчет значений остаточного члена R( x) на интервале [ a, b] проводится обычным способом математического анализа (с помощью теоремы Ролля) и описан в подробных курсах численных методов [1, 3, 4]. Абсолютная величина остаточного члена для полинома Лагранжа n-й степени не превышает следующего значения | RL| ≤ )! 1 ( 1 + + nMn∏ = − niixx0 ) ( , (2.57) где Mn+1 обозначает максимум абсолютного значения производной ( n+1)-го порядка функции f ( x) на интервале интерполирования [ a, b]: Mn+1 = bxa≤ ≤ max ) ( ) 1 ( xfn+ (2.58) Границы интервала [ a, b], как и в предыдущих параграфах, совпадают с крайними узлами: a = x0 , b = xnЗадача интерполирования, как правило, на практике решается, когда исходная функция f( x) задана лишь таблицей значений xi, yi = f ( xi), где i=0, 1, ..., n (см. табл. 2.1). В этих случаях, к сожалению, невозможно вычислять значения производной ( n+1)-го порядка этой функции. Если интерполянт строится с использованием части таблицы данных, то количество узлов может быть достаточным для оценки величины f ( n+1) ( x) методом численного дифференцирования (см. 36 главу 9). Однако в этом случае возникает дополнительная трудность оценки точности численного значения производной (n+1)-го порядка. Согласно выражению (2.57), на величину погрешности полинома Лагранжа, кроме значения производной (n+1)-го порядка, существенно влияет расположение узлов на интервале интерполяции [a, b]. Исследования показали, что уменьшения остаточного члена полинома Лагранжа можно добиться, если узлы интерполяции расположить по правилу: x i = 2 b a + + 2 a b − t i , (i = 0, 1, ..., n) (2.59) где t i – нули полинома Чебышева (n+1)-го порядка, равные t i = – cos 2 2 1 2 + + n i π , i = 0, 1, ..., n . (2.60) В этом случае модуль остаточного члена полинома Лагранжа не превышает величины | R L | ≤ )! 1 ( 1 + + n M n 2 1 4 + − n a b (2.61) Пользуясь выражением (2.57) и постоянным шагом h таблицы узлов, можно получить оценку остаточного члена для первого интерполяционного полинома Ньютона R 1 ≤ h (n+1) )! 1 ( ) )...( 1 ( + − − n n q q q M n +1 , (2.62) где величина q определяется формулой (2.20). Приближенное значение производной (n+1)-го порядка функции f (x) можно получить с помощью конечных разностей: M n +1 ≈ 1 0 1 + + ∆ n n h y (2.63)
37 Чем меньше величина шага h , тем точнее это приближенное равенство. Подстановка последнего выражения в (2.62) дает приближенное значение погрешности первого интерполяционного полинома Ньютона | R1 | ≈ )! 1 ( ) )...( 1 ( + − − nnqqq∆ n+1 y0 (2.64) Следует заметить, что для вычисления конечной разности ( n+1)-го порядка для значения x = x0 необходимо знать значения функции f ( x) в ( n+1) узлах, расположенных правее x0 (см. главу 1 и формулу (1.15)). Из формулы (2.64) видно, что если значение аргумента x лежит в интервале ( x0 , x1 ), то величина q < 1 и погрешность интерполяции минимальна. Аналогично можно получить оценку погрешности для второго интерполяционного полинома Ньютона | R2 | ≈ )! 1 ( ) )...( 1 ( + + + nnqqq∆ n+1 yn, (2.65) где величина q определяется уже формулой (2.25). Ясно, что для вычисления этой оценки необходимо иметь в наличии значения функции f ( x) в ( n+1) узлах, расположенных левее xnИз формул (2.25) и (2.65) следует, что погрешность интерполяции вторым полиномом Ньютона минимальна, если значение аргумента x лежит в интервале (x n −1 , x n ). Запишем без выводов оценки погрешности для интерполяционной формулы Стирлинга | RS | ≈ )! 1 2 ( 2 1 2 1 1 2 + ⋅ ∆ + ∆ − + − − + nyynnnnq( q2 – 1) ( q2 – 4) … ( q2 – n2) (2.66) и интерполяционной формулы Бесселя | RB | ≈ )! 2 2 ( 2 2 2 1 2 2 + ⋅ ∆ + ∆ − + − − + nyynnnnq( q2 – 1)( q2 – 4)…( q2 – n2 )( q – n – 1). (2.67) 38 В двух последних формулах значения производных тоже выражены через конечные разности. Видно, что величина погрешности у всех интерполяционных формул уменьшается с ростом количества используемых узлов. Однако в вычислительной математике доказано, что интерполянты, построенные по значениям функции f( x) в равноотстоящих узлах, вообще говоря, обладают плохой сходимостью. Это значит, что в случае произвольной интерполируемой функции f( x) с ростом числа узлов n остаточный член R не обязательно стремится к нулю. Для оценки погрешности кубического сплайна можно использовать общее выражение (2.57). При задании исходной функции таблицей с постоянным шагом h погрешность ограничена величиной порядка O( h4 ) [5, 13]. Следующий принципиальный недостаток, которым обладает интерполяция алгебраическими полиномами, вначале проиллюстрируем следующим примером. Пример 5. Пусть наши данные о функции y = f( x) состоят из шести пар значений xi , yi ( i = 0, 1, ..., 5), сведенных в таблицу 2.7. Таблица 2.7 i0 1 2 3 4 5 xi4,0 4,5 5,5 6,0 7,0 7,5 yi3,73 2,37 2,14 0,55 0,09 0,03 Значения функции в таблице 2.7 монотонно убывают. Однако интерполирующий полином Лагранжа (2.8), построенный по данным таблицы 2.7, имеет на интервале [4; 7,5] два явно выраженных максимума и два минимума (см. рис. 2.5). Завышенные значения интерполянта вблизи x=5 и x=7,3 не обусловлены исходными данными, как и заниженные значения при x=4,4 и x=6,5. Если же построить интерполянты Лагранжа по первым четырем и последним четырем точкам таблицы 2.7, то мы получим гладкие функции, не обладающие резкими осцилляциями (см. рис. 2.6). Значения новых интерполянтов в точках x = 4,4; 5; 6,5; 7,3 не отличаются сильно от табличных значений yi в ближайших узлах. На практике в случаях, когда информация об интерполируемой функции f( x) ограничена только табличными данными вида 2.1, не 39 используют интерполирующие алгебраические полиномы степени выше 10, даже если точки данных значений xi; yi = f( xi) ложатся на гладкую кривую без резких перегибов. Наиболее широкое распространение имеет кусочно-многочленная интерполяция, пример которой подробно описан в § 2.5. В любых ситуациях интерполянты целесообразно строить по 4 – 6 точкам, окружающим значение аргумента x, для которого требуется вычислить значение функции y = f( x). 4 5 6 7 8 0 1 2 3 4 yxРис. 2.5. Интерполирующий полином Лагранжа, построенный по данным таблицы 2.7. Наконец, для практики существенным недостатком любых интерполянтов является их чувствительность к дополнению таблицы исходных данных значениями функции в дополнительных узлах. Пусть по данным таблицы 2.1 (т.е. по n+1 точкам) построен интерполянт n-й степени Pn( x), например, в форме Лагранжа. Если теперь к исходным данным добавить еще одно значение функции yn+1 = f ( xn+1 ) для дополнительного узла x n+1 и вновь построить интерполирующий полином Pn+1 ( x) (уже по n+2 точкам) , то он будет существенно отличаться от предыдущего интерполянта. Вычисления значений Pn( x) и Pn+1 ( x) для одного и того же аргумента x (не совпадающего ни с одним узлом) могут давать значения, различающиеся на порядок. Вышеперечисленные недостатки интерполяции приводят к тому, что в физических задачах для приближения функций чаще используют методы аппроксимации, которые изложены в следующей главе. 40 4 5 6 1 2 3 4 x y 6 7 8 0 1 2 x y а б Рис.2.6. Интерполирующие полиномы Лагранжа, построенные по фрагментам таблицы 2.7: а ) 4 ≤ x ≤ 6 , б ) 5,5 ≤ x ≤ 7,5 .
41 Глава Поделитесь с Вашими друзьями: |