Как решить двумерное уравнение Пуассона с симпти? - PullRequest
0 голосов
/ 31 октября 2018

У меня есть уравнение Пуассона в 2D-пространстве, как это:

formula

Вот моя попытка решить:

import sympy as sp

x, y = sp.symbols('x, y')
f = sp.Function('f')
u = f(x, y)
eq = sp.Eq(u.diff(x, 2) + u.diff(y, 2), u)
print(sp.pdsolve(eq))

выдает ошибку:

psolve: Cannot solve -f(x, y) + Derivative(f(x, y), x, x) + Derivative(f(x, y), y, y)

Можно ли использовать sympy для таких уравнений? Пожалуйста, помогите мне с примером, если это возможно.

1 Ответ

0 голосов
/ 01 ноября 2018

В нижней части страницы решения PDE вы найдете

В настоящее время реализованы решающие методы

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

Ничего второго порядка. Что неудивительно, потому что такие PDE не допускают явных символических решений, за некоторыми (в основном неинтересными) исключениями. (Если уравнение действительно Eq(u.diff(x, 2) + u.diff(y, 2), u) с нулевым условием Неймана, то решение тождественно равно нулю.) Дело не только в том, что SymPy не знает, как найти символическое решение - такого решения не существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...