2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Решение системы УрЧП Mathematica
Сообщение19.05.2019, 19:39 


19/05/19
5
Уважаемые коллеги, прошу помощи в решении системы УрЧП в Mathematica 11.3.

Код:
NDSolveValue[{
  \!\(
\*SubscriptBox[\(\[PartialD]\), \(t\)]\(h[t, x, y]\)\) == d \!\(
\*SubscriptBox[\(\[PartialD]\), \(y, y\)]\(h[t, x, y]\)\),
  \!\(
\*SubscriptBox[\(\[PartialD]\), \(t\)]\(u[t, x]\)\) == -(1/c) 1/T \!\(
\*SubscriptBox[\(\[PartialD]\), \(x\)]\(u[t, x]\)\) -
    b/c (0.5 M + Q) (u[t, x] - w[t, x]), \!\(
\*SubscriptBox[\(\[PartialD]\), \(t\)]\(v[t, x]\)\) == -(1/c) 1/T \!\(
\*SubscriptBox[\(\[PartialD]\), \(x\)]\(v[t, x]\)\) +
    R b/c (2 u[t, x] (1 - u[t, x]) - v[t, x]) +
    M b/c (u[t, x] (1 - w[t, x]) + w[t, x] (1 - u[t, x]) - v[t, x]) +
    Q b/c (2 w[t, x] (1 - w[t, x]) - v[t, x]),
   \!\(
\*SubscriptBox[\(\[PartialD]\), \(t\)]\(w[t,
      x]\)\) == (0.5 M + Q) (u[t, x] - w[t, x]) -
     d*Derivative[0, 0, 1][h][t, x, y] /. y -> 0,
  u[0, x] == 0,
  v[0, x] == 0,
  w[0, x] == 0,
  h[0, x, y] == 0,
   u[t, 0] == 1/(1 + E^(-((t - 200.84)/1.0614)))^1.333,
   v[t, 0] == 0
  }, {h, u, v, w}, {x, 0, 1}, {y, 0, 1}, {t, 0, 100}]


возвращает
Код:
Function::fpct: Too many parameters in {t,x,y} to be filled from Function[{t,x,y},0][t,x].

Function::fpct: Too many parameters in {t,x,y} to be filled from Function[{t,x,y},0][t,x].

Transpose::nmtx: The first two levels of {NDSolve`xs$21505,u,v,w} cannot be transposed.

Part::partw: Part 2 of Transpose[{NDSolve`xs$21505,u,v,w}] does not exist.

Transpose::nmtx: The first two levels of {NDSolve`xs$21505,Function[{t,x,y},0],Function[{t,x,y},0],Function[{t,x,y},0]} cannot be transposed.

Part::partw: Part 2 of Transpose[{NDSolve`xs$21505,Function[{t,x,y},0],Function[{t,x,y},0],Function[{t,x,y},0]}] does not exist.

