Линейное уравнение переноса

Лекция №10

Уравнение переноса

Линейное уравнение переноса

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

(1)

где — функция рассредотачивания газа атомов, скорости пары атомов до и после взаимодействия с дифференциальным сечением (dw = 2p sinc dc — телесный угол, где c — угол отличия при содействии пары атомов) удовлетворяют законам сохранения импульса и энергии:

Решение уравнения Больцмана (1) очень трудно и Линейное уравнение переноса выходит за границы данного курса лекций. Ограничимся решением линейного дифференциального уравнения вида:

, (2)

где c — вектор скорости переноса. Многомерность уравнения переноса (2) не заносит ничего принципно нового, потому в предстоящем будем изучить одномерное уравнение переноса с неизменной, если не обсуждено неприятное, скоростью c:

. (3)

Если правая часть уравнения (3) равна нулю, уравнение Линейное уравнение переноса можно решить в общем виде, тогда решение выступает в форме бегущей волны

, (4)

где f = f(x) — случайная функция. Согласно (4) видно, что параметр c выступает в качестве скорости переноса, при этом при c > 0 волна двигается слева вправо. Беря во внимание (4), определим обычные корректные постановки задачки решения уравнения переноса (3).

Смешанная задачка Коши. Зададим исходные Линейное уравнение переноса и граничные условия вида:

(5)

Решение задачки (3), (5) совершенно точно определено в области G(t,x) = [0,T] ´ [0,a], если изначальное и граничное условия непрерывны вкупе со своими p-и производными, при всем этом выполнены условия согласования в точке стыка исходных и граничных критерий. Для варианта f(t,x) = 0 условия стыковки Линейное уравнение переноса имеют вид:

,

которое следует из четкого решения задачки (3), (5):

(6)

Для варианта, когда f(t,x) непрерывна вкупе с (p-1)-й производной, то решение u(t,x) безпрерывно в G вкупе с p-й производной.

Задачка Коши. Определим исходные данные на полубесконечной прямой: , x Î (-¥,a]. В данном случае решение Линейное уравнение переноса совершенно точно определено в области G(t,x) = [0,+¥) ´ (-¥,a]. Гладкость решения соответствует гладкости исходного данного и правой части f(t,x).

Свойства уравнения (3) имеют вид x - ct = const и являются прямыми линиями при c = const. Решение (4) однородного уравнения (3) повсевременно повдоль свойства, потому молвят, что исходные и Линейное уравнение переноса граничные условия переносятся повдоль черт. На рис.1 приведена иллюстрация такового переноса на примере решения (6). Точка стыка исходного и граничного критерий развернутая во времени является чертой, которая представлена на рис.1 красноватой стрелкой.

Рис.1. Перенос исходного и граничного условия уравнения
переноса по чертам

Разглядим разностные схемы решения смешанной задачки Коши. Они именуются схемами Линейное уравнение переноса бегущего счета. Схемы бегущего счета просто обобщаются на многомерный случай, они ординарны и позволяют решать уравнения переноса с различного рода усложнениями.

Для решения задачки (3), (5) в области G(t,x) = [0,T] ´ [0,a] введем равномерную для простоты сетку с шагами t и h по времени и месту соответственно. Разглядим четыре расчетных шаблона Линейное уравнение переноса, представленных на рис.2.

Рис.2,а. Трехточечный шаблон Рис.2,б. Трехточечный шаблон Рис.2,в. Трехточечный шаблон Рис.2,г. Четырехточечный шаблон

Составим разностные схемы ко всем четырем шаблонам на рис.2.

(7а)

, (7б)

, (7в)

. (7г)

Во всех 4 схемах правая часть выбиралась в центре ячейки. Вероятен и другой метод аппроксимации Линейное уравнение переноса правой части.

Все четыре разностные схемы (7а) — (7г), по существу, являются очевидными. Во всех схемах значение очевидно выражается через . Решение на нулевом слое понятно из исходного условия, т.е. . Для вычисления решения на последующем слое из граничного условия находим , это позволяет отыскать , дальше рассчитывается и т.д. Таким макаром находится решение на Линейное уравнение переноса первом слое, аналогично находится решение на втором слое и т.д. Конкретно в связи с тем, что решение рассчитывается слой за слоем слева вправо, схемы (7а) — (7г) именуются схемами бегущего счета.

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

