Возможно ли решить нелинейные уравнения в частных производных без использования итерации Ньютона-Рафсона?

15

Я пытаюсь понять некоторые результаты и был бы признателен за некоторые общие замечания по решению нелинейных проблем.

Уравнение Фишера (нелинейная реакция-диффузионная ФДЭ),

UTзнак равноdUИксИкс+βU(1-U)знак равноF(U)

в дискретной форме,

UJ'знак равноLU+βUJ(1-UJ)знак равноF(U)

где - дифференциальный оператор, а - трафарет дискретизации.u = ( u j - 1 , u j , u j + 1 )LUзнак равно(UJ-1,UJ,UJ+1)

метод

Я хочу применить неявную схему, потому что мне нужна стабильность и неограниченный временной шаг. Для этой цели я использую -метод (обратите внимание, что дает полностью неявную схему, а дает трапециевидную или схему "Кранка-Николсона"),θ = 1 θ = 0,5θθзнак равно1θзнак равно0,5

UJ'знак равноθF(UN+1)+(1-θ)F(UN)

Однако для нелинейных задач это сделать невозможно, поскольку уравнение нельзя записать в линейной форме.

Чтобы обойти эту проблему, я изучал два численных подхода,

  1. Метод IMEX

    UJ'знак равноθLUN+1+(1-θ)LUNθ-метод диффузионного члена+βUJN(1-UJN)Полностью явный термин реакции

    Наиболее очевидный способ - игнорировать нелинейную часть члена реакции и просто обновить член реакции с максимально возможным значением, то есть с предыдущего временного шага. Это приводит к методу IMEX.

  2. Ньютон Солвер

νК+1знак равноνК-(я-θτAN)-1(νК-UN-(1-θ)τF(весN)-θτF(весN+1))

Полное уравнение метода может быть решено с помощью итерации Ньютона-Рафсона, чтобы найти будущую переменную решения. Где - индекс итерации ( ), а - матрица Якоби . Здесь я использую символы для переменных итерации, так что они отличаются от решения уравнения в точке реального времени . Это на самом деле модифицированный решатель Ньютона, потому что якобиан не обновляется с каждой итерацией.k k 0 A n F ( w n ) ν k u nθКК0ANF(весN)νКUN

Результаты

Сравнение уравнений Фишера численных методов.

Приведенные выше результаты рассчитаны для достаточно большого временного шага, и они показывают разницу между подходом с временным шагом и полным итерационным решателем Ньютона.

Вещи, которые я не понимаю:

  1. Я удивлен тем, что метод пошагового выполнения работает нормально, но со временем он отстает от аналитического решения. ( Примечание: если я выбрал меньший временной шаг, то подход с временным шагом дает результаты, близкие к аналитической модели). Почему подход с шагом по времени дает разумные результаты для нелинейного уравнения?

  2. Модель Ньютона работает намного лучше, но со временем начинает лидировать в аналитической модели. Почему точность подхода Ньютона уменьшается со временем? Можно ли улучшить точность?

  3. Почему существует общая особенность, заключающаяся в том, что после многих итераций численная модель и аналитическая модель начинают расходиться? Это просто потому, что шаг по времени слишком велик или это всегда будет происходить?

boyfarrell
источник
Я рекомендую ознакомиться с базовым анализом ошибок решателей ODE, например, в Hairer / Nørsett / Wanner, а также с некоторым анализом стабильности. На большинство ваших вопросов будет дан ответ.
Гвидо Каншат
1
@boyfarrell, чтобы избежать путаницы с другими читателями, вы должны поместить терминологию туда, где объясняется ваш метод: 1. IMEX - явный в нелинейности и неявный в линейной части. 2. это стандартная схема, которая обычно требует, чтобы метод Ньютона нашел решение для обновленияθ
января
1
Привет @ Ян, я думаю, что я получил все. Еще раз спасибо за помощь.
Boyfarrell

