Явні та неявні методи – підходи, використовувані в чисельному аналізі для отримання числових наближень до розв'язків залежних від часу звичайних диференціальних рівнянь та диференціальних рівнянь з частинними похідними, зокрема в комп'ютерному моделюванні фізичних процесів. Явні методи обчислюють стан системи в пізніший момент часу на основі стану системи в поточний момент часу, тоді як неявні методи знаходять розв'язок, розв'язуючи рівняння, що включає як поточний стан системи, так і пізніший. Математично, якщо поточний стан системи та це стан у пізніший час ( є малим часовим кроком), тоді для явного методу
тоді як для неявного методу розв'язується рівняння
щоб знайти
Обчислення Неявні методи вимагають додаткових обчислень (розв'язання наведеного вище рівняння), і їх може бути набагато складніше реалізувати. Тим не менш, неявні методи широко використовують на практиці, оскільки багато задач є жорсткими, і для них використання явного методу вимагає непрактично малих часових кроків , щоб досягти потрібної точності й забезпечити числову стійкість. Для таких задач досягнення заданої точності вимагає набагато меншого обчислювального часу при використанні неявного методу з більшими часовими кроками, навіть враховуючи, що на кожному часовому кроці потрібно розв'язувати рівняння виду (1). Тим не менш, те, чи слід використовувати явний чи неявний метод, залежить від задачі, яку потрібно розв'язати.
Оскільки неявний метод неможливо виконати для кожного виду диференціального оператора, іноді доцільно використовувати так званий метод розщеплення операторів, що означає, що диференціальний оператор переписують як суму двох операторів,
при цьому один опрацьовують явно, а інший неявно. Для типових застосувань неявний член вибирають лінійним, тоді як явний член може бути нелінійним. Такий підхід називають неявно-явним методом (U.M. Ascher, S.J. Ruuth, R.J. Spiteri: Implicit-Explicit Runge-Kutta Methods for Time-Dependent Partial Differential Equations, Appl Numer Math, vol. 25(2-3), 1997L.Pareschi, G.Russo: Implicit-Explicit Runge-Kutta schemes for stiff systems of differential equations, Recent Trends in Numerical Analysis, Vol. 3, 269-289, 2000Sebastiano Boscarino, Lorenzo Pareschi, and Giovanni Russo: Implicit-Explicit Methods for Evolutionary Partial Differential Equations, SIAM, ISBN 978-1-61197-819-3 (2024).).
Ілюстрація з використанням прямого та зворотного методів Ейлера Розгляньмо звичайне диференціальне рівняння
з початковою умовою Розгляньмо сітку для 0 ≤ к ≤ n, тобто часовий крок дорівнює і позначимо для кожного . Дискретизуйми це рівняння, використовуючи найпростіші явні та неявні методи, якими є прямий метод Ейлера та зворотний метод Ейлера (див. чисельні методи розв’язання звичайних диференціальних рівнянь), та порівняймо отримані схеми.
Прямий метод Ейлера
Прямий метод Ейлера
дає
для кожного Це явна формула для .
Зворотний метод Ейлера
За допомогою зворотного методу Ейлера
знаходимо неявний розв'язок
для (можна порівняти це з формулою (3), де було задано явно, а не як невідоме в рівнянні).
Це квадратне рівняння, яке має один від'ємний та один додатний корінь. Вибираємо додатний корінь, оскільки у вихідному рівнянні початкова умова додатна. Тоді на наступному часовому кроці задається як
У переважній більшості випадків рівняння, яке потрібно розв'язати за допомогою неявної схеми, набагато складніше, ніж квадратне рівняння, і аналітичного розв'язку не існує. Тоді для знаходження числового розв'язку використовуються алгоритми знаходження коренів, такі як метод Ньютона.
Метод Кранка-Ніколсон
За методом Кранка-Ніколсон
знаходять неявне рівняння
для (це можна порівняти з формулою (3), де було задано явно, а не як невідоме в рівнянні). Таке рівняння можна чисельно розв'язати за допомогою алгоритмів знаходження коренів, таких як метод Ньютона, й отримати .
Метод Кранка-Ніколсон може розглядатися як форма більш загальних неявно-явних схем (IMEX).
Прямо-зворотний метод Ейлера
Щоб застосувати неявно-явну схему, розгляньмо дещо інше диференціальне рівняння:
Можна записати, що
і тоді
для кожного
Примітки