Geometry

Bramble.BrambleBareFunctionType
struct BrambleBareFunction{D,T,has_cart} 
	f_tuple::FunctionWrapper{T, Tuple{NTuple{D,T}}}
	f_cartesian::FunctionWrapper{T, Tuple{CartesianIndex{D}}}
end

Structure to wrap around functions to make them more type agnostic. It uses FunctionWrappers to provide functions calculated on Tuples and CartesianIndices. The type arguments are D, the dimension of the underlying domain in which the function is defined, f_tuple, a version of the function appliable to Tuples and f_cartesian, a version of the function appliable to CartesianIndices (useful when dealing with meshes)

source
Bramble.CartesianProductType
struct CartesianProduct{D,T}
	data::NTuple{D,Tuple{T,T}}
end

Type for storage of cartesian products of D intervals having elements of type T.

source
Base.eltypeMethod
eltype(X::CartesianProduct)
eltype(::Type{<:CartesianProduct})

Returns the element type of a CartesianProduct.

Example

julia> X = cartesianproduct(0, 1); eltype(X)
Float64
source
Bramble.dimMethod
dim(X::CartesianProduct)
dim(::Type{<:CartesianProduct})

Returns the topological dimension of a CartesianProduct.

Example

julia> X = cartesianproduct(0, 1); dim(X)
1
julia> Y = cartesianproduct(((0,1), (4,5))); dim(Y)
2
source
Bramble.tailsMethod
tails(X::CartesianProduct, i)
tails(X::CartesianProduct{D})

Returns i-th interval in CartesianProduct X as a Tuple. It can also be called on X, returning aD-tuple with all intervals defining [CartesianProduct](@ref)X`.

Example

julia> X = cartesianproduct(0, 1) × cartesianproduct(4, 5); tails(X,1)
(0.0, 1.0)
julia> X = cartesianproduct(0, 1) × cartesianproduct(4, 5); tails(X)
((0.0, 1.0), (4.0, 5.0))
source
Base.eltypeMethod
eltype(Ω::Domain)
eltype(::Type{<:Domain{SetType}})

Returns the type of the bounds defining Domain Ω.

Example

julia> I = interval(0.0, 1.0); eltype(domain(I × I))
Float64
source
Bramble.dimMethod
dim(Ω::Domain)
dim(::Type{<:Domain})

Returns the topological dimension of the Domain Ω.

Example

julia> I = interval(0.0, 1.0); dim(domain(I × I))
2
source