view src/Grids/Grids.jl @ 1736:863385aae454 feature/grids/curvilinear

Merge default
author Jonatan Werpers <jonatan@werpers.com>
date Tue, 10 Sep 2024 21:59:10 +0200
parents 88021d580320 471a948cd2b2
children e719c6dadba6
line wrap: on
line source

# TODO: Double check that the interfaces for indexing and iterating are fully implemented and tested for all grids.
module Grids

using Diffinitive.LazyTensors
using StaticArrays
using LinearAlgebra

# Grid
export Grid
export coordinate_size
export component_type
export grid_id
export boundary_id
export boundary_indices
export boundary_identifiers
export boundary_grid
export min_spacing
export coarsen
export refine
export eval_on
export componentview
export ArrayComponentView
export normal

export BoundaryIdentifier
export TensorGridBoundary
export CartesianBoundary
export LowerBoundary
export UpperBoundary

export TensorGrid
export ZeroDimGrid

export EquidistantGrid
export inverse_spacing
export spacing
export equidistant_grid


# MappedGrid
export MappedGrid
export jacobian
export logicalgrid
export mapped_grid
export jacobian_determinant
export metric_tensor
export metric_tensor_inverse

abstract type BoundaryIdentifier end

include("grid.jl")
include("tensor_grid.jl")
include("equidistant_grid.jl")
include("zero_dim_grid.jl")
include("mapped_grid.jl")

end # module