В Метод Лакса – Вендроффа, названный в честь Питер Лакс и Бертон Вендрофф, это числовой метод решения гиперболические уравнения в частных производных, на основе конечные разности. Он имеет второй порядок точности как в пространстве, так и во времени. Этот метод является примером явное интегрирование по времени где функция, определяющая основное уравнение, оценивается в текущий момент.
Определение
Предположим, у вас есть уравнение следующего вида:
 
куда Икс и т - независимые переменные, а начальное состояние u (Икс, 0) дано.
Линейный случай
В линейном случае, когда  f (u) = Au , и А константа,[1]
![u_ {i} ^ {{n + 1}} = u_ {i} ^ {n} - { frac { Delta t} {2  Delta x}} A  left [u _ {{i + 1}} ^ {{n}} - u _ {{i-1}} ^ {{n}}  right] + { frac { Delta t ^ {2}} {2  Delta x ^ {2}}} A ^ { 2}  left [u _ {{i + 1}} ^ {{n}} - 2u _ {{i}} ^ {{n}} + u _ {{i-1}} ^ {{n}}  right] .](https://wikimedia.org/api/rest_v1/media/math/render/svg/4896aba31477fc792026cfbdb84375689c1a6b55) 
Эта линейная схема может быть распространена на общий нелинейный случай разными способами. Один из них позволяет
 
Нелинейный случай
Тогда консервативная форма Лакса-Вендроффа для общего нелинейного уравнения имеет следующий вид:
![u_i ^ {n + 1} = u_i ^ n -  frac { Delta t} {2  Delta x}  left [f (u_ {i + 1} ^ {n}) - f (u_ {i-1} ^ {n})  right] +  frac { Delta t ^ 2} {2  Delta x ^ 2}  left [A_ {i + 1/2}  left (f (u_ {i + 1} ^ { n}) - f (u_ {i} ^ {n})  right) - A_ {i-1/2}  left (f (u_ {i} ^ {n}) - f (u_ {i-1} ^ {n})  right)  right].](https://wikimedia.org/api/rest_v1/media/math/render/svg/1e351ecf692b371d283629cae7354a5598f3ae2f) 
куда  матрица Якоби, вычисленная на
 матрица Якоби, вычисленная на  .
.
Бесплатные методы Якоби
Чтобы избежать вычисления Якоби, используйте двухэтапную процедуру.
Метод Рихтмайера
Далее следует двухшаговый метод Рихтмайера Лакса – Вендроффа. На первом этапе двухэтапного метода Рихтмайера Лакса – Вендроффа вычисляются значения для f (u (Икс, т)) на половинных шагах времени, тп + 1/2 и половинные точки сетки, Икся + 1/2. На втором шаге значения при тп + 1 рассчитываются с использованием данных для тп и тп + 1/2.
Первые (слабые) шаги:
 
 
Второй шаг:
![u_ {i} ^ {{n + 1}} = u_ {i} ^ {n} - { frac { Delta t} { Delta x}}  left [f (u _ {{i + 1/2} } ^ {{n + 1/2}}) - f (u _ {{i-1/2}} ^ {{n + 1/2}})  right].](https://wikimedia.org/api/rest_v1/media/math/render/svg/a1fe928153382db4b465a4cc76bb7b3ccc2fe2d1) 
Маккормак метод
Другой метод того же типа был предложен МакКормаком. В методе МакКормака сначала используется прямое разложение, а затем обратное:
Первый шаг:
 
Второй шаг:
![u_ {i} ^ {{n + 1}} = { frac {1} {2}} (u _ {{i}} ^ {n} + u _ {{i}} ^ {*}) - { frac { Delta t} {2  Delta x}}  left [f (u _ {{i}} ^ {{*}}) - f (u _ {{i-1}} ^ {{*}})  right ].](https://wikimedia.org/api/rest_v1/media/math/render/svg/56975847eca9241721582a2ae4fae89abcd32dc3) 
В качестве альтернативы, Первый шаг:
 
Второй шаг:
![u_ {i} ^ {{n + 1}} = { frac {1} {2}} (u _ {{i}} ^ {n} + u _ {{i}} ^ {*}) - { frac { Delta t} {2  Delta x}}  left [f (u _ {{i + 1}} ^ {{*}}) - f (u _ {i}} ^ {{*}})  right ].](https://wikimedia.org/api/rest_v1/media/math/render/svg/28b1232af80fd0fc25fae13893fd5c13fac9fcf0) 
Рекомендации
- ^ Левек, Рэнди Дж. Численные методы для законов сохранения ", Birkhauser Verlag, 1992, стр. 125.