Журнал вычислительной математики и математической физики, 2021, T. 61, № 2, стр. 179-188
Неполиномиальная интерполяция функций с большими градиентами и ее применение
А. И. Задорин 1, *, Н. А. Задорин 1, **
1 Ин-т матем. СО РАН
630090 Новосибирск, пр-т Акад. Коптюга, 4, Россия
* E-mail: zadorin@ofim.oscsbras.ru
** E-mail: nik-zadorin@yandex.ru
Поступила в редакцию 02.06.2020
После доработки 20.08.2020
Принята к публикации 16.09.2020
Аннотация
Исследуется вопрос интерполяции функции одной переменной с большими градиентами в области пограничного слоя. Проблема в том, что применение классических полиномиальных интерполяционных формул на равномерной сетке к функциям с большими градиентами может приводить к погрешностям порядка $O(1)$, несмотря на малость шага сетки. Исследована интерполяционная формула, построенная на основе подгонки к составляющей, задающей погранслойный рост функции. Получена оценка погрешности, зависящая от числа узлов интерполяции и равномерная по погранслойной составляющей и ее производным. Показано, как построенная интерполяционная формула может быть применена для построения формул численного дифференцирования и интегрирования, в двумерном случае. Получены соответствующие оценки погрешности. Библ. 21. Табл. 2.
1. ВВЕДЕНИЕ
Многочлен Лагранжа широко используется для интерполяции функций. Однако в случае функций с большими градиентами применение интерполяции Лагранжа может приводить к погрешностям порядка O(1) (см. [1]). Следовательно, актуален вопрос построения интерполяционных формул для функций с большими градиентами в пограничном слое. Интерполяционная формула должна строиться таким образом, чтобы ее погрешность была равномерной по резким изменениям функции в пограничном слое. Для построения таких формул можно выделить два подхода: применение интерполяции Лагранжа на сетке, сгущающейся в области пограничного слоя и построение специальных интерполяционных формул, основанных на подгонке к погранслойной составляющей функции.
Формула линейной интерполяции при наличии экспоненциального пограничного слоя на сетках Г.И. Шишкина (см. [2]) и Н.С. Бахвалова (см. [3]) исследовалась в [4]. В [5] доказано, что в случае экспоненциального пограничного слоя многочлен Лагранжа можно применять на сетке Шишкина. Для многочлена Лагранжа с произвольно заданным числом узлов интерполяции получены оценки погрешности, равномерные по малому параметру.
Подход, основанный на подгонке интерполяционной формулы к быстро растущей составляющей, менее исследован. В [6] рассмотрен вопрос интерполяции функции, представимой в виде
где функция $u(x)$ является достаточно гладкой, погранслойная составляющая $\Phi (x)$ известна и имеет большие градиенты на интервале $[a,b]$, регулярная составляющая $p(x)$ ограничена вместе с производными до некоторого порядка, постоянная $\gamma $ не задана. В частности, декомпозиция (1.1) строилась в [7] для решения сингулярно возмущенной краевой задачи, при этом(1.2)
$\Phi (x) = {{e}^{{ - mx/\varepsilon }}},\quad x \in [0,1],\quad m > 0,\quad \varepsilon \in (0,1].$В [6] построена интерполяционная формула на произвольном сеточном интервале $[{{x}_{{n - 1}}},{{x}_{n}}]$ с двумя узлами интерполяции ${{x}_{{n - 1}}}$ и ${{x}_{n}}$, точная на составляющей $\Phi (x).$ Доказано, что если $\Phi {\kern 1pt} '(x) \ne 0,$ то погрешность построенной формулы порядка $O(h)$ равномерна по составляющей $\Phi (x).$ Здесь $h$ – шаг сетки.
В [8] для функции вида (1.1) построена интерполяционная формула с произвольно заданным числом узлов интерполяции, точная на составляющей $\Phi (x)$. Однако в [8] нет оценки погрешности, равномерной по погранслойной составляющей $\Phi (x).$
В данной работе получим оценку погрешности интерполяционной формулы из [8] с $k$ узлами интерполяции. Рассмотрим применение этой формулы для построения формул численного дифференцирования и интегрирования, а также в двумерном случае.
2. АНАЛИЗ ИНТЕРПОЛЯЦИОННОЙ ФОРМУЛЫ
Пусть ${{\Omega }^{h}}$ – равномерная сетка интервала $[a,b]$:
Пусть ${{L}_{n}}(u,x)$ – многочлен Лагранжа для функции $u(x)$ с узлами интерполяции ${{x}_{1}}, \ldots ,{{x}_{n}}.$ Покажем, что применение многочлена Лагранжа к функции вида (1.1) может приводить к значительным погрешностям. Для этого зададим $u(x) = {{e}^{{ - x/\varepsilon }}}$ при $x \in [0,1].$ Пусть $\varepsilon = h,$ тогда при интерполяции на интервале $[0,h]$ выполнится ${{L}_{2}}(u,h{\text{/}}2) - u(h{\text{/}}2) \approx 0.075.$ Итак, точность интерполяции не повышается с уменьшением шага $h,$ если $\varepsilon = h$.
В [8] для интерполяции функции вида (1.1) построена интерполяционная формула
(2.1)
${{L}_{{\Phi ,k}}}(u,x) = {{L}_{{k - 1}}}(u,x) + \frac{{[{{x}_{1}}, \ldots ,{{x}_{k}}]u}}{{[{{x}_{1}}, \ldots ,{{x}_{k}}]\Phi }}[\Phi (x) - {{L}_{{k - 1}}}(\Phi ,x)],$Пусть
Тогда знаменатель в (2.1) не обращается в нуль и формула задана корректно.Покажем, что формула (2.1) является интерполяционной. Преобразуем формулу (2.1). В соответствии с [9], справедливо соотношение
(2.3)
${{L}_{k}}(u,x) = {{L}_{{k - 1}}}(u,x) + {{r}_{{k - 1}}}(x)[{{x}_{1}},{{x}_{2}}, \ldots ,{{x}_{k}}]u,$(2.4)
${{L}_{{\Phi ,k}}}(u,x) = {{L}_{k}}(u,x) + \frac{{[{{x}_{1}}, \ldots ,{{x}_{k}}]u}}{{[{{x}_{1}}, \ldots ,{{x}_{k}}]\Phi }}[\Phi (x) - {{L}_{k}}(\Phi ,x)].$Учитывая, что, согласно [9, с. 44],
(2.5)
$\Phi (x) - {{L}_{{k - 1}}}(\Phi ,x) = {{r}_{{k - 1}}}(x)[{{x}_{1}},{{x}_{2}}, \ldots ,{{x}_{{k - 1}}},x]\Phi $(2.6)
$u(x) - {{L}_{k}}(u,x) = \frac{{{{u}^{{(k)}}}(s)}}{{k!}}{{r}_{k}}(x),\quad \exists s \in (a,b),$Лемма 1. Пусть выполнено условие (2.2),
(2.7)
${{M}_{k}}(\Phi ,x) = \frac{{\Phi (x) - {{L}_{{k - 1}}}(\Phi ,x)}}{{\Phi ({{x}_{k}}) - {{L}_{{k - 1}}}(\Phi ,{{x}_{k}})}}.$(2.8)
$\mathop {max}\limits_x \left| {{{L}_{{\Phi ,k}}}(u,x) - u(x)} \right| \leqslant \mathop {max}\limits_x \left| {{{L}_{{k - 1}}}(p,x) - p(x)} \right|(1 + \mathop {max}\limits_x \left| {{{M}_{k}}(\Phi ,x)} \right|).$Доказательство. Интерполяционная формула (2.1) точна на составляющей $\Phi (x),$ поэтому
Учитывая (2.5), получаем
(2.9)
${{L}_{{\Phi ,k}}}(u,x) - u(x) = [{{L}_{{k - 1}}}(p,x) - p(x)] - [{{L}_{{k - 1}}}(p,{{x}_{k}}) - p({{x}_{k}})]{{M}_{k}}(\Phi ,x),$Следствие 1. Учитывая (2.6), из (2.8) получаем
Лемма 2. Пусть
(2.10)
${{\Phi }^{{(k - 1)}}}(x) \ne 0,\quad {{\Phi }^{{(k)}}}(x) \ne 0,\quad k \geqslant 2,\quad x \in (a,b).$(2.11)
$\mathop {max}\limits_x \left| {{{L}_{{\Phi ,k}}}(u,x) - u(x)} \right| \leqslant 2\mathop {max}\limits_x \left| {{{L}_{{k - 1}}}(p,x) - p(x)} \right|,\quad x \in [a,b].$Доказательство. Рассмотрим случай, когда производные ${{\Phi }^{{(k - 1)}}}(x),\;{{\Phi }^{{(k)}}}(x)$ одного знака:
илиОстановимся на условиях (2.12), условия (2.13) рассматриваются аналогично. Учитывая (2.5) и (2.7), получаем
(2.14)
${{M}_{k}}(\Phi ,x) = \frac{{{{r}_{{k - 1}}}(x)[{{x}_{1}},{{x}_{2}}, \ldots ,{{x}_{{k - 1}}},x]\Phi }}{{{{r}_{{k - 1}}}({{x}_{k}})[{{x}_{1}},{{x}_{2}}, \ldots ,{{x}_{{k - 1}}},{{x}_{k}}]\Phi }}.$В соответствии с [9] для некоторого $s \in (a,b)$
(2.15)
$[{{x}_{1}},{{x}_{2}}, \ldots ,{{x}_{{k - 1}}},x]\Phi = {{\Phi }^{{(k - 1)}}}(s){\text{/}}(k - 1)!.$Остановимся на случае, когда производные ${{\Phi }^{{(k - 1)}}}(x)$ и ${{\Phi }^{{(k)}}}(x)$ разных знаков. Представление (1.1) для $u(x)$ может быть записано в виде
Зададим ${v}(x) = u(a + b - x),\;\Psi (x) = \Phi (a + b - x).$ Тогда (2.17) принимает видПусть $k$ четно. Тогда
(2.18)
$\left| {{{L}_{{\Psi ,k}}}(v,a + b - x) - v(a + b - x)} \right| \leqslant 2\mathop {max}\limits_s \left| {{{L}_{{k - 1}}}(p,s) - p(s)} \right|,\quad x,s \in [a,b].$Случай нечетного $k$ рассматривается аналогично. Лемма доказана.
В соответствии с леммой 2 при ограничениях (2.10) оценка погрешности построенной интерполяционной формулы (2.1) сведена к оценке погрешности интерполяции многочленом Лагранжа ${{L}_{{k - 1}}}(p,x)$ на регулярной составляющей $p(x).$ Для оценки погрешности интерполяции многочленом Лагранжа ${{L}_{{k - 1}}}(p,x)$ известны оценки через $max\left| {{{p}^{{(k - 1)}}}(x)} \right|$ и в интегральной форме.
С учетом известной оценки прогрешности интерполяции многочленом Лагранжа на равномерной сетке (см. [9]):
(2.19)
$\left| {{{L}_{k}}(p,x) - p(x)} \right| \leqslant \mathop {max}\limits_s \left| {{{p}^{{(k)}}}(s)} \right|{{h}^{k}},\quad x \in [a,b],$(2.20)
$\mathop {max}\limits_x \left| {{{L}_{{\Phi ,k}}}(u,x) - u(x)} \right| \leqslant 2\mathop {max}\limits_x \left| {{{p}^{{(k - 1)}}}(x)} \right|{{h}^{{k - 1}}},\quad x \in [a,b].$Для отдельных значений $k$ можно выписать оценку погрешности интерполяции многочленом Лагранжа в интегральной форме. Например,
(2.21)
$\left| {{{L}_{2}}(p,x) - p(x)} \right| \leqslant h\int\limits_a^b \left| {p{\kern 1pt} '{\kern 1pt} '(s)} \right|ds,\quad x \in [a,b].$Замечание 1. Условия (2.10) выполнены для пограничных слоев следующих видов:
экспоненциального пограничного слоя, когда $\Phi (x)$ соответствует (1.2);
степенного пограничного слоя, $\Phi (x) = {{(x + \varepsilon )}^{\alpha }},$ $0 < \alpha < 1,$ $x > 0,$ $\varepsilon > 0;$
слоя с логарифмической особенностью, $\Phi (x) = lnx,$ $x \geqslant \varepsilon > 0.$
3. ПОСТРОЕНИЕ КВАДРАТУРНОЙ ФОРМУЛЫ ДЛЯ ФУНКЦИИ С БОЛЬШИМИ ГРАДИЕНТАМИ
Рассмотрим вопрос численного интегрирования функции вида (1.1). В [10], [11] показано, что применение составной квадратурной формулы Ньютона–Котеса при наличии экспоненциального пограничного слоя при достаточно малых значениях параметра $\varepsilon $ приводит к погрешностям порядка $O(h),$ несмотря на увеличение числа узлов базовой квадратурной формулы. Например, составная формула Симпсона при $\varepsilon = 1$ имеет погрешность порядка $O({{h}^{4}})$, а при $\varepsilon \leqslant h$ погрешность становится порядка $O(h).$
Таким образом, в случае равномерной сетки неприемлемо применять формулы Ньютона–Котеса для численного интегрирования функций вида (1.1). В [10]–[12] обоснованы аналоги формул Ньютона–Котеса с числом узлов от двух до пяти, построенные на основе замены подынтегральной функции $u(x)$ интерполянтом (2.1) вместо многочлена Лагранжа. В этих работах доказано, что построенные составные квадратурные формулы обладают погрешностью порядка $O({{h}^{{k - 1}}})$ равномерно по составляющей $\Phi (x)$ и ее производным, где $k$ – число узлов базовой квадратурной формулы. При оценке погрешности накладывается ограничение ${{\Phi }^{{(k - 1)}}}(x) \ne 0$ на каждом интервале с $k$ узлами, на котором строится базовая квадратурная формула. Это условие выполнено для всех функций из замечания 1. Доказано, что если выделить область пограничного слоя и вне этой области строить формулы Ньютона–Котеса, то точность составной квадратурной формулы повышается на порядок и при этом погрешность становится такой же, как в регулярном случае, когда интегрируемая функция имеет ограниченные производные.
В [13] на основе интерполянта (2.1) построен и обоснован аналог формулы Ньютона–Котеса в общем случае, когда квадратурная формула содержит $k$ узлов. При обосновании оценки погрешности потребовались ограничения на знак остаточного члена квадратурной формулы в случае функции $\Phi (x).$ Выполнение требуемых ограничений можно проверить для отдельных значений $k$ на основе задаваемых в ряде работ таблиц, в которых указан вид остаточного члена квадратурной формулы.
Полученные оценки погрешности интерполяции (2.11), (2.20) можно применить для оценивания погрешности квадратурной формулы, построенной в [13]. При этом накладываемые ограничения (2.10) имеют более простой для проверки вид, чем ограничения в [13].
Итак, применяем интерполяционную формулу в виде (2.4) для построения квадратурной формулы с $k$ узлами:
Учитывая (2.4), полученную квадратурную формулу можно записать в видеЛемма 3. Пусть выполнены условия (2.10). Тогда
4. ФОРМУЛЫ ЧИСЛЕННОГО ДИФФЕРЕНЦИРОВАНИЯ
Покажем необходимость построения специальных формул численного дифференцирования в случае функций с большими градиентами. Рассмотрим классическую формулу
Известно, что классические разностные формулы для производных, построенные дифференцированием многочлена Лагранжа, можно применять на сетках, сгущающихся в области пограничного слоя. В [14]–[17] на сетках Шишкина и Бахвалова получены оценки относительной погрешности, равномерные по параметру $\varepsilon .$
Построение специальных формул численного дифференцирования функций с большими градиентами на равномерной сетке менее исследовано.
Интерполяционную формулу (2.1) можно применить для построения формул численного дифференцирования. Дифференцируя интерполянт (2.1), получаем
(4.1)
${{u}^{{(j)}}}(x) \approx L_{{\Phi ,k}}^{{(j)}}(u,x) = L_{{k - 1}}^{{(j)}}(u,x) + \frac{{[{{x}_{1}}, \ldots ,{{x}_{k}}]u}}{{[{{x}_{1}}, \ldots ,{{x}_{k}}]\Phi }}[{{\Phi }^{{(j)}}}(x) - L_{{k - 1}}^{{(j)}}(\Phi ,x)],\quad x \in [{{x}_{1}},{{x}_{k}}].$В случае погранслойной составляющей $\Phi (x)$ общего вида оценки относительной погрешности при вычислении первой производной при $k = 2,3$ и второй производной при $k = 3$ были получены в [19]. Для пояснения остановимся на случае вычисления первой производной по формуле
Лемма 4. Предположим, что
(4.2)
$\left| {\frac{{L_{{\Phi ,2}}^{'}(u,x) - u{\kern 1pt} '(x)}}{{{{B}_{n}}}}} \right| \leqslant {{G}_{n}}\int\limits_{{{x}_{{n - 1}}}}^{{{x}_{n}}} \,\left| {p{\kern 1pt} '(s)} \right|ds + \frac{1}{{{{B}_{n}}}}\int\limits_{{{x}_{{n - 1}}}}^{{{x}_{n}}} \,\left| {p{\kern 1pt} '{\kern 1pt} '(s)} \right|ds,\quad x \in [{{x}_{{n - 1}}},{{x}_{n}}].$В случае, когда $\Phi (x)$ соответствует (1.2), выполнится ${{B}_{n}} = m{\text{/}}\varepsilon ,$ ${{G}_{n}} = 1$. Тогда из (4.2) получаем
(4.3)
$\varepsilon \left| {L_{{\Phi ,2}}^{'}(u,x) - u{\kern 1pt} '(x)} \right| \leqslant \int\limits_{{{x}_{{n - 1}}}}^{{{x}_{n}}} \,\left[ {\left| {p{\kern 1pt} '(s)} \right| + \frac{\varepsilon }{m}\left| {p{\kern 1pt} '{\kern 1pt} '(s)} \right|} \right]ds,\quad x \in [{{x}_{{n - 1}}},{{x}_{n}}].$Аналогично можно воспользоваться леммой 4 для оценивания погрешности в случае другой функции $\Phi (x),$ например, из замечания 1.
5. ДВУМЕРНАЯ ИНТЕРПОЛЯЦИОННАЯ ФОРМУЛА
Исследуем формулу для интерполяции функции двух переменных с большими градиентами. Эта формула является обобщением формулы (2.1) и для получения оценки погрешности будет использована лемма 2.
Итак, пусть для достаточно гладкой функции $u(x,y)$ справедливо представление
(5.1)
$u(x,y) = p(x,y) + {{d}_{1}}(y)\Phi (x) + {{d}_{2}}(x)\Theta (y) + {{d}_{3}}\Phi (x)\Theta (y),$Рассмотрим сингулярно возмущенную задачу для эллиптического уравнения
(5.2)
$\begin{gathered} \varepsilon {{u}_{{xx}}} + \varepsilon {{u}_{{yy}}} + a(x){{u}_{x}} + b(y){{u}_{y}} - c(x,y)u = f(x,y),\quad (x,y) \in \Omega ; \\ u(x,y) = g(x,y),\quad (x,y) \in \Gamma , \\ \end{gathered} $Зададим сетку ${{\Omega }^{h}} = \Omega _{x}^{{{{h}_{1}}}} \times \Omega _{y}^{{{{h}_{2}}}}$ в исходной области $\bar {\Omega }:$
Сначала при заданном значении $y$ в соответствии с (2.1) зададим интерполяцию по $x:$
(5.3)
${{L}_{x}}(u,x,y) = {{L}_{{{{k}_{1}} - 1}}}(u,x,y) + \frac{{[{{x}_{1}},{{x}_{2}}, \ldots ,{{x}_{{{{k}_{1}}}}}]u}}{{[{{x}_{1}},{{x}_{2}}, \ldots ,{{x}_{{{{k}_{1}}}}}]\Phi }}[\Phi (x) - {{L}_{{{{k}_{1}} - 1}}}(\Phi ,x)].$По аналогии с (5.3) зададим интерполяционную формулу по $y$:
(5.4)
${{L}_{y}}(u,x,y) = {{L}_{{{{k}_{2}} - 1}}}(u,x,y) + \frac{{[{{y}_{1}},{{y}_{2}}, \ldots ,{{y}_{{{{k}_{2}}}}}]u}}{{[{{y}_{1}},{{y}_{2}}, \ldots ,{{y}_{{{{k}_{2}}}}}]\Theta }}[\Theta (y) - {{L}_{{{{k}_{2}} - 1}}}(\Theta ,y)].$Используя (5.4), после интерполяции по $x$ осуществляем интерполяцию по $y$:
(5.5)
${{L}_{{\Phi ,\Theta ,{{k}_{1}},{{k}_{2}}}}}(u,x,y) = {{L}_{{{{k}_{2}} - 1}}}({{L}_{x}}(u,x,y),x,y) + \frac{{[{{y}_{1}},{{y}_{2}}, \ldots ,{{y}_{{{{k}_{2}}}}}]{{L}_{x}}(u,x,y)}}{{[{{y}_{1}},{{y}_{2}}, \ldots ,{{y}_{{{{k}_{2}}}}}]\Theta }}[\Theta (y) - {{L}_{{{{k}_{2}} - 1}}}(\Theta ,y)].$Формула (5.3)–(5.5) задана корректно, если знаменатель в (5.3) и (5.5) не обращается в нуль. В соответствии с соотношением (2.15) это условие выполняется, если
(5.6)
${{\Phi }^{{({{k}_{1}} - 1)}}}(x) \ne 0,\quad x \in (a,b),\quad {{\Theta }^{{({{k}_{2}} - 1)}}}(y) \ne 0,\quad y \in (c,d).$Формула (5.3)–(5.5) исследовалась в [21], где доказана следующая лемма.
Лемма 5. Пусть выполнены условия (5.6). Тогда для некоторой постоянной $C$, не зависящей от функций $\Phi (x),$ $\Theta (y)$ и их производных, справедлива оценка погрешности
(5.7)
$\left| {u(x,y) - {{L}_{{\Phi ,\Theta ,{{k}_{1}},{{k}_{2}}}}}(u,x,y)} \right| \leqslant C(1 + \mathop {max}\limits_x \left| {{{M}_{{{{k}_{1}}}}}(\Phi ,x)} \right|)(1 + \mathop {max}\limits_y \left| {{{M}_{{{{k}_{2}}}}}(\Theta ,y)} \right|)[h_{1}^{{{{k}_{1}} - 1}} + h_{2}^{{{{k}_{2}} - 1}}],$Оценка погрешности (5.7) зависит от погранслойных составляющих $\Phi (x),$ $\Theta (y).$ Улучшим эту оценку.
Лемма 6. Пусть
(5.8)
${{\Phi }^{{({{k}_{1}} - 1)}}}(x) \ne 0,\quad {{\Phi }^{{({{k}_{1}})}}}(x) \ne 0,\quad {{k}_{1}} \geqslant 2,\quad x \in (a,b),$(5.9)
${{\Theta }^{{({{k}_{2}} - 1)}}}(y) \ne 0,\quad {{\Theta }^{{({{k}_{2}})}}}(y) \ne 0,\quad {{k}_{2}} \geqslant 2,\quad y \in (c,d).$(5.10)
$\left| {u(x,y) - {{L}_{{\Phi ,\Theta ,{{k}_{1}},{{k}_{2}}}}}(u,x,y)} \right| \leqslant 4C[h_{1}^{{{{k}_{1}} - 1}} + h_{2}^{{{{k}_{2}} - 1}}],\quad x \in [a,b],\quad y \in [c,d].$Доказательство. По аналогии с леммой 2, где обоснована оценка (2.16) при выполнении условий (2.10), получаем, что при выполнении условий (5.8) и (5.9) справедливы оценки
Замечание 2. Если исходную область $[a,b] \times [c,d]$ разбить на непересекающиеся прямоугольные ячейки с ${{k}_{1}}$ узлами по $x$ и ${{k}_{2}}$ узлами по $y,$ то при интерполяции функции $u(x,y)$ можно применить интерполяционную формулу (5.3)–(5.5) в каждой ячейке. Если ячейка не пересекается с областью больших градиентов функции $u(x,y),$ то в ней можно применять классические интерполяционные формулы, основанные на многочленах Лагранжа.
6. РЕЗУЛЬТАТЫ ВЫЧИСЛИТЕЛЬНЫХ ЭКСПЕРИМЕНТОВ
Рассмотрим функцию вида (1.1):
При этом $\Phi (x) = {{e}^{{ - x/\varepsilon }}}.$ Предполагаем, что число сеточных интервалов $N$ четно и разобьем интервал $[0,1]$ на непересекающиеся интервалы вида $[{{x}_{{n - 1}}},{{x}_{{n + 1}}}],$ где $n = 1,3, \ldots ,N - 1.$ На каждом таком интервале зададим интерполяционную формулу (2.1) при $k = 3$:В табл. 1 приведена погрешность интерполяции ${{\Delta }_{{\varepsilon ,N}}}$ многочленом Лагранжа ${{L}_{3}}(u,x)$ в зависимости от $\varepsilon $ и $N.$ При малых значениях $\varepsilon $ погрешность не убывает при уменьшении шага сетки. Это подтверждает неприемлемость применения для интерполяции многочлена Лагранжа на равномерной сетке при наличии пограничного слоя.
Таблица 1.
Погрешность интерполяции многочленом Лагранжа ${{L}_{3}}(u,x)$
$\varepsilon $ | $N$ | |||||
---|---|---|---|---|---|---|
$3 \times {{2}^{3}}$ | $3 \times {{2}^{4}}$ | $3 \times {{2}^{5}}$ | $3 \times {{2}^{6}}$ | $3 \times {{2}^{7}}$ | $3 \times {{2}^{8}}$ | |
1 | $1.36e - 4$ | $1.72e - 5$ | $2.15e - 6$ | $2.68e - 7$ | $3.36e - 8$ | $4.19e - 9$ |
${{10}^{{ - 1}}}$ | $3.15e - 3$ | $4.71e - 4$ | $6.45e - 5$ | $8.43e - 6$ | $1.08e - 6$ | $1.36e - 7$ |
${{10}^{{ - 2}}}$ | $2.62e - 1$ | $1.14e - 1$ | $3.00e - 2$ | $5.68e - 3$ | $8.82e - 4$ | $1.23e - 4$ |
${{10}^{{ - 3}}}$ | $3.75e - 1$ | $3.75e - 1$ | $3.70e - 1$ | $3.05e - 1$ | $1.58e - 1$ | $4.82e - 2$ |
${{10}^{{ - 4}}}$ | $3.75e - 1$ | $3.75e - 1$ | $3.75e - 1$ | $3.75e - 1$ | $3.75e - 1$ | $3.74e - 1$ |
Примечание. Здесь и в табл. 2 $e - m$ обозначает ${{10}^{{ - m}}}.$
В табл. 2 аналогичным образом представлена погрешность интерполянта ${{L}_{{\Phi ,3}}}(u,x)$ и вычисленный порядок точности ${{M}_{{\varepsilon ,N}}} = lo{{g}_{2}}({{\Delta }_{{\varepsilon ,N}}}{\text{/}}{{\Delta }_{{\varepsilon ,2N}}}).$ Из табл. 2 следует, что порядок точности интерполяционной формулы понижается с 3 до 2 при уменьшении $\varepsilon $, результаты вычислений согласуются с оценкой (2.20) при $k = 3.$
Таблица 2.
Погрешность и вычисленный порядок точности интерполянта ${{L}_{{\Phi ,3}}}(u,x)$
$\varepsilon $ | $N$ | |||||
---|---|---|---|---|---|---|
$3 \times {{2}^{3}}$ | $3 \times {{2}^{4}}$ | $3 \times {{2}^{5}}$ | $3 \times {{2}^{6}}$ | $3 \times {{2}^{7}}$ | $3 \times {{2}^{8}}$ | |
1 | $1.47e - 4$ | $1.84e - 5$ | $2.30e - 6$ | $2.87e - 7$ | $3.59e - 8$ | $4.49e - 9$ |
3.0 | 3.0 | 3.0 | 3.0 | 3.0 | ||
${{10}^{{ - 1}}}$ | $4.87e - 4$ | $6.00e - 5$ | $7.40e - 6$ | $9.19e - 7$ | $1.15e - 7$ | $1.43e - 8$ |
3.0 | 3.0 | 3.0 | 3.0 | 3.0 | ||
${{10}^{{ - 2}}}$ | $4.61e - 3$ | $6.34e - 4$ | $7.69e - 5$ | $9.23e - 6$ | $1.12e - 6$ | $1.38e - 7$ |
2.9 | 3.0 | 3.0 | 3.0 | 3.0 | ||
${{10}^{{ - 3}}}$ | $6.38e - 3$ | $1.60e - 3$ | $3.96e - 4$ | $8.26e - 5$ | $1.23e - 5$ | $1.52e - 6$ |
2.0 | 2.0 | 2.3 | 2.7 | 3.0 | ||
${{10}^{{ - 4}}}$ | $6.38e - 3$ | $1.60e - 3$ | $4.01e - 4$ | $1.00e - 4$ | $2.51e - 5$ | $6.25e - 6$ |
2.0 | 2.0 | 2.0 | 2.0 | 2.0 | ||
${{10}^{{ - 5}}}$ | $6.38e - 3$ | $1.60e - 3$ | $4.01e - 4$ | $1.00e - 4$ | $2.51e - 5$ | $6.27e - 6$ |
2.0 | 2.0 | 2.0 | 2.0 | 2.0 |
Другие результаты вычислений по всем исследуемым вопросам содержатся в публикациях авторов, приведенных в списке литературы настоящей статьи, и согласуются с полученными в данной работе оценками погрешностей.
7. ЗАКЛЮЧЕНИЕ
Исследована неполиномиальная интерполяционная формула для функции одной переменной с большими градиентами в области пограничного слоя. Формула построена так, чтобы она была точной на погранслойной составляющей, отвечающей за рост функции в пограничном слое. Доказано, что при достаточно легко проверяемых ограничениях, которые выполнены в случаях экспоненциального и степенного пограничных слоев, при наличии логарифмической особенности построенная интерполяционная формула обладает погрешностью, равномерной по погранслойной составляющей и ее производным. Показано, как исследуемая интерполяционная формула может быть применена для построения формул численного интегрирования и дифференцирования, а также в двумерном случае. Получены соответствующие оценки погрешности.
Список литературы
Задорин А.И. Метод интерполяции для задачи с пограничным слоем // Сиб. ж. вычисл. матем. 2007. Т. 10. № 3. С. 267–275.
Шишкин Г.И. Сеточные аппроксимации сингулярно возмущенных эллиптических и параболических уравнений. Екатеринбург: УрО РАН, 1992.
Бахвалов Н.С. К оптимизации методов решения краевых задач при наличии пограничного слоя // Ж. вычисл. матем. и матем. физ. 1969. Т. 9. № 4. С. 841–859.
Linβ T. Layer-Adapted Meshes for Reaction-Convection-Diffusion Problems. Berlin: Springer-Verlag, 2010.
Задорин А.И. Интерполяция Лагранжа и формулы Ньютона–Котеса для функций с погранслойной составляющей на кусочно-равномерных сетках // Сиб. ж. вычисл. матем. 2015. Т. 18. № 3. С. 289–303.
Zadorin A.I. Interpolation method for a function with a singular component // Lect. Notes in Comput Sci. 2009. V. 5434. P. 612–619.
Kellogg R.B., Tsan A. Analysis of some difference approximations for a singular perturbation problems without turning points // Math. Comput. 1978. V. 32. P. 1025–1039.
Zadorin A.I., Zadorin N.A. Interpolation formula for functions with a boundary layer component and its application to derivatives calculation // Sib. Electronic Math. Reports. 2012. V. 9. P. 445–455.
Бахвалов Н.С., Жидков Н.П., Кобельков Г.М. Численные методы. М.: Наука, 1987.
Задорин А.И., Задорин Н.А. Квадратурные формулы для функций с погранслойной составляющей // Ж. вычисл. матем. и матем. физ. 2011. Т. 51. № 11. С. 1952–1962.
Задорин А.И., Задорин Н.А. Аналог формулы Ньютона–Котеса с четырьмя узлами для функции с погранслойной составляющей // Сиб. ж. вычисл. матем. 2013. Т. 16. № 4. С. 313–323.
Zadorin A., Zadorin N. Quadrature formula with five nodes for functions with a boundary layer component // Lect. Notes in Comput. Sci. 2013. V. 8236. P. 540–546.
Задорин А.И., Задорин Н.А. Аналог формул Ньютона–Котеса для численного интегрирования функций с погранслойной составляющей // Ж. вычисл. матем. и матем. физ. 2016. Т. 56. № 3. С. 368–376.
Shishkin G.I. Approximations of solutions and derivatives for a singularly perturbed elliptic convection-diffusion equations // Mathematical Proceedings of the Royal Irish Academy. 2003. V. 103A. P. 169–201.
Kopteva N. Error expansion for an upwind scheme applied to a two-dimensional convection-diffusion problem // SIAM Journal on Numerical Analysis. 2003. V. 41. P. 1851–1869.
Gracia J.L., O’Riordan E. Numerical approximation of solution derivatives of singularly perturbed parabolic problems of convection-diffusion type // Mathematics of Computation. 2016. V. 85. P. 581–599.
Задорин А.И. Анализ формул численного дифференцирования на сетке Шишкина при наличии пограничного слоя // Сиб. ж. вычисл. матем. 2018. Т. 21. № 3. С. 243–254.
Zadorin A., Tikhovskaya S. Formulas of numerical differentiation on a uniform mesh for functions with the exponential boundary layer // Int. J. of Num. Analysis and Modeling. 2019. V. 16. № 4. P. 590–608.
Il’in V.P., Zadorin A.I. Adaptive formulas of numerical differentiation of functions with large gradients // J. of Physics: Conference Series. 2019. V. 1260. 042003.
Roos H.G., Stynes M., Tobiska L. Numerical Methods for Singularly Perturbed Differential Equations, Convection-Diffusion and Flow Problems. Berlin: Springer, 2008.
Задорин А.И. Интерполяция функции двух переменных с большими градиентами в пограничных слоях // Ученые записки Казанского университета. Физ.-мат. науки. 2015. Т. 157. Кн. 2. С. 55–67.
Дополнительные материалы отсутствуют.
Инструменты
Журнал вычислительной математики и математической физики