Здравствуйте. Ранее в Maple ставил изредка простые задачи для популярных уравнений типа теплопроводности или колебания - чисто, чтобы посмотреть, как это выглядит. Опирался в этом деле на Help самой программы (
раз,
два,
три,
четыре) и до сегодняшнего дня не парился - не особо умел, да и не было нужды. Поэтому попрошу навести прицел на ошибку или указать, что не так.
Есть уравнение в частных производных (pde) на функцию
![$q(X,T)$ $q(X,T)$](https://dxdy-02.korotkov.co.uk/f/9/5/e/95ec98c3da635d96221f240c257e0d4382.png)
c мнимой единицей в качестве коэффициента.
Есть на плоскости
![$(X,T)$ $(X,T)$](https://dxdy-02.korotkov.co.uk/f/d/4/9/d496d48ab85c02fcb231446bcabf7a0182.png)
кривая с началом в
![$(0,0)$ $(0,0)$](https://dxdy-03.korotkov.co.uk/f/e/6/6/e660f3b58b414524ec6f82741102107382.png)
, допустим, полукубическая парабола
![$X(T)=\pm a (-b T)^{3/2}$ $X(T)=\pm a (-b T)^{3/2}$](https://dxdy-02.korotkov.co.uk/f/5/c/e/5cee646aa9da5c0030ad338879b2a78b82.png)
, где константы
![$a, b$ $a, b$](https://dxdy-02.korotkov.co.uk/f/5/f/8/5f8c6707c3c404791835c4d82736cf4f82.png)
известны. Полагается рассмотрение отрицательных
![$T$ $T$](https://dxdy-03.korotkov.co.uk/f/2/f/1/2f118ee06d05f3c2d98361d9c30e38ce82.png)
.
Условия такие:
(bc2). От левой ветви (не включительно) этой кривой до
![$X=0$ $X=0$](https://dxdy-04.korotkov.co.uk/f/b/c/a/bca0701b83e430a17ccc917b8bc3da0682.png)
(включительно) функция равна некоторой функции
![$q(X,T^{*})=q_1 (X,T^{*})$ $q(X,T^{*})=q_1 (X,T^{*})$](https://dxdy-02.korotkov.co.uk/f/5/8/b/58bc044d6b486d83a2a798b38bbe59f282.png)
, от
![$X=0$ $X=0$](https://dxdy-04.korotkov.co.uk/f/b/c/a/bca0701b83e430a17ccc917b8bc3da0682.png)
(включительно) до правой ветви (не включительно) - другой функции
![$q(X,T^{*})=q_3 (X,T^{*})$ $q(X,T^{*})=q_3 (X,T^{*})$](https://dxdy-02.korotkov.co.uk/f/1/1/5/115dcaf0dfbbec7d9a5dc59724dcb47c82.png)
.
(bc1). Левее левой ветви и правее правой полагаем, что
![$q=0$ $q=0$](https://dxdy-03.korotkov.co.uk/f/2/6/a/26a2e8743c2ccff36e19e5da9ec4d69f82.png)
.
Для кривой
![$X(T)=\pm a (-b T)^{3/2}$ $X(T)=\pm a (-b T)^{3/2}$](https://dxdy-02.korotkov.co.uk/f/5/c/e/5cee646aa9da5c0030ad338879b2a78b82.png)
рассматриваем разные значения
![$T=T^{*}$ $T=T^{*}$](https://dxdy-04.korotkov.co.uk/f/f/e/6/fe6280eac3e7499e3b238f38dfb05e9682.png)
, соответственно меняем и краевые условия, подставляя в них выбранное
![$T=T^{*}$ $T=T^{*}$](https://dxdy-04.korotkov.co.uk/f/f/e/6/fe6280eac3e7499e3b238f38dfb05e9682.png)
. То есть, одну и ту же задачу решаем несколько раз для разных значений
![$T=T^{*}$ $T=T^{*}$](https://dxdy-04.korotkov.co.uk/f/f/e/6/fe6280eac3e7499e3b238f38dfb05e9682.png)
.
И вот, что я скармливаю Maple, выбрав
![$T^{*}=-9$ $T^{*}=-9$](https://dxdy-04.korotkov.co.uk/f/b/5/6/b56fbdaa7ab5c2273dc7e37a20d4d2a382.png)
и подставив его в уравнение кривой и в нужные функции. Подразумевается, что вычислять надо не всюду, а для конечного отрезка
![$X$ $X$](https://dxdy-01.korotkov.co.uk/f/c/b/f/cbfb1b2a33b28eab8a3e59464768e81082.png)
от
![$-1000$ $-1000$](https://dxdy-01.korotkov.co.uk/f/c/d/9/cd9981ea0a7b60c42e599e40874e479882.png)
до
![$1000$ $1000$](https://dxdy-03.korotkov.co.uk/f/6/7/5/675eeb554f7b336873729327dab9803682.png)
.
Код:
bc1 := {q(X, -9) = piecewise(X > 6*sqrt(3), 0, X < -6*sqrt(3), 0)}
Код:
bc2 := {q(X, -9) = piecewise(0 >= X and X > -6*sqrt(3), q1, 0 <= X and X < 6*sqrt(3), q3)};
Код:
pdsolve(pde, bc1 union bc2, numeric, time = T, range = -1000 .. 1000)
На что получаем ответ:
Код:
Error, (in pdsolve/numeric) initial/boundary conditions must be defined at one or two points for each independent variable
То есть, условия надо определить для каждой независимой переменной функции
![$q(X,T)$ $q(X,T)$](https://dxdy-02.korotkov.co.uk/f/9/5/e/95ec98c3da635d96221f240c257e0d4382.png)
в одной или двух точках. Но у меня нет больше условий. Ни на производные, ни на
![$X$ $X$](https://dxdy-01.korotkov.co.uk/f/c/b/f/cbfb1b2a33b28eab8a3e59464768e81082.png)
, а
![$T$ $T$](https://dxdy-03.korotkov.co.uk/f/2/f/1/2f118ee06d05f3c2d98361d9c30e38ce82.png)
и так в деле.
Может, взять функции
![$q_1, q_3$ $q_1, q_3$](https://dxdy-03.korotkov.co.uk/f/a/b/6/ab6ee3275a66399f08ebc8e10740e4b082.png)
, подставить
![$T^{*}=-9$ $T^{*}=-9$](https://dxdy-04.korotkov.co.uk/f/b/5/6/b56fbdaa7ab5c2273dc7e37a20d4d2a382.png)
в их производные, дополнить условия? Но это выглядит излишним.
Полагаю, ошибка в самой команде pdsolve или в принципиальной постановке задачи. Буду признателен, если поможете разобраться. К сожалению, сам пока не понял.