ВУЗ:
Составители:
что оказывается трудоёмким, и явные схемы имеют
ограниченную область применения.
Существенно снизить трудоёмкость счёта позволяют
неявные схемы, для которых ограничения сверху на шаг по
времени или отсутствуют, или значительно ослаблены. Однако
неявная схема не позволяет найти переменные на новом
временном слое непосредственно, для этого требуется решить
некоторую систему «уравнений на
верхнем слое». Трудоёмкость
решения этой системы уравнений и определяет, в основном,
трудоёмкость всего численного метода в целом, поэтому
данный алгоритм должен быть экономичным.
Основным методом решения системы линейных уравнений
общего вида является метод Гаусса (приведение системы к
треугольному виду). Нетрудно оценить трудоёмкость метода
Гаусса: O(N
3
) операций (см. например [1]). Таким образом,
метод Гаусса неэкономичен.
При решении систем одномерных уравнений вида (3.5) или
(3.23) облегчающим обстоятельством является то, что матрица
системы оказывается сильно разреженной. В ней отличны от
нуля элементы главной диагонали, а также одной или
нескольких над- и поддиагоналей. Для решения систем такого
вида разработаны специальные экономные
методы.
п.2.Схема бегущего счёта.
Данная схема предназначена для решения уравнений типа
(3.5), (3.6), (3.8), (3.16) или (3.20), матрицы которых
имеют двухдиагональную структуру. Все эти уравнения могут
быть представлены в виде:
u
^
i+1
=a
i
u
^
i
+F(u
i
,u
i+1
) (4.1)
Кроме того, необходимо дополнить их одним правым или левым
краевым условием. В общем случае рассмотрим, например,
условие третьего рода, имеющее тот же вид (4.1) при i=0 или
i=N-1. Пусть, для определённости, задано краевое условие
слева. Для начала счёта необходимо решить систему двух
уравнений с двумя неизвестными ((4.1) в нулевом узле
совместно с краевым условием
). При этом будут определены u
0
^
и u
1
^
. Далее значения решения на верхнем слое находятся из
(4.1) по цепочке: зная u
^
i
, находим u
^
i+1
от i=2 до N-1. Легко
видеть, что данный алгоритм экономичен, он требует O(N)
операций.
Однако, для работоспособности данного алгоритма, он
должен быть устойчив по отношению к случайным ошибкам
округления. Рассмотрим, для определённости, схему (3.6). Её
можно представить в виде: u
^
i
(1+q)-qu
^
i-1
=u
i
. Если δu
^
i
-
погрешность решения в i-том, узле, то погрешность в i+1-м
узле будет δu
^
i+1
=
q
q+1
δu
^
i
. Бегущий счёт устойчив при
⎜q/(q+1)⎜≤1, что справедливо при q≥-1/2, и согласуется с
что оказывается трудоёмким, и явные схемы имеют
ограниченную область применения.
Существенно снизить трудоёмкость счёта позволяют
неявные схемы, для которых ограничения сверху на шаг по
времени или отсутствуют, или значительно ослаблены. Однако
неявная схема не позволяет найти переменные на новом
временном слое непосредственно, для этого требуется решить
некоторую систему «уравнений на верхнем слое». Трудоёмкость
решения этой системы уравнений и определяет, в основном,
трудоёмкость всего численного метода в целом, поэтому
данный алгоритм должен быть экономичным.
Основным методом решения системы линейных уравнений
общего вида является метод Гаусса (приведение системы к
треугольному виду). Нетрудно оценить трудоёмкость метода
Гаусса: O(N3) операций (см. например [1]). Таким образом,
метод Гаусса неэкономичен.
При решении систем одномерных уравнений вида (3.5) или
(3.23) облегчающим обстоятельством является то, что матрица
системы оказывается сильно разреженной. В ней отличны от
нуля элементы главной диагонали, а также одной или
нескольких над- и поддиагоналей. Для решения систем такого
вида разработаны специальные экономные методы.
п.2.Схема бегущего счёта.
Данная схема предназначена для решения уравнений типа
(3.5), (3.6), (3.8), (3.16) или (3.20), матрицы которых
имеют двухдиагональную структуру. Все эти уравнения могут
быть представлены в виде:
^
ui+1=ai^
ui+F(ui,ui+1) (4.1)
Кроме того, необходимо дополнить их одним правым или левым
краевым условием. В общем случае рассмотрим, например,
условие третьего рода, имеющее тот же вид (4.1) при i=0 или
i=N-1. Пусть, для определённости, задано краевое условие
слева. Для начала счёта необходимо решить систему двух
уравнений с двумя неизвестными ((4.1) в нулевом узле
совместно с краевым условием). При этом будут определены u^0
и u^1. Далее значения решения на верхнем слое находятся из
(4.1) по цепочке: зная u ^ , находим u^
i i+1 от i=2 до N-1. Легко
видеть, что данный алгоритм экономичен, он требует O(N)
операций.
Однако, для работоспособности данного алгоритма, он
должен быть устойчив по отношению к случайным ошибкам
округления. Рассмотрим, для определённости, схему (3.6). Её
можно представить в виде: u ^ (1+q)-qu^ =u . Если δu ^ -
i i-1 i i
погрешность решения в i-том, узле, то погрешность в i+1-м
узле будет ^ = q δu
δu ^. Бегущий счёт устойчив при
i+1 q+1 i
⎜q/(q+1)⎜≤1, что справедливо при q≥-1/2, и согласуется с
Страницы
- « первая
- ‹ предыдущая
- …
- 34
- 35
- 36
- 37
- 38
- …
- следующая ›
- последняя »