Ответы:

9

Я предполагаю, что вы провели пространственную дискретизацию, так что вы (векторное) ODE через числовую схему которая продвигает приближение в текущий момент времени к следующему значению при .Φu n h t=tnu n + 1 h t=tn+1:=tn+τ

U˙час(T)знак равноFчас(T,Uчас(T)), на [0, T] ,Uчас(0)знак равноα,
ΦUчасNTзнак равноTNUчасn+1Tзнак равноTN+1знак равноTN+τ

Тогда ваши вопросы относятся к свойствам явного , где обновление записывается как

UчасN+1знак равноUчасN+Φе(TN,τ,UчасN),

неявный , записанный как

UчасN+1знак равноUчасN+Φя(TN,τ,UчасN+1,UчасN),(*)

или комбинация обоихIMEX », см. @Jed Brown's answer) одноступенчатые схемы временного шага.

В этой установке метод Ньютона просто является подходом для решения, возможно, нелинейных в систем, возникающих из .UчасN+1(*)

А мои ответы основаны на результатах численного анализа одношаговых методов.

  1. Если вы используете конвергентные схемы, с точки зрения порядка сходимости, нет общего преимущества использования неявных схем (см. 2.). Однако для жестких систем, например вашей системы, содержащей лапласиан, существуют неявные схемы, которые стабильны без временных ограничений. Тем не менее, теоретически, для явной схемы вы получите лучшие результаты с меньшими временными шагами, пока ваше уравнение устойчиво (например, ссылаясь на теорему Пикара-Линделёфа, если - Липшиц во втором аргументе) и ваше время Шаг не слишком маленький.Fчас
  2. Вы можете найти примеры, где явные схемы работают лучше. (Теоретически, вы можете обратить вспять время в вашем примере, начать со значения терминала и найти неявные и явные взаимозаменяемые значения.) Если вы сделаете ошибку Ньютона достаточно малой, вы все равно сможете повысить точность, уменьшив шаг по времени или используя время схемы высшего порядка.
  3. Константа в оценке ошибки для глобальной ошибки растет экспоненциально с длиной интервала времени. Смотрите, например, здесь для явной схемы Эйлера. Это верно для каждого одношагового метода. Поскольку оценка имеет тип , , меньший временной шаг только откладывает этот эффект.СеррСτпп>0τ

Еще несколько замечаний и окончательный ответ:

  • Схемы IMEX могут использоваться для неявной обработки только линейной части, что позволяет избежать нелинейных решений. Смотрите ответ Джеда Брауна.
  • Crank-Nicolson - это одностадийный метод. «Многоуровневый» в многошаговых методах относится к использованию ряда предшествующих временных шагов для определения текущего обновления. Например, как Это сильно отличается от одношаговых, а также двухшаговых или IMEX-методов, где обновление определяется без повторения предыдущих значений.
    UчасN+1знак равноΦм(TN,τ,UчасN+1,UчасN,UчасN-1),

Итак, мой ответ: да , вы можете решать нелинейные уравнения без метода Ньютона. Вы можете использовать явные схемы, схемы IMEX или так называемые линейно неявные методы (например, методы Розенброка). Кроме того, вы можете использовать другие подходы для решения систем из такие как итерации с фиксированной точкой или, в некоторых случаях, алгебраические решатели.(*)

