Bookmark and Share FiPy: A Finite Volume PDE Solver Using Python
Version 2.1.3

This Page

Contact

FiPy developers
Jonathan Guyer
Daniel Wheeler
James Warren

Join our mailing list

100 Bureau Drive, M/S 6555
Gaithersburg, MD 20899

301-975-5329 Telephone
301-975-4553 Facsimile

boundaryConditions Package Documentation

This page contains the boundaryConditions Package documentation.

The boundaryCondition Module

class fipy.boundaryConditions.boundaryCondition.BoundaryCondition(faces, value)

Generic boundary condition base class.

Attention

This class is abstract. Always create one of its subclasses.

Parameters :
  • faces: A list or tuple of Face objects to which this condition applies.
  • value: The value to impose.

The BoundaryCondition class should raise an error when invoked with internal faces. Don’t use the BoundaryCondition class in this manner. This is merely a test.

>>> from fipy.meshes.grid1D import Grid1D
>>> mesh = Grid1D(nx = 2)
>>> from fipy.tools import parallel
>>> if parallel.procID == 0:
...     bc = __BoundaryCondition(mesh.getInteriorFaces(), 0)
... else:
...     raise IndexError("Face list has interior faces")
Traceback (most recent call last):
    ...
IndexError: Face list has interior faces

The fixedFlux Module

class fipy.boundaryConditions.fixedFlux.FixedFlux(faces, value)

Bases: fipy.boundaryConditions.boundaryCondition.BoundaryCondition

The FixedFlux boundary condition adds a contribution, equivalent to a fixed flux (Neumann condition), to the equation’s RHS vector. The contribution, given by value, is only added to entries corresponding to the specified faces, and is weighted by the face areas.

Creates a FixedFlux object.

Parameters :
  • faces: A list or tuple of Face objects to which this condition applies.
  • value: The value to impose.

The fixedValue Module

class fipy.boundaryConditions.fixedValue.FixedValue(faces, value)

Bases: fipy.boundaryConditions.boundaryCondition.BoundaryCondition

The FixedValue boundary condition adds a contribution, equivalent to a fixed value (Dirichlet condition), to the equation’s RHS vector and coefficient matrix. The contributions are given by -\mathtt{value}
\times G_{\text{face}} for the RHS vector and G_{\text{face}} for the coefficient matrix. The parameter G_{\text{face}} represents the term’s geometric coefficient, which depends on the type of term and the mesh geometry.

Contributions are only added to entries corresponding to the specified faces.

Parameters :
  • faces: A list or tuple of Face objects to which this condition applies.
  • value: The value to impose.

The BoundaryCondition class should raise an error when invoked with internal faces. Don’t use the BoundaryCondition class in this manner. This is merely a test.

>>> from fipy.meshes.grid1D import Grid1D
>>> mesh = Grid1D(nx = 2)
>>> from fipy.tools import parallel
>>> if parallel.procID == 0:
...     bc = __BoundaryCondition(mesh.getInteriorFaces(), 0)
... else:
...     raise IndexError("Face list has interior faces")
Traceback (most recent call last):
    ...
IndexError: Face list has interior faces

The nthOrderBoundaryCondition Module

class fipy.boundaryConditions.nthOrderBoundaryCondition.NthOrderBoundaryCondition(faces, value, order)

Bases: fipy.boundaryConditions.boundaryCondition.BoundaryCondition

This boundary condition is generally used in conjunction with a ImplicitDiffusionTerm that has multiple coefficients. It does not have any direct effect on the solution matrices, but its derivatives do.

Creates an NthOrderBoundaryCondition.

Parameters :
  • faces: A list or tuple of Face objects to which this condition applies.
  • value: The value to impose.
  • order: The order of the boundary condition. An order of 0 corresponds to a FixedValue and an order of 1 corresponds to a FixedFlux. Even and odd orders behave like FixedValue and FixedFlux objects, respectively, but apply to higher order terms.

The test Module

Test numeric implementation of the mesh