Турчак Л.И. Основы численных методов. Под ред. В.В.Щенникова (1987) (1095857), страница 9
Текст из файла (страница 9)
= — а.=О. 32 5!' Система уравнений (2.19) в данном случае примет вид 2' л' а Ь = — — + — с з 8.31 32 ° 51 8 31 Отсюда находим Ь, = л/2, Ь, = — 7л'/480, с, = л'/80. Таким образом, дробно-рациональное приближение (2.17) для функции з1п(ях/2) примет вид (л/2) х — (тд /480) х' (2.20) 1+ (л'/80) х' Это приближение по точности равносильно аппроксимации (2.10) с учетом членов до пятого порядка включительно.
На практике с целью зкономии числа операций выражение (2.17) представляется в виде цепной дроби. Представим в таком виде дробно-рациональное выражение (2,20). Сначала перепишем это выражение, вынося за скобки коэффициенты при х-' и х'. Получим ях 7л х — (60/7) (2/д) х 2 6 х~ ~ 20 (2/д)2 Разделим числитель на знаменатель по правилу деления многочленов и введем обозначения для коэффициентов. гл. ". АппР01жпмлцпя Фъ'пкцпн Получим ' Л'=- Й х .1.—,=Л, .+ —,' — 1 з/ — — — ° Полученное выражение можно записать в виде з1п — ' = Л', х+— 2 2 з (2,21) х /; 4 ' й 5 Л~ = 1.0000091365, Л., = 3.0311932666, Л, = 8.8952784060, !Л! —.10 ', а +. Л, = 0.0000000894, Л, = 2.0005859000, Л, = 1.0787748225, 0(х<1, ~Ы вЂ” =х (2.24) 2 Х 1,—;— в Для вычисления значения функции по этой формуле требуется намного меньше операций (два деления, два сложения, одно умножение), чем для вычисления с помощью выражения (2.20) пли усеченного ряда Тейлора (2.10) (даже с использованием правила Горнера).
Приведем формулы для приближения некоторых элементарных функции с помощью цепных дробей, указывая интервалы изменения аргумента и погрешности Л;. е =1+ (2.22) о й+~х 2 1 ь,-' 1 Л, = 1.0000000020967, Л, = 0.0999743507!86, Л". = 0;01664 И490538, — —. 1п 2 ( х ( ~ 1п 2, ! Л ! ( 10 '" ~ 1 (1+ х) = Л +, (2.23) л.— $ з. ПнтерпочпРовлнпй Йо = 0.7853980289, Ь, = 6.1922344479, А, = — 0.6545887679, й, = 491.0013934779, -1~х<1, [Л~ ~2 10 '; (2,25) агс1я х — х 2 й 2 х л,, л, 1', = 0.99999752, й., = — 3.00064286, Л'а = — 0 55703890, Л'з = — 17 03715998, У;, = -0.20556880, -1 ~ х ( 1, 1Л! ( 2 '10 '.
ф 3. Интерполирование 1. Линейная и квадратичная пнтерполяцип. Простейгппм и часто пспользуемым видом локальпой пнтерполяцпп является лпнейпая интерполлцня. Опа состопт в том, что заданные точкп (х;, у,) (~=0, 1... и) соедпняются прямолппейнымп отрезкамп, и функция ~(х) лрполпжается ломаной с верпгппамп в даппых точках. Ъ'раиненпя каждого отрезка ломаной в общем случае разные. Поскольку имеется и интервалов (х~-о х,), та для каждого пз нпх в качестве уравпенпя ннтерполяцпонного многочлена пспользуется уравненпе прямой, проходящей через две тачки. И частности, для ~-го интервала можно написать уравпеппе прямой, проходящей через точит (х; „у;,) п (х;, у,), в впде у — д.
х — х,. Д вЂ” у ° 1 К ° — Х ° 1 Ф Отсюда (2.26)' у=ах+ ~~ у~ р~ а~ —— , Ь;=у; 1 — ах~ 1. ХФ вЂ” Юз 1 Следовательно, прп использованпп лпнейной интерполяции сначала нужно определить интервал, в который- попадает значение аргумента х, а затем подставить его 4 л, н, т~рчав гл. ". АппРОкспх1Ацпя Фун1~цпй в формулу (2.26) и найти приближенное значение функции в этой точке.
Блок-схема данного алгоритма представлена на рис. 8. Попытайтесь разобраться, будет ли работать алгоритм по этой блок-схеме, если окажется, что х ( х, или х>х„. Рассмотрим теперь случай квадратичной интерполяции. В качестве интер поляцпонн ой функции на отрезке (х; „х,+,] принимается квадратный трехчлен. Такую интерполяцию называ|от также параболической. Уравнение квадратного трехчлена у = а.;х'+ Ь;х+ с;, (2.27) х;,(х(х+„ содержит три неизвестных коэффициента а;, Ь;, с;, для определения которых необходимы три уравнения.
Ими служат . условия прохождения параболы (2.27) через три точки (х; „у,,), (х;, у,), (х,+,, у;+,). Эти условия можно записать в виде ах', 1+Ьх;, +с;=у; 1, а~х', + Ь;х~ + с; = у 1 (2,28) а;х;+, + Ь,х,+, + с; = у;+,, Рнс. 8. Блок-схема линейной интерполя- ции 0.55 0.40 0.30 ОЛ5 7,78 5.07 2.17 3.63 Алгоритм вычисления приближенного значения функции с помощью квадратичной интерполяции можно представить в виде блок-схемы, как и для случая линейной интерполяции (см. рис. 8).
Вместо формулы (2.26) нужно использовать (2.27) с учетом решения системы линейных уравнений (2.28). Интерполяция для любой точки х ~ ~х„х„~ проводится по трем ближайшим к ней узлам. П р и м е р. Найти приолп;кенное значение функции у = ~(х) при х = 0.32, если известна следующая таблица ее значений: 51 й 3. интвгполиРОВАнпе Воспользуемся сначала формулой линейной интерполяции (2.26). Значение х = 0.32 находится между узлами х;,=0.30 и х, =0.40. В этом случае У1 — У; 1 5.07 — 3,63 14 4 х. — х.
0.40 — 0.30 Ь, = у„1 — а;х; 1= 3.63 — 14.4 0.30 = — 0.69, у = 14.4х — 0.69 = 14.4 0.32 — 0.69 = 3.92. Иайдем теперь приближенное значение функции о помощью формулы квадратичной интерполяции (2.27). Составим систему уравнений (2.28) с учетом блнжайших к точке х = 0.32 узлов: х;, = 0.10, х; = 0.30, х;,, = 0.40. Соответственно у~-, 2.17, у, = 3.63, у;+~ = 5.07.
Система (2.28) запишется в виде 0.15'а; + 0 15Ь, + с, = 2 17, 0 30'а, + 0.30Ь, + с, = 3.63, 0.40'а, + 0.40Ь, + с, = 5.07. Решая эту систему, находим а;=18.67, Ь;=1.33, с; 1.55. Искомое значение функции у = 18.67 ° 0.32" + + 1.33 0 32+ 1.55 = 3.89. 2. Сплайны. Сейчас широкое распространение для интерполяции получило использование кубических сп.аайнфунк~ий — специальным образом построенных многочленов третьей степени. Они представляют собой некоторую математическую модель гибкого тонкого стер~кня пз упругого материала. Если, закрепить его в двух соседних уз- Д лах интерполяции с заданными углами наклонов и и р (рпс.
9), то между точками закрепления этот стержень (механический сплайн) примет нокоторую форму, минимизирующую его потенциальную энергию. 11усть форма этого стержня 'определяется функцией у = Я(х). Из курса сопротивления материалов известно, что уравнение свободного равновесия имеет впд Б'~(х)- = О. Отсюда следует, что между каждой парой соседппх узлов интерполяции функция Б~х) являетс» мпогочленом 4~ ГЛ. 2. АППРОКСИМАПИЯ ФУНКЦИЙ третьей степени. Запишем ее в виде Б(х) = аг+ Ь(х — х,,)+ с,(х — х;,) '+ + И(х — х;,)', х;, (х ( х;.
(2.29) Для определения коэффициентов а;, Ь;, с„с~; на всех и элементарных отрезках необходимо получить 4и уравнений. Часть пз нпх вытекает из условий прохождения графика функции Б (х) через заданные точки, т. е. 5 (х;, ) = у, „Я (х;) = у;. Эти условия можно записать в виде Я(хг,)=а;=у; „ (2.30) 5 (х;) = а; + Ь.;1г; + сг14 + с1 г1г'; = у;, 1г„=х; — х; „г=т,2, ...,и.
(2.31) Эта система содержит 2п уравнений. Для получения недостающих уравнений зададим условия непрерывности первых и вторых производных в узлах интерполяции, т. е. условия гладкости кривой во всех точках, Вычислим производные многочлепа (2.29) г Я'(х)'= Ь;+ 2е;(х — х;,)+ Зг1;(х — х,,)', Б" (х) = 2с;+ 64(х — х;,)' ° Приравнивая в каждом внутреннем узле х = х, значения этих производных, вычисленные в левом и правом от узла интервалах, получаем 2гг — 2 уравнений Ь; „, = Ь; ~- 21г,сг -г- 31фг,.
(2.32) сг~г =с;+ 31гА, г = 1, 2, .„, и — 1. (2.33) Недостающие два соотношения получаются из условий закрепления концов сплайна. Б частности, при свободном закреплении концов (см, рпс. 9) можно приравнять нулю кривизну линии в этих точках. Такая функция, называемая свободнылг кубическилг сгглайгголг, обладает свойством минимальной кривизны, т. е.
она самая гладкая среди всех интерполяционных функций данного класса. Из условий нулевой кривизны на концах следуют равенства нулю вторых производных в этих точках~ Б" (х,) = с; = О, Я" (х„1 = 2с„ + бган„1г„ = О. (2.341 Уравнепия (2.30) — (2,34)' составляют спстему линейных алгебраических уравнений для определения 4п ко-, 5 3. интеРполиРОВАнпе 5гг эффициентов а„Ьг, с,, аг (~ = 1, 2, ..., и). Ее можно решить одним из методов, изло'пенных в гл. 4, Однако с целью экономии памяти ЭВМ и машинного времени эту систему можно привести к более удобному виду.
Из условия (2;30) сразу можно найти все коэф- фициенты а;. Далее из (2.33), (2.34) получим с гь, И Подставим зги соотношения, а также значения аг =- уг — 1 в (2.31) и найдем отсюда коэффициенты Ь. (2.36) У„ У„ 1 2 О„= — — —. гг„с„. гг Учитывая выражения (2.35) и (2.36), исключаем из уравнения (2.32) коэффициенты А и Ь;.