Б.П. Демидович, И.А. Марон - Основы вычислительной математики (1132358), страница 15
Текст из файла (страница 15)
9 8! вычисления значений тгигономвтгичвских аонкций 95 Для вычисления десятичных логарифмов используетсв формула 1нх=М!пх, 96 вычисляния знлчиний етнкций [гл. ш Аналогично сова=с~,-~- ва+... +оп+ Й'и, где ха о=1, ва —— — ва(Д= — 1, 2, ..., и — 1) + (2л — 1) 2л ! 1с„! и. — ', = ( о„~ „[, аяп 7[„= адп и„„. Приме р. Найти а1п20'30' с точностью до 1О ь. Решение. Имеем: х = агс 20'30' = — + —, = 0,349066+ 0,008727 = 0,357793. 350 Применяя формулу (3), получим: ит = х = 0,357793 и, = 2.3~ 0'007634 иа — 4 ~ + 0,000049 — 0,350208 а!п 20'30' = 0,35021. Отсюда Аналогично вычисляются значения соах. Б. Вычисление тангенса ка 2ха 17хт 52ха !их =х+ — + — + — + — + 3 !5 315 2335 Ноэффициенты разложения выражаются через числа Бернулли (см. гл.
ХЧ1, $12). Значение тангенса просто вычисляется с помощью цепных дробей. Полагая х !их= —, и в силу формулы Ламберта (гл. 11, $6) будем иметь: Можно считать, что 0 =хи= —. Для !ях при )х[( — справедливо разложение [6) 9 8) вычислении значвний тригонометрических ернкций 97 Для вычисления у с точностью до 10 'о достаточно принячь и = 7. Тогда у = ! — х'. (3 — х'. (5 — хв: (7 — х'. (9— — х'. (11 — х'.
(13 — ха: 15) ) ) ) ) ). (4) Вычисление у обычно производится с помощью схемы Горнера для деления (начиная с конца): Отсюда !кх= — ". н Приме р. Найти 1П40о. Решен и е. Имеем: х = агс 40' = 0,698132 х' = 0,487388. Отсюда 0,487388 12 967508 !5 0,487388 10,9624!3 8,955540; 0,487388 7 — 8'955540 — 6,9о 5577; 0,487388 6,955577 4,929928; Уа Уа у =Ут и, следовательно, (к 40' = — ' = 0 839! 00 о О, И8132 0 83200! В полученном результате асе знаки верные. 4 В Данилович и и а.
маров . и. Ут= Уи= Уа= Уа = Уа= Уа= У=утоо 13 — х'. 15, 11 — х':у„ 9 — хи:Уа, 7-ха:Уз 5 — х'ву„ 3 — х'.у„ Ув 9 9) вычисление значений гипвгволичяскнх втнкцнй 99 где х' о, = 1, иве, = (2а 1) 2а ов (л = 1, 2,,, л — 1) и )т'„— остаточный член.
Прн л )(х() О имеем: вл хвп+ в хв" +в (2л)!+(2л+2) !+(2 +4)!+ хвп хв хв (2л) ! ~ (2п+ 1) (2л+ 2) (2п+1)' [2л+2)в хв» 1 4 «вл 4 < — ° (2л) ! хв ( — ° — = — о 3 (2л)! 3 л+1' (2л+ 1) (2л+ 2) Так как при л ) 1 справедливо неравенство хв 1 л+1 (2л !) 2л л 2 пв то 2 3 В.
Вычисление гиперболического тангенса Имеем: пах е» вЂ” е 11!х=— где й( — Х)пп — йХ. При малых ) х! для вычисления значений гиперболического тангенса можно использовать разложение хв 2хв 17хв 62хв 7 и т й х = х — — + — — — + — -)-... ~ ( х ( ( — 7! . 3 15 315 2835 '''! 2)' При любом х значение гиперболического тангенса выражается цепной дробью х х' х' хв йх= ~0! —,— 1' 3' 5' '''2л — 1' ''')' "Рнчем так как при х ) О элементы втой дроби положительны, то йх при х)0 заключен между двумя соседними подходящими дробями. Если х > Овелико, то йх удобно вычислить, применяя формулу йх=1 — —,,„ 2 1ОО (гл. ш вычислвннв значений втнкций й 10.
Применение метода итерации для приближенного вычисления значений функции Пусть требуется вычислить значение непрерывной функции у =-У(х) для заданного значения аргумента х. Если функция (1) достаточно сложна и нужно подсчитать большое количество ее значений, то вычисления обычно производятся на счетных машинах.
Может случиться, что в силу конструктивных особенностей мишины непосредственное вычисление значений функции по формуле (1) будет затруднительным. При атом самые простые действия могут оказаться «сложными» и даже невыполнимыми. Так, например, существуют счетные машины «без деления». Тогда во многих случаях оказывается полезным следующий прием. Запишем функцию (1) в неявном виде г" (х, у) = О.
(2) Предположим, что Г(х, У) непрерывна и имеет непрерывную част- ную производную Р„(х, У) фО. Пустьу„— приближенное значение у. Применяя теорему Лагранжа, будем иметь: Р'(х, у„) = ~(х, у„) — Г(х, у) =- (у„— у) Г'„(х, у„), где у„— некоторое промежуточное значение между у„и у. Отсюда У ='У ~ (» к») (3) р'„(», й«) ' Значение у„ нам не известно. Полагая у»жу„, для вычисления значения у получим итеративный процесс ~7) У»+»=У» —, ' " (л=О 1 2 Р(», у„) р„'(», д„) (4) формула (3) имеет простой геометрический смысл. Зафиксируем значение х и рассмотрим график функции (4') г=Г(х, у). Р„(х, у) и г.«„(х, у) Из формулы (4) вытекает, что наш процесс представляет собой метод Ньютона (см.
гл. 1Ч, 2 5), примененный к функции (4), т. е. последовательные приближения у„, получаются как абсциссы точки пересечения с осью Оу касательной к кривой (4), проведенной при У=У„(л=О, 1, 2, ...) (рис. 5). Саодимость процесса будет обеспечена, если ф 11) ВЫЧИСЛЕНИЕ ОБРАТНОЙ ВЕЛИЧИНЫ 101 сохраняют постоянные знаки в рассматриваемом интервале, содержащем корень у. Начальное значение у, вообще говоря, произвольно и выбирается по возможности близким к искомому значению у. Процесс итерации продолжается до тех пор, пока в пределах заданной точности в два х последовательных значения у» ну„, не совпадут между собой: (уи „вЂ” у„~ ( е.
При этом, строго говоря, не гарантируется, что (у — у.! < в, (5) поэтому в каждом конкретном случае требуется дополнительное исследование. Достоинством итеративных процессов является однообразие операций и вследствие этого сравнительно легкая программируеиость. Рнс.
5. Заметим, что представление г'(х, у) = 0 для заданной функции (1) можно реализовать бесчисленным множеством способов. Этим следует воспользоваться, чтобы получить быстро сходящийся итерационный процесс. В следующих параграфах приведены типы основных процессов. й 11. Вычисление обратной величины 1 Пусть у= —. к ' Для определенности будем считать, что х)0. Положим Г(х, у)=х — — =О, 1 и тогда Применяя формулу (4) й 10, будем иметь: 1 х —— и» У»+А =Уи к» нли уи+т — — уи(2 — хуи) (Н=О, 1, 2, ...), т.
е. Ны получили итерационный процесс, не содержащий деления. Начальное значение у, выбирается следующим образом. Пусть 1()2 вычисления значений ехнкцнй [гл. ш аргумент х записан в двоичной системе: х = 2 х„ где лг — целое число и — ( х, ( 1. ЛФ ! Тогда полагают (2) Уо = 2 Выясним условия сходимости процесса (1). Из формулы (1) имеем: ! 1 о !а —,— У.=- — — 2У„+хУ„', =х( — „— У.
т) ' (3) отсюда о — — У =х' ' ( — — у,) = — (1 — хУ,)'. х (4) Таким образом, окончательно получаем следу!ощий результат: если (5) 0(хуо(2, то ! !'ш у,= „ л о Заметим, что при нашем выборе уо(2) имеем: ху =2"х, 2 =-х,; поэтому 1 2 ~хуо(1 (6) и, значит, условие (5) выполнено. Кроме того, из формулы (3) вы- водим: Уо "к- (2) (2Уо(2) т.
е. сходнмость итерационного процесса чрезвычайно быстрая, Выведем другую оценку ошибки значения у„, иногда практически более удобную. Г!режде всего, заметим, что последовательные приближения у,, у„ уа ... в данном случае получаются по методу Ньютона, примененному к гиперболе ! х = х — — (х = сола 1) я Для сходимостп процесса (4) необходимо и достаточно, чтобы было выполнено неравенство !! — хуо ~ (1 или 1( ! ХУо(1 103 5 1Ц ВЫЧИСЛЕНИЕ НЕВАТНОЙ ВЕЛИЧИНЫ (рис. 6). Из неравенства (6) и формулы (3) следует, что 0(у,( — (л= — О, 1, 2, ...).
1 Кроме того, так как у — у„=у„(1 — ху„,) = ху„г ~ — — у„,) ) О, (7) г! то последовательные приближения у„монотонно возрастают: уа ~ уз ис ув ~ ° ° Из формулы (7) имеем: ! 1 — — = — (у. — у. ) Хил или так как 1 ху„, ) хуа ~ 2 то — — у„, ( 2 (у„— у„). 1 х Отсюда 1 — „— у„~у у -!. Гнс В. 1 0( — — у <е.
х л П р и м е р. С помощью (1) найти значение функции у =— ! при х=3. я ! Р е ш е н и е. Здесь х = 2' 4 . Полагаем уа = —, тогда У 4 (2 — — ) = — =0,312; 41, 4г' 16 у =0,312(2 — 3 0,312) =0,332 и т. д. ПРоцесс итерации быстро сходитси. Таким образом, если будет обнаружено, что у„— у„,(е, то н истинная погрешность 104 вычисление значений еьнкций 2 12. Вычисление квадратного корня [гл. ш Пусть у=[ х (х)0). Положим Р (х, у) = у' — х = О, тогда Г„(х, у) = 2у. Применяя формулу (4) $10, имеем: у — к р р Ук+1 Ук 2У или Улрт = 2 (Уп+ ук) (2) (п=О, 1, 2, ...) — процесс Герона. Последовательные приближения у, у„у, ..., очевидно, полул чаются по методу Ньютона, примененному к параболе х =у' — х (х = сопз1) (рис.
7). Заметим, что если за Ур принять табличное значение, дающее )у х с относительной погрешностью [6[, тоуы определенное по формуле (2), даст значение Ух приблизительно с относительной погрешностью — 6 . 1 2 Действительно, полагая ур = у' х (1+ 6) и пренебрегая степенями 6, выше З-й, будем иметь; у,= 2 (ур+ — = — 1)' х(1+6)+ т' х(1+6) '[= Ур ) = — ) (1+6+1 — 6+6') ='[Гх (1+ — ) . Отсюда получаем важный вывод: при применении процесса Герона число верных цифр примерно удваивается на каждом этапе по сравнению с первоначалрнын количеством.
Ф 12) 103 вычисление квадг»тного когня Пример 1. Для у= у'2 приближенно имеем: у = 1,4. Уточняя это значение, получаем: уа — — (1,4+ — ) = 0,7+ 0,714 = 1,414. Еще раз повторяя процесс, будем иметь: у = — (1,414 -1- — ) = 0,707 + 0,7072136 = 1,4142136, Выясним условия сходимости процесса Герона. Из формулы (2), заменяя п + 1 на л, при у»ФО имеем: у„— ф' х= (у„„— У х)' У» 1 'Р" 2у Отсюда ул )У» у»-~ — г» (3) Следовательно, .г — »и у,— р» уу,— г»~ У.+У» Ь.+У / я» у„— )/х=2$~"х 1 — ч' (4) где Уе г~» Ч (б) У»+ г' » Из формулы (4) вытекает, что процесс Герона сходится при !()) (1, т. е.