Skip to content

Commit

Permalink
Merge branch 'mapdes/subdomain_id_int_types'
Browse files Browse the repository at this point in the history
  • Loading branch information
Martin Sandve Alnæs committed Oct 6, 2016
2 parents 34a0867 + db8cd42 commit b98bf5e
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 5 deletions.
5 changes: 3 additions & 2 deletions ufl/algorithms/domain_analysis.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
from ufl.form import Form
from ufl.sorting import cmp_expr, sorted_expr
from ufl.utils.sorting import canonicalize_metadata, sorted_by_key, sorted_by_tuple_key
import numbers


class IntegralData(object):
Expand Down Expand Up @@ -143,10 +144,10 @@ def group_integrals_by_domain_and_type(integrals, domains):
def integral_subdomain_ids(integral):
"Get a tuple of integer subdomains or a valid string subdomain from integral."
did = integral.subdomain_id()
if isinstance(did, int):
if isinstance(did, numbers.Integral):
return (did,)
elif isinstance(did, tuple):
ufl_assert(all(isinstance(d, int) for d in did),
ufl_assert(all(isinstance(d, numbers.Integral) for d in did),
"Expecting only integer subdomains in tuple.")
return did
elif did in ("everywhere", "otherwise"):
Expand Down
7 changes: 4 additions & 3 deletions ufl/measure.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
from ufl.utils.dicts import EmptyDict
from ufl.domain import as_domain, AbstractDomain, extract_domains
from ufl.protocols import id_or_none, metadata_equal, metadata_hashdata
import numbers


# Export list for ufl.classes
Expand Down Expand Up @@ -165,9 +166,9 @@ def __init__(self,
# Accept "everywhere", single subdomain, or multiple
# subdomains
ufl_assert(subdomain_id in ("everywhere",) or
isinstance(subdomain_id, int) or
isinstance(subdomain_id, numbers.Integral) or
(isinstance(subdomain_id, tuple) and
all(isinstance(did, int) for did in subdomain_id)),
all(isinstance(did, numbers.Integral) for did in subdomain_id)),
"Invalid subdomain_id.")
self._subdomain_id = subdomain_id

Expand Down Expand Up @@ -414,7 +415,7 @@ def __rmul__(self, integrand):

# Check that we have an integer subdomain or a string
# ("everywhere" or "otherwise", any more?)
ufl_assert(isinstance(subdomain_id, (int, string_types)),
ufl_assert(isinstance(subdomain_id, string_types + (numbers.Integral,)),
"Expecting integer or string domain id.")

# If we don't have an integration domain, try to find one in
Expand Down

0 comments on commit b98bf5e

Please sign in to comment.