Изменение шага и порядка не раз­решается только для (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