7.1: Похідні
- Page ID
- 79615
Припустимо, ми дискретизували функцію однієї змінної, отримавши набір,\(\psi_n \equiv \psi(x_n)\) як описано вище. Для простоти припустимо, що точки дискретизації розташовані рівномірно і розташовані в порядку зростання (це найпростіша і поширена схема дискретизації). Відстань між точками визначається як
\[h \equiv x_{n+1} - x_n.\]
Обговоримо, яким чином похідні першого і вищого порядку\(\psi(x)\) можуть бути представлені при дискретизації.
7.1.1 Перша похідна
Найбільш простим поданням першої похідної є формула різниці вперед:
\[\psi'(x_n) \approx \frac{\psi_{n+1} - \psi_n}{h}\]
Це надихається звичайним визначенням похідної функції, і наближається до істинної похідної як\(h \rightarrow 0\). Однак це не дуже гарне наближення. Щоб зрозуміти чому, розберемо похибку в формулі, яка визначається як абсолютне значення різниці між формулою і точним значенням похідної:
\[\mathcal{E} = \left|\psi'(x_n) - \frac{\psi_{n+1} - \psi_n}{h}\right|\]
Ми можемо розширити\(\psi_{n+1}\) в серії Тейлора навколо\(x_{n}\):
\[\psi_{n+1} = \psi_n + h\, \psi'(x_n) + \frac{h^2}{2}\psi''(x_n) + \frac{h^3}{6}\psi'''(x_n) + O(h^4) \]
Підключивши це до формули помилки, ми виявимо, що помилка зменшується лінійно з інтервалом:
\[\mathcal{E} = \left| \frac{h}{2}\psi''(x_n) + O(h^2)\right| \sim O(h).\]
Є краща альтернатива, звана формулою середньої точки. Це наближає першу похідну шляхом вибірки точок ліворуч і праворуч від потрібної позиції:
\[\psi'(x_n) \approx \frac{\psi_{n+1} - \psi_{n-1}}{2h}.\]
Щоб зрозуміти, чому це краще, запишемо серію Тейлора для\(\psi_{n\pm1}\):
\[\psi_{n+1} = \psi_n \,+\, h\, \psi'(x_n) \,+\, \frac{h^2}{2}\psi''(x_n) \,+\, \frac{h^3}{6}\psi'''(x_n) \,+\, \frac{h^4}{24}\psi''''(x_n) + O(h^5) \]
\[\psi_{n-1} = \psi_n \,-\, h\, \psi'(x_n) \,+\, \frac{h^2}{2}\psi''(x_n) \,-\, \frac{h^3}{6}\psi'''(x_n) \,+\, \frac{h^4}{24}\psi''''(x_n) \,+\, O(h^5) \]
Зверніть увагу, що два ряди мають однакові терміни, що включають парні повноваження\(h\), тоді як терміни, що включають непарні повноваження\(h\) мають протилежні ознаки. Отже, якщо відняти другий ряд з першого, то результат буде
\[\psi_{n+1} - \psi_{n-1} = 2 h\, \psi'(x_n) + 2 \frac{h^3}{6}\psi'''(x_n) + O(h^5) \]
Оскільки\(O(h^{2})\) умови рівні в двох рядах, вони скасовуються під відніманням, і виживають лише\(O(h^{3})\) і вищі терміни. Після перестановки вищевказаного рівняння отримуємо
\[\psi'(x_n) = \frac{\psi_{n+1} - \psi_{n-1}}{2 h} + O(h^2).\]
Отже, похибка формули середньої точки масштабується як\(O(h^2)\), що є хорошим поліпшенням порівняно з\(O(h)\) похибкою формули різниці вперед. Що особливо приємно, так це те, що формула середньої точки вимагає такої ж кількості арифметичних операцій для обчислення, як формула різниці вперед, так що це безкоштовний обід!
Можна придумати кращі формули наближення для першої похідної, включивши терміни за участю\(\psi_{n\pm 2}\) тощо, з метою скасування\(O(h^{3})\) або вищих термінів у серії Тейлора. Однак для більшості практичних цілей достатньо правила середньої точки.
7.1.2 Друга похідна
Дискретизацію другої похідної теж легко розібратися. Ми знову записуємо серіал Тейлора для\(\psi_{n\pm1}\):
\[\psi_{n+1} = \psi_n \,+\, h\, \psi'(x_n) \,+\, \frac{h^2}{2}\psi''(x_n) \,+\, \frac{h^3}{6}\psi'''(x_n) \,+\, \frac{h^4}{24}\psi''''(x_n) \,+\, O(h^5) \]
\[\psi_{n-1} = \psi_n \,-\, h\, \psi'(x_n) \,+\, \frac{h^2}{2}\psi''(x_n) \,-\, \frac{h^3}{6}\psi'''(x_n) \,+\, \frac{h^4}{24}\psi''''(x_n) \,+\, O(h^5) \]
Коли ми додаємо два ряди разом, терміни, що включають непарні повноваження\(h\) скасування, і результат
\[\psi_{n+1} + \psi_{n-1} = 2\psi_n + h^2 \psi''(x_n) + \frac{h^4}{12}\psi''''(x_n) + O(h^5).\]
Незначна перестановка рівняння потім дає
\[\psi''(x_n) \approx \frac{\psi_{n+1} - 2\psi_n + \psi_{n-1}}{h^2} + O(h^2).\]
Це називається триточковим правилом для другої похідної, оскільки воно передбачає значення функції в трьох точках\(x_{n+1}\)\(x_{n}\), і\(x_{n-1}\).