Метод Кранка – Николсона - Crank–Nicolson method

В числовой анализ, то Метод Кранка – Николсона это метод конечных разностей используется для численного решения уравнение теплопроводности и подобные уравнения в частных производных.[1] Это второго порядка метод во времени. это скрытый во времени и может быть записан как неявный метод Рунге – Кутты, и это численно стабильный. Метод был разработан Джон Крэнк и Филлис Николсон в середине 20 века.[2]

За уравнения диффузии (и многие другие уравнения), можно показать, что метод Кранка – Николсона безусловно стабильный.[3] Однако приближенные решения могут все же содержать (затухающие) паразитные колебания, если отношение шага по времени Δт раз температуропроводность к квадрату пространственного шага, ΔИкс2, большой (обычно больше 1/2 на Анализ устойчивости фон Неймана ). По этой причине, когда необходимы большие временные шаги или высокое пространственное разрешение, менее точный обратный метод Эйлера часто используется, который является стабильным и невосприимчивым к колебаниям.[нужна цитата ]

Метод

Шаблон Кранка – Николсона для одномерной задачи.

Метод Кранка – Николсона основан на трапеция, дающий сходимость второго порядка по времени. Для линейных уравнений правило трапеций эквивалентно неявный метод средней точки[нужна цитата ] - простейший пример Гаусс-Лежандр неявный метод Рунге-Кутта, который также имеет свойство быть геометрический интегратор. Например, в одном измерении предположим, что уравнение в частных производных является

Сдача и оценивается для и , уравнение для метода Кранка – Николсона представляет собой комбинацию прямой метод Эйлера в и обратный метод Эйлера в п + 1 (обратите внимание, однако, что сам метод нет просто среднее значение этих двух методов, поскольку обратное уравнение Эйлера имеет неявную зависимость от решения):

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

Пример: 1D диффузия

Метод Кранка – Николсона часто применяется для проблемы диффузии. Например, для линейной диффузии

применяя конечная разница пространственная дискретизация для правой части, тогда дискретизация Кранка – Николсона имеет вид:

или, позволяя :

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

Квазилинейное уравнение, например (это минималистичный пример, а не общий)

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

Пример: 1D диффузия с адвекцией для устойчивого потока, с многоканальными соединениями

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

Здесь мы моделируем концентрацию растворенного вещества в воде. Эта задача состоит из трех частей: известного уравнения диффузии ( выбран как постоянный), адвективный компонент (что означает, что система развивается в пространстве из-за поля скорости), который мы выбираем в качестве постоянного Ux, и латеральное взаимодействие продольных каналов (k).

 

 

 

 

(1)

куда C - концентрация загрязнителя и индексы N и M соответствуют предыдущий и следующий канал.

Метод Кранка – Николсона (где я представляет позицию и j time) преобразует каждый компонент PDE в следующее:

 

 

 

 

(2)

 

 

 

 

(3)

 

 

 

 

(4)

 

 

 

 

(5)

 

 

 

 

(6)

 

 

 

 

(7)

Теперь мы создаем следующие константы, чтобы упростить алгебру:

и заменить (2), (3), (4), (5), (6), (7), α, β и λ в (1). Затем мы помещаем Новое время условия слева (j + 1) и настоящее время условия справа (j) получить:

Для моделирования первый канал, мы понимаем, что он может контактировать только со следующим каналом (M), поэтому выражение упрощается до:

Таким же образом для моделирования последний канал, мы понимаем, что он может контактировать только с предыдущим каналом (N), поэтому выражение упрощается до:

Чтобы решить эту линейную систему уравнений, мы должны теперь увидеть, что граничные условия должны быть заданы сначала для начала каналов:

: начальное условие для канала на текущем временном шаге
: начальное условие для канала на следующем временном шаге
: начальное условие для предыдущего канала к проанализированному в текущий момент времени.
: начальное условие для следующего канала после анализируемого на текущем временном шаге.

Для последней ячейки каналов (z) наиболее удобное условие становится адиабатическим, поэтому

Это условие выполняется тогда и только тогда, когда (независимо от нулевого значения)

Решим эту задачу (в матричной форме) для случая 3 каналов и 5 узлов (включая начальное граничное условие). Мы выражаем это как линейную системную задачу:

