Commit 7f84150f authored by Jakob Knollmueller's avatar Jakob Knollmueller
Browse files

documentation for DOF stuff added

parent 8e516415
......@@ -21,7 +21,15 @@ from .structured_domain import StructuredDomain
class DOFSpace(StructuredDomain):
"""Generic degree-of-freedom space."""
"""Generic degree-of-freedom space. It is defined as the domain of some DOFDistributor.
Its entries represent the underlying degrees of freedom of some other space, according
to the dofdex.
dof_weights: 1-D numpy array
A numpy array containing the multiplicity of each individual degree of freedom.
_needed_for_hash = ["_dvol"]
......@@ -26,8 +26,24 @@ from import DOFSpace
class DOFDistributor(LinearOperator):
"""Operator transforming between a DOFSpace and any other domain by means
of distribution/projection."""
"""Operator which distributes actual degrees of freedom (dof) according to some
distribution scheme into a higher dimensional space. This distribution scheme is
defined by the dofdex, a degree of freedom index, which associates the entries within
the operators domain to locations in its target. This operators domain is a DOFSpace,
which is defined according to the distribution scheme.
dofdex: Field of integers
An integer Field on exactly one Space establishing the association between the
locations in the operators target and the underlying degrees of freedom in its domain.
It has to start at 0 and it increases monotonicly, no empty bins are allowed.
target: Domain, tuple of Domain, or DomainTuple, optional
The target of the operator. If not specified, the domain of the dofdex is used.
space: int, optional:
The index of the sub-domain on which the operator acts.
Can be omitted if `target` only has one sub-domain.
def __init__(self, dofdex, target=None, space=None):
super(DOFDistributor, self).__init__()
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment