Internal API Reference
This is an exhaustive list of all non-exported modules, constants, types, functions and macros in DomainSets.jl.
Unexported functions and types are subject to change across different releases of the package, even if the release is said to be non-breaking. This overview is useful to better understand or to help develop the internals of DomainSets.
Constants
Functions
DomainSets.FunctionMaps.toexternalpoint — MethodInverse of tointernalpoint.
DomainSets.FunctionMaps.tointernalpoint — MethodTranslate a point of the lazy domain to a point (or points) of the composing domain.
DomainSets.combine — FunctionCombine the outputs of in of member domains into a single output of the lazy domain.
DomainSets.domain_tolerance — MethodReturn a suitable tolerance to use for verifying whether a point is close to a domain. Typically, the tolerance is close to the precision limit of the numeric type associated with the domain.
DomainSets.indicatorfunction — MethodThe indicator function of a domain is the function f(x) = x ∈ D.
DomainSets.intersectbox — MethodReturn the bounding box of the intersection of two or more bounding boxes.
DomainSets.iscompatiblepair — MethodIs the given combination of point and domain compatible?
DomainSets.parametric_domain — Methodparametric_domain(fmap, domain)The domain that results from mapping the given domain.
DomainSets.promotable_domains — MethodCan the domains be promoted without throwing an error?
DomainSets.promote_domains — MethodPromote the given domains to have a common element type.
DomainSets.promote_map_domain_pair — Methodpromote_map_domain_pair(map, domain)Promote the map and the domain such that the output satisfies codomaintype(map) == domaineltype(domain).
DomainSets.promote_pair — MethodPromote point and domain to compatible types.
DomainSets.similar_interval — MethodReturn an interval that is similar to the given interval, but with endpoints a and b instead.
DomainSets.simplifies — Methodsimplifies(domain)Does the domain simplify?
DomainSets.simplify — Methodsimplify(domain)Simplify the given domain to an equal domain.
DomainSets.todomainset — MethodConvert the given domain to a domain defined in DomainSets.jl.
DomainSets.unionbox — MethodReturn the bounding box of the union of two or more bounding boxes.
DomainSets.vectorized_approx_in — MethodVectorized version of approx_in: apply x ∈ d to all elements of A.
DomainSets.vectorized_in — MethodVectorized version of in: apply x ∈ d to all elements of A.
Types
DomainSets.AbstractIndicatorFunction — TypeSupertype of domains that are defined by an indicator function.
An indicator function is a function f : S -> [0,1] that indicates membership of x to a domain D with D ⊂ S. The indicator function corresponds exactly to the in function of a domain: f(x) = x ∈ D.
Concrete subtypes of AbstractIndicatorFunction store a representation of this indicator function and implement in using that representation, rather than implementing in directly.
DomainSets.AbstractLevelSet — TypeSupertype of level set domains of the form f(x)=C.
DomainSets.AbstractMappedDomain — TypeA MappedDomain represents the mapping of a domain.
The map of a domain d under the mapping y=f(x) consists of all points f(x) with x ∈ d. The characteristic function of a mapped domain is defined in terms of the inverse map g = inverse(f):
x ∈ m ⟺ g(x) ∈ dDomainSets.AbstractSublevelSet — TypeSupertype of sublevel set domains.
DomainSets.AbstractSuperlevelSet — TypeSupertype of superlevel set domains.
DomainSets.AbstractVectorDomain — TypeAn AbstractVectorDomain is any domain whose eltype is <:AbstractVector{T}.
DomainSets.BoundedIndicatorFunction — TypeAn indicator function with a known bounding domain.
DomainSets.CompositeDomain — TypeA composite lazy domain is defined in terms of multiple domains.
DomainSets.Cube — TypeA Cube is a hyperrectangle with equal side lengths in each dimension.
DomainSets.DerivedDomain — TypeAbstract supertype for domains that wrap another domain.
DomainSets.DomainPoint — TypeA DomainPoint is a point which is an element of a domain by construction.
A domain point is just a point, not a domain. This is different from a Point type.
The type is a wrapper: retrieve the underlying point using point(p).
DomainSets.DomainSetStyle — TypeThe broadcast style associated with domains
DomainSets.EuclideanBall — TypeA ball in a fixed N-dimensional Euclidean space.
DomainSets.EuclideanCube — TypeA cube in a fixed N-dimensional Euclidean space.
DomainSets.EuclideanSphere — TypeA hypersphere in a fixed N-dimensional Euclidean space.
DomainSets.EuclideanSpherePoint — TypeA point on the unit sphere represented by a standard Euclidean vector.
DomainSets.ExampleNamedDomain — TypeExample of a domain that wraps another domain and thus obtains its own type.
DomainSets.FixedInterval — TypeThe abstract type FixedInterval is the supertype of intervals with endpoints determined by the type, rather than field values. Examples include UnitInterval and ChebyshevInterval.
DomainSets.FixedIntervalProduct — TypeThe N-fold cartesian product of a fixed interval.
DomainSets.FunctionLevelSet — TypeA FunctionLevelSet is a set that derives from the levels of a function.
DomainSets.GenericBall — TypeA GenericBall is a ball with a given radius and center.
DomainSets.GenericSphere — TypeA GenericSphere is a sphere with a given radius and center.
DomainSets.HyperRectangle — TypeA HyperRectangle is the cartesian product of intervals.
DomainSets.Isomorphic — TypeIsomorphic <: CanonicalTypeAn isomorphic canonical domain is a domain that is the same up to an isomorphism.
DomainSets.LazyComposedMap — TypeSupertype of all compositions of a lazy domain. The composition determines how the point x is distributed to the member domains of a lazy domain.
Three compositions implemented in the package are:
NoComposedMap: the lazy domain encapsulates a single domain andxis passed
through unalteredCombination: the lazy domain has several members andxis passed to thein
method of all membersProduct: the lazy domain has several members and the components ofxare
passed to the components of the lazy domainDomainSets.LazyDomain — TypeA lazy domain evaluates its membership function on the fly in terms of that of other domains.
The in(x, domain::LazyDomain) applies three types of transformations:
- Point mapping:
y = tointernalpoint(domain, x) - Distribution of
yover member domains given bycomponents(domain) - Combination of the outputs into a single boolean result.
The distribution step is determined by the result of composition(domain), see composition. The combination is performed by combine. Mapping between points of the lazy domain and points of its member domains is described by y = tointernalpoint(domain, x) and x = toexternalpoint(domain, y).
DomainSets.NaturalNumbers — TypeThe set of all natural numbers.
DomainSets.NegativeRealLine — TypeNegativeRealLine{T=Float64}()The open negative halfline (-∞,0).
DomainSets.NonnegativeRealLine — TypeNonnegativeRealLine{T=Float64}()The closed positive halfline [0,∞).
DomainSets.NonpositiveRealLine — TypeNonpositiveRealLine{T=Float64}()The closed negative halfline (-∞,0].
DomainSets.One — TypeOne()Representation of the number 1.
DomainSets.Origin — TypeOrigin()Representation of the origin.
DomainSets.Parameterization — TypeParameterization <: CanonicalTypeA parametric canonical domain can be parameterized from a simpler domain.
DomainSets.ParametricDomain — TypeA ParametricDomain stores the forward map of a mapped domain.
DomainSets.PositiveRealLine — TypePositiveRealLine{T=Float64}()The open positive halfline (0,∞).
DomainSets.SimpleLazyDomain — TypeA simple lazy domain is defined in terms of a single domain.
It has no composition and no combination of its in function.
DomainSets.Simplex — TypeSupertype of an N-dimensional simplex.
DomainSets.SpherePoint — TypeA point on the unit sphere.
DomainSets.SphericalCoordinate — TypeA point on the unit sphere represented in spherical coordinates.
DomainSets.VectorBall — TypeA ball with vector elements of variable length.
DomainSets.VectorCube — TypeA cube with vector elements of variable length.
DomainSets.VectorSphere — TypeA sphere with vector elements of variable length.
DomainSets.WrappedDomain — TypeA WrappedDomain is a wrapper around an object that implements the domain interface, and that is itself a domain.