куда

и

Теперь мы должны понять, что AA и BB должны быть массивами, состоящими из четырех различных подмассивов (помните, что в этом примере рассматриваются только три канала, но он охватывает основную часть, описанную выше).

и
 

где упомянутые выше элементы соответствуют следующим массивам и дополнительному 4x4, заполненному нулями. Обратите внимание, что размеры AA и BB составляют 12x12:

  , 
  , 
  , 
  &  

В d вектор здесь используется для выполнения граничных условий. В этом примере это вектор 12x1:

Чтобы найти концентрацию в любое время, необходимо повторить следующее уравнение:

Пример: 2D диффузия

При расширении в два измерения на униформе Декартова сетка, вывод аналогичен, и результаты могут привести к системе полосно-диагональный уравнения, а не трехдиагональный ед. Двумерное уравнение теплопроводности


можно решить с помощью дискретизации Кранка – Николсона

предполагая, что используется квадратная сетка, так что . Это уравнение можно несколько упростить, переставив члены и используя Номер CFL

Для численной схемы Крэнка – Николсона низкая Номер CFL не требуется для стабильности, но требуется для числовой точности. Теперь мы можем записать схему как:

Решение такой линейной системы нецелесообразно из-за чрезвычайно высокой временной сложности решения линейной системы с помощью гауссовское исключение или даже Алгоритм Штрассена. Следовательно неявный метод переменного направления может быть реализовано для решения числового PDE, при котором одно измерение обрабатывается неявно, а другое измерение явно для половины назначенного временного шага и наоборот для оставшейся половины временного шага. Преимущество этой стратегии состоит в том, что неявному решателю требуется только алгоритм трехдиагональной матрицы быть решенным. Разница между истинным решением Кранка – Николсона и приближенным решением ADI имеет порядок точности и, следовательно, можно пренебречь с достаточно малым временным шагом.[4]

Приложение по финансовой математике

Потому что ряд других явлений может быть смоделированный с уравнение теплопроводности (часто называемое уравнением диффузии в финансовая математика ), метод Кранка – Николсона также был применен к этим областям.[5] В частности, Блэк – Скоулз модель ценообразования опционов дифференциальное уравнение можно преобразовать в уравнение теплопроводности, и, таким образом, численные решения за опционная цена может быть получен методом Кранка – Николсона.

Важность этого для финансов заключается в том, что проблемы ценообразования опционов, выходящие за рамки стандартных допущений (например, с учетом изменения дивидендов), не могут быть решены в закрытой форме, но могут быть решены с помощью этого метода. Однако обратите внимание, что для негладких конечных условий (которые случаются для большинства финансовых инструментов) метод Кранка – Николсона не подходит, поскольку числовые колебания не затухают. За ванильные варианты, это приводит к колебаниям значение гаммы вокруг цена исполнения. Следовательно, необходимы специальные шаги инициализации демпфирования (например, полностью неявный метод конечных разностей).

Смотрите также

Рекомендации

  1. ^ Tuncer Cebeci (2002). Конвективная теплопередача. Springer. ISBN  0-9668461-4-1.
  2. ^ Crank, J .; Николсон, П. (1947). «Практический метод численной оценки решений дифференциальных уравнений в частных производных типа теплопроводности». Proc. Camb. Фил. Soc. 43 (1): 50–67. Дои:10.1017 / S0305004100023197..
  3. ^ Томас, Дж. У. (1995). Численные уравнения с частными производными: конечно-разностные методы. Тексты по прикладной математике. 22. Берлин, Нью-Йорк: Springer-Verlag. ISBN  978-0-387-97999-1.. Пример 3.3.2 показывает, что Кранк – Николсон безусловно устойчив в применении к .
  4. ^ «Многомерные параболические задачи» (PDF). Кафедра компьютерных наук. RPI. Получено 29 мая 2016.
  5. ^ Wilmott, P .; Howison, S .; Дьюинн, Дж. (1995). Математика финансовых деривативов: введение для студентов. Cambridge Univ. Нажмите. ISBN  0-521-49789-2. Математика производных финансовых инструментов Уилмотт.


внешняя ссылка