comparison src/Grids/manifolds.jl @ 1781:a73838c9ef94 feature/grids/manifolds

Let Chart implement Base.ndims instead of domain_dim
author Jonatan Werpers <jonatan@werpers.com>
date Mon, 16 Sep 2024 09:05:47 +0200
parents 8ecdc5bb46be
children 614f731af685
comparison
equal deleted inserted replaced
1780:8ecdc5bb46be 1781:a73838c9ef94
17 [`Triangle`](@ref), [`Tetrahedron`](@ref), [`HyperBox`](@ref), 17 [`Triangle`](@ref), [`Tetrahedron`](@ref), [`HyperBox`](@ref),
18 [`Simplex`](@ref), 18 [`Simplex`](@ref),
19 """ 19 """
20 abstract type ParameterSpace{D} end 20 abstract type ParameterSpace{D} end
21 Base.ndims(::ParameterSpace{D}) where D = D 21 Base.ndims(::ParameterSpace{D}) where D = D
22 # TBD: Should implement domain_dim?
23 22
24 struct Interval{T} <: ParameterSpace{1} 23 struct Interval{T} <: ParameterSpace{1}
25 a::T 24 a::T
26 b::T 25 b::T
27 26
93 struct Chart{D, PST<:ParameterSpace{D}, MT} 92 struct Chart{D, PST<:ParameterSpace{D}, MT}
94 mapping::MT 93 mapping::MT
95 parameterspace::PST 94 parameterspace::PST
96 end 95 end
97 96
98 domain_dim(::Chart{D}) where D = D 97 Base.ndims(::Chart{D}) where D = D
99 (c::Chart)(ξ) = c.mapping(ξ) 98 (c::Chart)(ξ) = c.mapping(ξ)
100 parameterspace(c::Chart) = c.parameterspace 99 parameterspace(c::Chart) = c.parameterspace
101 100
102 """ 101 """
103 jacobian(c::Chart, ξ) 102 jacobian(c::Chart, ξ)