changeset 1431:6adf31ba6cfd feature/grids/curvilinear

Add `jacobian` and `logicalgrid`
author Jonatan Werpers <jonatan@werpers.com>
date Fri, 25 Aug 2023 15:41:19 +0200
parents 9fc3c1af33e5
children 64b60b42d367
files src/Grids/Grids.jl src/Grids/curvilinear_grid.jl test/Grids/curvilinear_grid_test.jl
diffstat 3 files changed, 11 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/src/Grids/Grids.jl	Wed Jul 26 21:00:44 2023 +0200
+++ b/src/Grids/Grids.jl	Fri Aug 25 15:41:19 2023 +0200
@@ -35,7 +35,11 @@
 export equidistant_grid
 export CartesianBoundary
 
+
+# CurvilinearGrid
 export CurvilinearGrid
+export jacobian
+export logicalgrid
 
 abstract type BoundaryIdentifier end
 
--- a/src/Grids/curvilinear_grid.jl	Wed Jul 26 21:00:44 2023 +0200
+++ b/src/Grids/curvilinear_grid.jl	Fri Aug 25 15:41:19 2023 +0200
@@ -1,9 +1,12 @@
 struct CurvilinearGrid{T,D, GT<:Grid{<:Any,D}, CT<:AbstractArray{T,D}, JT<:AbstractArray{<:AbstractArray{<:Any, 2}, D}} <: Grid{T,D}
     logicalgrid::GT
     physicalcoordinates::CT
-    Jacobian::JT
+    jacobian::JT
 end
 
+jacobian(g::CurvilinearGrid) = g.jacobian
+logicalgrid(g::CurvilinearGrid) = g.logicalgrid
+
 
 # Indexing interface
 Base.getindex(g::CurvilinearGrid, I...) = g.physicalcoordinates[I...]
--- a/test/Grids/curvilinear_grid_test.jl	Wed Jul 26 21:00:44 2023 +0200
+++ b/test/Grids/curvilinear_grid_test.jl	Fri Aug 25 15:41:19 2023 +0200
@@ -9,10 +9,9 @@
 
     @test CurvilinearGrid(g, x̄, J) isa Grid{SVector{2, Float64},2}
 
-
-    @test_broken jacobian(cg) isa Array{<:AbstractVector}
-    @test_broken logicalgrid(cg) isa Grid
-
+    cg = CurvilinearGrid(g, x̄, J)
+    @test jacobian(cg) isa Array{<:AbstractMatrix}
+    @test logicalgrid(cg) isa Grid
 
 
     @testset "Indexing Interface" begin