Set::partw: Part 2 of Transpose[{NDSolve`xs$21505,u,v,w}] does not exist.

Rule::argr: Rule called with 1 argument; 2 arguments are expected.


Спасибо за любую помощь и советы в решении проблемы.

 Профиль  
                  
 
 Re: Решение системы УрЧП Mathematica
Сообщение19.05.2019, 21:55 


19/05/19
5
Если убрать первое уравнение диффузии и связанную с ним первую производную из уравнения 4 вместе в начальными условиями, то система решается. Возможно, я неправильно записываю первую производную в точке $y=0$ в уравнении 4?

Ниже "решаемая" система без диффузии
Код:
NDSolveValue[{
   
    \!\(
\*SubscriptBox[\(\[PartialD]\), \(t\)]\(u[t, x]\)\) == -(1/c) 1/T \!\(
\*SubscriptBox[\(\[PartialD]\), \(x\)]\(u[t, x]\)\) -
        b/c (0.5 M + Q) (u[t, x] - w[t, x]), \!\(
\*SubscriptBox[\(\[PartialD]\), \(t\)]\(v[t, x]\)\) == -(1/c) 1/T \!\(
\*SubscriptBox[\(\[PartialD]\), \(x\)]\(v[t, x]\)\) +
        R b/c (2 u[t, x] (1 - u[t, x]) - v[t, x]) +
        M b/
      c (u[t, x] (1 - w[t, x]) + w[t, x] (1 - u[t, x]) - v[t, x]) +
        Q b/c (2 w[t, x] (1 - w[t, x]) - v[t, x]),
     \!\(
\*SubscriptBox[\(\[PartialD]\), \(t\)]\(w[t,
     x]\)\) == (0.5 M + Q) (u[t, x] - w[t, x]),
    u[0, x] == 0,
    v[0, x] == 0,
    w[0, x] == 0,
   
     u[t, 0] == 1/(1 + E^(-((t - 200.84)/1.0614)))^1.333,
     v[t, 0] == 0
    }, {u, v, w}, {x, 0, 1}, {t, 0, 100}]

Спасибо за любую помощь

 Профиль  
                  
 
 Re: Решение системы УрЧП Mathematica
Сообщение19.05.2019, 21:58 
Заслуженный участник


27/04/09
28128
Эту?: Derivative[0, 0, 1][h][t, x, y] /. y -> 0
Да, наверно стоит писать или Derivative[0, 0, 1][h][t, x, 0], или (D[h[t, x, y], y] /. y -> 0) Не знаю, насколько второе будет понято, но первое должно бы. (Не проверял, у меня восьмая версия и нету NDSolveValue.)

 Профиль  
                  
 
 Re: Решение системы УрЧП Mathematica
Сообщение19.05.2019, 22:53 


19/05/19
5
Спасибо! Попробовал, проблема осталась.
Правильно ли я понимаю, что первая ошибка, что возвращает $Mathematica$, указывает на то, что ей не нравится количество переменных в функции $h$? И то, что в остальных функциях их (переменных) только две?

 Профиль  
                  
 
 Re: Решение системы УрЧП Mathematica
Сообщение19.05.2019, 23:49 
Заслуженный участник


27/04/09
28128
Не рискну ничего конкретного утверждать (такое не попадалось), но проблема с количеством аргументов где-то точно. Пока не пришёл кто-то ближе с этим сталкивавшийся, можно попробовать заменить {h, u, v, w} на {h[t, x, y], u[t, x], v[t, x], w[t, x]} — может статься, что проблема применения не того числа аргументов возникает именно при попытке системы списки аргументов здесь восстановить.

Если вдруг поможет — хорошо. Не могу предугадать, должно ли, если сработает, это убрать остальные ошибки.

 Профиль  
                  
 
 Re: Решение системы УрЧП Mathematica
Сообщение20.05.2019, 18:57 


19/05/19
5
arseniiv, спасибо! Попробовал Ваш вариант, не помогло.
Видимо, она понимает, сколько переменных в какой функции, но не хочет переваривать это. Может быть, у кого-то есть еще идеи или похожие примеры, у меня фантазия закончилась.

 Профиль  
                  
 
 Re: Решение системы УрЧП Mathematica
Сообщение21.05.2019, 10:34 
Заслуженный участник


25/02/11
1786
В этом посте сказано, что NDSolve не умеет решать системы с функциями, имеющими разные области определения. Как вариант, можно все определить все функции от аргументов $t,x,y$ и добавить уравнения $\partial_yv(t,x,y)=0,\ldots$ Вдруг зарешает :-)

 Профиль  
                  
 
 Re: Решение системы УрЧП Mathematica
Сообщение21.05.2019, 20:20 


19/05/19
5
Vince Diesel, большое спасибо за ссылку, очень ценная информация, пойду изучать.
Переопределение функций от двух переменных функциями от трех переменных с дополнительными условиями на $\partial _y$ к успеху не привело - Mathematica продолжила возвращать ошибку, правда теперь связанную с переопределенностью системы.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group