diff src/Grids/Grids.jl @ 2008:df2cbcb7a2b1 default

Merge feature/grids/manifolds
author Jonatan Werpers <jonatan@werpers.com>
date Thu, 01 May 2025 15:05:11 +0200
parents 3fb5b03162ee
children ea04a542a526
line wrap: on
line diff
--- a/src/Grids/Grids.jl	Thu May 01 14:57:09 2025 +0200
+++ b/src/Grids/Grids.jl	Thu May 01 15:05:11 2025 +0200
@@ -24,6 +24,16 @@
 export unittetrahedron
 export unitsimplex
 
+export Chart
+
+export Atlas
+export charts
+export connections
+export CartesianAtlas
+export UnstructuredAtlas
+
+export parameterspace
+
 # Grid
 export Grid
 export coordinate_size
@@ -66,10 +76,24 @@
 
 include("parameter_space.jl")
 include("grid.jl")
+include("multiblockgrids.jl")
+include("manifolds.jl")
 include("tensor_grid.jl")
 include("equidistant_grid.jl")
 include("zero_dim_grid.jl")
 include("mapped_grid.jl")
-include("multiblockgrids.jl")
+
+function __init__()
+    if !isdefined(Base.Experimental, :register_error_hint)
+        return
+    end
+
+    Base.Experimental.register_error_hint(MethodError) do io, exc, argtypes, kwargs
+        if exc.f == Grids.jacobian
+            print(io, "\nThis possibly means that a function used to define a coordinate mapping is missing a method for `Grids.jacobian`.\n")
+            print(io, "Provide one by for exmple implementing `Grids.jacobian(::$(typeof(exc.args[1])), x) = ...` or `Grids.jacobian(f, x) = ForwardDiff.jacobian(f,x)`")
+        end
+    end
+end
 
 end # module