Разностная схема (7а). Исследуем погрешность аппроксимации схемы (7а). Для этого разложим решение и правую часть в округи точки (tm,xn) в ряд Тейлора, считая непрерывность всех требуемых производных:

,

,

.

Беря Линейное уравнение переноса во внимание эти разложения, находим невязку схемы (7а):

т.е. схема (7а) имеет аппроксимацию первого порядка в норме .

Устойчивость исследуем при помощи принципа максимума, формулировка и подтверждение которого приведены в лекции №9. Аспект равномерной стойкости по исходным данным (формула (64) в лекции №9 при C = 0) дает последующее ограничение:

,

которое сводится к так именуемому условию Линейное уравнение переноса Куранта

ct £ h. (8)

Согласно (8), разностная схема (7а) является условно устойчивой© в норме .

Способом разделения переменных можно обосновать необходимость условия (8) для обеспечения стойкости. Подставим в схему (7а) последующие величины:

,

тогда множитель роста гармоники

.

Условие стойкости обеспечивается, когда

. (9)

Выполнение неравенства (9) при случайном q обеспечено, когда r £ 1, т.е. при выполнении условия Куранта. При нарушении Линейное уравнение переноса условия Куранта, т.е. при r > 1 неравенство (9) не производится при всех q, а только при неких. Так, при r >> 1 неравенство (9) перепишется в виде: cos qh £ ½, т.е. амплитуды неких гармоник вырастают при переходе со слоя на слой и схема неустойчива по исходным данным.

Устойчивость по правой части согласно Линейное уравнение переноса формуле (65) лекции №9 обеспечивается при k = 1 в норме , когда правильно условие Куранта.

В конечном итоге схема (7а) при выполнении условия Куранта сходится в с первым порядком точности.

В качестве примера разглядим численное решение задачки

(10)

Задачка (10) имеет последующее аналитическое решение:

(11)

На листинге_№1 приведен код программки численного решения задачки (10) по разностной схеме (7а). На Линейное уравнение переноса рис.3,а приведено трехмерное изображение решения u(t,x) при выполнении условия Куранта, а на рис.3,б приведено решение при нарушении условия Куранта. Видно, возникновение неустойчивости в решении при нарушении условия (8).

Листинг_№1

%Программка численного решения уравнения

%переноса du/dt+cdu/dx=tx

%u(0,x)=x^3/(12c^2), u(t,0)=(ct^3)/12

%очищаем Линейное уравнение переноса рабочее место

clear all

%определяем параметр скорости переноса c,

%также отрезок времени интегрирования T и

%спектр конфигурации пространственной

%переменной a

c=0.25; T=2; a=1;

%определяем шаг по месту

h=0.005;

%рассматривается два варианта расчета

%при tau=h/c (условие Куранта производится) и

%при tau=1.12*h/c (условие Куранта нарушено)

tau=(1.0*h)/c;

r=(c*tau)/h;

%определяем сетки по Линейное уравнение переноса времени и по месту

t=0:tau:T;

x=0:h:a;

%определяем изначальное значение u(0,x)=x^3/(12c^2)

for j=1:length(x)

y(1,j)=x(j)^3/(12*c^2);

end

%организуем расчет по разностной схеме (7а)

for i=1:(length(t)-1)

%определяем левое граничное значение

%u(t,0)=(ct^3)/12

y(i+1,1)=(c*t(i+1)^3)/12;

for j=2:length(x Линейное уравнение переноса)

y(i+1,j)=(1-r)*y(i,j)+r*y(i,j-1)+...

tau*(t(i)+0.5*tau)*(x(j)-0.5*h);

end

end

[xi ti]=meshgrid(x,t);

%рисуем численное решение уравнения переноса u(t,x)

surf(ti,xi,y); [xi ti]=meshgrid(x,t);

%рисуем численное решение уравнения переноса u(t Линейное уравнение переноса,x)

surf(ti,xi,y);

