Overview¶
The FiPy framework includes terms for transient diffusion, convection and standard sources, enabling the solution of arbitrary combinations of coupled elliptic, hyperbolic and parabolic PDEs. Currently implemented models include phase field [1] [2] [3] treatments of polycrystalline, dendritic, and electrochemical phase transformations, as well as drug eluting stents [4], reactive wetting [5], photovoltaics [6] and a level set treatment of the electrodeposition process [7].
Even if you don’t read manuals…¶
…please read Installation, Using FiPy and Frequently Asked Questions, as well
as examples.diffusion.mesh1D
.
Download and Installation¶
Please refer to Installation for details on download and installation. FiPy can be redistributed and/or modified freely, provided that any derivative works bear some notice that they are derived from it, and any modified versions bear some notice that they have been modified.
Support¶
We offer several modes to communicate with the FiPy developers and with other users.
We welcome collaborative efforts on this project.
Conventions and Notation¶
FiPy is driven by Python script files than you can view or modify in any text editor. FiPy sessions are invoked from a command-line shell, such as tcsh or bash.
Throughout, text to be typed at the keyboard will appear like this
.
Commands to be issued from an interactive shell will appear:
$ like this
where you would enter the text (”like this
”) following the shell prompt,
denoted by “$
”.
Text blocks of the form:
>>> a = 3 * 4
>>> a
12
>>> if a == 12:
... print "a is twelve"
...
a is twelve
are intended to indicate an interactive session in the Python interpreter.
We will refer to these as “interactive sessions” or as “doctest blocks”.
The text “>>>
” at the beginning of a line denotes the primary prompt,
calling for input of a Python command. The text “...
” denotes the
secondary prompt, which calls for input that continues from the line
above, when required by Python syntax. All remaining lines, which begin
at the left margin, denote output from the Python interpreter. In all
cases, the prompt is supplied by the Python interpreter and should not be
typed by you.
Warning
Python is sensitive to indentation and care should be taken to enter text exactly as it appears in the examples.
When references are made to file system paths, it is assumed that the current working directory is the FiPy distribution directory, referred to as the “base directory”, such that:
examples/diffusion/steadyState/mesh1D.py
will correspond to, e.g.:
/some/where/FiPy-X.Y/examples/diffusion/steadyState/mesh1D.py
Paths will always be rendered using POSIX conventions (path elements
separated by “/
”). Any references of the form:
examples.diffusion.steadyState.mesh1D
are in the Python module notation and correspond to the equivalent POSIX path given above.
We may at times use a
Note
to indicate something that may be of interest
or a
Warning
to indicate something that could cause serious problems.