Нелинейный HJB PDE с использованием Fipy, перевод PDE - PullRequest
0 голосов
/ 03 мая 2020

Я пытаюсь решить нелинейное уравнение PDE HJB, используя FiPy, но у меня есть некоторые трудности с переводом PDE в правильный синтаксис FiPy:

Я пробовал что-то вроде: eqX = TransientTerm () = = -DiffusionTerm (coeff = 1) + (phi.faceGrad * phi.faceGrad) и не работает из-за квадрата градиента

Мое уравнение: (du / dt = - \ delta u + || \ grad (u) || ^ 2)

Позволяет ли FiPy решать уравнения такого типа? если нет, то есть ли пакет или способ решить его, используя конечную разницу? Спасибо!

1 Ответ

1 голос
/ 04 мая 2020

Можно преобразовать последний термин в диффузионный и исходный, чтобы уравнение можно было переписать в виде

eqn = TransientTerm() = DiffusionTerm(u - 1) - u * u.faceGrad.divergence

Это не даст ошибку, но может быть не очень стабильный

...