Рис.3,а. Численное решение уравнения (10) по разностной схеме (7а) при выполнении условия Куранта Рис.3,б. Численное решение уравнения (10) по разностной схеме (7а) с нарушением условия Куранта (8)

Сравним сейчас численное решение задачки (10) и аналитическое решение (11). На листинге_№2 приведен код соответственной программки. В программке считается, что t Линейное уравнение переноса = 0.5h/c и варьируется шаг по месту. На рис.4 приведен результат работы кода программки листинга_№2 в виде кривой зависимости дела ошибки численного решения к шагу сетки const(h) = зависимо от шага сетки h. Из условия аппроксимации разностной схемой (7а) начального уравнения (3) с порядком O(t + h) следует, что величина const Линейное уравнение переноса(h) должна стремиться к некой константе по мере того, как h ® 0. Такая тенденция видна на рис.4.

Листинг_№2

%Программка численного решения уравнения

%переноса du/dt+cdu/dx=tx

%u(0,x)=x^3/(12c^2), u(t,0)=(ct^3)/12 и

%сопоставление его с аналитическим решением

function schm1_conv

global c

%определяем параметр скорости переноса c,

%также отрезок времени интегрирования T Линейное уравнение переноса и

%спектр конфигурации пространственной

%переменной a

c=0.25; T=2; a=1; h=0.2;

%определяем количество делений шага h напополам

kmax=7;

for k=1:kmax

%делим шаг h напополам

h=h/2;

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

%пропорциональным шагу по месту

tau=0.5*h/c; r=(c*tau)/h;

%определяем сетки по времени и по месту

t=0:tau:T; x=0:h:a;

%определяем Линейное уравнение переноса изначальное значение u(0,x)=x^3/(12c^2)

for j=1:length(x)

y(1,j)=x(j)^3/(12*c^2);

end

%организуем расчет по разностной схеме (7а)

for i=1:(length(t)-1)

%определяем левое граничное значение

%u(t,0)=(ct^3)/12

y(i+1,1)=(c*t(i+1)^3)/12;

for j=2:length(x)

y(i+1,j)=(1-r)*y(i,j Линейное уравнение переноса)+r*y(i,j-1)+...

tau*(t(i)+0.5*tau)*(x(j)-0.5*h);

end

end

for i=1:length(t)

for j=1:length(x)

yt(i,j)=абс(y(i,j)-ya(t(i),x(j)));

end

end

step(k)=h;

%определяем ошибку численного решения в норме C

%и делим ее на шаг сетки h

const(k)=max(max Линейное уравнение переноса(yt))/h;

end

%рисуем зависимость предстепенной константы от

%шага сетки h

plot(step,const,'-*','MarkerSize',12);

%функция, возвращающая аналитическое решение

function z=ya(t,x)

global c

z=(1/(8*c^2))*(x+c*t)*((x+c*t)^2/3-(x-c*t)^2);

if (x-c*t)>=0

z=z+(x-c*t)^3/(6*c^2);

else

z=z-(x-c*t)^3/(6*c^2);

end

Разностная схема Линейное уравнение переноса (7б) исследуется аналогично. Для исследования аппроксимации разложение в ряд Тейлора комфортно проводить в округи узла (xn -1,tm + t). Для два раза безпрерывно дифференцируемого решения данная схема при выполнении условия стойкости

ct ³ h (12)

обеспечивает сходимость со скоростью O(t + h).

Разностная схема (7в) непременно устойчива и на два раза Линейное уравнение переноса безпрерывно дифференцируемых решениях сходится к четкому решению со скоростью O(t + h).

Разностная схема (7г) симметричная и следует ждать, что порядок ее аппроксимации выше, чем в прошлых членах. Для оценки порядка аппроксимации разложение в ряд Тейлора комфортно провести в округи центра ячейки . После проведения соответственных выкладок, можно отыскать Линейное уравнение переноса оценку невязки:

. (13)

Тем схема (7г) имеет 2-ой порядок аппроксимации, когда решения имеют непрерывные производные прямо до третьей.

Рис.4. Зависимость предстепенной константы в оценке ошибки
численного решения от шага сетки

