2014-01-23 6 views
3

Я пытаюсь решить сложный PDE с FiPy. Похоже, что FiPY не поддерживает сложные аргументы, и общий совет, похоже, состоит в том, чтобы разделить PDE, решить отдельно, а затем рекомбинировать. Это все еще так?Решение сложных PDE в Python с помощью FiPY

Во-вторых, я не вижу способа установить не постоянные начальные условия. Предположим, я хотел бы, чтобы моя сетка не имела одинакового значения в каждой ячейке, есть ли более простой способ сделать это, кроме использования setValue?

спасибо.

ответ

5

FiPy не поддерживает сложные аргументы, но поддерживает решение для векторов, что может немного упростить вашу задачу.

См. Последнюю часть this coupled Cahn-Hilliard simulation.

Это, безусловно, возможно установить неравномерные начальные условия. См.: examples/cahnHilliard/mesh2DCoupled.py о том, как установить начальное условие в случайное поле или examples/diffusion/electrostatics.py и и что-нибудь в examples/phase/ для того, как установить начальное условие на основе координат. Как вы можете видеть в этих примерах, существует несколько различных синтаксисов, которые работают, но setValue() - совершенно законный способ сделать это.

+0

Спасибо, мне удалось заставить его работать с помощью метода setValue(). – Ashiataka

 Смежные вопросы

  • Нет связанных вопросов^_^