FiPy: A Finite Volume PDE Solver Using Python

SVN usage

All stages of FiPy development are archived in a Subversion (SVN) repository at MatForge. You can browse through the code at http://matforge.org/fipy/browser and, using an SVN client, you can download various tagged revisions of FiPy depending on your needs.

Attention!

Be sure to follow the Installation Guide to obtain all the prerequisites for FiPy .

SVN client

An svn client application is needed in order to fetch files from our repository. This is provided on many operating systems (try executing which svn) but needs to be installed on many others. The sources to build Subversion, as well as links to various pre-built binaries for different platforms, can be obtained from http://subversion.tigris.org.

Mac OS X client

You can obtain a binary installer of svn from

http://www.codingmonkeys.de/mbo/

Alternatively, if you are using Fink, then you can execute the command:

$ sudo apt-get install svn-client

If you prefer a GUI, after you install svn, you can obtain svnX from

http://www.lachoseinteractive.net/en/community/subversion/svnx

SVN tags

In general, most users will not want to download the very latest state of FiPy , as these files are subject to active development and may not behave as desired. Most users will not be interested in particular version numbers either, but instead with the degree of code stability. Different "tracking tags" are used to indicate different stages of FiPy development. You will need to decide on your own risk tolerance when deciding which stage of development to track.

A fresh copy of FiPy that is designated by a particular <tag> can be obtained with:

$ svn checkout http://matforge.org/svn/fipy/<tag>

An existing SVN checkout of FiPy can be shifted to a different state of development by issuing the command:

$ svn switch http://matforge.org/svn/fipy/<tag> .

in the base directory of the working copy. The main tags (<tag>) for FiPy, in decreasing order of stability, are:

trunk
designates the latest revision of any file present in the repository. FiPy is not guaranteed to pass its tests or to be in a consistent state when checked out under this tag.

In addition:

tags/version-x_y
designates a released version x.y. Any released version of FiPy will be designated with a fixed tag: The current version of FiPy is 2.0.2.
branches/version-x_y
designates a line of development based on a previously released version (i.e., if current development work is being spent on version 0.2, but a bug is found and fixed in version 0.1, that fix will be tagged as tags/version-0_1_1, and can be obtained from branches/version-0_1).

Any other tags will not generally be of interest to most users.

Note

We formerly provided tags/STABLE and tags/CURRENT. Our experience has been that these tags serve little purpose. They were invariably set to point at the same revision and that was frequently far out of date from what we were using for our own research. Rather than trying to make these tags relevant, we think it's preferable to direct users to track either trunk or some specific version-x_y. An existing working copy can be switched with, e.g.,:

$ svn switch http://matforge.org/svn/fipy/trunk

For some time now, we have done all significant development work on branches, only merged back to trunk when the tests pass successfully. Although we cannot guarantee that trunk will never be broken, you can always check our build status page

http://matforge.org/fipy/build

to find the most recent revision that it is running acceptably.

For those who are interested in learning more about Subversion, the canonical manual is the online Subversion Red Bean book .

Cahn Hilliard

Cahn Hilliard

Dendrite

Phase Field

Superfill

Level Set