Числова стійкість: відмінності між версіями

[перевірена версія][перевірена версія]
Вилучено вміст Додано вміст
м Lxlalexlxl перейменував сторінку з Обчислювальна стійкість на Числова стійкість
Немає опису редагування
Рядок 1:
В обчислювальній математиці '''обчислювальначислова стійкість''' є зазвичай бажаною властивістю [[Чисельні методи|чисельних алгоритмів]]. Точне визначення стійкості залежить від контексту. Один з них — чисельна лінійна алгебра, інший — алгоритми розв'язування звичайних рівнянь і диференціальних рівнянь у часткових похідних за допомогою дискретного наближення.
 
У чисельній лінійній алгебрі основною проблемою є нестабільності, викликані близькістю до різних особливостей (singularity), таких як дуже малі або майже рівні власні значення. З іншого боку, в чисельних алгоритмах для диференціальних рівнянь проблема полягає в зростанні похибок округлення та/або спочатку невеликих флуктуацій у початкових даних, які можуть призвести до значного відхилення остаточної відповіді від точного розв'язку.
Рядок 20:
== Стійкість у чисельних методах лінійної алгебри ==
Існують різні способи формалізації концепції стійкості. У чисельній лінійній алгебрі використовують такі визначення прямої, зворотної та змішаної стійкості.
[[Файл:Forward_and_backward_error.svg|обрамити|Діаграма, що показує '''пряму похибку''' Δ''y'' і '''зворотну похибку''' Δ''x'', та їх співвідношення з точним розв'язком відображення {{Mvar|f}} і чисельного розв'язку  {{Mvar|f}}*.]]
Розглянемо задачу, що розв'язується чисельним алгоритмом, як функцію {{Mvar|f}}, що відображає дані {{Mvar|x}} у розв'язок {{Mvar|y}}. Результат алгоритму, скажімо, {{Mvar|y*}}, зазвичай буде відхилятися від «істинного» розв'язку {{Mvar|y}}. Основними причинами похибки є [[Округлення|похибки округлення]] і {{Не перекладено|похибка відкидання|похибки відкидання|en|Truncation error}}. '''Пряма похибка''' алгоритму — це різниця між результатом і розв'язком; у цьому випадку {{Math|1=Δ''y'' = ''y''* − ''y''}}. '''Зворотна похибка''' є найменшою Δ{{Mvar|x}} такою, що {{Math|1=''f'' (''x'' + Δ''x'') = ''y''*}}; іншими словами, зворотна похибка каже нам, яку задачу насправді розв'язав алгоритм. Пряма і зворотна похибки пов'язані [[Число обумовленості|числом обумовленості]]: пряма похибка за модулем не більша, ніж число обумовленості, помножене на модуль зворотної похибки.
 
Рядок 33:
Звичайно «малий» — це відносний термін, і його визначення залежить від контексту. Часто ми хочемо, щоб похибка була того ж порядку, або, можливо, на кілька порядків більшою, ніж [[Машинний епсилон|одиниця округлення]].
[[Файл:Mixed_stability_diagram.svg|міні|Змішана стійкість комбінує поняття прямої і зворотної помилки.]]
Звичайне визначення обчислювальноїчислової стійкості використовує загальніше поняття '''змішаної стійкості''', яка об'єднує пряму помхибку і зворотну похибку. Алгоритм у цьому сенсі стійкий, якщо він приблизно розв'язує сусідню задачу, тобто якщо існує таке Δ{{Mvar|x}}, що і Δ{{Mvar|x}} мале, і {{Math|''f'' (''x'' + Δ''x'') − ''y''*}} мале. Отже, зворотно стійкий алгоритм завжди стійкий.
 
* Алгоритм є ''стійким у прямому напрямку'', якщо його пряма похибка, поділена на число обумовленості задачі, мала.
Рядок 47:
 
== Див. також ==
 
* [[Число обумовленості]]
* [[Число з рухомою комою]]
Рядок 53 ⟶ 52:
 
== Примітки ==
{{Примітки}}{{Reflist}}
 
== Література ==