Устойчивость разностной схемы (7г) исследуем при помощи способа разделения переменных. Подставляя в (7г)

,

найдем значение коэффициента роста Фурье-гармоники при переходе со Линейное уравнение переноса слоя на слой:

. (14)

Из оценки (14) следует, что для хоть какой гармоники и при всех соотношениях шагов. Это значит, что схема (7г) непременно и умеренно устойчива по исходным данным в норме .

Исследуем разностную схему (7г) на предмет сходимости в 2-ух нормах: и . На листинге_№3 приведен код программки для исследования сходимости схемы (7г Линейное уравнение переноса) на примере численного решения задачки (10) и сопоставления приобретенного решения с аналитическим решением (11). В программке рассчитываются зависимости предстепенных констант const(h) для 2-ух норм от шага сетки h, при всем этом считается, что t = 0.5h/c. Согласно теоретическим оценками, предстепенная константа const(h) = должна выходить на некое неизменное Линейное уравнение переноса значение при h ® 0.

Листинг_№3

%Программка численного решения уравнения

%переноса du/dt+cdu/dx=tx

%u(0,x)=x^3/(12c^2), u(t,0)=(ct^3)/12 и

%сопоставление его с аналитическим решением

function schm4_conv

global c

%определяем параметр скорости переноса c,

%также отрезок времени интегрирования T и

%спектр конфигурации пространственной

%переменной a

c=0.25; T=2; a=1; h=0.2;

%определяем количество делений шага h напополам

kmax=7;

for k=1:kmax

%делим Линейное уравнение переноса шаг h напополам

h=h/2;

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

%пропорциональным шагу по месту

tau=0.5*h/c; r=(c*tau)/h;

%определяем сетки по времени и по месту

t=0:tau:T; x=0:h:a;

%определяем изначальное значение u(0,x)=x^3/(12c^2)

for j=1:length(x)

y(1,j)=x(j)^3/(12*c Линейное уравнение переноса^2);

end

%организуем расчет по разностной схеме (7г)

for i=1:(length(t)-1)

%определяем левое граничное значение

%u(t,0)=(ct^3)/12

y(i+1,1)=(c*t(i+1)^3)/12;

for j=2:length(x)

y(i+1,j)=((r-1)/(r+1))*...

(y(i+1,j-1)-y(i,j))+y(i,j-1)+...

2*(tau/(r+1))*(t(i)+0.5*tau)*(x(j)-0.5*h);

end

end

for Линейное уравнение переноса i=1:length(t)

for j=1:length(x)

yt(i,j)=абс(y(i,j)-ya(t(i),x(j)));

end

end

s=0;

for i=2:(length(t)-1)

for j=2:(length(x)-1)

s=s+tau*h*(y(i,j)-ya(t(i),x(j)))^2;

end

end

step(k)=h;

%оцениваем ошибку численного решения в нормах

%l2 и C и Линейное уравнение переноса делим эти оценки на квадрат шага h^2

constl2(k)=max(max(yt))/h^2;

constC(k)=sqrt(s)/h^2;

end

%рисуем зависимость предстепенной константы в

%оценке ошибки от шага сетки h

plot(step,constl2,'-*',step,constC,'-p','MarkerSize',12);

%функция, возвращающая аналитическое решение

function z=ya(t,x)

global c

z=(1/(8*c^2))*(x+c Линейное уравнение переноса*t)*((x+c*t)^2/3-(x-c*t)^2);

if (x-c*t)>=0

z=z+(x-c*t)^3/(6*c^2);

else

z=z-(x-c*t)^3/(6*c^2);

end

На рис.5 приведен результат работы программки листинга_№3. Ясно видно, что и в норме , и в норме численное решение по разностной схеме (7г) сходится к аналитическому решению со вторым Линейное уравнение переноса порядком точности по t и h.

Рис.5. Зависимости предстепенных констант в оценках ошибок
численного решения для 2-ух норм


lihoradka-cucugamushi-referat.html
lihoradka-yarmarochnoj-nochi-10-glava.html
lihoradka-yarmarochnoj-nochi-16-glava.html