changeset 1560:5d32ecb98db8 feature/grids/curvilinear

Add functions for jacobian_determiant, geometric_tensor, geometric_tensor_inverse
author Jonatan Werpers <jonatan@werpers.com>
date Thu, 25 Apr 2024 09:03:04 +0200
parents 9113f437431d
children 6fdc81860b0c b9c7bab94241 063a2bfb03da
files src/Grids/Grids.jl src/Grids/mapped_grid.jl test/Grids/mapped_grid_test.jl
diffstat 3 files changed, 34 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/Grids/Grids.jl	Sat Apr 13 23:52:40 2024 +0200
+++ b/src/Grids/Grids.jl	Thu Apr 25 09:03:04 2024 +0200
@@ -38,6 +38,9 @@
 export jacobian
 export logicalgrid
 export mapped_grid
+export jacobian_determinant
+export geometric_tensor
+export geometric_tensor_inverse
 
 abstract type BoundaryIdentifier end
 
--- a/src/Grids/mapped_grid.jl	Sat Apr 13 23:52:40 2024 +0200
+++ b/src/Grids/mapped_grid.jl	Thu Apr 25 09:03:04 2024 +0200
@@ -60,3 +60,22 @@
         map(J,lg),
     )
 end
+
+function jacobian_determinant(g::MappedGrid)
+    return map(jacobian(g)) do ∂x∂ξ
+        det(∂x∂ξ)
+    end
+end
+
+function geometric_tensor(g::MappedGrid)
+    return map(jacobian(g)) do ∂x∂ξ
+        ∂x∂ξ'*∂x∂ξ
+    end
+end
+
+function geometric_tensor_inverse(g::MappedGrid)
+    return map(jacobian(g)) do ∂x∂ξ
+        inv(∂x∂ξ'*∂x∂ξ)
+    end
+end
+
--- a/test/Grids/mapped_grid_test.jl	Sat Apr 13 23:52:40 2024 +0200
+++ b/test/Grids/mapped_grid_test.jl	Thu Apr 25 09:03:04 2024 +0200
@@ -157,6 +157,18 @@
         @testset test_boundary_grid(mg, TensorGridBoundary{2, Upper}(), J1)
     end
 
+    @testset "jacobian_determinant" begin
+        @test_broken false
+    end
+
+    @testset "geometric_tensor" begin
+        @test_broken false
+    end
+
+    @testset "geometric_tensor_inverse" begin
+        @test_broken false
+    end
+
 end
 
 @testset "mapped_grid" begin