январь
источник
Да, я применил стандартный трафарет центральной разницы к термину диффузии. Я не могу использовать явную схему (для реальной проблемы, которую я хочу решить), потому что стабильный временной шаг нереально мал. Вот почему я изучаю IMEX или неявные варианты. Что касается вашего третьего пункта, чтобы избежать накопления ошибок, я должен использовать многошаговые методы. Является ли схема Кранка-Николсона, которую я использовал выше (с решателем Ньютона), классифицированной как многошаговый метод (она имеет два момента времени)? Я был удивлен, что ошибка увеличивается со временем при использовании метода решателя Ньютона.
boyfarrell
Crank-Nicolson - это одношаговый метод, который записывается как , Кроме того, я не понимаю, почему многошаговые схемы должны избегать накопления ошибок. UчасN+1знак равноUчасN+Φ(TN,τN,UчасN,UчасN+1)
Jan
1
Хорошо, спасибо за объяснение о методе CN. Да, интересно, почему у многоступенчатых методов накопление ошибок меньше. Причина, по которой у решателя Ньютона возникает ошибка, заключается в том, что это один шаг, я теперь понимаю. Кстати, я знаю, что ты любишь Python. Я сделал все вышеизложенное, используя scipy, numpy и matplotlib, gist.github.com/danieljfarrell/6353776
boyfarrell
Я удалил ссылку на статью Trefethen et. и др. об интеграции IMEX высокого порядка из моего ответа, поскольку есть лучшие ссылки, чтобы узнать о схемах IMEX.
января
12

Короткий ответ

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

Длинный ответ

Реакция-диффузия, даже с линейной реакцией, известна тем, что демонстрирует ошибку расщепления. На самом деле, это может быть гораздо хуже, в том числе «сходиться» к неправильным установившимся состояниям, принимать устойчивые состояния за предельные циклы, путать стабильные и нестабильные конфигурации и многое другое. См. Ropp, Shadid и Ober (2004), а также Knoll, Chacon, Margolin и Mousseau (2003), чтобы взглянуть на это с точки зрения вычислительных физиков. Для анализа математики с точки зрения условий порядка, см. Книгу Хайрера и Ваннера о жестком ОДУ (методы Розенброка-W - линейно-неявный метод IMEX), Кеннеди и Карпентер (2003) для нелинейно-неявного IMEX «аддитивный» Рунге-Кутта, и страница Эмиля Константинеску для более новых методов IMEX.

В общем, методы IMEX имеют больше условий порядка, чем только лежащие в основе неявные и явные методы. Пары метода IMEX могут быть спроектированы с желаемой линейной и нелинейной стабильностью, чтобы они удовлетворяли всем условиям порядка, вплоть до порядка разработки метода. Удовлетворение всем условиям порядка сохранит асимптотическую ошибку расщепления в том же масштабе, что и ошибка в каждой схеме в отдельности. В нем ничего не говорится о доасимптотическом режиме (большие временные шаги / низкое требование к точности), но он редко бывает более строгим, чем разрешение каждой части в отдельности. В любом случае ошибка разделения видна встроенному оценщику ошибок (при использовании адаптивного контроля ошибок).

У PETSc есть много методов IMEX семейства Rosenbrock-W и аддитивных семейств Рунге-Кутты , и мы будем иметь экстраполяцию и линейный многошаговый IMEX в нашем следующем выпуске.

Отказ от ответственности: я написал большую часть поддержки временной интеграции PETSc и сотрудничаю с Эмилем (ссылка выше).

Джед браун
источник
Я, конечно, подхожу к этому с точки зрения физики, поэтому все технические детали занимают у меня некоторое время, потому что я не знаком со многими терминами. Я на самом деле экспериментатор! Не могли бы вы объяснить немного больше об условиях заказа? IMEX - эти многошаговые методы, упомянутые Яном?
Boyfarrell
Условия заказа - это отношения между коэффициентами методов ODE (например, записи в таблице Батчера для методов Рунге-Кутты), которые должны быть выполнены, чтобы иметь порядок точности. Условия заказа обсуждаются в любой книге или статье, в которой разрабатываются методы интеграции ODE, но в основном это сводится к многократному применению производных и соответствующих терминов в расширении Тейлора. Число условий порядка быстро растет для методов высокого порядка, поэтому становится сложно разрабатывать методы высокого порядка. Барьеры устанавливаются, показывая, что условия заказа взаимно несовместимы.
Джед Браун