
Изменение шага и порядка не разрешается только для (k + 1)-го шага после последнего изменения шага.
Для начала интегрирования используется метод с k = 1 и начало интегрирования не представляет трудностей. Порядок постепенно достигает оптимальной величины по мере увеличения длины шага до максимально возможной. Если порядок ошибочно выбран слишком большим, то разности, фигурирующие в процессе выбора порядка, становятся бессмысленными, при этом в одной и той же точке программа отвергает несколько шагов с последовательно уменьшающейся длиной, а затем продолжает счет.
Суть стратегии переменного шага и переменного порядка не столько в том, что эти величины могут изменяться, сколько в том, что их можно правильно выбирать автоматически. Для большей части вычислений они не должны меняться сильно. Программа является гибкой и адаптируется в зависимости от характера решаемой задачи.
Другая стратегия изменения h и k также обеспечивает максимизацию временного шага, но достигает это следующим образом.
На основании выражения (8.77) применительно к алгоритму (8.65) оценивается погрешность каждой составляющей вектора переменных х для методов 1,2.....(k + 1)-го порядков:
(8.90)
Среди вычисленных погрешностей выбираются погрешности, соответствующие наименее точным компонентам вектора х,

и порядок метода выбирается равным порядку, при котором величина еі (i = 1, 2, ..., k + 1) минимальна.
Новый временной шаг определяется в соответствии с выражением
(8.91)
где еі = | εхі |;

ε — допустимая относительная погрешность; i — номер компоненты вектора х.
При этом величина изменения шага ограничивается, как и
раньше, коэффициентом

Описанная схема изменения порядка метода интегрирования и временного шага может выполняться всякий раз при изменении временного интервала. В ней благодаря использованию разностей высших порядков уменьшаются вычислительные ошибки и сокращаются затраты при определении коэффициентов формул прогноза (8.64) и алгебраизации (8.65).
Кроме того, достигается высокая гибкость программ при изменении порядка алгоритма интегрирования. Благодаря легкости оценки локальных погрешностей алгоритмов интегрирования различных порядков рассмотренная стратегия позволяет легко изменять порядок в пределах от 1-го до (k + 1)-го на каждом временном шаге (а не через
(k + 1) шагов в пределах от (k — 1)-го до (k + 1)-го), что обеспечивает ее высокую экономичность по вычислительным затратам.
Сравнение методов интегрирования. Кратко рассмотрим некоторые известные модельные задачи и их решение, полученное с помощью описанных выше методов. Из набора 25 тестовых задач выберем только пять как наиболее сложные для отдельных методов.
В5. Система линейных дифференциальных уравнений с комплексными собственными значениями (λі = —0,1; —0,5; —1; —4; —10; ±j100):

Интегрирование ведется в интервале Т = [0, 20]t, минимальный начальный шаг h0 = 10-2.
С5. Система нелинейных дифференциальных уравнений, в решении которой быстро осциллирующие компоненты нелинейно зависят от плавных компонент:
интегрирование ведется в интервале Т=[0, 20]t, минимальный начальный шаг h = 10-2.
D6. Система нелинейных дифференциальных уравнений с действительными собственными значениями
(λi = 0; —1,0 → —8,6; —3·107 → 4·107,
где знак → показывает изменение λi от начальных до конечных аначений):

Интегрирование ведется до Тmах = 1, минимальный начальный шаг
h0 =3,3 • 10-8.
Е4. Система нелинейных дифференциальных уравнений с комплексными собственными значениями:

Интегрирование ведется до Тmах = 103 с начальным шагом h0= 10-3. Собственные значения решаемой системы изменяются в процессе решения, при этом

Е5. Система нелинейных дифференциальных уравнений с комплексными собственными значениями:

Интегрирование ведется до Тmах = 103 с начальным шагом h0 = 5•10-5. Собственные значения решаемой задачи изменяются в процессе решения, при этом

Основные характеристики решений для задач, полученных для заданной точности Е = 10-4, приведены в табл. 8.4. Примеры решались четырьмя основными методами, указанными в табл. 8.4:
Таблица 8.4
Задачи при погрешности Е = 10-4

1 — методом Гира в соответствии с выражениями (8.59) и (8.60), реализованными в программе GEAR;
2 — методом Брайтона (ФДН) в соответствии с выражениями (8.62), (8.63) и формулами (8.80), (8.88), (8.89);
3 — циклическим методом в соответствии с выражением (8.74) и формулами (8.80), (8.88) и (8.89), реализованными в программе STINT;
4 — основным методом Скила в соответствии с выражением (8.73) совместно с формулами (8.88) и (8.89), реализованными в программе DIFS UB, при этом для оценки локальной погрешности используется вместо уравнения (8.79) следующее выражение:
![]()
так как на соседних шагах порядок метода отличается на единицу.
Данные, соответствующие решению приведенных задач методом Рунге — Кутта (явным и неявным) и трапецией, в табл. 8.4 не введены, так как они значительно уступают другим использованным в комплексном эксперименте методам.
По столь небольшой выборке, как выделенные пять задач, трудно делать категорические выводы и рекомендации. Однако (с учетом и других данных) можно отметить, что новые многошаговые неявные методы типа Скила и циклические методы значительно эффективней, чем широко используемые на практике методы Брайтона и Гира, особенно в случаях, когда матрица Якоби ∂f/∂x имеет собственные значения с большими мнимыми числами.
Задача Е5 по химической кинетике с заданными начальными условиями, по существу, не решена ни одним из методов при заданной погрешности вычислений Е=10-4. Объясняется это недостаточно выбранной точностью при том разбросе значений коэффициентов, который характерен для рассматриваемой задачи. Если погрешность вычислений снизить хотя бы до 10-7, то задача Е5 успешно решается методами 2, 3 и 4 при экономном числе шагов.
В табл. 8.5 сравниваются неявный метод Эйлера (k = 1), метод Шихмана второго порядка (k = 2) и ФДН (k ≤ 6) на примере решения задачи Е5. Из табл. 8.5 следует, что многошаговые методы высоких порядков, в свою очередь, в несколько раз превосходят по быстродействию неявные методы интегрирования первого и второго порядков.
Таблица 8.5
Результаты решения задачи Е5 неявными методами разных порядков при погрешности 10-7

По-видимому, каждой предметной области консультирования, ее конкретным задачам соответствуют свои оптимальные (один или несколько) методы численного интегрирования, которые должны быть реализованы в соответствующей подсистеме консультационного анализа. Если решаемые задачи «жесткие» и нелинейные, что справедливо для многих консультируемых проблем, то желательно выбор методов выполнить среди рассмотренных в этом пункте.
Знание особенностей и возможностей используемых при моделировании численных методов необходимы консультанту для оптимального выбора констант настройки исполнительных программ на решаемую задачу. Несмотря на то, что обычно в моделирующем консультационном комплексе осуществляют настройку управляющих констант на наихудший случай, при котором рассчитаны практически все тестовые задачи, при исследовании консультируемых проблем со сложной реакцией и с нетипичными сочетаниями переменных возможны случаи замедления процесса определения результатов, а в некоторых случаях и получений неверных результатов. Опыт эксплуатации моделирующих программ показал, что наиболее «важными» константами настройки являются следующие.
Значение минимального шага интегрирования MINSTEP, с помощью которого отсекаются те высокие частоты изменения переменных, которые не интересуют разработчика. Величина MINSTEP выбирается произвольно, однако ее сильное уменьшение может привести к замедлению расчетов («топтанию на месте»), а увеличение — к снижению точности.
Порядок метода интегрирования ORDER, который может фиксироваться или изменяться до k≤6, что существенно сказывается при ожесточении требований к погрешности метода интегрирования и усложнении реакции консультируемой проблемы.
Параметр REJC, используемый при оценке необходимости отбрасывания текущего шага при анализе консультируемой проблемы во временной области. Число отброшенных шагов зависит от сложности исследуемых функций, но обычно не превышает 10—20% общего числа шагов.
Относительная погрешность CONVTA итераций Ньютона при расчете динамики, влияющая на суммарное число итераций и, следовательно, на общее время расчетов. Величина ХМАХ, или исходное значение максимальной величины составляющих вектора неизвестных, которая является пороговым значением абсолютного изменения переменных. Выбор ее значения зависит от используемой системы единиц. Во всех случаях снижение значения ХМАХ приводит к повышению точности результатов расчета и к увеличению общего времени вычислений. Относительная локальная погрешность метода интегрирования TRUN, определяющая условия выбора нового временного шага и влияющая на общее число временных шагов. Чрезмерное ее уменьшение приводит к большим временным затратам на проведение расчетов. Выбор отмеченных параметров позволяет эффективно управлять процессами интегрирования и уменьшать суммарное время вычислений в несколько раз.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 |


